diff --git a/404.html b/404.html new file mode 100644 index 0000000000000000000000000000000000000000..4ab54e67a10508225b33ea389ec6fbf3b6c0898e --- /dev/null +++ b/404.html @@ -0,0 +1,136 @@ + + + + + +Narsil | Small experiements insights from ML and software development. + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + +
+

404

+

Page not found :(

+

The requested page could not be found.

+
+ +
+
+ + + diff --git a/Gemfile b/Gemfile new file mode 100644 index 0000000000000000000000000000000000000000..33dd7fe76ff65dad425528c00ad3ffb20911ae9b --- /dev/null +++ b/Gemfile @@ -0,0 +1,39 @@ +source "https://rubygems.org" +# Hello! This is where you manage which Jekyll version is used to run. +# When you want to use a different version, change it below, save the +# file and run `bundle install`. Run Jekyll with `bundle exec`, like so: +# +# bundle exec jekyll serve +# +# This will help ensure the proper Jekyll version is running. +# Happy Jekylling! +# gem "jekyll", "~> 3.8.5" +# This is the default theme for new Jekyll sites. You may change this to anything you like. +gem "minima", "~> 2.5" +# To upgrade, run `bundle update github-pages`. +gem "github-pages", group: :jekyll_plugins +# If you have any plugins, put them here! +group :jekyll_plugins do + gem "jekyll-feed", "~> 0.12" + gem 'jekyll-octicons' + gem "jekyll-twitter-plugin" + gem 'jekyll-relative-links' + gem 'jekyll-seo-tag' + gem 'jekyll-toc' +end + +gem "jekyll-github-metadata" + + +# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem +# and associated library. +install_if -> { RUBY_PLATFORM =~ %r!mingw|mswin|java! } do + gem "tzinfo", "~> 1.2" + gem "tzinfo-data" +end + +# Performance-booster for watching directories on Windows +gem "wdm", "~> 0.1.1", :install_if => Gem.win_platform? + +gem "faraday", "< 1.0" + diff --git a/Gemfile.lock b/Gemfile.lock new file mode 100644 index 0000000000000000000000000000000000000000..8016cfe8c22e1e5f277cd5db0ede598291adaabb --- /dev/null +++ b/Gemfile.lock @@ -0,0 +1,272 @@ +GEM + remote: https://rubygems.org/ + specs: + activesupport (6.0.3.1) + concurrent-ruby (~> 1.0, >= 1.0.2) + i18n (>= 0.7, < 2) + minitest (~> 5.1) + tzinfo (~> 1.1) + zeitwerk (~> 2.2, >= 2.2.2) + addressable (2.7.0) + public_suffix (>= 2.0.2, < 5.0) + coffee-script (2.4.1) + coffee-script-source + execjs + coffee-script-source (1.11.1) + colorator (1.1.0) + commonmarker (0.17.13) + ruby-enum (~> 0.5) + concurrent-ruby (1.1.6) + dnsruby (1.61.3) + addressable (~> 2.5) + em-websocket (0.5.1) + eventmachine (>= 0.12.9) + http_parser.rb (~> 0.6.0) + ethon (0.12.0) + ffi (>= 1.3.0) + eventmachine (1.2.7) + execjs (2.7.0) + faraday (0.17.3) + multipart-post (>= 1.2, < 3) + ffi (1.12.2) + forwardable-extended (2.6.0) + gemoji (3.0.1) + github-pages (204) + github-pages-health-check (= 1.16.1) + jekyll (= 3.8.5) + jekyll-avatar (= 0.7.0) + jekyll-coffeescript (= 1.1.1) + jekyll-commonmark-ghpages (= 0.1.6) + jekyll-default-layout (= 0.1.4) + jekyll-feed (= 0.13.0) + jekyll-gist (= 1.5.0) + jekyll-github-metadata (= 2.13.0) + jekyll-mentions (= 1.5.1) + jekyll-optional-front-matter (= 0.3.2) + jekyll-paginate (= 1.1.0) + jekyll-readme-index (= 0.3.0) + jekyll-redirect-from (= 0.15.0) + jekyll-relative-links (= 0.6.1) + jekyll-remote-theme (= 0.4.1) + jekyll-sass-converter (= 1.5.2) + jekyll-seo-tag (= 2.6.1) + jekyll-sitemap (= 1.4.0) + jekyll-swiss (= 1.0.0) + jekyll-theme-architect (= 0.1.1) + jekyll-theme-cayman (= 0.1.1) + jekyll-theme-dinky (= 0.1.1) + jekyll-theme-hacker (= 0.1.1) + jekyll-theme-leap-day (= 0.1.1) + jekyll-theme-merlot (= 0.1.1) + jekyll-theme-midnight (= 0.1.1) + jekyll-theme-minimal (= 0.1.1) + jekyll-theme-modernist (= 0.1.1) + jekyll-theme-primer (= 0.5.4) + jekyll-theme-slate (= 0.1.1) + jekyll-theme-tactile (= 0.1.1) + jekyll-theme-time-machine (= 0.1.1) + jekyll-titles-from-headings (= 0.5.3) + jemoji (= 0.11.1) + kramdown (= 1.17.0) + liquid (= 4.0.3) + mercenary (~> 0.3) + minima (= 2.5.1) + nokogiri (>= 1.10.4, < 2.0) + rouge (= 3.13.0) + terminal-table (~> 1.4) + github-pages-health-check (1.16.1) + addressable (~> 2.3) + dnsruby (~> 1.60) + octokit (~> 4.0) + public_suffix (~> 3.0) + typhoeus (~> 1.3) + html-pipeline (2.12.3) + activesupport (>= 2) + nokogiri (>= 1.4) + http_parser.rb (0.6.0) + i18n (0.9.5) + concurrent-ruby (~> 1.0) + jekyll (3.8.5) + addressable (~> 2.4) + colorator (~> 1.0) + em-websocket (~> 0.5) + i18n (~> 0.7) + jekyll-sass-converter (~> 1.0) + jekyll-watch (~> 2.0) + kramdown (~> 1.14) + liquid (~> 4.0) + mercenary (~> 0.3.3) + pathutil (~> 0.9) + rouge (>= 1.7, < 4) + safe_yaml (~> 1.0) + jekyll-avatar (0.7.0) + jekyll (>= 3.0, < 5.0) + jekyll-coffeescript (1.1.1) + coffee-script (~> 2.2) + coffee-script-source (~> 1.11.1) + jekyll-commonmark (1.3.1) + commonmarker (~> 0.14) + jekyll (>= 3.7, < 5.0) + jekyll-commonmark-ghpages (0.1.6) + commonmarker (~> 0.17.6) + jekyll-commonmark (~> 1.2) + rouge (>= 2.0, < 4.0) + jekyll-default-layout (0.1.4) + jekyll (~> 3.0) + jekyll-feed (0.13.0) + jekyll (>= 3.7, < 5.0) + jekyll-gist (1.5.0) + octokit (~> 4.2) + jekyll-github-metadata (2.13.0) + jekyll (>= 3.4, < 5.0) + octokit (~> 4.0, != 4.4.0) + jekyll-mentions (1.5.1) + html-pipeline (~> 2.3) + jekyll (>= 3.7, < 5.0) + jekyll-octicons (9.4.0) + jekyll (>= 3.6, < 5.0) + octicons (= 9.4.0) + jekyll-optional-front-matter (0.3.2) + jekyll (>= 3.0, < 5.0) + jekyll-paginate (1.1.0) + jekyll-readme-index (0.3.0) + jekyll (>= 3.0, < 5.0) + jekyll-redirect-from (0.15.0) + jekyll (>= 3.3, < 5.0) + jekyll-relative-links (0.6.1) + jekyll (>= 3.3, < 5.0) + jekyll-remote-theme (0.4.1) + addressable (~> 2.0) + jekyll (>= 3.5, < 5.0) + rubyzip (>= 1.3.0) + jekyll-sass-converter (1.5.2) + sass (~> 3.4) + jekyll-seo-tag (2.6.1) + jekyll (>= 3.3, < 5.0) + jekyll-sitemap (1.4.0) + jekyll (>= 3.7, < 5.0) + jekyll-swiss (1.0.0) + jekyll-theme-architect (0.1.1) + jekyll (~> 3.5) + jekyll-seo-tag (~> 2.0) + jekyll-theme-cayman (0.1.1) + jekyll (~> 3.5) + jekyll-seo-tag (~> 2.0) + jekyll-theme-dinky (0.1.1) + jekyll (~> 3.5) + jekyll-seo-tag (~> 2.0) + jekyll-theme-hacker (0.1.1) + jekyll (~> 3.5) + jekyll-seo-tag (~> 2.0) + jekyll-theme-leap-day (0.1.1) + jekyll (~> 3.5) + jekyll-seo-tag (~> 2.0) + jekyll-theme-merlot (0.1.1) + jekyll (~> 3.5) + jekyll-seo-tag (~> 2.0) + jekyll-theme-midnight (0.1.1) + jekyll (~> 3.5) + jekyll-seo-tag (~> 2.0) + jekyll-theme-minimal (0.1.1) + jekyll (~> 3.5) + jekyll-seo-tag (~> 2.0) + jekyll-theme-modernist (0.1.1) + jekyll (~> 3.5) + jekyll-seo-tag (~> 2.0) + jekyll-theme-primer (0.5.4) + jekyll (> 3.5, < 5.0) + jekyll-github-metadata (~> 2.9) + jekyll-seo-tag (~> 2.0) + jekyll-theme-slate (0.1.1) + jekyll (~> 3.5) + jekyll-seo-tag (~> 2.0) + jekyll-theme-tactile (0.1.1) + jekyll (~> 3.5) + jekyll-seo-tag (~> 2.0) + jekyll-theme-time-machine (0.1.1) + jekyll (~> 3.5) + jekyll-seo-tag (~> 2.0) + jekyll-titles-from-headings (0.5.3) + jekyll (>= 3.3, < 5.0) + jekyll-toc (0.13.1) + jekyll (>= 3.7) + nokogiri (~> 1.9) + jekyll-twitter-plugin (2.1.0) + jekyll-watch (2.2.1) + listen (~> 3.0) + jemoji (0.11.1) + gemoji (~> 3.0) + html-pipeline (~> 2.2) + jekyll (>= 3.0, < 5.0) + kramdown (1.17.0) + liquid (4.0.3) + listen (3.2.1) + rb-fsevent (~> 0.10, >= 0.10.3) + rb-inotify (~> 0.9, >= 0.9.10) + mercenary (0.3.6) + mini_portile2 (2.4.0) + minima (2.5.1) + jekyll (>= 3.5, < 5.0) + jekyll-feed (~> 0.9) + jekyll-seo-tag (~> 2.1) + minitest (5.14.1) + multipart-post (2.1.1) + nokogiri (1.10.9) + mini_portile2 (~> 2.4.0) + octicons (9.4.0) + nokogiri (>= 1.6.3.1) + octokit (4.16.0) + faraday (>= 0.9) + sawyer (~> 0.8.0, >= 0.5.3) + pathutil (0.16.2) + forwardable-extended (~> 2.6) + public_suffix (3.1.1) + rb-fsevent (0.10.3) + rb-inotify (0.10.1) + ffi (~> 1.0) + rouge (3.13.0) + ruby-enum (0.7.2) + i18n + rubyzip (2.2.0) + safe_yaml (1.0.5) + sass (3.7.4) + sass-listen (~> 4.0.0) + sass-listen (4.0.0) + rb-fsevent (~> 0.9, >= 0.9.4) + rb-inotify (~> 0.9, >= 0.9.7) + sawyer (0.8.2) + addressable (>= 2.3.5) + faraday (> 0.8, < 2.0) + terminal-table (1.8.0) + unicode-display_width (~> 1.1, >= 1.1.1) + thread_safe (0.3.6) + typhoeus (1.3.1) + ethon (>= 0.9.0) + tzinfo (1.2.6) + thread_safe (~> 0.1) + tzinfo-data (1.2019.3) + tzinfo (>= 1.0.0) + unicode-display_width (1.6.1) + wdm (0.1.1) + zeitwerk (2.3.0) + +PLATFORMS + ruby + +DEPENDENCIES + faraday (< 1.0) + github-pages + jekyll-feed (~> 0.12) + jekyll-github-metadata + jekyll-octicons + jekyll-relative-links + jekyll-seo-tag + jekyll-toc + jekyll-twitter-plugin + minima (~> 2.5) + tzinfo (~> 1.2) + tzinfo-data + wdm (~> 0.1.1) + +BUNDLED WITH + 2.0.2 diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000000000000000000000000000000000000..5c1d0d4e4018338b631a634c2d9f569fe78dcf03 --- /dev/null +++ b/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2020 onwards, fast.ai, Inc + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/README.md b/README.md index e507c36a3c09df1a7276c5377937b405185bc0fa..4e485df9c4c3375902934b9e02fde82d147b1e5f 100644 --- a/README.md +++ b/README.md @@ -1,36 +1,29 @@ ---- -title: Home -emoji: 🏢 -colorFrom: yellow -colorTo: gray -sdk: static -pinned: false ---- +[//]: # (This template replaces README.md when someone creates a new repo with the fastpages template.) -# Configuration +![](https://github.com/Narsil/narsil.github.io/workflows/CI/badge.svg) +![](https://github.com/Narsil/narsil.github.io/workflows/GH-Pages%20Status/badge.svg) +[![](https://img.shields.io/static/v1?label=fastai&message=fastpages&color=57aeac&labelColor=black&style=flat&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAjCAYAAABhCKGoAAAGMklEQVR42q1Xa0xTVxyfKExlui9blszoB12yDzPGzJhtyT5s+zBxUxELBQSHm2ZzU5epBF/LclXae29pCxR5VEGgLQUuIOKDuClhm8oUK7S9ve19tLTl/fA5p9MNc/Y/hRYEzGLxJL/87zk9Ob/zf5++NGHMALzYgdDYmWh0Qly3Lybtwi6lXdpN2cWN5A0+hrQKe5R2PoN2uD+OKcn/UF5ZsVduMmyXVRi+jzebdmI5/juhwrgj3mTI2GA0vvsUIcMwM7GkOD42t7Mf6bqHkFry2yk7X5PXcxMVDN5DGtFf9NkJfe6W5iaUyFShjfV1KPlk7VPAa0k11WjzL+eRvMJ4IKQO0dw8SydJL+Op0u5cn+3tQTn+fqTivTbQpiavF0iG7iGt6NevKjpKpTbUo3hj+QO47XB8hfHfIGAelA+T6mqQzFi+e0oTKm3iexQnXaU56ZrK5SlVsq70LMF7TuX0XNTyvi1rThzLST3TgOCgxwD0DPwDGoE07QkcSl/m5ynbHWmZVm6b0sp9o2DZN8aTZtqk9w9b2G2HLbbvsjlx+fry0vwU0OS5SH68Ylmilny3c3x9SOvpRuQN7hO8vqulZQ6WJMuXFAzcRfkDd5BG8B1bpc+nU0+fQtgkYLIngOEJwGt/J9UxCIJg1whJ05Ul4IMejbsLqUUfOjJKQnCDr4ySHMeO1/UMIa3UmR9TUpj7ZdMFJK8yo6RaZjLAF/JqM/rifCO+yP4AycGmlgUaT9cZ0OYP2um5prjBLhtvLhy68Fs7RFqbRvSlf15ybGdyLcPJmcpfIcIuT4nqqt+Sa2vaZaby1FB+JGi1c9INhuiv9fpIysItIh3CVgVAzXfEE1evzse/bwr8bolcAXs+zcqKXksQc5+FD2D/svT06I8IYtaUeZLZzsVm+3oRDmON1Ok/2NKyIJSs0xnj84RknXG6zgGEE1It+rsPtrYuDOxBKAJLrO1qnW7+OpqeNxF4HWv6v4Rql3uFRvL/DATnc/29x4lmy2t4fXVjY+ASGwylm8DBvkSm2gpgx1Bpg4hyyysqVoUuFRw0z8+jXe40yiFsp1lpC9navlJpE9JIh7RVwfJywmKZO4Hkh02NZ1FilfkJLi1B4GhLPduAZGazHO9LGDX/WAj7+npzwUQqvuOBoo1Va91dj3Tdgyinc0Dae+HyIrxvc2npbCxlxrJvcW3CeSKDMhKCoexRYnUlSqg0xU0iIS5dXwzm6c/x9iKKEx8q2lkV5RARJCcm9We2sgsZhGZmgMYjJOU7UhpOIqhRwwlmEwrBZHgCBRKkKX4ySVvbmzQnXoSDHWCyS6SV20Ha+VaSFTiSE8/ttVheDe4NarLxVB1kdE0fYAgjGaOWGYD1vxKrqmInkSBchRkmiuC4KILhonAo4+9gWVHYnElQMEsAxbRDSHtp7dq5CRWly2VlZe/EFRcvDcBQvBTPZeXly1JMpvlThzBBRASBoDsSBIpgOBQV6C+sUJzffwflQX8BTevCTZMZeoslUo9QJJZYTZDw3RuIKtIhlhXdfhDoJ7TTXY/XdBBpgUshwFMSRYTVwim7FJvt6aFyOnoVKqc7MZQDzzNwsmnd3UegCudl8R2qzHZ7bJbQoYGyn692+zMULCfXenoOacTOTBUnJYRFsq+5+a3sjp5BXM6hEz7ObHNoVEIHyocekiX6WIiykwWDd1HhzT8RzY2YqxnK0HNQBJtW500ddiwrDgdIeCABZ4MPnKQdk9xDhUP3wfHSqbBI9v/e9jo0Iy30cCOgAMyVgMMVCMwql/cQxfKp2R1dWWrRm0PzUkrIXC9ykDY+hnJ5DqkE709guriwSRgGzWTQCPABWJZ6vbNHQlgo099+CCEMPnF6xnwynYETEWd8ls0WPUpSWnTrfuAhAWacPslUiQRNLBGXFSA7TrL8V3gNhesTnLFY0jb+bYWVp0i7SClY184jVtcayi7so2yuA0r4npbjsV8CJHZhPQ7no323cJ5w8FqpLwR/YJNRnHs0hNGs6ZFw/Lpsb+9oj/dZSbuL0XUNojx4d9Gch5mOT0ImINsdKyHzT9Muz1lcXhRWbo9a8J3B72H8Lg6+bKb1hyWMPeERBXMGRxEBCM7Ddfh/1jDuWhb5+QkAAAAASUVORK5CYII=)](https://github.com/fastai/fastpages) -`title`: _string_ -Display title for the Space +https://Narsil.github.io/narsil.github.io/ -`emoji`: _string_ -Space emoji (emoji-only character allowed) +# My Blog -`colorFrom`: _string_ -Color for Thumbnail gradient (red, yellow, green, blue, indigo, purple, pink, gray) -`colorTo`: _string_ -Color for Thumbnail gradient (red, yellow, green, blue, indigo, purple, pink, gray) +_powered by [fastpages](https://github.com/fastai/fastpages)_ -`sdk`: _string_ -Can be either `gradio`, `streamlit`, or `static` -`sdk_version` : _string_ -Only applicable for `streamlit` SDK. -See [doc](https://hf.co/docs/hub/spaces) for more info on supported versions. +## What To Do Next? -`app_file`: _string_ -Path to your main application file (which contains either `gradio` or `streamlit` Python code, or `static` html code). -Path is relative to the root of the repository. +Great! You have setup your repo. Now its time to start writing content. Some helpful links: -`pinned`: _boolean_ -Whether the Space stays on top of your list. +- [Writing Blogs With Jupyter](https://github.com/fastai/fastpages#writing-blog-posts-with-jupyter) + +- [Writing Blogs With Markdown](https://github.com/fastai/fastpages#writing-blog-posts-with-markdown) + +- [Writing Blog Posts With Word](https://github.com/fastai/fastpages#writing-blog-posts-with-microsoft-word) + +- [(Optional) Preview Your Blog Locally](DEVELOPMENT.md) + +Note: you may want to remove example blog posts from the `_posts`, `_notebooks` or `_word` folders (but leave them empty, don't delete these folders) if you don't want these blog posts to appear on your site. + +Please use the [nbdev & blogging channel](https://forums.fast.ai/c/fastai-users/nbdev/48) in the fastai forums for any questions or feature requests. diff --git a/about/index.html b/about/index.html new file mode 100644 index 0000000000000000000000000000000000000000..0e4c3aa44b8f7f42177b6e4fada0b4848b912e92 --- /dev/null +++ b/about/index.html @@ -0,0 +1,130 @@ + + + + + +About Me | Narsil + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+

About Me

+
+ +
+

I’m an entrepreneur technical guy. Built french math/physics online training platform Kwyk. +Interested in Machine Learning that actually works. Regularly trying to learn and try new languages/frameworks.

+ +
+ +
+ +
+
+ + + diff --git a/assets/face/3dmodels/CrownDiffuseMap.jpg b/assets/face/3dmodels/CrownDiffuseMap.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a09d9dfedc30579b284d7e8377378e59c3a546e3 --- /dev/null +++ b/assets/face/3dmodels/CrownDiffuseMap.jpg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4fdbb55bf1b8e3670ca5b91161868ac6b314fc414331b8b4b51b14165e1a0a3b +size 165469 diff --git a/assets/face/3dmodels/Joker_Mask_Diffuse.jpeg b/assets/face/3dmodels/Joker_Mask_Diffuse.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..475c732dd919a03470a6725557d665a2ab2c7fec --- /dev/null +++ b/assets/face/3dmodels/Joker_Mask_Diffuse.jpeg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5071e4e4828479364b1c2428523514dafdb284fa5b3d7fa9b953daf9ee3e41cf +size 228016 diff --git a/assets/face/3dmodels/Joker_Mask_Material_diffuse.jpeg b/assets/face/3dmodels/Joker_Mask_Material_diffuse.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..bb52a16ea41f08afba88cf63152691701c251ef7 --- /dev/null +++ b/assets/face/3dmodels/Joker_Mask_Material_diffuse.jpeg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55b20d1fe1aa7697af691060182c4cbe6b9081958cbae97c010d47c00cfc2d23 +size 288304 diff --git a/assets/face/3dmodels/Material__137_AO.jpeg b/assets/face/3dmodels/Material__137_AO.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..edf25677c4953645999bea0caf66ad1330df10ed --- /dev/null +++ b/assets/face/3dmodels/Material__137_AO.jpeg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9422d1623f09bcaa297d352c615a63ed08f676cb4bf599920971205d56ce0cc +size 255915 diff --git a/assets/face/3dmodels/Material__137_albedo.jpeg b/assets/face/3dmodels/Material__137_albedo.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..62a2ef6f8dcfcb6295285f4fff5542e272ce255e --- /dev/null +++ b/assets/face/3dmodels/Material__137_albedo.jpeg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d240a11df9e27d6fefac91a18776d953364806c3a415d5393d829f0bfb1923f +size 289245 diff --git a/assets/face/3dmodels/Material__137_metallic.jpeg b/assets/face/3dmodels/Material__137_metallic.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..1f83ac00f51a397cce0b74a09ec348c048a60c1c --- /dev/null +++ b/assets/face/3dmodels/Material__137_metallic.jpeg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c22b3f41aac4679dc2371b1d0422708555299c9d0e65915d505ad5d1ba0a7ec5 +size 67738 diff --git a/assets/face/3dmodels/Material__137_normal.png b/assets/face/3dmodels/Material__137_normal.png new file mode 100644 index 0000000000000000000000000000000000000000..e9893056b2fb0167e99d72a29313979335007ff0 --- /dev/null +++ b/assets/face/3dmodels/Material__137_normal.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2cb411641bebe74beda6ace362be8fbdeaaac2b77b3d082a623152e481c54e9 +size 224893 diff --git a/assets/face/3dmodels/Material__137_opacity.jpeg b/assets/face/3dmodels/Material__137_opacity.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..ad1a5826b721585696ac757119c56fdfd67612d0 --- /dev/null +++ b/assets/face/3dmodels/Material__137_opacity.jpeg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83d47bdc090a4c59171245e3621eb3192201e9997f1299f02c1be78a0c5a3e10 +size 214311 diff --git a/assets/face/3dmodels/Material__137_roughness.jpeg b/assets/face/3dmodels/Material__137_roughness.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..7fd547cd0cd41160c1d6a57d959120c269fbfaf5 --- /dev/null +++ b/assets/face/3dmodels/Material__137_roughness.jpeg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a79448315157b399acf74c490fb5091b39124a5593d528067aec4870a420fa4 +size 525386 diff --git a/assets/face/3dmodels/Material_baseColor.jpeg b/assets/face/3dmodels/Material_baseColor.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..7dc99ed21c911a3f90337c487b27ede25910bf43 --- /dev/null +++ b/assets/face/3dmodels/Material_baseColor.jpeg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:540f3f53bd7352211ab58e9567c09be36140e3244bff01bdde277f0863aab18e +size 115609 diff --git a/assets/face/3dmodels/anonymous.fbx b/assets/face/3dmodels/anonymous.fbx new file mode 100644 index 0000000000000000000000000000000000000000..ab519acac34efd33b6321b0ab48b4306b40abc2e --- /dev/null +++ b/assets/face/3dmodels/anonymous.fbx @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:31b2d7deac8e6d0ffd249bebe826dc8a4aadd930e16ae1b557ffae44569fe721 +size 304396 diff --git a/assets/face/3dmodels/crown.fbx b/assets/face/3dmodels/crown.fbx new file mode 100644 index 0000000000000000000000000000000000000000..12efe47ff32a141b12bb79b0b1acea7055f551ef --- /dev/null +++ b/assets/face/3dmodels/crown.fbx @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:787fe1f6b06bf1ca363625adf9caf5227698fe31b93f6eaa93268d14789513dd +size 3971148 diff --git a/assets/face/3dmodels/face.fbx b/assets/face/3dmodels/face.fbx new file mode 100644 index 0000000000000000000000000000000000000000..d0586781a4fa3db81b774df43434fadfc5271297 --- /dev/null +++ b/assets/face/3dmodels/face.fbx @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd68b6ac0b66a20564c7b37689ea6c6fd88ae52a2b3ad98e0ea1ecb5fb357105 +size 3637612 diff --git a/assets/face/3dmodels/glass1.fbx b/assets/face/3dmodels/glass1.fbx new file mode 100644 index 0000000000000000000000000000000000000000..06e6d4e6af3440dc5e5f2d1e81fb7d6c3e81f5e9 --- /dev/null +++ b/assets/face/3dmodels/glass1.fbx @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c8755341d15a0532cbda60fb16b26a986cbc2cd4afa045001d2fcfe03c24b6f5 +size 174908 diff --git a/assets/face/3dmodels/glass2.fbx b/assets/face/3dmodels/glass2.fbx new file mode 100644 index 0000000000000000000000000000000000000000..c440cb48a0688e618ecd17123ad81acea906d938 --- /dev/null +++ b/assets/face/3dmodels/glass2.fbx @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa4799cd6237460bcd26d40c6467e7fe74224f1b20f16fa71d1b97b9bf26b9d1 +size 2262220 diff --git a/assets/face/3dmodels/glass3.fbx b/assets/face/3dmodels/glass3.fbx new file mode 100644 index 0000000000000000000000000000000000000000..314a306ee23365a0d7b953851d25000c1e1d16d0 --- /dev/null +++ b/assets/face/3dmodels/glass3.fbx @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d6915c2e1e26d4d66efae1ec35bce3484e5e28e26483b3a87742272c90e2888 +size 1265980 diff --git a/assets/face/3dmodels/glass4.fbx b/assets/face/3dmodels/glass4.fbx new file mode 100644 index 0000000000000000000000000000000000000000..397fcda9275f06e299ea1b0cb59b5af3bc72e09d --- /dev/null +++ b/assets/face/3dmodels/glass4.fbx @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e8a7bec61bd4e66283e7491f38c981ecaa5be817c8f926fa0c40e45cefcebb9 +size 123612 diff --git a/assets/face/3dmodels/glass5.fbx b/assets/face/3dmodels/glass5.fbx new file mode 100644 index 0000000000000000000000000000000000000000..b6864a6edaf8f32250cf4fb88c9b55364fc5e233 --- /dev/null +++ b/assets/face/3dmodels/glass5.fbx @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:716fead56981a60f8c7b0253cc596c3e173a2d3e7c76ae5deb7b07570d764511 +size 24748 diff --git a/assets/face/3dmodels/joker.fbx b/assets/face/3dmodels/joker.fbx new file mode 100644 index 0000000000000000000000000000000000000000..8c87989c03c25c7c43ffda1d389ef9ef9225c179 --- /dev/null +++ b/assets/face/3dmodels/joker.fbx @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4aab6bf152934cfe05cea88393f6018a392cb1ce349eef7a4532f3a86fb69cb9 +size 613740 diff --git a/assets/face/3dmodels/lambert2SG_baseColor.png b/assets/face/3dmodels/lambert2SG_baseColor.png new file mode 100644 index 0000000000000000000000000000000000000000..3d1c3b5ead60fc4619705359354a64493f92384f --- /dev/null +++ b/assets/face/3dmodels/lambert2SG_baseColor.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:578c99a1ff928cdedfa8df206a237c8328ccb28a93aae82939fc550b6cea3573 +size 967071 diff --git a/assets/face/3dmodels/lambert2SG_emissive.png b/assets/face/3dmodels/lambert2SG_emissive.png new file mode 100644 index 0000000000000000000000000000000000000000..0df4395d4df3dbdc0784997538c61caa2ccb49ab --- /dev/null +++ b/assets/face/3dmodels/lambert2SG_emissive.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fcf5d48dc3bcee201834a2b4bf7c7e76ff39bd511a303c6e1b8ba27338435537 +size 182159 diff --git a/assets/face/3dmodels/majora.fbx b/assets/face/3dmodels/majora.fbx new file mode 100644 index 0000000000000000000000000000000000000000..53b9a234df56b2003bebc79877e3a499cc4715de --- /dev/null +++ b/assets/face/3dmodels/majora.fbx @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:300429480d9f4cf23ec619b4ef4b441d7340d80d31332728b71621d5b497c20e +size 37452 diff --git a/assets/face/3dmodels/majora2.fbx b/assets/face/3dmodels/majora2.fbx new file mode 100644 index 0000000000000000000000000000000000000000..46683a92bad0dfc3c495bcd79165eaa858b723b4 --- /dev/null +++ b/assets/face/3dmodels/majora2.fbx @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0514e29147035592a16baed2e3e88e68479d3d5b7f9e6faf88d194bad26bfed4 +size 31836 diff --git a/assets/face/3dmodels/mario.fbx b/assets/face/3dmodels/mario.fbx new file mode 100644 index 0000000000000000000000000000000000000000..144077637de2995627b4d9100778c6e46e402dec --- /dev/null +++ b/assets/face/3dmodels/mario.fbx @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ab3eda678b5997016e8adb9415d0d5d8c2b44ea71e13cf1cc152b510cd084bf8 +size 970796 diff --git a/assets/face/3dmodels/mariohat.jpg b/assets/face/3dmodels/mariohat.jpg new file mode 100644 index 0000000000000000000000000000000000000000..665ad7b984af482ae2f702250230a99974bf6056 --- /dev/null +++ b/assets/face/3dmodels/mariohat.jpg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84def26d9cb499ff11e1355d8685a1652c6d6b31c2904459fa805af00de1bc62 +size 3811564 diff --git a/assets/face/3dmodels/sun.fbx b/assets/face/3dmodels/sun.fbx new file mode 100644 index 0000000000000000000000000000000000000000..5671ee89b416f83fb62dbffb770b6bc6af1cdaeb --- /dev/null +++ b/assets/face/3dmodels/sun.fbx @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:95fffad2210cb46d54fa04c1d5f881c904a5cc8bf91ccb8d05281ff8ef3a702b +size 63156684 diff --git a/assets/face/asset-manifest.json b/assets/face/asset-manifest.json new file mode 100644 index 0000000000000000000000000000000000000000..e178fbc9db795c7ec6278b796dcda0790efb8dc5 --- /dev/null +++ b/assets/face/asset-manifest.json @@ -0,0 +1,19 @@ +{ + "files": { + "main.css": "/assets/face/static/css/main.5ee12e06.chunk.css", + "main.js": "/assets/face/static/js/main.b0f5fd45.chunk.js", + "main.js.map": "/assets/face/static/js/main.b0f5fd45.chunk.js.map", + "runtime~main.js": "/assets/face/static/js/runtime~main.3fba743e.js", + "runtime~main.js.map": "/assets/face/static/js/runtime~main.3fba743e.js.map", + "static/js/2.410d8023.chunk.js": "/assets/face/static/js/2.410d8023.chunk.js", + "static/js/2.410d8023.chunk.js.map": "/assets/face/static/js/2.410d8023.chunk.js.map", + "index.html": "/assets/face/index.html", + "precache-manifest.f526bd34df8fb46f23bd5c002b1f6f7c.js": "/assets/face/precache-manifest.f526bd34df8fb46f23bd5c002b1f6f7c.js", + "service-worker.js": "/assets/face/service-worker.js", + "static/css/main.5ee12e06.chunk.css.map": "/assets/face/static/css/main.5ee12e06.chunk.css.map", + "static/media/glass1.png": "/assets/face/static/media/glass1.c045335d.png", + "static/media/glass2.png": "/assets/face/static/media/glass2.0a0dca8a.png", + "static/media/glass3.png": "/assets/face/static/media/glass3.8430f745.png", + "static/media/glass5.png": "/assets/face/static/media/glass5.de67f8db.png" + } +} \ No newline at end of file diff --git a/assets/face/favicon.ico b/assets/face/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..a11777cc471a4344702741ab1c8a588998b1311a Binary files /dev/null and b/assets/face/favicon.ico differ diff --git a/assets/face/index.html b/assets/face/index.html new file mode 100644 index 0000000000000000000000000000000000000000..27532fc054c09307c769d3c4f94d5310c35c7187 --- /dev/null +++ b/assets/face/index.html @@ -0,0 +1 @@ +Glasses Try-on
\ No newline at end of file diff --git a/assets/face/inflate.min.js b/assets/face/inflate.min.js new file mode 100644 index 0000000000000000000000000000000000000000..312b0774f6479826eac3a6f244be0fb2b9081dcc --- /dev/null +++ b/assets/face/inflate.min.js @@ -0,0 +1,15 @@ +/** @license zlib.js 2012 - imaya [ https://github.com/imaya/zlib.js ] The MIT License */(function() {'use strict';var l=void 0,aa=this;function r(c,d){var a=c.split("."),b=aa;!(a[0]in b)&&b.execScript&&b.execScript("var "+a[0]);for(var e;a.length&&(e=a.shift());)!a.length&&d!==l?b[e]=d:b=b[e]?b[e]:b[e]={}};var t="undefined"!==typeof Uint8Array&&"undefined"!==typeof Uint16Array&&"undefined"!==typeof Uint32Array&&"undefined"!==typeof DataView;function v(c){var d=c.length,a=0,b=Number.POSITIVE_INFINITY,e,f,g,h,k,m,n,p,s,x;for(p=0;pa&&(a=c[p]),c[p]>=1;x=g<<16|p;for(s=m;s>>=1;switch(c){case 0:var d=this.input,a=this.a,b=this.c,e=this.b,f=d.length,g=l,h=l,k=b.length,m=l;this.d=this.f=0;if(a+1>=f)throw Error("invalid uncompressed block header: LEN");g=d[a++]|d[a++]<<8;if(a+1>=f)throw Error("invalid uncompressed block header: NLEN");h=d[a++]|d[a++]<<8;if(g===~h)throw Error("invalid uncompressed block header: length verify");if(a+g>d.length)throw Error("input buffer is broken");switch(this.i){case A:for(;e+ +g>b.length;){m=k-e;g-=m;if(t)b.set(d.subarray(a,a+m),e),e+=m,a+=m;else for(;m--;)b[e++]=d[a++];this.b=e;b=this.e();e=this.b}break;case y:for(;e+g>b.length;)b=this.e({p:2});break;default:throw Error("invalid inflate mode");}if(t)b.set(d.subarray(a,a+g),e),e+=g,a+=g;else for(;g--;)b[e++]=d[a++];this.a=a;this.b=e;this.c=b;break;case 1:this.j(ba,ca);break;case 2:for(var n=C(this,5)+257,p=C(this,5)+1,s=C(this,4)+4,x=new (t?Uint8Array:Array)(D.length),S=l,T=l,U=l,u=l,M=l,F=l,z=l,q=l,V=l,q=0;q=P?8:255>=P?9:279>=P?7:8;var ba=v(O),Q=new (t?Uint8Array:Array)(30),R,ga;R=0;for(ga=Q.length;R=g)throw Error("input buffer is broken");a|=e[f++]<>>d;c.d=b-d;c.a=f;return h} +function E(c,d){for(var a=c.f,b=c.d,e=c.input,f=c.a,g=e.length,h=d[0],k=d[1],m,n;b=g);)a|=e[f++]<>>16;if(n>b)throw Error("invalid code length: "+n);c.f=a>>n;c.d=b-n;c.a=f;return m&65535} +w.prototype.j=function(c,d){var a=this.c,b=this.b;this.o=c;for(var e=a.length-258,f,g,h,k;256!==(f=E(this,c));)if(256>f)b>=e&&(this.b=b,a=this.e(),b=this.b),a[b++]=f;else{g=f-257;k=I[g];0=e&&(this.b=b,a=this.e(),b=this.b);for(;k--;)a[b]=a[b++-h]}for(;8<=this.d;)this.d-=8,this.a--;this.b=b}; +w.prototype.w=function(c,d){var a=this.c,b=this.b;this.o=c;for(var e=a.length,f,g,h,k;256!==(f=E(this,c));)if(256>f)b>=e&&(a=this.e(),e=a.length),a[b++]=f;else{g=f-257;k=I[g];0e&&(a=this.e(),e=a.length);for(;k--;)a[b]=a[b++-h]}for(;8<=this.d;)this.d-=8,this.a--;this.b=b}; +w.prototype.e=function(){var c=new (t?Uint8Array:Array)(this.b-32768),d=this.b-32768,a,b,e=this.c;if(t)c.set(e.subarray(32768,c.length));else{a=0;for(b=c.length;aa;++a)e[a]=e[d+a];this.b=32768;return e}; +w.prototype.z=function(c){var d,a=this.input.length/this.a+1|0,b,e,f,g=this.input,h=this.c;c&&("number"===typeof c.p&&(a=c.p),"number"===typeof c.u&&(a+=c.u));2>a?(b=(g.length-this.a)/this.o[2],f=258*(b/2)|0,e=fd&&(this.c.length=d),c=this.c);return this.buffer=c};function W(c,d){var a,b;this.input=c;this.a=0;if(d||!(d={}))d.index&&(this.a=d.index),d.verify&&(this.A=d.verify);a=c[this.a++];b=c[this.a++];switch(a&15){case ha:this.method=ha;break;default:throw Error("unsupported compression method");}if(0!==((a<<8)+b)%31)throw Error("invalid fcheck flag:"+((a<<8)+b)%31);if(b&32)throw Error("fdict flag is not supported");this.q=new w(c,{index:this.a,bufferSize:d.bufferSize,bufferType:d.bufferType,resize:d.resize})} +W.prototype.k=function(){var c=this.input,d,a;d=this.q.k();this.a=this.q.a;if(this.A){a=(c[this.a++]<<24|c[this.a++]<<16|c[this.a++]<<8|c[this.a++])>>>0;var b=d;if("string"===typeof b){var e=b.split(""),f,g;f=0;for(g=e.length;f>>0;b=e}for(var h=1,k=0,m=b.length,n,p=0;0>>0)throw Error("invalid adler-32 checksum");}return d};var ha=8;r("Zlib.Inflate",W);r("Zlib.Inflate.prototype.decompress",W.prototype.k);var X={ADAPTIVE:B.s,BLOCK:B.t},Y,Z,$,ia;if(Object.keys)Y=Object.keys(X);else for(Z in Y=[],$=0,X)Y[$++]=Z;$=0;for(ia=Y.length;$bvb\#D9)BSZaOf@WiaUZ8[_`qwsyrkp|mvFZum^a=FpJdF$H_7Z]Bgy2bUf_c_ixs:VjBTJ9!"+O`f5)36Xfnp2h(  97ML>9V%R +lfE5')<7WSq:ci};NVQ*siMrHB;5W%]1Sd; VNGi4l+#c:`*jZAw0asD6a4^j!7c aq0=A#)[NZDX:N''HVM!=PF$3^:?0/T]\\ 1$%#z=6OM0N=8I9bQ",#OlnLV@CJ3A%: "|AQc&VjA1"%Qq8HM.<$AcA=[:%S~JftOj~*te?M(FK3|*@.@Q7w8+ *[>[4g~q_v`z/B2'~^9284lz*4P=?@nj {c}{~{{}||wzwtwx|}c~z{y~xu}|{~s~ysdxx}q{|s|rsqxzryx~vzx{~w|~ymty}z~zoyyr}z|~~osxuyhxu}~~m~njx|{~{nul}r~wzo~`niniowk|x}twstz|jtyap|q~z`ws]yy|sjv}z~y{|{zx{~txyxy|x~yv}|y}~zn|ry}~s~y|my~~}}xtuu|z}qnzy}}~wqx|u}~z||~xy|v~z~|~~vy{z{zvt{}q||y}~vw{x~pw{mn{xrouyu{vuj~v~yst||z}r}u{}|wm}h~{{}|{ukz|v{zzty}u~|~j~vs~r{s|zt}x~zywux{wv}{~zvyy~|zw}~uz{{~tx{}{lg~}~{{}trzoz~~uy{x{u||z~{}v{}~~gsxwt}|t|m}xyzwq~t}qszc|o|}vwvy~x}{~{zuozd}zno~cu~x~fk~|g|k{}zhwxsz{r|yymw|yw}j~ztp|{yt}~sy~~ux~m{o}||{|}oxz~uxop|~|~x|}xtx|w~sx{vxq}oz|}}}z{y}w|zzwx~mz~~{v|}tr~g|m~{vys}{z|}xpuwv~s}{}z~}x~rr|~|x~}|~}~uz~}~tx~~}}mq{hqrvvyokzhr}t{v{k|~~otU~}Yj}m{|ozosln}t{|sUdz{ayPqs_z|x}|xxlq{q~}~prs}}~|{wwvyx|}no}{v{pvt~~{qm|}y||{ltvvx}wy{y}~~t{x|z}w}v|v|}z|~xz~zyy{~|zmzqyxrxyppx~}z~wj~mux~{ry}yuwx|xho}t{||tyzwv||wy|{np}|v|~}}|{{ov}xn~}u||toy~v~z|r|tur}~w}un~{|szxx{y}mt}tvtu~s~|x~~{~vy|vu~{~}|lqy~}}|~|}}xs~}|ux~y{{s||}oqu~}}}|}v{rxv|~o}q~z{vw~|z~~~~ox|zt}ux{{qo{f}}w{|zn|}{hry{|}|tqqly|~txzryzyun~tuv~[szsx}{w}Zpzv~tr{|w}xyo~xxm{r~uw{xx~zw~{xyzzwwy|tuw~s|t{w~ztyz}w}|}y{{t}|~~|u~x}s~~}|~~|}{}vt{x}~w|~{w|zvt~sxm|zyxpw~yrxzv{|{z~x~|||s{}~}w}|zrwt}~zwysxtp}zz}|x}{w{{to~izvtorkmu~klTz}}|~]uqps}~x^|w~|~~syy|ux{}uvy~}}yioxs~{{|yvxnyu{tx}~to{z~x}|~{y~{zxst|y{~y~w}zzqz}pw|}tx}vywy~|}xy}~sqwy~y}~|wz{}xy}~{zrp~s}~w}}m}~|{us~|z~hku{y|w{z~zx~ti}{wz{wn{ym{p{~}y}zxx|}}z}w{yut}w~}xwx~{klvztuz{~y}|pxzw}|ru{||z}|s}swx||n~y~z{}|}pwus{|nk|~z}qt~wl}s~wzuss}je{~sj\zkfht~gnsteoysz{|zwm}\q}s~}zwx~zzu}||q{|t}v|~xwts~vx{s}{||t}||{}|{jzuxzzr}u~r}suv~l~q~|}}z}~noxyxwiw~~w~}ty}{}{vswx}}~rp~ysvx|{|ux|~{y}~ws~~}v|zyswl{~w~{v}wxw~r|}}xxpq~~}}y|x{s}ss|z~vxsozus~}tvylx{ou{r~}z|xww|pi}y|{y{wwvts|~|jy|ywvv}v{x~|}{}vzs~}w}w~u{{~wz~zy~}swx{}{y~tz{~~wt{{zwx~qq{vy}zw|~v}~vzy~vx}{~mozvyvt}j}zyuuv}z}gky}~~u{}}}tzq{zy~uw||iqxm|s|n|{}wvsf|o{{yt~v~~xzy|ym}~v~uy~xu~z|z~s|~vz~~~zs~||v~m}xgYzuh~dyzl|vg}rPo|ebkwxpz}~y{}|}}|uvys|sx}xz_iz{~zvwww|~wvxv{{||zr~sqzrx{nsru}xqj~{{}tw|x~qvslv~~sxu}||~x|~{|}kvnk}}}{}~uwvv|oyo|}}}vnvo|~xt}~{~mq{}~}}px~z}vy~}~|sx}n~}yx}~}zuvz~}~~vzx~}v{kp|wwq|{wtzzswyr}Yp|{}wpo~|w~qe|vzwyzr}toymt~{{uz{|xxwo}yhou}{r{xpw{}xwxxz}~}{|z|y~mxyvx}u}zy{uyyxz}uyvrz}~{{r{zuv{~tw}}~}pp~zxw{|x{}z{yu|t}}}xyn~x}|}y}v|g|q|zvys}~y{y~xyzp|w{y}~zzp}~xmv}n|xwmjjyt~{{~z|rn~{vnsw~xdg]vzbiryurylrZ~w{zq}oe|qu|y{yhkp~^{tut~vsvize[z}o|}|vlvfe~qtuwiwv}}~je~|k}wy~}qgx|u|p}r{|v}}u|y~rw~zxk~vv{|s}||{{}|~{|vxur|||x}~zywmwww}ty|oyqyz{uw}~|pumrg|}}zuvw|oyz}~}}~{zl|z}r{w}~~wz~zu~u}}p~}v{u{kzy~~umw{|~}|~}z}}}{~z~|oz{{~{{qypw{|}sy}|yr|w}xl}lozqj~v}{}}}|z~v~wyz~~~~}yw}|v|wy}yz{x|vwzUx~~|}}~wzv~zwuzuy~rq}|}zz~~nrtx|vu~{}~}q}|zpzzv~y}v|m{r{}{yyqvt|y{~~xUs}uxzyt|y|ut~~}y}o~vuxz~~}y}z{}z{p}x}~|~w~~w}|}~z~xy}}m{w|x~}h~}z|{|{{}{{zvvrv||x|||g}}o}y|}sz}ql~zx~qt}~usz}z|zp{y~xs}}}xz}vy}{y|~o|znr}||z{}yr|x~w}{sy~~us}}|p~i~~vt{|{|qwzyy~}}wru~y|t}zlhu|r~}ziw~}~~ywzvz}zuwxvpot~|~y|z~}nyvytzyv||v~{~|pi|z{vzss~l}{}u}u|{s~z~~y{q~~~~vukj{|{|wzs{vY}syyxys|}o|~qp|turyyu~|~|y~w}|w~wsq}}wy{vvrp{x{s|}zts|x{}o}|}~qz|w{}zu}zy{~~wy~{zt}p~p~~u{}i{u~|v}qz|}~n|o|n{yzxzx}z|z{r|ty}{||{pt~|v~{vyy~ulxy|}~y~xyrvtrkx~y}s{rtvjtcxixzut~yx{e||zpZo~{hor~Ʉn{izxx|nr|qzlhLj~zz}qpdu~~z~i{{}~uuxux}}~po~~}}~}z~~wv}y|~tw|ylpz|{yyu~{yx}w{yz|}w{w}}jw}w}{|wy~~xxvlyqz{{zosuu}q~{vx}sw|x{|x||~yr~{|wlzvz}{vzz{~f~||x{x~zhw~{z{{}kwk{}sw{yx~pzwt|}~~u}yyrvwx|}{vx|wz~qt}}{}q}w}tysx}~x||ux{rux~~qo}x}wvy}jy|ltp|{}|~xr|mw{gz{s{y|rgvqqw~mmuuR|z{y\y|oncrltreulmys{vwi|ss}pu\r{}x|}p}}yw}rxxyx{wuw}nx~{yr}{ytw~}||v}zt}}z}ui||{}{zx~~uww|qvzwv}vr}{{u}mpt}z}vv|}}x~}t|y~{z}yz}{z}}xz~yu~wtp}a|j}rtwusyz|b{sy{bć]tmy}z|v}x[}svxjs}Nvzpy}v~zjHWzuz`w`~rzvt|oxwyt|}X~rmvsr}tvowpɟ~y~rz~~s}i~}}}~huj}|k}|}{uv~~|nv}{s||{{vw|x~yroy{xr~~~}~y{~{vtwvy}|r~o||}~|w{x_v|~}zx{{ztzz~}~l|~{xky{}tx{r|}r|wyy}uwyttxy{~mpz{~y|uz}u|{w}t|cvv{xx}~~||yyozzxu||}{~xv}xwsp|~s~|y~y~vxr}~t|wzm}~}~~~ni~|~w}}~n~{rypz}pwoy~~{wzvx~{qxxtuw{~}vp~vzy~|}mnyy{~{|}{{x{quy{}rw}}js{w~x~~u{u{xz}u~ru{|tv|{|}|y{{|p~uzzz~qxvwxnp}|v}{mw}v~t}l~|||pwuw{jz|}~zzr|z~qw}u|tx{|p|p~|}~sz}{wxvq}pzww~}~rw|~yztwxxv|{}|mo}w~yvz}}v~~~}|}z|v}yu}yv|{t~~z|zp|w|{}v|ssr~~zvw{|zmzvw~|}z~r}ts~wrz~}~|rxv|xzl}~tyxw~i|{~w~{~ypuxt{}y{~x}zyvxx{~wx|}}}}|~zq~~p{~~shz}}w}}g{yxu}tq}~wn{izur}}{|g~v|v{y||}rtyrqi\vxt~wzix~qn{~{ypzv~rvv{}x}{~p{i|~}u{{|~}{pw}}~}q|qu}~xpvuq~~|{~rx~{zw}x}qypxuw|tz{r}{xp}rmto|j}{r|zx|wwt{s{{y}{nxzz|w}|z|qm}}|i~q{uvszz}yxyt}z|w{`}v|x}~x{~x|mv~vxxxvpo}y~lsZz~~~|qzy|y|j}zs}~wzv}{rys}n{c{vym{}~}np}|{nwz|ydd{xy|w{~x}rytx~op}|~}~{}|lez]}WVov}j}x{z~wsxsymy]bzqv|vr}~y|_\zkr}`cuitt}j||spsr}}}yz|~tx}}|}pvx}x}l|yyr|mw{|zvwo~}}|}{}~vx|}xz|wo|~ol~lx|}wz|}wysx~}}{}{|xwz|zrx|w}ntow|botxqy~s{zs`}~zuxs}|rkvlyz}twxcmugm~{u|uuw{{yz|||u|wssnz|~y}ywzxzy~}kt~}~x}qxm{np{ezmxx{s{xw}}zvuzunyv~wu{~oz|xrs~}ys|zz{y|u|vw|{wx{{}}~|mzos~g}~|x|wwtpj~~tq}z}{jnmzr|}qyf~||txqz|mxz~qiywwx}y~}vuzs{}{qwrx{v}}sur{vzy}|syu{ty~|zylw{{tzx{|}~w~{}xv}uv~x}~uzo|||sxy|~mz~|yy|~}vzu~~zuu~}}|z~yvzvz~ux{~}wx|pm|||q|zxwz|~ux{~}~p~~o}p}{z}pw~zwxz|sp}}u}yv|z}o~v{}v{vs|qloym{iuls}yzvltgzos_s|p`m|ym~yu{{q}y{{dt~vygy}v~yw|~~}}~}~{~~~|~~~s}}}|}|~uww}lyzxqyyv{~}x~|~z|yz}yu|v}~zwr|{{xyz}}x|t~{{r~{w}y{y{}x~}y}o||z{|xx{~}|~}|{~|~lv~z{~}z|}yx|w}o|~s{yy~uu{st{~}}xyvw|wz~vw}u{{|}m~{{w{kt~{yv~|~w{u{w~{{}m}s{{w|zz~}q~m{|w|wqw~{{|tu|~}{~~v|x{}zzx}xw{y~w~|u}y~p|s}|{zz{}}{|p{}{r}uw||zw~{~u}t|{~v{~~}~|x}~y~{ov~}~~~c~~u|vq~|wzw{~`yr|yhf}qmxz~t{}yy{tutrk~}uzq{wkxrwotjnmztaw~rvkaolqzLvr~ww}uo|k}yw|^fqqzrw~~{r~lrwv|{ezqz{vy||rw|{{vx{~{xyxy~|y|xz|}qw|{yxx~qp{~~zx~xxyxvy}|{qqy}|xx~~sz~zxtyz}~|pqw}u||}z|uw{|x}~ty}~}}}tp~{lwx}}wzm}u|{uztv|w{}v}zsuzvvpkdw|o[u|r{~{bruv|{v}zyjyxdy}~}|wvy|~yy|r|}zuy|w{wvz}ytye|r~~|}{v~uv~|~~x}}|xsz}lvs{|}{y{uywy||uyz}w{z}z}}{~y|v~~xzx}~vww{q~~|}Njwzv}{qxt}w|yxz{z}~vi|y~{|}zsw{yx{~x~x{~ty|yv}~yvz|~~}~}{}w~r~}~|x}|{zr|iutvtkzyujosvwmt~y~~|}|{mV|gvupjymv}p|yxupky|xyozmts~rpft}}v|{}w{y}y{zz{|upyvt{w~ycw}{zuzv~~v|wvz}z}p||ox~~t~zyx}t{z~v|v|~wxtrz}}yz}uzsxw|ux|}y}y||}~wyzxxx~~u}z~yze|w{y~z{rv|{tzw~{||z|{yvww~u{||||x~}pz~yz|}}~|nt}x{}w~}~{|x~{u{|rv}t~|n~}zyjttw}{w{~wk~zv}}}z}}~rm~ui~p|~}y{z|vz{~yu{y}~p}{{}y{z}~ohr}u~y{~wpz{||s}t|vt|~}ovuzxyrw~}|~u{~z~~|~v|w|r}}}~|~yx{}zn{{}~zuw}w{wi{xx|}u}zzzzzzw|}im|~~|||t}qvq|~|tw{z~~~yv~w|wxm}rzi|w|hnygzgtrywxtvsyyunzjpzcyg}t~Eyv6zyxvpnxss{qt}n{z{u}{vu~wu{t~|~|zw~}zyxt~z}x~lt~{~y~i{}~{|~}}z}~{|w|yw}y~z{xzvxztw}}zzp||}x}}||qo|~}z}~~}}~~ty|{{{~~{v|yux~~zuky{k|}{}vtx{w{z|z|~z~}{~~~uwt~}~|tv{sss|w|}r}}q}}~~zyyz{{vzw{yvqn{~z}zxy|}y{x~yw{~z}~z{v}~{|}}zpqwx~~}{{v~}w~yy|~}x~~zzy~|{y~vr}h{{z|gtslpsqeDbt@YqolUaxwl‰trD~nyyuvytW|{|qxrwyLsvuG~mgfqhgljdugayy|~sd}yn}}vxyev{x~~~~~}|{w}}{utwzu}z~{{vz|{|}{{wqvyrz{}|{{y|{nzvyc}}~}~u{{r|}~}}v}~|xpv|z}zq}~~~tz~~~|s~~~r~~z{v}~~|y~rz{|oxzt|x|mxxzxwr}~}|u~yytz~|qz~|wv|tr{x{u~jq{~}~w{|}uu|x~y}z}|}||x~ww~x{~wsulz{u}}kus|}wv||~wx~{|vv~|}x~zxtuwnxzwz~~|}}{v|~x{~}~}wzz|vs}p{~vzz|yi~tyu{~|iq||z}z}~|ntk~t~by}|~y|{v|{}w~wz|o~{{|zm~jy}rt~x|y{s~yw~xwzztyvvw{}}z}}nsy|q}|z}wv~{tz}}{|vwu~y||u}yy~z~{~u~u}pxp}z{}}x||o|w|{|~{{~{~y{x~{z|~}{{~ty~}~|}{r~p}w}z~u~}~~{v~y{uty~{vwssTze|vN~q|q}mvbkp}dgnoya~pvbx}wqnlzwu{|{w}|}x~}yu|q|x{v{|~}y~{yrv}~}xuo||xzvw{tux|q{sxptqvzz~www}yv~z|z}~znt}w~z}w||{{t{}upy~~}|y}~yyx{s{zop||w}yx}vy~|w{s}w}s|z|}~x}}}|x{{{ww}y{d|n|mxvx~}w~twd}u}x}{v|~~|{xv~~ve|xy}w|wunvxqv|}{i}kҋ~r{}sy~}o|~{t{xpxy|x|}i|}w|y|qw||y|~}x~|w|~xw~tz}}}~p{yozyz|~|~~~x{}x|~~xv|{~|~|zz}{{~ztwp{~}xzzz~x{yx{z{|}vytt}{sxzs|{|}|hq~~}}|ug{wy{wr|s}u~}~{y}vuq{|~~yx|y|}xuxv~|||~}r~~~pswrz|zyzz}t~}tu|~~}zzx}|}tqtzywu~m{w{~}~xs|y~y}~~~qpw~x~x||tz~~}x}r}wrwwz~{~yz~|~|s~{~yt{u~{~}~~~~vt~|v~j~~~y~xy|yy}vux}|z~}z}wv~{~}|~~|r~qz}}|y~twu{y{}v|}vy}u}}vn}wwuz}|x~zx~y}y}tv|{~~|uuz{}}u|uy|{w~vuz~|~{~}{w~Lv~}dr~txqytkprw~~mop~~y{~|qryuj_vukmz{xyrxv}y~w~ux~}{y~}y{}}~{yi{rxpwz}x|o}z}yzty|{y|{|vt{r|xwu~}{z}w|y|nz||y{|{z~o{}{~~|~~x|}|}w}u|z~zyt|v|{~{}uzuts~}zq|z|q{}a~^q~p~ozzqs|}wpui{vyq~}ms~|]~yt{xp|hynj|~~q`|~u~}z{~w{ju}v|x{}~}x~~~{q}~z~x~x~ny|~~u}}zywu|p}{yzxz~z{~v|||~u{zvx~|{v{}p|v{}|{sx}wv{|{x|y{y{~|}z~~{w~}wz}|}u~zx}}}~|}~~|{z~zvy}}ws}{suv}ty~x|}~yr~{zyvrpu}}|~~~{yy{~{}~{|q{}|zz}vsz~wwyrpv~v~}{~o|~}{||x~fuuj}~{~{~s~xw}lqzrwgu}fz{s~wv}y}wsx}ryux{u~|nzwzy}{w|wty}~vz~p|u{~zsvs}~w}{x~{}|~~||}|wt{~zr~~~y}x~|wz}{~}rqx{{|w{~v|z~z~z~}{~x}|~xsqw|}y|w{uu~yos~xv}||ylymuy|~{s~g~e~o}g{r^r}yenny|}~|r|t}qurn{zw}|ws}y~~u{~}xzu{xy{}x~m{{|~rz~x}xzz[{~{b|~q}{zw]yHwroz|qat~|]{~|wrwx~~qw~smtzyz~}|}|xx{yt~p|uzx}vupus}y{s~q|zqp~uyxpvq|xzvy|z~wu{{x}}{~{Sx}m}s~{y{quzvvzbyfszx|}yzruls|~~|~{{~}z{~vw~v|l~x~|xx`~{zxn|lu~|v{w~eys|~t{zuvn|pu}u}~w}~w{~xn~|{~~~w}~{t{|xt|uw}||s{{~{{|r{ty~}p{}glx_wy|u`ns}|}{vy}uq|}~vyv~~~w{}uys}}wxzsx}{qolypz{yi{~kyz{wvs|~m{|rzmuzu|zw~{x{r}~xqwzr|u}w{~xyuw}|uyv~rz}~~{x|xxzx~t~{~|{~u{z}}{~xwxxzs~{{{sw~~w~y{}x}{u~|~qx}~uzzr{vvzzyz~~~||{roxr}xw~{{tq~zsw}|~t}u~}xw|y{x{~|y|wt|y{}gq~}y}}~~zw}w|~|}z{}zy|||q{~z~tupjw~uxjynnY_~x~rbXhtzkqhqsbzdcyn}|i{qb{l}}{z{ij{sjurhi]kys}gxgvtnp}k~vh~usr~[x|}~{~~}~zyz~}~vuwzz{u}~ux}}vx{t~|~q~|o|~z~wxxt|q}r|z|wov{w{|qx{yoz|~wxpu{mzzz~~~|wq~}~~m}x}}osxxy}}|x{z{~wz||uzxqxx~t~~ywy~rt|~~y~~z|}~|zxy}t{k{x~{y|~z~x}}|{zy{~z~zw~v{z~~yv~y~u{ww~uwvsvx~|c}z{|io|z{yy||v}|}z{v~x{|~~wyt~x}~}~|}lwy}~~o}w~t~qzzpu|wp{~h~ywz{{wx{~z{~|}|ktuyp|{|yq|}wwotxwr~}zw}wy||{k{{w}qh|r|{vk|xzvpqzv}~y~v{svxz{{wqpfzxw{y}|}qyswv~~w~vy}{|w}~vw~{vrv{ym~|~~n~xz~r{x{~|}}~}~vwvysu~~~u}svyw~{v}}{tuq}mxst|ux}t~s~{sso}|wzuy~|sz{}xpyz}v~}zny}~tt|||{z~{yuqxz{~tmzw{yq||yzzsjo{onxxx}x~p~~~zx|}}w~}|y{g{kv|trn|y}zzy~s}|vewwosv}||}wt}}zbz|yx}}}z~{yq{vs~w|s{lx~xUnqvddq~k{|ʕ|_}upulw~vwsyksp}{{{uv~|||}w|vxvtt|~wlx|x|~|sl|Ynw{v~{u|~so|}p}yr}nztu{{wszyq|xg}wi{u|rk~{vesq~s~v|q~~}u~zxyw}yxwz}~}{{quy}usz~w~}vz}x||zzd~ty}|y{~w~w{~{~|}~~y{p~yzu}~susyv}~xv|xt{w}nq|~|vxx~|w~~juz||w}~{}vxqqy~ji{x{Wyx~x~~zlnt}Qwutiszt|~}xs|{x{zw|~xr{o{trmy|Z|xi}uzwtrsnussTxr}~}{s~[jh~~vvosv\syӋ}~ttzxmnw~lwuxq|qz~xw}yzs|}y}|||wwy~{~}{vw}~zylv{yrou~q||~}q||~wy~o}}~zzzxzxs|~v|||y{v}m}ou}s~x~v|xr~w|v~~zvx{yxy}{{}pmv~hyuy{}xzzx}|zy{w{z{}yzw}~|{otxx}}n~||~~}V{{hzwzpq}~{}tx|~t{}|}y|}{}{|s{zzs}srpwrzs|t{|p}|wyzxx{uyvwyujxxxx~gwz}vx~~~}br}qgwk{r{z|tp}|vytv}iyrx{~zv}y}z|}m{fzw~}y}~s}rs|zx}~||~mwz|~wxvstn|urxywvv~t~ls}usyy}|zr}xv{|w}u}xhy}zx{~{~|ntq|nw~}~}|z}~}y}~}vrwuql~uos}~psq{zno}u|qxi}ywusxsw{|~vqcxx[vdyz||Tzz|~qzy{~t~~wy}}}g~}~}}~ss}t}x|}{}tv~}z|uuvx~yy}u|w}z|{~||~{ty||rzyt||zr}owrz~z}}wss|~~~wvys{}{}q||}z~m~xy{|y}wtrz}{}|vry\|ky|{j~z~~{zu||ywy~ofxw{pw~||hx}yxw}x}}lxod~mx}{vjes~qx~}zk~~u~|rNJmwy~sqi~|Nqwmwsv>~uo~aytygzfpqa{yk\lpvul]~wl}f|z|fpk}}fgw~z~{|s}xy}zp~|r~q|y|}}}}~xoz|~u}sx|ox|euzy|xw{~xr|{~zyu}s~}py|w~sttv|uz~wv~{}x~}y~s|y}{}z}}~u{t}|}|~y}qtxz}u}zsr{||~~||~qw||z|{~w}||tu{w~}~ztxw}|}||zx~{{w}{w}y{~yrx||y}~{~zz{zx~xqypynxw|~t}|v{~zwrsv{~|v}~yz}y~}~~{wy|z~|p~}~{{~snt{xzr~wzx{wu~s|zuw~{sy~u{x|jzw~vlr}~}v}zrv~Z}|}tl|tywrvzs{}~v|y}{|uzry|z|}zztxw|vowup|z{vuxywzw|tl}l|~ty|zyxxt}o~||vx~sx}z|~x|r||z|v~~t|tmw{qz~vx~x}{r}}z{{vz|y||}ptqz~}}z}|z{x~xuqwszvUz|y}~|~yny}yv}z}~x{x~{m}wy}u{{|z{~w}{tvy~~x{~~}}rz}}z|~ztq{tw~~t~z||zxx~}vtwxx{z|z~wsz}x~}xv|}z}|vy|wlug{|qwx~v~v|}yy{{}~x~|w~~~slw|~}}zxw|~zx|~}{}~{}z~r}r~qyxxsx}~|u}~r~wv~pw~|q~u{t}ttjry|}vv~xv}}|u|{pz|}z{r|yzx~rvtznv~wx|y~~}v}}{}}o{u}~~w{}|p~}{}{w~y~~}~~zz}{~|}}~|~kx|{~jxz}tpw{rv|~|{w}|z|x~}r~wj}ywzx}wyy}{}{zx}|txz{zs}}~w{|~x~~y~}w~xt|prrvzrqvwo|}xnx}xuzvu~ntyw}y{ushvru|}xeb|vz~wn}z~}ez}uwwivy~~~k{v~}{}yr|ss~zyr{||||{j~x|}}z~{zv{~szy|~oyty~n||~y}}xt~zt~yvn{wx}y|}~~v|{|~{||}w}uyuwyny|gyw~so~}y~w}x|rluyt|t}u}tz~x|vuttwyr~yz~vyrp}zm{m~yoro{vt}q|~|~z}ymq|mqh|}vvr}rzx~r~z{{~}{xzZ{zv{{~wwtyy~s~~}xu}~}|utztwvvwot~v~wt|~qsxy~{zv{~zt~u}~vs|wztv~tw~znto}wnz|~z|w}uo{p{yt}qsu~yvjt|q{|{utyr|u||x~~|x}|}z|y~}vroxzny{zwzit{||wvuuyz}|p|}qpyx}{}~zu~xx}y|}{n|{|}yv|yz}~~zx~|{~z|{ryvy}r|~{}p}{i|~lw{zpuw|ozwz{ru|z~zwzz{xz~r}nzxzw}yposx{upv~|z}v~~~}}~{||~s~~xk{~~r}{v}u|{yy}|~o}rau{~wvl~pyh}y~uzx~xslv}}vs~~}yyvyyxy|Vl}|qnkb{f~yptv{ou|hw~v~zy{zx}nt|nr{{~vvuyz|w}yx~|vzv{}}|wwu~~{zu}}p{~yxvu~womww|}w{sxxvootvy~|suxuqh{z}|~|dzxzw{}{v}ryyzzyy|wyw~w}|zy{}x|v{~|yx}vvmvvzq|kuxvuxxt~zztwjyzwzt~v{ozuzvy~tv{x|}v{y~}rmt{zuy}w{}~wr~z}}yz{|xyv~|iz}z|}}{w|~xz|v~ov~|vu}z|}}{~y~z}w~yknzmyw{w}}s|vtvx}xx~wspy}}rx|s}mttw|x|xszuxw{|}}}yn{y|{rzz}~|xjjyxo|}}v}||~{{{~}}~vw|zt{{~{y~{w~}}{~~}}~zpw~}wz{vozv|y~wwwxyw~|ty|t~{wyu{y}{q~x|z~pmvz{{~}{||}|{suzss~~~tsq|}}}}|{~www~~|nrozzwy|}zvfzq}wquzmvvy||kpju~kzyus}y|{xqx{~yp}z{sq|}z}~pyyz|vtz}}{txvy|x}ya{ut{y~xyvyx~~|}~s~|}zrrynz~~~u|~}}ss{{~}zztwzzwzwt|sz}zv{}wryyxz~zzz{{vt|nv}x~||||q{vzpx{{x{~uo{nyz~~oyyx~zt~z~w}lzz~}}~}{mt{woywv~ly|~ttz}~}~{|vyt||}}py{{~vs{~~|~{{{|t}{z~yv}y|{xzr|qw{y~}{|xzuzyx|z{w}~}z{z~|||{trn{{}|x{~|mswvxz}~yu{z{~pxrt}~zz{p{{|v~s~}wuzx}}z|v}}q~x{|q]|{wjo{stlxy}y}|v~~v~{wx{}vz}zryzks|zu{~{z{{w|lyatwz}vzvizy|z~||z|y~~|{s{~|}}}||vty~|~zxu~|z{ou||||}zz}}~~yv~}{|w~|v~s{|y{~|y||zyw~pvy||y|{z~zz}~|{zzov~}}w~c~~~u|uq}|wzw{~^yr}zhf}q~mwz~t~}{|ug~~}W~xoz{|{rz{nxxjqc||sysyzwil{s~xuy||ptxmzW]l~y|n}}q|nz~r}wSnzr}{tlhyudVz|z|dw~xv|vz{xqvu|xy|w}wyyy|z~wyyy{}xyt~yyy~}zvmpu}y~|yxx|xy{wy~~|qqwx~sw~}~wwy}~~wyz|~upyrxstsxv{~~~~{}vwz~{}x~~uqwu}w{{rruu|rht{w}zh{yryluuy~vny~r}v|nzxml~y|~||~~tz~y}u{~rwz}t{x~r~~u~wqsutyy}wzx|vpw~y~}~flwzr|~p||ys|}xzu}~{jszz}||x{~y}q||ox}{~q{y|}~~wz|~vyx}|y}~k{vv~y}~k~ztz}}y~}zux|}}y~q}wy~uyyr~{{x{q}}||w{}zt}}}|xypw}~rvz}xw~~|p{zy~|y|txt|vpuv{o~~t}r}}||zx{py}tyx|{}ovy~}~}}v}~}}yz~~~p}}{{y~{||szГ|zk|z~}zuk{z_tjxu~}~x}z~zb}gpwv\qx{p~~`z~oyw~{_myjj||}z|}~}}w|xw|sv~}s~{~|{yt~~nx|}z~vw~w~uz|z}|v}xyfv|oyu|}~~zx|~z~~ww}~{|}}~}{z{v}t|}}yzxyxy{vzt{rv}{w|z{z~x~|txu|~y}|yzx}|wm}|}jwz}{~vynszguzt{vwx{qry}xy{r{|s}uyys~vxxx~wy~{}y~|~ypq~su|z|{w{y}|}zvyspzt~s|p}}{}~~yzzr|}~zv|y{wq{ztnz|}{xr~|rz{z}j~p|ty{}~q~}vsy{lyruy}x{suv~x}{~{v|uv||to|~zw~}~y{}tq{~y~}wv~~|xuzmz}sx}u|}{}y~nt{vo{m{}q~}w}wsu}{{}yz~}s|{y}}xsw|}y}|{~}|}z~w}x}wzu{opxy{~||~{~y~w~y}}~|vu~~}|syx}uvu~v~}x}zy~|{}s}y~}~~||~~~~zz}x~}|xw{n}w}xy|{}zz}}py{zwyy~}~rw}ltxzqxs|~x{|t}u||o~~upuz|}{w~vy}~z|~y~{v~{x~{yz}xz}|}u{}uxyu{r~ywmz}~xys|~{tuzy~{{}}y~{~}|}}~}|x}||w}~w~~~~~{~~|}yz}}}~~zw}{}~zz{v{|~y}~zv~}r~~}փ~}~}x|~z}r~z~lu|{k}vw{w}~yxq~v|}w}s}s~vws}~}x{|m{vuv~|}yzpzvruz~t}}n}ps|x{u~sg~~~}x}yzz~|t|}|l~{z{u~uz|qwuyyzq{{z|t|{{y}~|y|~}w|}v~|xz}yvx|}}w}~w}uyz~zz}~z|}zy}w~{vlwuypYs|yv~rq{y{xy{}{{{{}n}yv}kwr[{yy~~xyz~~}nyxz}it{tu|kw~tzxo{fpfsrux|}|~y{qxvtyT{|~lnwxzlrymw{~}|y{yyz{y|~~{|}}w}pq}|{~}q}z~|x~f}xwwq}}ux}t|ww{yy|z|yz}~wzwxvyxxxl|y|}y~|~~}u~uw{~yy~{o~urx|tuxtw|wz}~~p}xz~}z~~|yp~stt|w~~z{x~z}}z|}}~~zw}zz}yw}~~wrx~}{|x{~y|~{||}z{|uy}|wyzrr{}v~z||z{~~wrz~|{|}{{{~}x{uyzw}}}~}}~jv~|uzsqvo}|~zzws|twil}z}myuq}w{t~}s}yx}~}u|~|p|zx}z{~yyvs}s}|tux|y{_z{}yucj~zv}f}v|~x||zo{}zu~mq}|tc|~|bp{qyz~x~mror{z{z|yq}w}y}xu~}~~y~~w{~~}wx{|xrr~}}szwzxz||ywx{}zyx{}|}|wx~||v{xs}}~y|{ykw}{j|}wq{~krz{wk}v|uw~|dy}ix|x|u^j~vy|zzttz|w|v|}otz||}}z{}|ymy|yzm{v}|y}q|~xvwxyz|nr~|y}wx{y|x{||x{uv}}|w~w~}}~|~}|u~{uz{~{{|q}~y|}w~{~zw{~}x}}~}|{z{{tzrtrkr~{ro|}t}˅|~}irqvw|yl{tt~~{oysp||Yl~svluu{qvv|suwrui}}~~}whuvt{z~~}w}~||{}{s{w~z{|wwz{~~|zgx}|}t[xz}zz}vq~{~}w|{u||y|r}}}}t|{t~~rzuu{}{|y~vq~}v}}z~x~yp{~yz||n}m{{xurz}{x}|w|wqzw{xy{||}|vzs|o|{|ytyvz}~~y~}r|{s~x}}~x|}z~~v}}|v}~t{y~|{o~tw]S~~|tw}|Ys|{|u}~}oqVvzxt~x{}r_}n}t{~wy~}v]{V~nt}i}x:w|wz|t|ws}~yu|y}~w}ov}|h|wu}{~~|zvjlvqw~{z}|{z|{|wtw~t}{w~|sx~pxr|{q{}x||zz}|x|~z~|{}w|z}|~yz~|~~||v|t~{~|zz{~r~|~yzyz|||{tooxv~l~wczvtyv}|||lew|z~|~ywy~yynny~yxttz{xyut}{{x}|z~t|xtwjywx{x{spvs|~{w~~}}s}{zw}}zywu}~|}zr{~xyz~y{|~szuxxy}zxzt~~}|y{z}}z~||uyz}}~z{x~{{}zx~|wywz{}p}}rsy{u~d|}}zvz{zyzt{r}y}zkx{~x|p}z|sy}|y}z}wu~{}~|~~tyquw}|{y}wxvu~~}w|wxzz{yh{p~ou~}ywzx}~v|{u}{zw}u|{|~p}y~|xy}y{yu{~y|}||||z{~|}|z}xt~{z}t{~~}}w}huiuTxvvvf{zx~ujqtu{kovp\oskr}yjx}`vytlqvzi{eyxwY^~t~e_uuuyz}zsvwrx{~zz~u~~x|z~{y}e~mqv}w~p~{}S{~s{|vm{~z|}~stl}ps}sy}g}s{~|~y{}|}~z{}zx}}u}^{}}|su}~wzznws|z|t~~w}}~|wy{x|wwwup~|y|{}~~{i}~xwt}xo}x|mytrr|vxyy~m{wx}{|u|{{}}z{{|yr^w~u{}}y|t{{w}|zo}|m}~x}}}r~zyx{}xtwz|}mu|c|v{r|~v}o~y|y{u|~ot}uwt}|ut}{u{~y|prs~}x||~{|x~tx}}vs}l|u~|wwuxz|}{xwy~}~u}w~{~v||y~|}~}~{ystz|yp}zt~}{{|n|}~k|v}i}{y|vr}|~|vz~lx}psw{~uz|xmx{~}~~~~|}{|}z{zs}||~yw~s}}|{~{}uz~}t~{~zxqswxz}y}mz}{~|nyz}{|z}t{~~y~|||}~~z~tv|~~}z}||}~|sxw~v~{w~~}}|~s|vpXr}w~u{}w}j~|syzQ~{~z}}}~z}yrpwz{~|}vw|yy}}q~zmz||tw{|x{yz||x}r|x|yssyyvs}u}||yzr|}}zxv}zz~~y{xx}~x}}{xv~|xyyz}v}z}zy}~xwzu}x}v}}uz~wus}y}z}s~}{~~wvvy}{yu~x|}wuvxv|~x~vywvlk{mwyv{}}ryse|oz{|t~~izzeuic}x~tjsu|n|pr}a{}~nzytm}ty{yx~w~~xu|p}z|y{x}v|x~xxo{t{v~}uyt~zx}y}{z{oy||y|xzx~}~xx~u}{~x{sywx}}rn|xw|q}dp{ws}{~n|xou~}wv~~xzzvzxityo|z~jyuq{l}_}y~z|~{vw{tt{j~dz~|xtr~~qwxl|}}zvmk{zyw|w{|{n|yxxsu{vzqyzz}y~x{w{wvxdnrno|{jmasx|s{}r{oxzyo||xy}|szyz|}|y{z}huvqzo~{~z~{y|qz~v}{q~}xtw{}w~zkyyo~|~t|}|x{u}~sj}u{{y{vl|s}~{{zx}}x~x}xyw|}rlws{|}u~|y~y|}~~xs|~xs~{v}x~|vz}{}zt{z~wy~}z~nrxwyuxs{|~|qu}zv}t{op~tqnxnzs~z}xzs}{ll}rszvl~y|~y~x|Zz{uysz{{y|{}xt|t|wqvn|}}}{q~yxxw~yj}u^{qywz{y~zgw}kx|x{||z{|}{z~p}x|x}|~{w}vxv|}tzyw}~u|~x~}~|t~{}zrz~x~|}{}}z}z~}~xt~}|}z~x}}sxsy}~~q|~t}|s||{{yw|}xz|xt|z{}}~wxk{{~~z}w}~jw}zx{vzwtw{j~r}|~xyt~t|{u}~}u~z|{v~|{q~y~|}wz{~}|}}|~~|zpz~z~}uuwxzztuzww|ytvy|~n}yu~}ztv{wn~t|ztxfmvu{yvuzyywxqv|}v~dkynvy~}~}x~v|{~|~}|}}yz{v||z}{|~}~y~yx~~|}}w~yh}x{t{{||xn}zvz~xl{z{uoxyzz~|t|}|qrw|u|}{hz~zqq|zux~z~pvzu{~~pstvwzxp}x~s{{|sw||{}y{~{s~~pq{xxzx{wsz{ns|xq|~p~|}~xsw}}yzp|~m~{{vnk~||~y}|~~{z}~wzwxvxzywxorz}}}~x{zy{|~y{y|z}zzuxuxsxtu|w{~ssy}vzzt~ooy|jt}uru~y}|clour|u|mo||y}}wq}~ixox{}{z{xy|~zry}z{~i|ne}~~~v{ywr~txsq{}ww`|lyi|}~t{r|rsy|~|~xvk|t}~w}uxwwt}}pozxq|vz{w~}|tv{g~zlux{n}{w}~{unrz~|ty{{xs|rz{jym}{~~{yng_}wyxw~|xtv|sruzn~p|~nzz{vs{uuvw}tx}f~xuzm}xy{}zklzsu{r~yytskv~~syx|v}xqxpwq~|yt|}v|x~h{~vz||tzq|ryx|}qw|~x}y{{{rnwzs{||~yi~{p|~q~|~kv~ztxiwxxszuw}qz{mu~xysg}~}m~uzyywysrz{{y|{~~pzzi}rz~yryy|~~pxwjr}r~ztr}s~|{|xx}zs}|s{z~~vv|x|l{z|uy{pt{}y}srv~mo~}xxy~||{~y~t{zsfqw~xv|}}t~y{w{x{wv|y{|~zwq{{r~{o~s~|bpo}pHjmxc~}dsh{`uwq{~=v}yxl{xe{rl|}y{{}zzu}|yxt~|r}}~}{|~t{~{`zwxvv~|mamnvt~r{rwln^Kwczx|w~zz~|qypywt}oyszxwypkqzvj}gt~{y|wgx}{l}~~|f}x||r~ks}~~~xk~t}{zyswn}mzvyzr||}~~zw~{vxv~|wz{|w{zux~ur}|{}uectun{}}xq|}}tp|pz~uw{}{}yw~|~}{r}~||}~s{s}~{y|xx|vz}~|}{|~{{w|zy}}~zvxr{}yyruv~~}~z||vy~}~xwh}}|rw}v||yyx}xyzngq|zwzj|opz|ant{gkyZ{szou|}ru}q~wxqt}t|H{Thwh}vxqgsv}u|1u[su}{~|}sydv~o~kv}~ryrjyxZxzgy}|w~t{{~y|mzxq}y{{|zvv}w{u|z|}}~{x~ux{v|xz|w}~}~}y{~yvr~z}~}wz~z|njz{jmz~x~vys~lw~zylmx|ux|vh~{tvzw{~v{zwnzm~zn}}{jx}y}pwvzr~xx~|ww|x}~}|~u{}{}{}|s}ny{u{~myu~}z}nqrzp~u~skpsyonszklws|yrl{rw|}~tzxsvwsyxs}{~x}wuz{m}{{{zpt~{y{|~rz~tm~Z|uzgwsyvs}yzvlp}{}o~}||xwu|y~z{w}{|}}~wyv}|}xxr}|}}~{wz{ry}}}}tz~tql~||zs|i~pxz{z}tnrdx~ipyu~tpyo}ltm|uxrpmny~yl{|}wdzy}}i{||kxq}uq}wqpz|uzprqxvxssy|ry|rtny~w~q}v}}|x}t~}~r}|}}z}uto{t~~y~~u}o}|z|~pxvvs|rxtlr}|~qsvrxzwlno|qxyq|~~zowx}vz}{|y{~~~|r}w~|{|n~w}{t{}}}yz}}~y{zy~y{v|}}zwsxo~~w~|w{z~y~|{|~{||~xn~sssnzuqsu|z}yj}pwmswx~y}|ty{c|~to{z~u|y}|v\g|n~{hm~uvx|qs~ntbsxzw~~q~}{|sx~{}{}}ypux}v}xzrv}zxym~o}|u}u}}{z~|xz~r~|{zzzz|{y||nv}~}|z}p~~kz|wy{l{~~qy{x{spy{x|wl}}}}|~{{g~~{xz~w{s}{|}|{}s{~|}~{{|zsq}uwxlz|~~~qnzo|xrsz}h~{xy}jy|}ruv|w}~z~wcjcokygx}|nqu{z}}fvzvti}|{|z}wy{}|x|qw{s}zuz|{}~|u|}vtj}}~{{~|vzx{{v}~yyzw{zy~{}~}}{~}xx{}z}|}l{ts}ur{||||x|}{zztxzssqt{|hwtutzxy{zs~xwvy|}x}}t~{}nh}|}v~t}}}{}y{srzt{y~syyvux~n{n~|wx|w}wv{|rzw|{}{{o{}pu{{{|{x~z~x~{q}{~|v||}y||{}}~z}z|~}|~||qzuzty}|v}wwu{wxm}rtu~}w||vx|||yz}~}~}xyxzy~vur{{x~{|{|~~uy~{x~wus}wwyvzxyzz{wywqrw{w~zwmy~|}|z{~~vz~yx{~|xq~|vw~x~|{|uxy|r|w{||~s{w|{y~rxtqy{k||zrz}ttvry|vv{xvxx~st|~{~i}z|}yfquox|yzc~sry~x}y~|qqc~yxtoy}ktw}l{|ry{yuz|yx|wl~|zvxu{|}|~|m{~}xx|q{}|y~svostv{{voj}{{zw}}|o~u~|w{z{vv{|}~qu~yn}uzz}yo}uy|}z~yxziot~|zszs~xw~{||~~~rzsmsx}v}r}uyzv}i}v}~z~|x|~}z}~}u|ztz|~}{}|}|}~s}~~xxoxxnxjml~~~uv~uqr}vxy|txuYwwp|y|}s~nt~|{w~~r}z|v}x~~|xx~r|yyzzwy|{xv~{v}~~}|z{w~~u|~z{{||~{}|}us~|~x~x{u~{ys|yv{~x}yy~xj{}wp|}{}zz~{xzxt~xqy~{zy{vwz}zw{}u}~||y~}ytyyyxzx}z|vzzzx{xwox|~f~||s|~y~}w{uy}vz|}{~}|w~u{s|~u~z~}_}zzv{wrix{}~~xz|}{~z~rtwssnn~~yxz}zk}~wv}}v|{}y{|}}{x|~~tyu{{z|u{|~vr}}u||x|y~}~v}|||}}yzyp}~~g}|wx}z~~~|wt|}}y|ty~}}ju|vqwvyvxyr~}}}n|o|}s{vt~~|w|{|texhx|~|xwu~wymxzxx|}x|~}{~}}}xyzy{|{v~v~|{z|zw}zw~yt}|r~_zmuywuyyd{yitvlpozvb{r^y~q|}w}y{~yst{y{}z}{znvy~z~syvy~{{n}lnp~x~t~emr}xovprrid|jsq~|sxz|mw{}|{wv|zo~n~~~~s|uw~x}uv|||z}|~{w}y}}k}u{y~|{x}{x{~}|{su}rvz~z~zzw{~~|~~x~z~yyz||twy}{{sy|{|{z~~y}{tx{u~vz~}m}wxrt~}~~w|~{t}xyps~uvsyuz}xy|zz}|{}~q~~{||twzx~~}unwp~v~x|lwxwzuyyc{w|z}|x}qouzvwx}{|~~~r{}~w{|q~vy~~z{{~}|}oz\z{xxy|~w}}|s}r}zz|yzzyy~}}~}|{uux~yz~ztz~}ax}q}q}}r}|yxv}||w|xw{r{x~{v}v}y|xrlqzk~sYsx~zv]y~||wu{Wwtfz~vxuxvrr{y{|du|juvr}}|vqv}mxv{ywrwwyqsy{plylw}y}|yu}~v~}{}~z{|zuywwry\z|~g~eb}lvjmxxxzk|{z{}xz}yyWx}}yunxsxttz}vz|}u}~~zlzeusu|ywx|{x{e|vuu}{|xv~{xw}}s{lq{}syzp}|y{{~xozx{t{|r~~{~|z}|ur|w~~wyzwz{y}x{o~z~{}~{{{~xzultw{s}}~v{y}z|~wxu}z{t~}yzx{v|z~z|y{zqy{~uw}}}~{z{|~{}{qt}~v~u{}{}}w}~o~uwot}|p|Tym\}p{v{z{ppx}xrziwg}mtzosp{}hquu|~y|n~zxht{u|wqv{uyn{hyspo|swz|p{~uxxu}|x|z{x}}]yruz|||~xr{}y~wl~~zz||{~}vu||u~}wuy{{rzwxj}oun~{}{y}|oyxmos}{i|q{xzzys|m~|x}{~}t{|x|~{|uyxv}~qozyxzy{y~{~vwwy~~|{{~}zx|~x|z{z|u|o}}wv|txf{w{om}s}y~~|{|s~~p}p{yyV|w~|f~|~}m}kykz}}~xz~ovruf{oi}~u}{x|{zu|ekx{}}xx|}lxzs}{~|Txvwm{vt|zq}twuxur|ov~||x|xux{}wux~x}q|x}|uvvt~wx~xy}|p~|xwm|~putd|xu|w}yqsyquyvk~lz|zyqo}|wo~yyv~{|t~|ywzp}y{zsww|r{{}|{y}x}|tx~zt|wwzyrqxz{y||x}}ty}~xwytqxuz}}}l|zv{}}~ytyz|~{uz}s|~{y~~~~xw{||~y|zz~}}~r{~nzkwzz}sx||||{~y}~}{}{z~~|zyz{~wzyz|y}v~y~y~vzv|~}}}{yytzw}{{zwt}~{x{~{~{|~}}se{}}t~utuq~rpvc|}vum{||r~|mpt}{~ijqiyyvhy}w~}z}nno{moysy|knu~~~|qw|zt}|~{u{~}}~{z~|{}~yz|q}uu~|{~s|}|x}~~}tw}|pzo}z|w{x{yqv|~ytx}~z|tu}t~~tyu|||s|w~|}n}~u|tzu}z|z}xz~~y{vru|~xxyrvyyt|}~z{zuzzywzzx~o|~qwqt~~~rxu{uz|||xwtv|s|vrz|}}wwvsy~x}zxt}xxz^r~gtsyyy|xzb~xrw_~qutyzsqxy{t{~v~|~wrz}|zztz{yxxsup~zz}x||}~yt{uzzz}~|{|v{}xyxt~|{|~ps|r~us}uzx{}vw~~~}{xy~y~}y{zw{~wv}sx|}{}}xwy|v}z~t}t{z}}z|}zwt~u}vt}yj{}{uvqwrw{qur}}vy}~~||y~s}p~uusjw}wxuzz||ww}|rx|}wswtt|}y}xskv~zg|t|vy{wyyqtvuz{ww}|}v|u~x{yz{u~qxhixxk}vyvsnzj}~pz}y~}hyzq~x}}j~~|rzyu{~~u~wx~~|{y{|||~x|xy{||txyo~z{|v|xxvsvy~yy{~{|{{{jypr}~z}~o~~}v{wx}~yt|}}t|xx|~}x|~yu~xor|t}}rxzyw}{}|}|}z~x}|xq{~||xww}zzz|{~|y{xxznv}~}~{c~}}u|v}q}{wzw|}^xq|ygf}q}mxz~t]zs{Q|rvt|irpy~y~s|W}xos|~}|q{}vvv{|hzwox~|yz{o{{vwmvz|nxrs}rz~|~zyvw~ky~xopow|xys~~|xt}~}t}{y{lxyc~||ytz|~su|{y}tx}w~~x{vu{yx}w}wwtyz||ztv}|z~w~wz~w}w}}y}}wxz~zu{yx~x}{|w~{~r}{}~zxw~y}x}t}zw}~~w}w~φw{zw~x{~}~wrf~{w|q~~yx||~|~~uc{xzu|xw}yz{|ytrr~n|{qzh}o|~{wx|slzwz|xj|}|z|x}ywnvus{|~ytvzo~cj{vwo~uuw||ry|}{w~wlyxs|zy~wz~zzzxz~x}yx~|yw{vzu~}|hyswuv}p|frtn}wg|nz~{~xykm}ts}rzsz~xr~~v~}|}n}yzzz~~~zz~n}xy|~xl~xD}twr}}m}~}~{~~~}i{rq{usx~vkw~myyvhvu~yxrxznx}{lwvu~wxyzyxx{z~}nvybjxxjr|v~}y{|{p{pvrt{}|y||zxxtxx}wyuvzvmiqzru~ytw~w{|~}ts}uf{wwW~~}{~}xzw~p{z|tta^{zy~oy_p|v~|uvkbzq|ynzt{qgzly|lzt}~|w~|~y~~|yzxrqxtvzyx{tvw|{{y|yy}zx|{}{ywyui~||~{wuv~w~kxuvosus}x~~}~yxt||}|xs||w}|{}z~}zzr{w{{yy}vzx}|xvs}uyawx~mou~uz|{x~py}{wyz}py|~~|twq}~y|s|rl{~}w~vyp~}|~zx||~q~xuv~xnt{~~y{tyvlo{osyv}|szw}yyrwnv{v~tu~||{sw}zy~w~zuxws~wr||~{v|xy{|~uyz|w|i}wwx}txv{~}{~mwzxwytw~|m~{|{yp|u}wt~~vzn|~~}{{mw{c|qgryu~}~v{|r|y|{|zy}w}~|~}}wp}}xvu}~zx}~{y}w~~{~{~{xyw~{|sxzsw{|~~~ts{}tmqy|wyqyv~}zvn}}}zzrwv~u{w{}v{otyq~{rzz|fmQaz|~v{|}~w}xwz}uxlymz}tu}sz}|qsp{|s}{xhlr~~v}opxtqwzvpmz}roxz{~ywu|zrzy}~z~zzvssp|yyqwqzszy~rztux|~}}xw}vzs|{zzvy~}y~~~~}~~xyy~{vwz{vonntu~s|~|{xs~~pzu~~x|~|~|}{{{|zy}|}xsxzqu~n~q|nw}ry}p{y{tuvzxu~{wu~}w~u~{~}ts~x~s}||}}~~{}~~|~|||yjqyu~{{tzyp|z|smozu~}~xq~pzm|v}mp~|w}}~}~~}}~}yx~|}vzzy}|~w|ss}vul|~wumsu~}ww|yzwxuxyo}z|x|z~w~qdqwzywl|sxxkgc}~nqywrqyZnvwx~~{kusviwuquwk~zek}uszuw{c}{z}y{}xmxzzzuw~n|{}}z}z~o}s|z|oznursz~ywzx~|{w}~xl|{|}u{s~|~~}}}|znzzpsq|rsuyw|}wsztuuyvu}tyyqxvxs~{}x|z~u}}{}z{~}|}~}}~|~zzx|w~xy{z|}~{y}y}t|y~w|v|z~{~~yz~~y}~}x~o~ur|zwxvo|zq|s}ruy}|qw~t}zvy|wp}z|~{~zx{~zprzyxt{nqrwvu}|~vp}yy~||zu}{p~~yur}|~u|y~}vp~s|u{{y}zxtz~}x}~|{|z{~yqxx||syy}~zwq~~}s||~~}|~}xz~{tux~}s{l|rouso|x~vuw~txxtyw}{zwlny~owv|~}}{{}tss{zz~l|}~~xl}u~{~|xuyq}~{{}{w{w~|vtq{}{s}yxrwuvxv|vzu}}{|{~|~w}xuvy}u{i~z|u{}x}twurttz{mqvz}~~zzpx|t||z~zvyrzw{~}{|}ruy{wrp~vxnt~vy|w~y~~v|t}|qr~{}{{v}}xt|{stpmotsyn}y{xvu{ytp~zzztyzrjbqwsw_c}yhp}~z|y|ltv}xlz{ww~|my{s}h{~wyzkwvulv}xkt}s}sooz}{}iy\{vyt{{x~}z~}~vyxw}}}|~{vyw~ryw~u|}}}xrtxuw}~utzx~qwyhu|}zmvu}{t{{q}wzz|z}o}{t~zz{}pry|}{o~v~~~}ozy}ux{xry~}z~yu~y}~~xr~}v}q~}t{}w||}~{q|juv{v{{s}~~}}w~yu}}|~yzl{um{~}g||}xtkx|}~{{y~|~}z|x~|}ztjprur|lvyx}wy~zvwtq~tow~{}qvuT|}~ouzom~|~zu~|v||y{}{{~|{||z{ryrrpununzq~v{~~r}tx}rvwx}wrz|x}}{wzxtr~totq}sqwr~~wv}t{}w|w~}tzxwoz{yyx{y||x}|xz|}yxwx}|~|u~{}}~wr}~~u|{~~||yzy{vrt~sxyxqz~{otv~yy||yy~{}|~u}xyt{zx}u}w~wr|r|yvptv|uqyuy|}|}|r||utro~}lx}x{|zpz|u|}||{{}}}xn}}v|zrum}~wzo|{ke{t}t}~{xzz}yx~uxz~|yyv{z~t{zt|sw{|xs~u~|x}{w}~}wy~{xr||ys~uz{w~xtvww|v}ts}|}}rxt|v~zsvqx~X}||~~~nw{|q||}}|zz}|yx|{w||{z{z}~yq}{x{z}s{z|~{}zHO~wx~txwyveez}|}{suwx}{m~xrwxtv|le{t}mfkgylgf}zolqsfuu}}w~w|xpz[qrxyt}x}~||~~|zzzw}s}~|u~x{{qzw}vr~s~}xzpvxwyw~~z~{}owzvvu|zw~~ozt~zy}yt}wt~~|{v}pz~}|~kzw}ox|}}}v~sqw~~zvzz}z~}{}|~xszu}wqmppt|}q~y|||~t}zt|pox{zvw{w{v~yzw}x|u{||{}y}qwx|~{w}}}{{y||~xxy{}~uxxs|tqquv~zw{z}}~~zpwy}{||rp}xt~{|~}|~}{y}xry{yztu}qurwzt}~tvy~{r~|q~{gsw|y~{rtt{t}x}o}|{pnxytx{}yt{~y{tnvf~yqxz}|twk{}z~u}||~{}~s{~|xw||~}}~{{x}v|}o~||y~}yt~xvzt~~yosv|w{|~xvwx}~twssvw{y|~vp~{ou||xyzt{~os}rxz~s~}ptys}{zwz}m~xws{{yu~~}zy}}v|~vujwt}z`w|xdizsw}vhk~rwqsmutptiztuwtxn{uyp~wzkowcqvy|zsv~h}t|x{vvyopr~}t|zj~}yz{yzktyvwwzyzu~||zxx}x|}wo~{{}x~y~|~~zt{~y|}ewqmmoztk~}lwszp|r~~|yuvk`ttj{lx}{o~vwqzcoeq}{pszzlysrz{htf_}o{\{|hwmockvy|~~~qztox|zz{o{qz}m|i|~~|{sy~zu{f}~|mńm~~n~~ztvpo{r}zw}|vr|x~v{}qlx{y}{{}~~w}xur{vnyxzk~}~wnyu}{~zrt}qq{v{{y~uyz|u~y~xz|~|kz{|~y~u~~~{{~w~v|~{~~zxx{z|{u~yrysrpvvrystzz~{}wyz{zp~~}}m~xq}|{u~~zw}|~|w{~~}|xzwuz~~|x}}xzkpu~jv{on|yn}yjxkr5l|~~{y{uwznx|{n}ixwot~tsu|{y}srx~y~}}{}}y|~~~{wwztttxx}~}z}~qywwto~u}ro}~uy}ozvwz|}~yz|{}|y~~y|}~~yzwt|zrqtwz|r|xz|{u~|}{~m~wwgxy|zzuvqvvzp~{{zlwu~{wz|wwx~|}s~}|rqz}|r|rzv|vtvu}{|xt{q{r~|vz}}vy~~{{r~{~}~||~ssymrvxrvz|uxg{~etwytv~{{uy}xlnwpxwyrz|{rzz{}~|~sw~|{{xt~~v~q~~|~~{u}}z}sqx}`~n|i}}u}gU}\fry~|tqr{}~qlplu}~}r|oodOrx}wgensy{zp҇~z{zw|v{w\ux|q_cb~n}nuzkh}zspmiz`}u^}yz~gezq~}qn{ttk{zru}~||~xy}|z{k~|v}tyw|{u|glnv}pq{vxyqtx}zwtwmv|z}r{yyv|vu{wxt{k~{}{~|qyzvr}sy}{nwx{|w{vlw|{r~~}~x]w{{xxz{u~|}wr{yx~~tzzosnrqguz{~rqyrz|gx{shqv~mk|wtsv||{{yskvo}ytx}xz~ydyyyuy~{z~~txvm{|{x|qx|t~rsuy~u|wt}vu~}v~|}sm{snztvg||kx}|zqn{~|w{}tyqg}}}qtqv}||x}~{zz~y|q~p~~x{}y~z{}~z{}y~qy}vzzyu~{{ty}}x|}r{tlmr|}nyu}Mw|~twz}}x}l|orzxw|{|t~wx}zuov~~~{x~ys||{esysr{y|u}~}otuwwu}sxt|rx{kt}zrrq{~~sv}s~usty{}~{|{y{|{v}}~{}x{zzx{qztfw{x~~y~}t|{sxy|~suy|uzz~z~~zv||w}xx{~~c~y|z{z{{y|x~u|zw|xrot~s~}vx~~v~yt}w}~{~{{{zypxy{}ujxsuiks}vz}~{y~z}{z{qx}y{}t|zx|f{vq~|~h}{zsv~y|yty~u}w~{u~|zy~|o}~txxxt|~vzs}tx{xr}q{{wt}sozy|ru~{{zt{}yvyzzss~lzrm}~t|{yu~}xy~~t{{|~q~~wt}wx}~~zz|z}~{}ywqyv|t~z}}~z~||~{y|}yszu{zp{oss|w~s|xzs{y{z}z}~w{|py}|}z{}pw}xz|jvxo~wr>yvpr~s{}Uxpzxy~rn}vt{~yyys{xzttnxuiwf~|qvX~mv~nutRyvz~zx~rx~{}qsmo}~~z{zs}v{tWxty}vyt{zs}uv{t{vuvrx{~|v}xz~~||~~~x~vq}~|u{}}{}~yrx{wy~x}|~y|}xyxyszrxx}yssxptvnrvy||{yosrvr|}~}q~szz}x}w}zxyst}wr~~{}{{v|{~|}~uqt~~}w|}|~|vww~uvr~v~~}rww}~vntuwx{xysk}x{{|{r}zu~w{~}uxqzxz}}{we~jyxrx~v}zqjy~|n{{z|yzowm}}~zttn{}q{zpl||tvpun}rriwsozzru}vvu{~}kzzj{}ux|ith|j{|y}tzxk~|pXj|zhpr~Ņ~n{ujy~zwko{pwlTLk}{zz}xkewuz~}u}{~~}}s~yu|qv}y~muour~}uz~p{szywz}y}l{t||~~r}w}|}~w{z|}xv{vq~vv}uo~lutz{zux|{~xvz}x|{{|{x{s}p}~}tp|r}~v}}}v}~~||}wr|}|v}|{~~wrz|}v}~xy}~|||ss}z||{w}}}~z}x~qwy{||{~zxwv~~}kx{o|{z~uxzx|}{~u{y~|z|v}{~wq|z}w~u|~~|}{~~utz{n}vyu}~|s}}x}}wxt}~y~{{{}y|u}{r{u|~xy~|~y~~{|wtp{x{t{u~|xovwrx|wt}twtzg|}~xz{z}~n~lrn}vkxy{r|qx~zsyz}v}zzv{{~|yn~vrz{|st{}tt}x{~}z|zzz~}uxur|yxln}qxrwqx}sy||{}q}}p|vyzryuus~w~{x|yy|~{|v|wjsl~uuv}w{}nvwo{ntjaguyw{~wryd_ofy}kssx~zzrzv~x}{vlxzr|}{u{|z~}~~~i~v~yv|}yz}|vx~~y}w|~vy~zu~xw{z}~~}x~}}yy}}{}~{|ys|k~{t~yz}zy}||{|||q}y~|ux~qr}{x~qm||k|~z}|~xx}}x~{~}}xy~w||y{v}}v~w}{|}|yt{|~{|x}zy{wz|x}z~yiv{gu{aSpsn{{yqE{zaxws|wzjw^~wszt{tzvukq]tumpUfhufkoowzujyxzylpwyuxe{tfzx|gq\}~rqb{qfr}{ymVaoikywxu|vw}owzv|w{teu{zrr|t|~swmzxv}x||tp|pyryz}ryy{xv|v~x~supmyxy~~~k~}~}~{~{|qrw}}zu{}y~xrp|m~|}v|{{}ywy{}ts~~~r~{|~~x}w}u{z{sss~}}|yrwruqvz~~~~u~}{~wvwt|~vp{}s~r{xx~ur|{|oxzl{xpx{{uitzs|~vyn|{n|x|{qsw{~wy}~~ruwp~xk}x}~|z}v~||x}||~qsqsrt}{{o}q|y~y}~}~sw{z}yzvz||vz}zq|}|~x~sr{}yr~~wq}{u|}yz}z|yyv~e~zw~~}~o~zq|y~}v|}}yuqw{~|||}y~~xqzuxuob~|y}uz~zy}wyv~{y~}|x|~|sw|r~||yuzzx|yyvys{rr{{{x~vu{uwu}qzxzui~{|~o}}zv~wv{~s}uqt{|nwzy}wu{uy}z}~xpz}}xxx~ouy{wzu}t|kz}{wo}wz~|y|}~~|}w{~~~xzq~y|~zmzqzuxzyv}{u|{uz~~{|~z}i}}}u~~sow|zuy~~||~x{}p{tz}t|z{xr{}y|~}yozxxqskz~n{svn}~w~sy|}}xwy~~x{w~vz~wvw~vzusryptv~~}s{||{rz}oyqvttwxu~vzz~k~}xo~tzwpojy~[~x|{tyys{{{xxz}yt}xsw{zz~p}}|mxu{yt}u~xzuz~~}~z}~xsyzzn~{{sy~q|qxu~~xtvpovt|xx|z}}p~{}s}}{xy}yyo}us|ozlzvq~r}v||}z|r~p~{x}~wzuvtxq{y|{vq|uz}v{w~z}{x}ujzz|||vxy~|z|ux|zp{|~~v}}ymz}ru}r}|~w~|uyp|j{ww~~vy}{xz{~xezw~s}{qy|yt{{zwtz}{{}}v|v}r|v{wwwvt~s}x{|wm}~yywuu|}ovvx{~oqstywrr~qysttx}nz}~v}ru~}{}|yxpwz~|z{~{vsu~|ps|nxu{y|y~x~x}u|xoyxt~o}yp|}~yuxxz{tt|{|}}{v{sw|ws}{~vvf~ywkv~j~w|~|xwusizts{p{wx{{|xd~ouszz|}~xrhovo|txnww|{~{~x}{ypxpx~|~p}}y||z|}}~}~w|ywrsq}}y{qyz|lr}~{s~}x~{yw}x|t|xzzq~uosu|xt{{}}z}~}|q|yunz{jrj}pxpxysy}yqlu~zz}{||yxx}m|~voxw~q~|trpn|ww|wopwmv}z~u|srzxpuq{xvos{tsvp|}x||ra}wp~m}{s{}}|z~x}}{}~~|}{vq{}v|}}}~|}}}v}}{{z~}svys|~vtmqrs|r|xvwzw|}o}}}sv}y~|x~||wr}{~|u}~~|}{~~zq~{zv{{|k}m|}~vz}}~t{v|v~{}{|{h}z{t~r|yt{xuz}rurz}}y~~{y~vyuy{ur~xnxuwzt{|ztv{xyu|y}||x}y{qc}`xYXopzm}|yu~{ws|zqx^bupxyzz|{g]~fr~cf~~|zl}p{rwrnnq~t~wr~~~v}|{}~|zvwxxwrt{ksxxvq|t~}cxp|w~}|~z{~z~xv{t~|||r}|s|{{zx}xxt}vwt{tw}xi{{}wrv}~~|u|~x}z~yx|r}|u{}{~|}}nzz{|{~z}|z}vtyu{sy{}~}y||~y~`fxxsfy{l}~zu}vlp{l|U}{}yvn~ssxx{zrxs~w|vqvzf{wg~rrks}ls}twx}}tlltwtyrx~sxwpjyzft~yq}xspsy{{ptktr{q}hu~w{wqs~ky|xn~uozufyww~{wzk~jn~vrx|s}wqnt|||ymv~}z}ozsx|z~zy~p{wzy|yzsvqus}z{vz|~qur~mzu{{{v{{}xkz}~hw~y|}vsll~}sr|zy~g}lzq}eyhw|xx|ryzsy{z}rszw~y{~~zwqq|w{~}y{z~x~}~}~wqzlv|~pw}~~r}{}ww}r~y~~y}yx{~vw~zz~tt}rs~{yq|y|~{}|oz{|x~|~{o|tmwxznvzrxzrvszsz~~|y}yuq{y{oyt{}|q~yt|~}~|wttw||v}{}|}yz}||y{|x}{y~qw|}{l{y~rqux~s~{vx|xux}v~u}z|wz~s~vks}orswrz|u{w~}}~~s||~}rwzy|~}{ut}w}w|runrss{ux~ux}}t}s}wr~~}~v|y~rtq|~~|}zr~s{b}lphuy{v`y}r}ikw{porzscnUvk~zpg{vz~ik~q^luxxt|~}~z||s~kzx}yz~u|~r{r{|}xs~~x{ym}y~~k}r{zx|{x~xkp}|y|{|}~}|w}u{w{v~|xzm{xu||wvppszvkz|v|z}}~~{z}~{w|z}}~|}~{{~~}}}zyw}x|~|~{x|x~vxvs{z}v|y~|xy}m}zq|{~}~}u}~t}{}|vz~v|~}~}w{~{xz|yk}uz~{wz}vr~}}~|z}iuuvr~|szcuzz|w|v~~k{zvw~`}yy{r~kxqvu{mnwt{n{~}xywzutqsw{uu~r}}wxm~w|u~xvzy~g~k{yxqwxw~{mh|~t{y{|~mt}{{p}}yx~}y}tz}y~||}}y|z|{}qr{szv~~rwx~~syz}w{x~gw|s~t~uu~~|}x~|{p}z}z|z~}w~x|z~|}y|~wzr|}~xv|}z~|}~t}yuvwvp|t}uz}~|zy}~}~p~~x{w~myugsfzv}qey}}xhx|vu}|msvkzcvtsl|yv}wtont|j}qzwW]rn}ouy}lt~]o{p~hq{anv{a|vuv|j~Yrvmsr~nyx|x~{vxw}{q{|x~{r~|zz|{}~vr}}}|u||~}|v}|pwxurw}|{tv|ptt}xvx{r}|xsz{|w|}}w{|xvr~~|rvpuv~|}{m~}yuxnszsu{~~|yvrxwursvyys|z{k{tvvs}qovu~}|~uy}w{wqyzr{{xmuu~yw|{{syxyt{vntwmywy~xzypwu~ouuuqozywz}|jlrvz_|{ds|~{uz|~||{ptunt~uxrvsz~~wutwv~~}p{ts{tmzz~~|}}|{{u~uv~|~x~}{xtz|kus{|}zy{xywz~~~mx}w~v~{z|~m}{|}wyq~|q}v~|vzwx|~{wzzkxz~~z{xzv}v~wy~|zw}w~us~{xxtv{rtvt{zr~yo~|~z~{v~v|{}v~xtxx~y{p|y{wx|}{}j{|}}}i|}zrpxwww}t~yvx~~~ppynju{uuv{ypoz}eymvnjwvy|w|rtr}l}szr~y}}wv}uzm~ytv}~vpzouuyupv|zitt{||ktz}w{zwu}|y}}x{~xq{wirxyvsv~}~wyxvjPcz؅rswwoxwu]wocr}qdqIyh{v~Y|jzduunw~a~x{]iy|tqvayzwuv{{znnxizq{zpx}v{{~|}y~~qp~qqx}}us|{ssl~}lw{{u~osszo{lxovtws~~}x}v}}~~zq}oo{~x}vz{y|muyw|~}j~~|vs|y}}tuqz}z{z{y}~||~~{{}}|~~}z||{s}x{zuqm~{}yo{~p~~{}~x~v}}pvz{y~x}y|{zy~~w~}|tsxxuy}uwxz|{uz~vw}{yx{}y}}w|~{z|qzpyoq}yyx|yewlx}yt|qxrtyuq}rvq{rvt|r~u{ywj{uy}|}{wzzyzjtzu{|{rzqvqw}ztzqo{y~sVu|iy}~~{l{b{}}~wrs}n~~|stx~k{xrz|s}|iq~v~pp}}o|}q{vmmu}xw{ta~pokyq~~xsiwp}iyzk{zzw}xu~{{~wy}wvz|z}xqxy}{z~x|~yo}~~y~xy{y}~z~v|z}t}vwuzsr|}wyysmp}vxasp|{y~orslk|zwzxtwyn{st{uryxpsu}zyzyuzi~zroqt{z{r}tku{~woutly|~uxx}tupb{~ykvzo}t||}m{zq{qm{s}|ujzx~pkq||}o}uwq|{{us{|{pvup}uiyyx}zxt~}}{}vxmov~z|p|yp|l||syw}~{k~rqs~~wx}|{yo|q|}{yu}v~x}xzz{v}mzoptupy|{xnzv|x|sv~}}}{wo}~yo~}~||s{~xsz~{~}~|zxyw}xw}z|yz|~r~ea|y{o|}~ifzeYfqqqyhbsw}rk}z|~|^xbxxr}}xzwvu~fwk{yvjq|v{zwvvot}us}vq|uvznu}um~zvznyv}rzz~|~}~v|y}vl}{{{yx}yy}|z~vtz~|w}xxp|qlx}u}|hz{uyv}~mvuum~wv}n}}}nw|xx}wyu~zjwp}{wy~~z|z{z{wz}}wzwtvk}{~}}~|}x|zy~wr}w{|zputyv~{~xzux~u~}uv}{~ww~~v~~s}xx|z}{{{}ytzzxw~{u~{zyz|zxo}~vz~q}a~|n}|{yu~~|r|{|tpzwqz{}z|~{xo}sk~|t~q|||o|wy|g}`{t~oyzputqyuru}mt~xv{txy~hz|l{ynuzky~wnyztvzrgzvrzt~n{t{~zqxytxqql}ylxux~m~~u|orpx}|}zsiu|t~tuwlw~}xp~v~euzrsps}{}|pu~~zgkzu}vv~x|||yym{v}nt}||tyt|u{~}xyywzo}~txw~z{}z~}~||{o}kwv~ujx{xv~|~{y~mbk~cyungls}wxnl}~|k^sokLqzZeqvilU~luqeul~s~~hiunqjnptbjzuvqwu||ifvnzyq|o|sw|kliwe|ow~yuzw}|uozvq{{z~z}~wsutv~}~ny}{u|x~x~{t{}}yy~{~xx}z|yx}|{}}|~w}||zyvqmtvz}zgy}wuzmo|hnurz~|{s~s}x|y~u}os|sw{zx~}{x|{~{{~z}}kq}z|my}vzxi|x|}~{~rp|{y~s|}{||{z|vu|uiu~q~zvm{|zu~y{v~~{}|~~wr{sv}zp|v|}yt~jw}wyr~~y~rv~w|x|x}}v|yux{|~{v|}}|p||}}zmw~~k|r~yu~|r{{oyxoxztlxyi|~yqy}tuts|||p}{{uy||y}yy}y{z}y~~uz{zzw~}zny~xmvyn~|x{}zsx~x}||{m~uy{s{~|yv{p{~}|w|rs|~}~nw|y{z{~y|~p~~x~{w~ym}~{|q{~m}|~||wv}wwuy}swt{zwot|szsx}z{~w~s~~{zwu}xw}zwwz~~~~|y{~}}us~~}m}~ww{y|~~}nt{w}~}y}rw}{z|mozs}{w~|h}xtziuxup{{z{pru{~z{~zwi}ywxrvu}}vmqxp|}ts}}}lsyx~~xxit}s}~tvx||w{qzurxvzx||tztwsxvzrwu~n{~vvp{y~~~frt}u|m{ltq|qo~~y}uy~~fl|{tj{s|s|p~v|~zrrwnh}yjr{{wyzm|xqwvyqrp~x~q|n|}y{~qz{nwqyuse|{u{fu}zz~lx{|vrtt|q~uu|jz}yyu}q|}{}r~ytzoqzw|}{ut}|{}{|x~|tx|}nwk}~|}~wx~yt~uv|wu~wzupxzvu|x{tz}xt|uwtxv}j~}|mx{|~x|x~r}}yu{s}sx~q{{}v|}ys{{|yzwo|}n}m{txzz|}}}ozt|{y{{vwt~tz{~z{vz}{tusxzzuxw}~ww{~}}}{{|w{tn{xnvxwztr}inopvvH~x~h~togqfzvxy~y`p}jpym{nhq}ox}z{y}|vrvc~qzw}xn}|tvvwyyz{{q|~w}v}}|yv{s{|}zsdvsx||swy}{msrvwwzz|~kwy~|uuv~ry}z}{{wsv|{~tr{tvp~|~~|xzyu}e{{~uyq~}vuzwus~yqwy|{nyvtxr}}v~p}r{{m}o{|tlrypuww~zwqzz{|y}nw|o}~wjw~q{yzzqvo{po||~vurq~}zzvmv|wy~v~{z}|~{s|}{ft{vt~ousxu{zsvuyh~zn}ux|o~~s}yxzz}y{vxxtxu|~wv{vzz~xpxux{vt}{{xu|~y|~y{yqx}|pnu{~{zxuzp~}w~n{xvm~t{qs|ot|vwt~|x~}yqxoy~uwr|~qyxlwz~s~|z~w}~z}zvm|p{z{}w~}|xtzx{zt{stx|z|jnty{nt|uyux}lmxg~}w{s`nazo^z~|˒||[{x}}l{zw|}v}w|y~~|rxxu{wx||xv{~}~}xostz|v{|{|~w|q~|sow~ww{}l~{}}n|uz{l|~{ou}t}s|~zx}w~}wvxx~x|y|x}}|{zw|~~w}o{v|}|y{ot~~n{twxw}{v{vpt{s~j{q}}u}us{|wx~|m{~~}~v||}~~z{~~{ytywvm{|qu~|~|}lz{okrxzvvz}}~~~yv{}szyl~p}~yy{~}q|}un|~|ywx~pux}{}~jy}x}~n~x~yrwz{{|yu~|}~|~y~{{|yyxr}~v}s}z{}xnxyt~}{~xu}vq|zxpu~lzzsv~w~s|yvtyxo}w}qxw~x~}}~|}~}{z{~xu{{mo{pvol~zt~t{~u~wmx}v{vxvtt|qqzrm|mu{|ym~x}n}~z{p}zuyy}ys|mrru|xozwz{|{z{|nwl}~{twk}vx}{tssw|{v|zywqqp}l{rvyu~}kwoy{ipfpy}{v{x|uyotxwztwnu|~vsz}y}yqtpwr}rps~zmwr{}w}tmrtzzwxu}~|y{p|~ss}}ox~iu|~{{m]{v}r~vr~xw}yzx~yx{xxn}ww{tyz~w|}wr|~fnyy}|{|y|}zzp~}uk}xlwt|vu}|xg~y~xlipy|y{|yy|ryyzzh}sv|~z~xv{u~rzs~|~w~ox~~zmqX{t}x~{~|{o}~u}}x}}}fss}zwz}y|o{zyy~{{rx|w~yyyq~|~{zwzprwy~wzvr~}zz|zuwluMq|srx{d}swzxzvgrf|vz}ytzx}~|yqpsw|smzyuz~||uy|~t{tx}}yyyz|mzwy}{x{}yxxyz|v|}wyy~|m}x}zy{swqy}u~r{|xu{}o~{xrzv|zv|~}|}zq~|y}u}~~}}w~~~tx{wvyw{w{|~z}w~}ypyzvzvqyp|xrzwyxxueztlz{ms|}|x~yvwlvwz}|~}uz~|}{{}|}{tz}}qpx|x{r|{y|}zs}yxrw{zy{}}z~|y}~||m}x{zrvzv~}|ztovy}z}z~w{t|r~ts{|wn}}{y}y|}~{}~~~x{puu{n{{|z{w|z{}~pnx|w}|~{x}|{v~x}{|z~{~|x{z|v{wtnz~y{}uu~xv{}z}xrq}zx}}xp|p{xyxxz~|y~t}~v{|w~|x~z~r{}}xqvsv~tyqo{ux|x{o{n}tuz~vk|}xuk}~|m{{w~t}s|uyywj{nx}xz~zx~{~}~yxz~xzvxl|ul}rxzw|}~zy}~vzyy~~x|t~wu{~~|n~v~|zsztyuzx~v}w}uxyv}}tx~y{|u~vyy{q~nk}ǧkvwqtqyrl{y|m}}}tzyqu|wsosw~usp{qyz}y{u~|s}|~|||t|xwzyzw~yu|}}wx|{{}tu~|pnv{y~vz{swxxxxv~zvp~yv|x}~z~tvszx}vx{sx}|zvv}svvt{wz{||}l}|s{u{|{yp~}~vv~u~uwzy}wxj|y~r{~v}q|u~|~wzr~mt}xrzq~}~~w|yy{~r}mxz|w}r~vyz~|utrs~i|zsxtqz|ryst}y||xvyyyxz{xv{u~vu|~{zxwuq{p~pzzm|{yp~{}~z{vuom{ny~r|lc~}ovrzmwvzwsjtzZ}zzuzznozljowhr`lwjl|qvss{nvur}mw{}`p}huX{zm{vioisqp^qr|iz|{{umxnqo{q~v}jzz~uk~~}_sw}zx~|uvt}}~}zx{}{wig|~ri{|yzx{zw}{s~vwy}vopxz{u}~sv|ry~}|{szt}w}zu}uyyputy|ytu|{|u{|v|}v~s{|wiswtw|x~~z}~wu}}}vv~w{u}wqz}~o|}vw}|x|{}zv|{z}~}|uhk|s|lsupxo}xzxynnnstx}ki~dwrzq~w|kryyzxwxx|{tώmiblkUwn{u_~{yiohyscizn\|xrtqmt|dl|yjuSqYd}{|eeyqlit|_fp|jv~ytu~vv{~~yovo~ztwuxyr|}xmv}hn}zsuu}~u}yntz~~|~zzx}z|}zqwuyz|{}vzuyq{sxuosquugz|w{xqkwzuy{vpzyt}q}r~xzw}z|dy{xyzp{~w~{z{o~w{vyu|~vowwUl|vrzjsszksz~|oizme{~qtp{sxxzxu{y~|rcttw}wszzq{|{yzw~}{qlz{|nzqup}r~~v{q{~y~}xqpy}mm~~zvyy~z{lz{~~~nwzzpt}s~|y|jhm{~ttx{w~fs~t{y{}yz||vzyxmzwl~}|z{mzzx|xxvyzzy|jt}tu~~uwvzm~r|}twshw{wv}z}z~xxcr~|t}{~w~iqfq}ts}}s}~}}uluy~uvy}v|~{wz}~wu|~|vys~|v{}x}~y|}z|xzz~jzwyvz~z{ytt}~}x}}|yz|o}p|}ytpxj}yy~v}{p||~s|~~zvz}x~z{zroz}~s~z|wz~y~|~wryzuwy{y{zx|~vy~}~{uz~pt{}r~g{vz|z~{vu~s~{q|wq{sxxqm|}xozwy}y}~~u}{t}y~}q~pw~yu~vurv}v{i|~smy~xws~}w}|x{txg~}~|z|}~x|yp|ywzq}zm~kpyv|su{ss|xwyw|yn|{w|mw{yo{p~y{i}~|{hryxn|u{ytzz}s|~{n~wws|{~s|tsyx~utv~~u|y}yz}}{[|{~~}potsquw~}yvrwu|{~ws}g|xtxz~wyo~u~{xyv~z{yvym}}y||{{ly{~~xty{|xz~yurnp}}r|uuw~}{|y~o~ty}|}}v~z{r~pMz{zw[{a~h}J}tipd|zpthvvym|l]rcpUpUje_z|urՆwyzyxv~{yzivwrzm{|{ul]wx}lv|}wovyyzyvw~zkr||}mz{xw}|~h~~w{||q{ytxpxu|k|s~yvptr}uk}zrxy{{~r~{isp~x|v}yp{zt~~x|vu}o}rt}yptypxx}sw|}r{~y|x}}|oz~vz{tr|zxv~~w}txvz~wxu{ym}vz}nytx}zul~wx}zt{tyq}}{y{{tzh{uqxtjxzvyqz~mfx}i{ozz}{xwwgvi|{l}}iyt}zny~f}uy|yz~ny}prw{wy}zx{{nst}ysuguv}xz`~ygwyyts|x{vtumo}uu}}v~{mpwuzrs|xo|vgzw[ussqx}zy|pxynzmzxuwxirxyz|p}uxuqvp~ro}{sxk~vz|~w{y}v~~zwy}~qyiy{ymwv{v|nx}ky{|y}uqed}t|sx~~z~}qv|}~wyvy{~pp|uvur{ziyszxn~w}wuvpwv}yz}u~~~~{tnr{|{tz|~}zluewv~zuz}qt}kxz~v|yxq}zh|ooyoyum}~v~rv|||}}xx|vv{~zxxruzx}}w}x{|wxuoqh|x~xm|h|rtw~ygvv~~~w~n}|{~vzs~|y|jx||ovnxpv}t{{x||v~}}}kp~{u{ytyttp{|rwxo}xwwo}~~}~x|vs}~vby~swzg|z~yxy{yz|hty{~|hi{rzmky}~wjr~e}w~Wo]m{~k{zzxlrpvk{xsr{{jnuw}yswpqzoj}tlwrmjrzXw~{{{nsur|~nqnu|qgjown|spuzts~|thOtxtryz~{}{}oz|~usp~q|yv~}vx}|zs|vv~it}wy~k||t||wyu~mp|}v\}}tx|vx{v}wzz{{oqyx{g~t{msz{u~utzx{osrpv}wkp{n}nuvovu{u}}yszttrys}lfzuo{{pt}~}y~vzqzyypz{q{vv{vsuz|ynouuuu~ov~vyzv~{~zry{{xw~}}s|{}ww}|{u}~|~x~|r|vu{rv}}wg{zm{xzvyqy||zy~ux|xtxx~}jlrvr|w~|{|sww}{xx}|xwvu{xz~|rtl~p}~uS~~rsw~}wynw~iy}vr}cttz}r{ysqvqxl|}xuu~|z}}|wf}}ry{|}t~qx{y~vyqzw}{vxpv~`y}{r~}|u~y|~~||x~z|uw{wz~}{t~qyyz|yx}~swn~~zov|rsy}~~u~wyzzt{~ur~z{|~}~u|}|yzvysz}m|~fns}sj~mkrb{pw}~xosdzqtvN{gerzuhrp}|}zu~}zvvfui|ku~_~tq|nnz~ytzu~x{{vw|}uyn}o{~|w}~w{}~y~~znwzy~|{{|~{{hzqsystyv|~{|ytr{|u~|~y~{v~||zn|xy~zt~w|||yp|nnwt{|~z|y||}pvvr{yu|yy}unqxlrzjw}z{rqdu~yxwt|}rx|d~{|x~rzyzu{yy|{~}rrzt}~|zn~~{x|o}t~|{~{~~{mxv{~}{v|~{o}{o{|tmx}q}vsn|l}~|~|~rx|uow~r|vwoxwpyz}|w|w}v}yv}|{w{xx{}~~u}yo|zkxvVv\skrtz}|}`{jv~~ywlpvxn{yvshzm}vz}pwyswsvqzohpgm|dvov{mxpyKtZpm]{y~o{xx[cl{Ėfzuyw|}rv}tulw|w}q~nw~prvyy{r~|nnym}r~rzz}|z~x|r|~|~|}zs}uzwz|w~mxt~rx|xz|~{~uyw}yn~}zzms{|k|wz}}}v~{~~|n}yzl}l|x|rw{{wny{w}|}xv~pq|q~}qvpsvx}q~wxzyvtsw~su}}~sn{wtynws}mtnw~vty{xyynx}py|~~x{w{zw}|yz}y~{~x~xr|o~ul}x~}|}}n|v~v{~y|t|}xzv}{}vyov~{||~zy}}|zv}zn}x|t}zxw{w{mu{~x{z~||~z}|pvv}q}~{~{}}~wo~~}ux~yz~wy~~z}}vw|rn{mvr{xy{v{vz~}y{z{|}t}zmxvryw|w|y}yy~w~}t~myr||u~py{}~|xlyyyss{{}v|{|t{v|y~}}v~~~v|jxy{~wuy|{|~yryt}~q}{}xn{w{wq}z{~nv~}w~n{z|u}yyzx~wuy|~v~x~it~zw~zssvzlyxrzspt|ty}}u~^fy}vrtlmz~}{lqyz}|}|utvy~{ws~xuxxw|s{y|~~y~uv~}{yzigp}|zynvzu|yq|v{xzwzwuy|uv||xwwgvyzo~y}w}{~tvrv|{vz~x}~}~|~v|~u|wzzzy{}z~{vflztyp{y|v|sxlh~kvuwv}~x|~ynyy}~rpwuq{vlw}}|zts}|o|kh~x{zzz{|}|tjwu||{tx|lxu}}x{q~q{unvnt}opuwyruuurzrs{tztq{~q~y}~ksuy~nzwss{ktt|{sxxuyrx{wtyz~y|t|uu~y{}}~nwp|u{xs{{s}}~vv|r|}zw}{{}v}q}m}wx~ywojx}mj|||s}{tozyyyivxpt|uq|~qp~op|{y}o}}ru~ynz|w~r_}v~|}{|{~|ws{~k|{ytwz}}}tt|tkzs|}|zxww~w|l||{p}r}}zs|z~{tzysx}vxy|qytzu{~svn{{xv{~{}wyy~t|unqttw|zv|yzswzvly~w|rw~}{yr~zytuy{|{r{}|zqv}o}xwwl~}yvq~wzxyxvsuxtuy~}{yt}~owwm~t~}r}n}~}}rz{vquxwrxr~}w}zuzxppoy|swwz~fz|}qxosyi~zuwmxxvs}{ix|{y~y~zz|zyovv{|ruuly}lzwxjp{wx|wxx~xxvz{~m|zx|s~|x}}p~w{rquzlz|{{txtw}q~~{ro}}vrxxxp~m~lotn}svvk|x}}v|~|Uyx]^^`sn{upvvY|hvcp|ygyy’s|zxno~vvtxpuf{d{lstq|nosyz{nwynpyri~bdvtxvzpz}zk|pyq~^v}xlvozx}q{py~ivzylr~|~}|ut~{{|}nsz{z~zkyquh~y{n~tstq|~|{w}s}y~{x|zzzzxj~~xmut{zu|tlw{pq}dtw}r{~}uwvzst{wzxtyt}|yopo}{uz{szyxrzznywxy|r{y}tw|{u~v{{to}tz}p|x{v~xn~wvzyq}||}{}xv~x}y{ow}{n}}z~zy}~|xyuw|nvnus~~xy}}~yqzr}q|xx||~v~vuo~yty}}t}|x}zvz|}vu~r}{v|~z~rxmz{tuuw{}~|s|mu~o~|irv~pp~o|z~xwq}pzx{rzp{pz}|ws}nyu~{z~~|zw|ty~{~}~~{~zwz~}ty~uqx{ptq}~|vy}s~z~~|~u}suu|}m||}{|~z|z~y~~}}|}z~y~wzx}xzk{otrtpxyh}xut|~~~r{z|ws}{w~x~s~tv}}||~yt}{}~yy}~z{|wy~yn||nz~}{{o~o|~q~~|~y~}u}{|znyzr~zsm|vx|qw|szu~|uu~{}vsr|wppttwiuzpqu}~x|stt~{uv~}|xvy{uyy}vl~tsw}tmkxqmuvw~{mx}q|pvwzlcnuo}~~u~w{}p|zzx|||}~}~zs{nq}}t|vxuz|~vzto~~gux{wz}~~v}i}{~}nz~w|kxry}qw{x{fo}~pupw|||~~ys}{u{zsxvg}vy|{z{}xtw|}t|o|zyytn}s[{x~xzzsw|trt}~rzyywxx|t~wvytxzw|tz}y~otd}zt~{~s}}u|{{w{uty|tnst|uvoyxy{wousvcntzyr{pxt~szp}}zhsx}wwtvtyqxux}wpo}|}vsrw|kpt~wyq~~zvo|zzgpvos~tuo{~b~wxeby{s{|zr{wz|n{{rz}yv|{y|~|xn|}{srxpyq{~|}opvq}|~}o}x{www{~y{wxyy~v~~~}vwy~~x||z|y|ko{{~xw|t|ot|{y~}~~}z}||yvuvsn}p{s~|v}w}pk|{s{~z{z~~}|}x|~uxxyozmznvykx}yz}|{i~ny{u{|uusyz}rvsswl~|nuz}~{yzr~xvtvr{|yzp|z{{vxxxzv{ylo~|zxzxzpyyw~|~}ysv|rr~zwykq{~p{xy~~rv~u~xy|p}~~mzy|v}vy|{zwvz|v~yw|k~krsvgp~~}uv{{lwz{{wj}~{tvv{|yum|u}nf{puml{{yu}|ywzz~~myk~k}yyk~{t{|}rs|t}usm~y}vxu{ly{kw}~~x|v}u~xwm~~z}l~{z~~zw{s|xxwx}yv~s}l{qk~rouzpo}{|xxv~o}}rz{w{p}v~|k|~nvwwt~z}}|y}wxv}t~kzy}|ovxn{vzuzp}zy}|jt{~v|u{wo~xx~t~t{~~}x|x}~txzzypy}y}v{~u|xvxyvxyitz{~|ozv{vzz~w~xzz~z}y{{ws}u{}uy}q}y|zq}xqvw}~kq}|~|tzwy{ywcv~||~vqzxyyrwn~|w|z|yx}{wr{wh{{x}}my~w~w|mywixtqury~y{tzoz|~y~v}ztvxwuzz{~w|~xvqxnz{tx~}xvvzus}|~xt}}wnx}~z{zrzjo|xzszxz}s||lvr|zp{v}~qy~x~zxv}y{{}}u{zn~tx{z}jswpg{|s|wy~zy{~zv|x{~q}}tz~sz}sv}n~lrszwt}{{vs|s~|yuww~r{|zvxprx{~~}x}zy|syzr{w{~r~v~|~z{~~vz}y}w}u}s}rq~}yw{h{}}x|~mwy|~xs{wz}vtzvk}zx~v~x|{zuyz{wxx}tm|um~z|wstpz|}|yv}mr^~~r{s|t}uy{qz~sz~t{|o~fztxz}uwwwuwvyy}~wxl{plytsygv}pwu{x|{lvn~vq~w}wmzusnl~~~vszp}~~xr{~z~~ousoyqxz|}w|x~smsy~}vltzn||}{~t}s|v{|w~z{zvzpsnzys~|w}|r}{~ytvv|gy{|z~s||sosv~yvzl|}pu}|~w~t{}|vzwsw{u}z}~s{~y~{{|{{|wyxrzt{vjzojqwysn{wwtz}|{}}ox}|{ztpf{myduyin|gon{vfpk}oxzw~yvbvs}~zp{yvmX~xw`yzruopnuzq|yxrztrx~n~nw|s|pwxu}u}~|swy~xt~yw}z}wztplz{~x~~zxzpv||h~{m}tu{{muwz}o}z{|yq}x{~z|}~~ys}u{~{{n}v{{{o{~zxwuyu{tz{yx}o~yvwm~txo~~rrw~|usr~sjyy}ww}}|xx}}}}z|z{zz~v{n|w|}~v}w}||}wx}}z|zw}}}y{}}mz{{s~y{~~yg|y{z~zt|uq{}|yˆ|~|u}|~twqq{yi}x|{x}uz{u}}|}z}zzm~~{p|}v|s||r~ps{zt~un}|su}kwly|}~w|t~x}xo~p~}|z|}|y||z}xxv}~wysxvkc{pzo~|~ututp{{qjw~q}~wztu~frg|vj~w|w~s~lzx||||smx~yyn|r~}k~{y~rv~lw~}x|}}t~v{{xnyz||t~~z~rt}ttzw~vzx|w{z{{q{v}}~uj}|ow}r}yz{}uyq~~{sy~||{|v~v{x|xt|kq}~}{}~{q~j}{~ty~xzy}~yx}wlzoo|{m|zx{{z{~u|~z~xv~|}xyy{vz}}~}{nsww}~}~|v}|u}z{|~}x{nx{w}|r~|||~{ryxz{y|vwv|{}~~y{yszu~}wt}{}xz~yw~|xo{zqtuw{~y}v}o|}r|~~z|zoywqy{s}|w}{|vz~~ty|v~~yu|}wv{y|}{zws|sz~~z}zu}q{hlruo}u{}|zS|shp|x|v~vyqm}dvv}tydnb{z|mjvs~zn|zolv~nde|ze~dpxzlmysossipzmwvogY~ehylsoodw\pzetjy{qxifywnfnpxy|uppwv|}|hw}[yz~s~qd}y|yivvz||tvzeyj}zv{|tq{v~~w~}xxwq{zqxxpmzvz}wtmwwxx{y`}vy|v|gw}ttzvrr}dwy{stuwx{mwtrgwyrsoxn~mute{syxuqh|{vwz}qx~tj}}~y~xywyq|{}{zywn|vjwjxvopw|~uthv|yyvvyymqq|v|~uz{zx{}ov|cz~pwup|v{}qz{|sx}t~xy|wwzvnuyruty|mxxp|x{zuxz}{x|tyj|}uuzxy~x|ty{x|}~}||}k{|ouzpv}{{{~Qw{v~qyy{zsv}|ox{m~g{xxuyuzv}ztwhok{{xz}xt~{v}y{qr{pkf~zwvvwr{{z|~{}}~w~|yn~ny}s|~~vzp~w}v{~x~l|}~q}r~~}|zxswzu|{uy}}x{~zzw}xxtxw}ernyt{wu||{}wuu|l~|whuv{||zywv}y}pslzs{z{z~rv|~yvmuwt~n}s{wrm~n{|tllq~po~{zq|~usviq}qsnyv|u|l|zvx}xx|r~{sx|rzuxx~ngvi|uxsvuwr~~}v{stx~}~ovozyxvx{u{usw}|y}y~u}r~v~|qt|~t{wy~{~}~u|wow}{j}}{x{xum~umztw{u~wn{{zu|rijys{{zxyl}w}xz~x|q{}ztvz|~{}}y|{vx~~}z||styw}}y{n~|~~n}{v}s{tu{~s~uxd~i{zm{{zztu{wh}|l|zm{s~|vt|o|y}|~w~w|u}{|o|~uwx~z~|}q~xv|{mxu{u~w~||vy}w|v|~p|~{}}}yz~xs{{|vl~w~x}~{}}|qwt||~yq|x|syzzyty|tz|}|}}w~v~{}{||}zw|~}~qzm~yynw{w{wz|ipx}~~rerp|tzo||~zku}gr}|v|v|q~}~n~~}vxphw{p{s~r}|}yz^~|v|y{w{wv{r{}}ym|~~v{~}|sz|}}x|}wq}}w{stxp}~{y~z|~{{~xx~~pv{}t}y{}}|}{z~y}~{uryxqu~}ww}z}y|yn}|zy|zzws{{}{{w}w{w|r}zqy|iu|v}|x}~{|yt|z{{~sv}v}tty}ypzuzwxt~wn~}ts}Zu}y|{{~w}up~yoxx{jx|}my}yz}}|ttwu}zpz}szzw~|||}}y{}~x|w{zuvv{n||~us|vz|m|rwywzu{~{{~{|z}|ys|~v{yz~u}mtyxqvs}n~pz~s{mztzvz~x~u}ymtt|rz}pwvpyw{ox}}xsz~{}||}}u~t~rwy}rg|x}~~z|s{~y~zw}lyz{x~~oguzxxlqwytvtqy|}x|xs~{h}w|xuwo}}r|zw~~x}ypsvyro~~u~}r|zsuzzv|tzo}~~~ry|tqu~~~v~{{yp|~ywp|}rt{vu~|{sv{~w|yroy}qv~y}}y~vx}q~ypoty{lo{|re{sqwytp~twzmwr}n|z~|wyx~|ryr|wxqsz}{}h|ww{||wzsyvyw|utyrrfxkz}||wxj{}|zkw~yt|r{_z{yr}y}v|zx~v}y{~}s{yx{||~zr~zk~tr}z{~}{~unyz\~x}{~vz{nyzqxzzmyzr}w|tvszuz{~y~{zsxs|q~z~|~~u|~|xtrlz~ynyqkz|luz{qxvyvzsx~{}w}zwz}l{h}}zryly|{}j}~zv{|~}{qo{z{tvtw}szx}yus}}yx}j~{{zq{y}tsz{}yxuv}u|~v}l|o~z|rwwyyv~||~|vwy}xrvy}pt~yy{|}y}w}y|{}|}vn{uy|yw|y}}{toa~uus}nyvyr|}z}sy{|}{s~zzz}o{~t~}i{uqsu~jqjvtx|nrksheol[~cqytp}{u}|vxd|qpspxqwr_qno[gyskqwrN{{{ubr}vz~lszyvo|v{otzv{f`n{rpj{qs}wwomtuhxtus}m{q}ruybwiuwzjs{zjmymqyavqswyjf}xny\tqo|z|swvz{sqyv|us}|}}ywyxrw~|~||{nvz~~q|}{zv~~{q|}uus{mw}zvzl}wxwt{sx|{y~v|q|l|}~{y{}xy~~~yv}~~}~{~x~zv}|mxvo{}up~{wqw~g||~~mt|xrt|~v|r|lxx}wy|~~|~}}~|q{n}u{ypv}~tnw~~wjvf~|}}l{||vqw~~~rx|q~mzzu~o|~~x{|x|}{zmy{zxozprs{z~}yvs|ygyyv{ru}~z~q~wu}yq|~lvu|s~yzvy}|y|}yrl}xm_utqxwv}xrsw|c_zn~h{uw{sw~waj~{z|mwu{x~|{mw|ltx}wm}uw|~ys|zr||w{{|~}yot~}vq||~{wyzq{}rxemzmyrxt||wpx}w}wxxpj{l|t}r{|uwrrwvxqryvy{y{~~k~ystx{wv}y}x|}t}}ru~{ou|sy~||~{y{yv~y}~wsx}n{wvuviszwxu}o{}~u}vo~}{lxv}v{t~sy|~{{{~|{oy~vw~{z}sxop{x{u}zvz~kw|ssv}ux~||t{|w{xz|zpsp|xp~y}wruzxp|{~|}|~zrw{}}|x~yt{ty~{v||zzu|tyu~{{y{||w~|}wtyxro|||rkqt}~g{~r|xl~y}|{yuzz{zz|uty|`y}}|gxmqs{y~y||}spvwslzuzyv{qvvwjz|||zyzyy}zrx|s{z}z}z}}|rw|u}y|zytyy{v~}~|y_z|~f}~eh}~xyv|yqdpxsrrh\y~dt}kyvr{{z~vj}fyw~{u~vr{vszu}uw}yb~xyyx{~t|~mxwv{~|~vyiy||}|x}t}xrtz|k~k~lqz~dyr{wqyu|qnk~n~kx|yrs~zj{|xu~}~}y||m{ui}tyy~p}yswtm~s~uxvvr~y|sz|iz~y|||xyur{|j{~vyrt}|~}}r}}o{}wtimx|wk|xmvxuq{yxzyyx~~w{vyyzxot}x}t~}y~s}{w|qyzvw~xo{zyxty}vuky}zz{yvzr{}}ss{zrz~xp}~{|}w~r|w|zx{|u{}y{}zw~u}wus~nz~owq|{wy{~vtw}||{v~|yyurz}w}u|yyxiz}~zwv~~|~{z~}zzy~wx}u}yv~jy~r~}|t}ylpptwuyrqspmwrsv~t}y|{skqowotuy~wz{l~}vj}|t^vmpxg|}wsny~r}~|zy~zyply{zu{mmtp}xx{}px{|j}p~wvzr}xy}~vs}qw{~z~wfoy}j{|t{l{vj~lz}uowvxykxss~uur~}v~{~w|~}tws~|mt~~pvurvnzzz|}zz~}t~yv|k|slw}vmux}xpv||}{tpy~xvvs||mvfyyxo|y|rw~q|~lzxyyu}{}~zyxuzvhxrn|zty}rsz|xu|x{w{z|sk}orxz{{xzw}tu{u}x{ztux}uyw~~y~~}y}o|zy|r|vt{u{~xym|y{||r}wicpx|mk~x{{v||yxx{{wvzvwy}{yqqtzx|{|{zx{lu|uxszu||u|z{|vzzw}{}{zzv~~|}w{{w~u}~v{~x|zz}{pz}|u~|yn|{}wzz}x}zrtyy|{}nx|}zzy}sv}}uz|uwz~kw|{~}|~yv~|wy|y|w}}{}syzzj{~z|zvvt~~vqwk{|wwyuwxqxkyjz{wr|{{rz|h}~q~|w|~ww}y~}~lyyvxy|yt~{}{yw{|~}|{}zr}rx{v~z~z}zxzzy~{~v|olxs|tyvq{~}w~{y|q}zzvlm{w}p~|o}}}y}}~y|z~}~}}yoz}z~y}zy}vzv{zy{vx|jm{|}x}a}mxi|ymvz|zuytq{wz}}ixvpoz{}~tzy|skutzrzl}|{yv~z~|}^yy}~otp~}xu|~p}tkwj}uxm~||wn|u{r{w~}x~{yw{|u{yur~v~x{wwzvzu~{~xw{~}rwy{sz~sy}svxx}|}{{~|z{{w{yu~a}}|oonq~|||zvt~o}{wtso~iy}uk|zlzwsyy}v{wtus{rs~zv|rr{zx{|~t|}~ztwqx~wuy|ym}u{|{~{xxyq~{z|xwz}ywzv|zs|m|}yyqup|vu}y~|tz{p}~ytj|jwtm|zl}{xxyz{}}x}~||yyz~y|u|}}{tu|~zz}r}}wwx|w~q|~~Tvx~}wvwqvpÒ~zw~}n~yyy}~|||u}||{pvw~r||uz{}}{xq}~{jzw|t{}ys~}pmrvxpzrwq{n|~s}sxw~qtwuzvr{zztvqunz~~}{~{vz|~~z{yxz~wyu~up{zwqv}~|yty}zvwwx~z}|szzsw{}{vuy}~y}x{~}~vywn{||rpq~{y|w~zzr~p{r{tjzj|m}ymxnxyvzwp{r{sw{}zos~{uy|t}~v}s~xxxqvzz|{~}wyzl}}|w~}}||~|}~v|xzmz}ur|yntz}zƏr{~~czxxtpwzyukwzz~kqv~rvl|ywz|w}ky}|wl}{wXu~udwxxmwxxuuw~|tp|ryz||y~{}|~|zm{wqqq~{uu{}~zwxxov{tk~j{l}|lz{u}uz~}}w~x{yvu{uv}qt{z{~{{}x}}wswpy{wx}w}|t|u{|urt{}}|oyvyx|z|wuxtsuqxzjyp~zzm{|}xxoxu}uzm}w|zyxo~suxpuvtvsryw|w}|~yuyzsv|}{nymxvyt{tsx~||}z~}vp|{|{{~zz|{~o~~}}wty~v{voz|z{ww}mwpxjzx|kvtl}~u|~}{u{wy||z}yuw{iszoxv}|{{|~guppsx~xwyqyzw{ulkz}znzoq|oz{x}y~q}urz{pv}}~}}z~~}yvzruv}}x}wt{{w{}|`vv{xo|sqy}}~{szvo}vthizp}l}n~nuqv{w}x{yz~|q|u}ltot}qz}w|zz~{tuzx~w~r|xy{~wttstyq{{z~|z}{}t|tty~}~~~{}||z|uyu{m}{~y||vt~~|{t~t{|tyx~|x{~}z~}}{vt~~sxmx{}~z}~~{y~~~{}xg||qrry~}}~xxy}p}}quk~zj~|mmzow{rvzx|x{~{r|sy{rtxz|yw}w~~yxw{{|v}v~|{o|~~zoqvts}royw~vnqmzxxzjuxywr~{lbuw|zjk}zrzgv~tzs{xnsy|qz|vxhk|ys}y}}}z}q{m~hjzsynxqvts~x~p~yv}|pwpuwvorxt}}i}}twy~jw{}|z}kqyzw|upzuzyyvxuvxzsyyxwz{pv{k~}v}{y~wu{npz|zss}||xvyxt|x{~t{vxwuwmc~n~|~[yppsw~ym{tsrtzjn}qo}wb|pyz~pwx}tsz}r~wds}ypww{wz~||v|w{~fx~nnryzm|zz~k~zu}{n|~ysjyk~yvht{jz}wiq~~g}v}sy{yz~wiz~o{tnt}zix}tg}hv|sz~q~~|b{vzrk~~}|t{{|xyxpz|}u}o{oq{wv|y~~|yvwo{vri}jv|zx~l{u~lls}zx{q}wt~ryr{v}smr|o{|u{q|yws~~vt{wpq~}lr}nsxrvwyrj{oxg}u|rpnyv}x{mvv}y{njs~wtwrt}o|s}}~xm~zv}y~qqv~ty~kz~yq|w}~kszo}|yu{ym}|{k|~|x~u|y}{k~s|w|wzw|k{{}rspt~xuvo{~tu}skylvz|kxxmuzur~w}}s|}zwuw{x{you~s|}{{n~~~{{zus}}|{~uo~}y~~|vtyn}~zwqto}}v{{p~vtm~jol|{ow|vuz||x~}x|}||tv~xwqt}}xzyz~o|~~{w{uw}~tyzo}uqÏsr|~~wxzysssstryyRmvv{|m|syt}zqxtsjzzx}p|uqz~lzwzwxruwtttzis{x~~u~|v|w}||}vl{ux|ptxz|mwto~{w~{wvp|o}}wv{~zqv|uw{r|px~[sx|vz|xNzy~~px}srqt}{y|v{|zxzy{~y~l|x}zzzo}hj~z}y{~wtyw|~}{yz}ryz{hy}t||rwvm|szwt~xw|wuq~zxwpoxuyw|x}rxtwr{|wzwz{~||~}}y{t~{tx|ru~|zxw}}ytw~z~||~xx}u{~{wz~yz}txsxg~x|w{|~~yz|yur~{tzz{z|yvwwxql}yzx|vn|~y~{n~|zt}w~xxxx{v~{z}t~mw~v}|yw}vsuvurw{x|s|xs}vzv~yxwvv}y{}v~{uy}w~yr|}w{w|{|}yxry~ryyx{~|yzxx|y{}{~w~|||xz~}}~v}w~Xor|{zuzjx}y~|y~}v~\zyv~lwuu|xi}rSxq}~tsl|zxep|x{{y~vrvuyz{oywy~n}}uuyww|p}w|~xzxuxtw}s}uxz~|xxv|yryu{x||~xv}x~|zzct{vp|sr|{szzw{o~}uh~jz{xm}z{mrx{}w}y~z{{{s}wwtq|w{z}z}|o{v~}{unzx~rz{yw}~~}zwyl}xptoxyz}zv{{ozuotm~jz}zl{l{xzx{x~|zz~}|r|uu~syq~uz~|}zz~t{{y}q}t~yy}pvz~yo{v{yrdp|z}ly|tnw}xvzn~x{z~~xrzwzq||z~|tn|vuwywz~~wyxxwp~}|~uoyzqzm}uy}u~}|{x{t}{txxqpq}ztzkynwevyzw|~qv~{wuxq~wyv}ytzwtz~}~zzzq}wtrowrou}zszltv}z{t}{}v{}|z}w{~}usp{}qtw~{w|wwtyy{~stws~~~x~{}}xv|vh|~}vprqn{~qpsutl}j|{l~zoyu{|z|u~|x{}q{sv~|~n|tv|~z}}|}{~t~o}{|~{x}~n~qvuy{~}}}v{zoyv~uylpq~tox~m}|x{v|m~}rs~p}~yjyztsv{rx{{vs}wxqr~qxn{wr~twz}z~~|x|x|z|s~~~y~o~p}}y{}sv|~~{|}vp|o{w|v|~t}uuuxpxxv{{s~y{}{v}rvyr~tyw|vzqwr~u|}v{t}zsz{xkwpyss|zsy~|zwo{z~{y}swuu~|~x}s~xvuz~y|vx{}~qzw||vuv|}x}}z{zws~}tyl|~x{z{{y}v||utsm}xy}my|i~}~|{mcpz~p{vtx{u|z~yyntut~}i|iz}f{dw}pu~mzz}}{ktw~x}p{u~vyh~}txxrzw|ynxvtno{|lxvt}~}{vqw}|uw}|}zqtpuqr{os{~z}uyzw~x{w{zuur}y{x|wx}~vxy}z{}{}}vh|}|v|ux~tqy}q}lt{|hquttx|zsq{qx}|zv}u}{}t{{|{~p{{ypzu{{x|zt~l}qzrz|zyy~w}u{||vw~r}|ms{~kpvmd~}b~zyt9akoxexzjxpwqisz~{{k}xqtqu{y}v{~yq|kuyvoyxzzvytt}}tlus|wy{p}{|spyp~~}|}{|}v}~|~~n}u~x}|~~tw{S{esXswzl{v|yy}~vowvuy|pwrw}|z}yyz{p|p}s~yu}~twt|{}}k|zyyyw{quyzz}y{xwzzz~}qvn}s|~zkz~{yuj~~}}{~uw|uy||vzf}v}q~|yޏqu{|z|v|r}zxuv|gk|z{{~}ztysx~|||~|}}|{~zx~}roxpz}j~rzyz{~{zuy~}}|v}xyw}y~{}~v~{rw}r{}u|vzxkw~t{}mxyx~r|{yz}}z||~s{}syypzy|~z|q~prorv|{z~p~|wto~j}ql{zox}tyy}x~{}v|su~~uto{zvy|}m}~y|wwlzx~xw}vm|~w~y{yspqzvz|nwu~zpwvz{zvsmzvq{{x}zq}{r{xx~|}n}w}~vty|ww|~tvnxszuz|tqzy|ytuqw{}~mvq}qms}sku|}o|t}zqzzssw{|~stu{|~nz~~w~yp{~{x}oww{|~qqpzywt}q{szxz}|zv~xx}roz||v}{u||`}zoqqm|{{vv}p~}ytm~jzxyk}{}opszt|}v~{xzxs|qv|t~qs{x~yyv}|z~}~tztzyy}}vvulx}t~w{xzuz~z}|}{z~{}xzgzvrto}zuw}o}wtk~j~v|n|ylzy|z{yw{z|}{w|w~||pyrv}zy}y|~vw}~w}ys{x}ym{~grln}~nxtzvx~pt~{||~{p{~w}yu}wsw}zy}~~q~y|y~q{zu{w~||u{szszx}zsy|k~zpr{y{|dw{}}||}xx{vvx~}jt~r|xuy~}vx{n}w~}sl~~uw|{w||~~w{~t}w||uz}{w|{}{uz~|}ny~||{~zuyw}|w{z|xs}|x|||{~{u{}y}~|}{y}{~wy~h~yq}np~v|o}|yzp~sk}j~{l}zk||yryp||}x|yyvs|qu~}{y~nt{xy|zu}yvu|zv}t|yky}vz||}||z}~{gu|qpq{|mx}zrzo}}}jztj|jx|zvx{l{|im~vwy|w~x~yxxt|~rztzvvxr~pt}z}yv}ztuz}~{|tyvmvvy|yt}sw}~{{rsqzr{oj~tr~lv|qzqw|zvju}pvt|vszt|~uxuycw~uqyn~}~{xxlyo}f|{qx}|suixwv|Jrua}u~|y}kuwq}vru||pxm}ms{tuw}wyo}t|zy}z{}~yv~xn{zzq|zuyzwrp{~~h{xt|v}w~zzvz}wxuvxzxw|~wur|}zx{o|wrzzr}y~|zxuwzz}x~y|}pu|y~{ozwyv|~y||rt}v{}|~|}z}x{}x~~z|v|{|u~z{{}|wy}z}xlg}}Y{mt||zmo~}tyvv~|pt{p}vr{bzsr}{~|xxs\n|xZxuzer{y~w{rsxw{}ry~}m~t{~|}o{ry{eoyv}{~{z}i~Xhtuyuwg}gz{ttvz~}rqsptz{yv~}vtjzvspk}~|dz{kpjhpsy~pjzgzr~}z}{x~tkw{~qjn~}ssows}xriu|zrmw}rtxt{myox~yywqvttufsy}~}_~qu{urqt{mkxxzzswu}}~rzumw|||w{qx{|is{otwoY~wuzmtztz}|k~n~}t}sn}vuzm}iry|}z{}|~~wzwxvy|~}}~}}}{~vx|q}rxxzx{m{zz|xy~~ppwt}{_~}wu{~zy|gtgiqiz}{qnq}ymz|tu{tvwq}wuyskvx|xur~w}wzs~r|y{z|{|p~xw~{rpxz}ut~}}nyvwt~{z|y{yxy{sy~y~s{~}i~}mmo{p{{{p|}~{y{sxoyytmjsql{|~j~~r~~dzvsoj|wpyuzqps}{rt|}u}uwx|z|z|yszxru}my|uzn~zqz}|ttx}~{~y~}v}zz|~ws}y|{zx|~unXw~{{lvwz|vq~x}z{x~w}~|ou}{u{~u{y}wtim{|}~{w~{wuspz{{~~~t^}}zz}}z{bppp}uoyy{{xwp}uquxvzy{|qwx{|}q|}||}u}}z}{{sz|z{x~rzzz~qkz~}v~}}vy}srywy~{zuyx|u|~xt}xivt{}x~{szwz~{}||~|~sz{}|v~}~w|z}~x~~||z~{{{}zry}p}n{|lrr{|{{p~~vuyo~rtzt{|x~lw{psmzol{|z}~{tzd|~u}xz{ox{~~i}|puqrvzl}{~ww|{~yuz|f~}~pqpvl|yyzyxp}}tk}i{mz~zlyyotsx{t}{zwx~tzrz~}~qryrx|{~v|tz|{v~tpzvuxbsl||~||{|i}}ug}vp{ztxt}t|}w~vlu|}r|z}~}qzfwotpo}tuzz~m~u{svzwzp{xnptzmyou|t|~st}s||xwuy|~~sx{ys~vwlsuux}w}~t{xtvyvn}~{|~~~{|_k}xtt{suz}|x~|r~~xxkp|tuwy{vtv}z~}}}z~t~ty{~~x~}~xxywzuvu}s_l}d~}}xrws{}~{ycywvxtvm|ypnux|zz}{u|~}{x}|}|{zt}|y{{bz{q~yt{u}wrxzt|yuv|xszz}vz{t||}{~}|y~{{z|z|v~z{xw{~~xyv}{~{w{|}zhw~~}}wwvnm~br}}veqwqRoz{tvwfrq}dy{{xyy}horl~gwy}w~ctmm}v{unn~trzt}qi}ysltuhykss~{qxut}t}vq{ugy|]q|}k~z{|phzy{sy~r}{iw~st_gzp~|w}p}zixw}zr{~x|wykw|vzxc|u||]v~q|dtwsnvu}tvy{rwzvouu|}|xx|sxoy{|z{{ztzryy}zwvyr|zwx~}x{v~z|ur{{yv~~yvpx|{|~~zt|xyw{|w}}}}{|~{w~z~}{w}st}|ay~v}pzvqwv{wuwy}u}r}x|ut}zt{{yqyyr|zw{yy~}}|t||}yq~~}~w{~zzy{~wv~~|y}{{wz~~xyz}Uh|}z|~xwjtpt|szzg~|{{p~vx~yz~rs|tzyr}}p{wzv{{y|}lu{|{btnx~~zaam{~z}y{p|suz}}|zyqx|xu{xyr}n|x}vywwnp|cb|y}|xxx|tsv{wyzs|}sp}dx|tmnwlxwxsmztyzozzrz{oyysoxp}uty{q{ki}~}nu{ht~x}}wxv}st~zqspt|x{yzy~utyxr||s{}whu~~~wz||vtox|~nv~{{~yxPyo|r~u~vuk|}wv~op}xkp~a|oj|{|z|u~r||||~{v}y~{z|~uttyyzw~|u~}u}vp{ysyzkyxpvtv}u{zxx|z|w~{zmvvron{zvyzg|yy{xu}zzrxzvs{w{wnz{p~y{~wy{~~zznz}r~nzxx{zx}}{|yyuw}pt|zwvyr|{{|~twu~}q~zzxyv|~{omxyzs{zz}{yv{}uw}|w{}~}xy}~|{yur}|}sz{~xz~msz}quy|y~ut~{w}||z}||t{~r{{po~vn~um|{{uqwkwzzz~}~~|r}npw|yu{wvzk|~wz~x~||~sm}z}|~~ryz}{quZz{s{k~yqo{|}|rzol}wxzyl|gw~yyl}|{yxrxtr~{{wzv{yyxx}||}~wmxtn~u}q~tv}~|v}}}||vv{|{~v}~o}wtzxxxuvqtzxizy}lzktz~~{tyv{zv}~sQvx{~~~qpwz{n}}v~qb||q|wpqxusts|mymyvz{qw|oyyswouom}lyd|vv{vt|yswy~r|xskhuqnypy~vwvu~yy|wnv}wu}||}tm|{z~tqjxyl}tup{}}{}l~wvu{u|}kxyw~}rr{}{y}w}}}{{upw~}xzwuyzs{}|~z|}}w|vxiyprro{|~voz~oytljyvl~o~yolw~yx|y{{{|sx|~ruv}~|xy|~}~||y}zw~sv{~|muvjt~{mp}vtux^p{y|_tw|]rx}iw}ko|{lyu|w|}z~tv{w}x|n~n{wqxr~{spl}s|a|wx|w|wwxprku}w|~w}i}u}~z~y~{[yswvwt||gz}{}}y||o}m~myy~|}roy{tzsx{|}~y~}}osww{xs|u~~dystv}r~|vywb}wzrm|}uj||o~ozzw{}~st}}zw~~t}txyx}{y{z~l~xs~q~vy|{||{~}uux{|v}vxv}xpx}wxw~|k|rm|y~|}~ppxy|ouvv}stnr~vyyspsw}{qyvwz}t|u~qy{q|z|qjvryr|}{ou~}uwww{|{}p}}k{|u~w}juz~~t~sxu~}x|y{~~z|txty~||~{{}~~t|~{}w~gy|~|}w~m{on}t|~|~yuv~n|vorhlx|xh{vp}twvw|m~zvl{u|pn|yorx{zzxyt|~~swzxzyx}vnzvsv}z}|}|Sj}}z~skn{|mihw|mz}}yu}rkx~yz||n~yvumuf}}{{n{|y|w~Xr]|u{|v4vh{~v{|z{txuoms(iuFmw{k|{|wpzvT_~{wetzonyyntm~{uk}}z}v{{m}wpax~jn|pz}zupg}t}}y{{j{{quwxr~zz~~cw~~pppz|}u~wtpztnmj}x}m||k|{mz~x~y|yw~t|tuvz}qu{wzo{~~|zw~sx}woz{rv}{xwqvz~ktu}wwzp~v|yz|z~v|vw~xyw|}}rtu^|~x]pk}ku~w}mz|zkwr{zgws~}v~fwzs|~~}wz{q|wzzz}w{x^}xosp|s}~xtuowyshi||m~nymkvrzs~ty{wy{r{rs~y{}ps{v|x|y~|~~~ptx|}~u~|p}zx{{}|u~~u}uz|u}~|}}{}|p~}|p{u{u}||{|~~}vxz|ttys~x{{yxtu}~Vrwt_~|nz}yt}ygyw|sx}zupz|nq}}wv}{~wytty~~xx|}}}}|zw~u}w}pvlyvhvyy}~vqzwlz}z~|y~{u|w~|t~k~zn{vvyy|}u~zr}}ru|symzqzxv}z{uyl{||{wv|xvytus}k}szpxwu}zxz}|{xvwp}|}z{|}v}}zz~|}~x~u{z}u|vwyz|~}~sn|r{|}xys{s}zzws{zy~stxs{|z}}xau~vvlsxrrb|wws|ssx}|ueyxuslumy`hswzl~r\|{sp~o}{vxvg~{znxxowspkv{ytvz~|}lw|osx{}or}rmku`vpkzsk|sxxtynyyfh}y{uqt{jyzyy{vjzyx_x}f{tokvxwo~qkprrwwvs~~xruvw~}sxvk}{y}sv~vwutv~x{x~mjqhos{ox|rsxxz~||yyuq}|u|wy{yst}}{}zv{uyqp}}~~~zv~qrt~x|zp~ls~xuzvwql{h~}zs~|}n}vus~v{}}z}|}{usu{pvu~~~vwx}}{xyz~}yv}uyx~jw}|c~yuwy|pzdzp~{z~uys~vvjvwwvqtec|uywpt{v{h||rtzm|xyty|qysw}||vaj|vvsz|{xysrryuxqqzro~ykx}v|vx|w~vv|v|zst{xsvozv~|u~{~wq{r|}|xy{xpvztt{uszw}vy~~v|txw||p{xwwz}zzqy|}xvu}}~{tsutuu~~svvjv{zv|y{{~{z|}{x~z}}}zoxu~rrm||{~sx}}oz~tm|j|m|}l|~y{}y|zt{|{|wyy|}|suz}szzy{}yw}u~}r}}z~y~xgp{zy~}tvw~wryzpws}}tw|vz|y~||ou{~wy{|z}}~p|oozx{ur{zvcxuyx{xzxvv~{}}w{x}}zvux|ywtxy~}~{|rz~t~|}sx}yy||~xszzzt|yx|{{|y~szrqzrnwzr|x~n}{yso{}|q~v{yw|zvzw{vxzunsr|vv}~~u}urjzy{}v~xy{q{vsx~{|}n}zxv}|z~~wz~sw{vt}r{|}z~~{~y{~w|~{wxw}}r~|}y~{}yxxz{u}{}{y|{|}~|wysx}zwvw}}w{|tvztp{tr|tzvx~qsyr~}p~t|x~w{wyqr{usk|xt~sylzts{u}yy|zyo}}x{{|k}}{vw~{z{~tu||xw{yz|{|x}{xu~{zw~y~}}|}|~|z{t{xy~x}~yyzxr}xy~{y_~su}lz|~w{|vv~}xtq}x{mv~u}zzzzlnu}x{~w|}}}|q|z|~~w~|j|~z|}nrz}l{t{u~v{v~}jqyx}ypnvu~|{|vvr|~j~~{v~|uv{z}zm~}}|}sw}t}}|{}z}oz{pvrno}l}{oz}}v{wqrls~|ki{|zzxvqy{~u}nunl~wyy}x}x||yyzy|z|wtxsz{}}|w}u~o{{|qx||}~{wzqtz|vupusvxtxtw}sx|{|ry{|fr}|}y~uzxr~mzs~ws~}z{rywxuywyx}u~yyz}wvdys|stujov~~}oysm{uu~zmzww|pu}rvx{xuz~ur{{pv{z|~s}}|~v}|p{{szuzdzx~y{y|{tzsuzu~yx}||}{~{zwwzuty~~{}}~y~~}svu~}|^tyzp}sq{tz~}{xxpumfkzsyn|}i}n|{v|{z~||{w}wy|xqw~y}{{i{|~vpy}z}}w}p|p{|}ul~v~~xwuzo}~twtt}{{{r|v~wopy}xr~|}t~~s{||~|{}}|wxvz{|x{vyxxu{{}z{|n{|vh||{uyr{~~v~}z{~~iu}xx|vxxw}v{{v{|l{~}~}{rxss{}|ys}|qxwxukkqwnv|nm}~rz|{{yy~y{}|y}|vxxxznvwo{z~zzqxr|yx|}rw|wz{~t|~txyt}||}~z}~{xztty|~{}{c~}|t~}rpw~ts{sylqx|v~lv{yxv|vsvu{z~|t{y~}|zoy~uwzvnwworyusq}w{v{syvxz~t|yn|s}uustz{{~~t}}}zrvnu{x~yzyr~|~zw}w}yv|y||x|{}~xxy}yrwqxyxzqx~{y|ozllu||ymsy{ux}{v}{tsoj|j|dr~gzaxr{qu{}oxxu{r~v}q}~ywozyzzxnxsl}ugyrt}}{}yvxv{zq{}tqrowyu~lvyuzxzuzxwjtu|Uuw{rzwn}vw|}~yuz~y||}s}~nvpt~y~xul~snrv}ztz{{}|myw|iz}rysbuztr~t}vo{u{uxszyyx{wq|w|p|tx|rwrypq||~szz{w|r~{{wz~rw~r{~yywp{~~zw}vw~~xu|xz~zs|~xt|{|~~v{}~wyxpjyqttv}s|pzlw{~u{wv}su~{zluz{pm~wsvn{{yz|yexw{~s{tw|xouq}ttp~{w~x}prxw|u~}v~w}{wwv|}u|t|}}|~vy{}{uzx}|~|}rz}|{zvtz{xz}|~wgu}~}~muoj~~ot{xvquwpx~~y~x|utgyzxo|zzw~xvqpvs{{}~}xyyy}llu|yzp|qoz}q}zv|xv}{~{}tz~xnm|w~lh{s|zox|ysvo|z|wzz~z~|{r{||r}x{}~xt{}v{~q|nzvx|{|v|y|xvxh~yp|oo~o|z{yyowtki~{wl{xkzp~ryy|wx{x}~t{r|}}qs~zx{|~~~wzu|y}xwlvwxx|p{sy|yuu|}~nz}tw}vz{~smln~x|xr|~y|yv~}rs}~m|nm|}tjr{ix|i~wx|lo|z~t}n~p{vyl|oxw|tz||nxn{wn|~|xtvt}n|~~|vs}ox~}nrusp~~rsu}yp}wzw{y~vv{}Zyopp~{q||vrvo}sj}i~x|m}u|lrxmzv|}t~yzwt|t{rt~z{zrs{zyy{{}z~{{u}zw}v|~~|~s|ww}~y{yy{~x{nzpopux}zzwwortrk|i|tjzzl|z|t}tt}{{yp||{zrsw}{rt~|x~{~n}{zwuzoxrymwtwzs{mw|{~~}m~pp~s~|zu~{oy}{{sj|i~zzl~y~n{xm{~u|}w}~z{|yt}uq~{}|mv}~~z{~xw~vl}vz}}q{z~||ppt{{u|zyuzy|}|}|z}~~}~wt~lv}=xquc~z~|~}}htz|t~ys{s~yn}q|z~}s}~t}|{y~|yy~{}~|zzyyt}~{~t~~zbx|~sywxn{svf{}xpz|}x~tu|vrx~~{uvssh|}xy}x~|zr~zrw|tyu{~|wwrwz|w{v~~{zz}y}~{}y~vyvs~r}~gxxzvyzrm|wx~a~{zv~txz|zw|}x{ttwytr}|{s~u}{}ucnr|s}|}|~outxzv}p|}rvx{qyt{}~{|}vz~~}~y{|~~qz|w~ytx~{uv~tzxp{{pzs~q~~z}~{|}q}}}v{{~x{|~~vy|w~|~t{z`||tpop{~{|uywu{p{y~tkjyl}xy{n}}lxyx{tzuzwszv|qz{uxprvkx}||y~}l}q~z|{}w|zwwqwuuZv{o|Y`|xrs|}vx`dqroVkot}xxr~ifu}td{rwty|zk~yt}cyy~opvzyzk{{y|}ohkt{}rsxhw|uz}u|gup|{utrpxp}p}utzwyo{~|j{{mq}wvx|swzto~zx{huu{uzsrux|~syw{t|uqu|n}~gtnxusv{rvs~owtzfxv|ztxmw}u|{rvy{y{ixxnz||~|u|tu~rvk~zw}u}|~tzz~wz||y{xxqmu}~y{z|}{vy{wx~}nz~xkizquz}l}{o|z}}x{}{vxwz|{syt{yyz}ztz|~{w}|tz|~~~yuy||zz{swv~wyvz}{~}uxwg|wqqpw{z|~vxtspqxtlzirl~yzowxs{vy}~~uy~wy}u|rq~os~xx|}x~}}}y|sy}}|w{||nyq||zlpi~|yur~y{zxomu|zkuts~r|{x|p|h~~{nt|{y}vo}v~vz~y}iyx~{~}s|u{u||}vwsp{\x|p}w|t{vs{~x{|yz~}zx}v}~iy~zn~{|{{}|uu{y~t}ruz{x~{zy||ww~|}y{vuv}vy~{y~y}y~~zt}}{~zzt|}tyw{|~{|wz~}nyz~n~roluy{~~o~{tn}jztk||n~|uz{}x~~z}v|tvwrut}w{w|{|u}twy}vz~nwz||~oz{}rwqu~{x{~x~|}|~z~~}zzww{tsx}|z|zTqivz~tz}|zzR|t|v||xn|npQrsu{}x~dzxtt|uqv}s~ttz}y~juowvy{qrywz}nzvqrmk~vlov|vkwiy~lwxt~{qxo}vyo~{itw~v~^oxt}~|opv~qvt{w{x|pzuh||~v{|{u{x|`|opn}~~v|}xuwo|rxskyhzy{l|~{l}s}qyu~yuzw{}|q|ruwrvpry~|x|x~||x|~~y|s|vy~wuo~tz|rv{~}{uF\}xxj}|lx{{u|wsl\n|w}}pz{zqwuux}qcr{~{x{uxsgZ}xizuuexjnzpn~}~wy~}qYt{o}|oju~y}{||x|{rs|{{}yq{s~|yy|p}{w}{||z{|~ttxv~~~~|z}}wxvzovz|xuzs~|j{z}|}y}{ttj{uyy~p}|mxn~t|d{qmv~t}zm}s~|uuw{n||q{s~wy}}w{tx~|y~}t|nz~yyzv{p{put|}wz{vu{x~~xzwz|zq|}yr~{qmtpx|{zrz||||}}vtpvs~|p|ox|gi~uxkx}}}~~p~u}~u}o~|x{xy}}z{yxzz}}yxqxxs}y{}r|wu}z||~|vx{{~z}}|{yvmx}xqs~s}y~~ztz||z|~tz~tyz}}}~~|~s{}{z~||{ttxx}{~z~y{vy{rztwyy~~s~z|~pu{pqo{v}x|uwxps~{{z}}z{|}~wu||tqx{t|qymvmssx{p}}tsyrwvz~x|v{ys}wxv~z{ykw{r{xpzwnu}|}{||ysptz{y{rzmw~}~zz}{|x}r|zz}~ysb{dnvpmws{wyr}qpx~rwjqsm{pzxp|v]{w{{rxzwpzs}t{|xz~mlswvw{}u||{xv~r}sxlv~uzzz}~v}xxt|vzt{}|xuz}sxwwvt|zqwr}x}oxzs|vwyxtwxw{xt]ywzq{xzwwv|mu|wxsj}zwz}uxz{~|}ssx}tu|qpwyuy}y{{v~z~yr~{}y~}xy~t}s{z~~ss|zz|tv}y{{v}|zutvpm}xx|}x~gzx{|]|u}t{f|ksqwvf|uvtf~|t[|vpsx|rx|oxu~lz{|{|uz{{uy~|vyz~}twtz}}x~||w}ux}us}ztw|~}y~{x~}}|xy~fxy~~|yo|qo|v~~yq}oz|tkl~uyn{z|pq~svoz|}xwr}vu}||x}luzt||zxz~wz{r|yw}usyy~n~b{ruz{xzc}őrq~mytzu~z~~~{{v|y}o{~|~v}|~v~rn~mazi|wsy~ywquywu~rpp|xqww~wieky{nvxwu~{y{|xurg{}~zvszfs}yz{xmwnt~}{x~~t~ouy|y~{~|zl}yyppbynv~vlm{zv{~}|~|}{{{wx{|r}o{sy~xxwxyvx{lzrzq~x{yxt}vxfzx|wsuub~ezywol~y|e{ytqzn{y}xpy}r|vry~x|ig}tt~nw}{~~yzubtuuvnppo~zesuvxtvxtytwxt}zsryyttrxs|{g|{}z~uo{s{{|xxvuqvywo|xupzwxux~uzuvwwupyws{z{zydvz{|vvt|{|z{osspst~}ttu}osy{uzzxz}vu~|||xzzyxxwzuuqrqxr~y|{outlzk~|m}{|~l{}|{x{~wxu~zu|z{wsv~~suywz}yu{~~t~~{vy}x|qyzvrxtwpwy|y{o{|xwx~ruypq~}z~y{|xhz}~~v}v{{{zrzvwvx~oxtuirwpux~zywysuwwu}v|w}zx|x|y|y}}}up~~nyqxz{~{~v{s{zx||{{vtuy{}ty~zv~qpzz{}|y|~{w~wqz|}}t||q~|~~wwul}~pxtyy}zwokswym|so~}uix~v}w{v|{zoztv|wysr{z}zv|yu{}x}{us|yw{~~w|t|j}}o}x~y~vu{l|~n}pvp}~v~zuzoy{{unkuk}|m|ysx~|{|}|x{}wvyy~zou~y~x}~s}sy{xr~m|~x~|{x|jyz~qtr~{}wx|p~}v|ul~yk~~xm|{m{~y~}zxzyw~~t{ty~}|~qt|}}zw~s}w|u{}~~~w~zp}z~y~suxk~{{v}i~`}bky?wouot~wcdvxyx||kv~o}}}}}sz}wdtv}|}~wvhoxoxuoq{|z_{x{kssyuu~~|z~||~z~}{vty~~~uzp{z|~~y{{~ti}v}u~xt~|xv{u{}}{nx{|vu|ryww{sn}m|xx}|}v~}twmzutvyy~{{~~wy{zwe}{}rxlssszyv}{w~xwzrtztvy{xu}}u~{vz}~oyvnxy~xx|~xr}~||~{|~~}|s}w~m{w|zxz|wy|~vwzxyx~~~wz}xtvs}{wx{yu}}wyqyq}o{|x|zqz}}l|y}y|wxliv}|~{{euvx~xx~}o|}ẇokvx|{hg|vtx}xw~s~}~p{ihkvjvzx}plw~{~gytxu|~|vqzw|x{zy{~xp|||}w|u|qy~~u~us{ryku{p{t}v}t|yv{{~s|||xqiz{|z{|}o~|~o}iwr}}|xw{n~wjxyysy}|{pyx~|}xz|~o}zyfxoy}u~w|ir}vy}uu}r~}w{nex}|{}{wxxp{v}~w}ty{v{uywvx|w|}vxn~p{y}vyx~}o|{{yxw|}r}|~~{yt|zz}|{yty~~o{x|{{~sv}~n~uwxzzrnvxu}rv{xysg}ttt{}wzyz|w}uzu{ztz}{vwnq|x||~~zprmxlpk}ym{wr~y|{vv|wt|z{}pzv{t}{~uwzk}wws{t|}wuo}||z{{r}w}vyvxxyovntw|}{|x{tzt~vr{z{yvwz|z|vthtzy{|wn{w|~|r{woz{oBv}nu|ry|{|xm^i{{zv~|zy{}qvjxsrsso|vouvw~|urx}~vxnfwxxpv|x~yzcwsy^wws~txsim{m{|{lz}{x|}zr{iffm~{t{wuspoz~qo|x{~}ut}~o|zwtqsy~{yxz~v{wxqxwxwtv|~}~{m~u}s{{nnu}zr~|{iirtp~e}r~zl|wvnww~ktwm{~{v{s|~tzix{zyux{rzziv~w}}{tpt{zz}wzs}w||z}iwz|t{wp{~py}{zt~r{tv{v~svvxqt||yu{wsqzzyysty|oy{|w|}~ty|tzu|}zxyiq}yy~t}y|w~ttryttxsr}zvzwu|w|{|zx|}x|}xvw~{~y{|vr{~}ux{t|}{ury|v|wxy|zyx~{uzu}{t}~z~w|~x}xyvr}|s|y~z~w{~z~}wy|xwt}~txz~{}~z|z|~}{L~xw]~szlyt{}mjzzylt{{|y{~~}}}{|||b~zzqzpritot}oyu|x|w}vpk^Zyrpiqqwpwwwxlqcmorwumq~lxlv||}}wxrzotx}umqytpk}tkzzqynnr|}~nzxs|qxlty~s|}tvyzz}pt{~}sovvwk~myp~z}oyw~v{{}z}|r~s{xp|}}|}yw{x|y{y}qrz~||w|t|w~z|z{}styz{zw~~u|{tyj~|u~puon|z}|yw}p|vvtm}jnv|l||wnxx~z~~x{{y}{u{u{~trt{x~y~~{~~zs~t~uxwqvy{v|~wvyg~~|up}nq~}~yy}{|s~o~y|skzjzj~yn|vzz{s}|xwt}s{sl{vqp{}|~v|u~pz{z~x|ox{~x}~~}{vvwqz}|~pno{xzwzz|vw{oxwysixh~t}zj{x}ow}v|x}{~~yz}}r~us|pu|~o}z~o}|}{vyrvtz|qp{|szzz}{{}~~ty|}g{zq|nq}t{~qyw~uo}sk{iwk|zm~}{v~utssvwu|q}ql}|zxqx~x}{}x{~~|zyuxw{zrw~|p|zx~~}c}f~n|z{z|}}zmjLypyt{z}u{{~~yx|v{nwqwnt~v|~lz|kyrvj}}~ynymno~}}|}uq}w{izzsj|}{cxul~y|cuy~vnq}q{xsryx|~t|z{ots{w~~vs}zl~um{wmysp}~{uusuusq{u|~vsz}wpr{zns{~jquwqzt~v}u}{|~ut~||s|{ks|~|}xuoz}nzvt~|ovw~|||zu{rswx|wr}}jv{tyuy{~onz~}smw{{}~w~}~zslroz~~y~y{yxy}stxytxv~|vye]n~gzyl{{~xn{~qwhrj|z}ttr{s|gny}z{x~up{ozmz}}|msziru|~v|}w|qnz}~}}}{~u|{{v{{|x~z}|z~||y||}u|}{{{|~}z}wz}ys}zy~{z|l}yus|u}mz~zysx~y{v{{w}}~~xt|~j~q|zc}~}}}y~q~{bwvrws|wwvr}t}{unvv~}{{x~{|y}|wr|s}}zzx|y}}q~{wy{zz}w|~rt{{|wvz}cx}~`wow~m}}{j}~rzv{ymzi{~rzzw}~jpubtxn{y~|ux}vw{vu^}y{zwoxk}~|os~{mt}{v}{}}u}~y{~}sq{vzvt~oo|wvt~z{syyyu{ztp}mvm}xx}y~{x{o{pudu}|tss|~kxz|s~||~y~~tv~{yz{}{z~z|}||~v~r{}}yv~~|~{}||{~|||{mtzxir~v|z}w|~x}|y~vs}py}r}wy~p~{~xx}zy|x~o}uq}uoxr~tq}|y}tvz{}r~~y{y{~f|}|v{~~}~}uvqro{~qutpmzu}{yp{{}vyt}vvw|r~~|~}}~y|u~yxv}{mozyy}{{tvtyz{qy|}yw~y}|}~zrwzxvzl~puw{h|qu|~}v|}~v|yxwv|y}~qyozy{w}}rxvxvw}{u|~z|~v}wzvv}vuv|}}s{yv|}zivtz}p~{yrz|~s{zr||}|yt||xyq}||~|y{yvy|~{|yzrr{yxk{}mxtxvwzxmxz}}~{}{z|y~}zx~~~}~|z|zt~~~|y|}~}|v{lw{y}xr|}wy}y|}~szuo|yuys~k~~|v~ww{{}|yv~z}|puvy{~zzy{}~z|zxyyz|\zym}nu}{{tz|{{t}|}{r{}~~txz{}swy{||t~z}|r}xr|~|~zvw~nmw}{wvyoy}o~~~x~ynsk{z}}{zzz~{zz}|~~z||~r~|z~~ywyy|}w~v|{{zqy|~~zn}uy~zzxw~v{~|~v}t||usrm~zy}|~x{y~}{z|x~z|{{}|~z|~z~}~~~{}}y~v{~~{}|{x}}{~w|{|}vz|y}mxw~l{{}wy~~x|zy~rvx}z~z~zy{{p|{y}~}}s||~|}||zv{v{}xt{~zqxyysvxz|w~}}z~}}~~y~w{yux}}zw}q{wyy}t~xz~{}{y||xrry}ez~~{~xyd~yv|ys~{~|ytr||{~{wzzxw|x~y}{}~zd{u{}{x|y~|u~vz{~zzts||{uxwzn~vs{qm~wx~~z||}{|{x{w~}{}}|~{{|}~zy~~|{~}r}~wszxy}qwy~wz{|x|{~w}u}xvf|x{}sy|w|}wf~zgyY{z}vlwwx~|xjrmo}z~~o}wvzs|~pk}~{|~hlw}ycz{uymn}sznxwuzw{sr}f|}{o}w}m}x}~~zsyno~thy|yosylx~}yv{w|wvyz{x~}}~|~{rx}|~w|}{{}~wy}|~ppswr{}|myu}wk}}y|wz}}syq|u~~{ztyq~{~~|}}~y~y~v~|y~y{t}}~}{l|r~zyujqt{~~}v|}z~}|~pmyt~|~w{}}tz~|vw|~~m}t~{m|}r|r{z~y{~}{~z~x}y}}yzyo|{u}|}yx~{zwo}z|l{{~~~{vyw|yz{|ux~vxy{}|~~r}{~|}~}ww|sz}{tpo~{ky|zv}~v}vvzzx}}~u}|{{}yx}{zpy{zvt{}}z}|ws|y|l}qvhq{u|t|~z~{}~qny~}|lrvgq{t|t|~|}w{qny}w}}}ous|wjs{~w}~z{~}x}|zz{{tqz~z|~{lrzxhqyu|~t|~{~~zy|qn{z}y}~~ltyyhqzu{y}~vz{{~}x}}}q{nyzxstylyz{{x~~y~}{}{}xzyv}~|w{|~{}}{~}zqtvw|}iz{{l{}z~|yvw}wi|{oq{y}r|n|v~qy~|{~~|y||~tp|umz~t|{t~w|y~wtsnwpy}vpz}z|u|||~~uy~}ul~gox}yv}vo|pnx}}{|}~zx}w}|tx~{}}w}}{~~~}~|y}~r{urrrmz{}~w{v}y~}}~}||~z|~z|}xz~yu~~{sqw~xmz|~wz~}||w~|w{~|}}~|x~~xv}~z|xqy|u~}z|z~}|ytbd~{{~}~z{y{||tw}}~{zv~l{}u~}|t~~~~~vy{}}|x}y~yzu}v~~}}|pu~|mu~w}w~|~wx|}s{try{uv}}zythow}|ytyr~}urz{rktzsupw|kx}|~sy}oyshtu|x}|}~ru|ytz}~~{|}z}z{y}mqt}~ny~{|z~v}{cuzyxswr~vxwvqyz}z}~|}~||}{~{oz~}{{sy~xw~{tny{~wz}{v|}wx{}{}lwuwfyhqu|yv{~{}uyz|~q|~nywy~y|y{ozzzzy~u~z|}yvx~}~v~|~z~~yi}|r{u~u~}qz~yu}tg{|{}}x}yt}|~}{||~y}|qywxzzsxyrz}~|{v~y}z|~{xzy}t{z|x|~|rx}~yymux~~zy~}~~tv~us~z~{lqzkz~z{wx~|~yzwy~zz}{}yu~z|xzv{|}~}||{{v}zx~~w|||}zxtzv~myn||~{vyz{}yxu~x{|}}|~xp{v|v~}ys}~{|}y}t~wx|qqw|}~u|{o{zu~z}~}}x~w||v}|~~~lt{wiqu{w{}}z|qnx}y}}~m}vuztn~x}}|}y}w{}xxv~~}t}~y{~}}}rtz~|}{{|{ztqsn~wwt|v}w~y}vt}~u|v~~}}zy~wz}ur{owyyp|~}~~zy{uzwz|~}~|~}zy}~z~rz~nxw~~usyd|z}{z|zwr{vr|~uz~zzyszwxp|z}|~|y}ws|z|jvx~w~rkz{x~|z{zyl|z}w|{{z{tumu~oy}ir~v|~}v|}u~{}{y{rs|qz}~y~lrucuhqu{vv||~}~qny~}q}ypw~poy{~}{q~skyy|v~x}~l~w~|~|{t~~~u{v}x|~znwoz}~~r|~||xs}|z~z}~psvz~u{t~{z|{vxj~wy}}v~z}o~||nsw{k{sv|}{zt}~}xq~~~rpz}z|~y{}vv~s~{~vzw}{yz{|p|vvs}t|}zpxxs{w~xuwxxq}fwx||}~~}znxxvwozu~vwz{|my~{|xvvv{|y~u}vp}s~w~}w}xltwgq|t{~zu|~zvx}qny}|zqs~m{~yz{}~y~{}y}}{o{~|}uy~{y}s|w}~~ssp|}t}vm}xr}}~|z|~t{~u{}}{s~}z|yy}py|xy|}}zy}|vztxlptx{s|xv|w~u}w~q{||vstl~y}v}{y~}yw}}}x|{x}}~}~|w}}}}ouw{qyjr}}w}yv}~lx}tuttry{rmv~l{v{yq{y}vpx{~|~w~{qrxt~|~v|~{|{}~}s}{|~~~}qukpz{w|vbxkuw~{~t~z~vz{}tzvr{|~|ts|s~x|}{~|{{q~~xu}~~{}|||yz~{||~{|}k{uzv|w{||z{wy{v~u~~}|{|w}{yjt}zpwu}~rnv~}~|w{|yz~y{~{zuy{{|z~~x||}{}nny~jxzttn~~}yyw{}}y}|~||}|pw}xw~}r~|z|x{v|~}~}}}|v~{l{r|{j~qt~{uv{||}}~}~pmz|k|wuox}v}}pz|{mz_tyyyf{qwr{w~vps~~|tzm{|x~}||zm~s~`{qvt{psdr{r~p{pzvw{u}zyy{z}~z{q}|s}uvus{cyr}{~|hyy{z|~{y{z~p}|{yw}|{w|yz|zzu|~s~{{{w||iu|}~uwv}{}{zz~r~rx~~xz}z}~~}~~|wslfun~ws~qqttlzx{w{tr}|qeyygyanx}~~z~zv~wwnmxe|z|m}q{vxxnx|X^~y}zpmn~|g\h}s}xvym|yk~r~Wurgvzv|pytzg^qhcto{~{u}~tewq{}xqzyz}uyzy}|~m~ywuv}}{|yx}|wz|~|~z~vyw}|}o{x{{zy}q|{|w|~x}~~|yy}|y|~~~|h|pry{tkuzvvwuyyq|srnus|zq~}nz{|~~}|{||nrs}}{xot}m~t}v|vwz~{~x}~ws{}}{{~s}q|~}vwzqr}ql}x}}xzw~{~t{v||}|}uou|yww}}r|wx|~}~{lr~vhqu{vv||{~|}~}q~nzyz|}srpey`jyukw{~zsg|ropl{{{{tr~swjitt~~zynonzvw{y~zpuvzv~|xyto]~upwo}ty|qyqy}~|yy~}}{}}y{~~~{{{y|uzmz~{{{u}}z{}|~}{rz}|}zzwx}{|j}z~{yvw|u}~~|~y}x}~rx~{}yy~}}w}wx|wz|~x~rtnoxwy~}xo~yw}zwsuru{o~{z~~~tv~u}wqmby{yrutql~w~|}y{}x}{{~}{v|yy}}~y}}{~{}|~}yyqnyxyzu{r|w}y{us|}}~|~}|~sx~|z~xy|izzw|zuww|~u{yzz||xz|~~mvxc~}}}{zwv{xg~|wx|su|yts|sxy|z{yz|y{~z{{ynw}tw{{}w{xzuv|qr~z{t{sxp{{yyu|}lq}xgpu|wu||qzu~qnw}Qdyx{}rzv~nvxy|k}yqpvq|~iz~}{oxn]vxk~mw}vyyÉiuyuwzxv~lwryhy{~~}|vqkn~o|ozy~x~lx}}vn{ynwx{}~k~s~}ov{|~yy|}}|}wwr|~z}syps}utz{~v|||~ym]xkqvsu{atxp}{}o~q|x{{x{|s{wq~xu}z}t{uy}{z~t|v}t||v{xv{tqx}twvy}{{{zr}yw~{~|wuzzrtz~l|q|zsw|~~xtxt~{~{rv}}xv{||oi}|y~n~}s}z~wmy{}v~||}uq{~||{ygvm}puryxy{}}|~oodwv|kvqv{k~vjzlx}rztpx}vsp}z{y~|v~}|ypv~}xq{l{yr{~{wtylwzyxvhz}y}xy~m}}sshr}u|w}w{{q{r||z}w|}|n{~~{uxxy{v|t~ww~|~~||xumz|sqww{}w{}}z{xdz|z||ztqzsukf}xw~zxu{y||ryw{y|}z~tx|y|v}xu{yyyzyrwzvzxx|}t~y}yv|}{v~~pmx}t{v|wNwuv~x}wyx{x}}}k|prywnz}{t~{xwqztow~|}|~mytvq||vtuz|vx~{x}uxwzyxn}{ft}~p|}}{~~kz~wd}}qzzr{u~|r}xzuu}}~mqwuw|xws}}~lqw}{sz|}yozl~~xu{{~~}yvwwy|~}vv}zz~y}{xvyko~}|~xz~~|wx||~x}yqu{z~~x|~}~zn~uz}t|~{~~mz{}{}{{{v|}us}{}~~xwy}}}}~|x|mp~z}{x~{{~{|~w~~{uz~ms|~\vfqw}v|}~t~}pz|p|q~{~ry~~{vyt{po}y}oyv|~|wsyy{zyr}~|~w}~}t}|}v{|o}z{y}zkozyqyy~|yo}zz}{r}~yzr~|{~}zz~}zvz~}~mp}twmwz|vxp|w|z~zuwtxv~}w|yw~z}utiy{vzv|}~}pqjv}}zw~w|}}r}{x~zu{|w|zzz||y|xwwpx~|koxvV~{|}|yxtu_|~~vtx~t~|k}ykz}}{w|~vyqtmssyo|~zzuvwtvv~_{~u{}z~r~||}pxtmo|y}}{zys|v|saurw{vws~yv~sv~|r}t}|~plzr}|iqu~|{v||}|~}|qoz~wy{lqzgq~{u{~~u|}{y|~}~qnyyz{zn}t{|k{s|v|}||v|~~y}}|rp{{|~wo~oozws{~}vzxuvvt}s|sqmqz{zwzkygmqv|v~xmz|~}~lvx|yyiqu{{{v~{~}{wy~|qny||lsyhqu||{t|~t|zv~~zqny}wtrpm~ww{{w{z{uu|}~w|~{~|wz|}w}|~|}}~}ry}zs~~|}u~{yo{vt}~}{|~|~zyy{yp~~wy}xtq~zy~{ztw}v|}|}ujzx|}wwsn~r|sxz|xxu|xahx~~|kxz}tyxo}u}yujsustva~~|twjpw}z{v~mwky~}~z}ty~{}|w{{{{|y|}qqw}w}~|}}w~uy}||pv}|}}}u}u}rvzk}w||}yz}|y~~w{u{z~y}}w~vzw{~y~|~~~~}|w|~z~mqzgq{yu|||}s|~w{p|~{v}~tsuroy}{zms}wiru||xu|~u|~|~~}z~r~ny|~lv~soxhqu|v||y{}q}ny}}~~xtl}ty~~~yhqu|}uv|}yv{y}{~r~oy|y~~}|{m~w|}t~}|}}}{}ox~|{|ywzu{pxzm~|uy}~~rx~|W~~}z~yzzl}{v~||y}~|}luymwhq~t{v{}}}y{{qnxzr{|~zrx{zxv~v{vuuy|ix~x{}xx~~o~~xyx{vy{}}{puyw~xy}}}~q|}|~xpwwl|z|}}{p{~{w}}su{}{{w}}~{{y~|~{~p}|~~~}x~~z|{}xnz|xuvv~z}y~|rqhl~|{y}~zl{}z|s~~|v~s}z|zsz|u~tzz~uwx~r~z{zzu}{|z{zxt~{~}||tlw~~n}zw}~wx~x|wt{{{x~~ys~}wp{z{}zx~y|~xp}|{}v{{}{|}s{|v}uwnu~{}~z~zywjszhr{{{t}~xv~u}n|vx}z~~|~rw}~z|qx~~uz~~ls|~wiq~t{~u{}x}y~}pmzyz|}p}z|x|~y}s~~~x{w|xyz{q|x~w}{|}k~vs{wy{}u}w{|~xt~z|}v{|~}ys|z{y||quqv}z~p{y~v}}|~p~}z{yjy|x~{}o}x}h~w}k}xz||k{rsw|y|t|y}}}w}y{xzzt}vf{g]w}~}z~mutizuz~ywsvzx{z{{pttqsxqwp|hV|uqz{sy~n~w}}xxqvpgyzz}w~h~{rxp}q~wyvvxn|}x~vzl~yx}w||~~umy|wsx}|}sxxvmyz}o~~~m{w}ryz|~q{|z~w~yyz}|}~yxy{~}z}~~}}ppky{pqsz}zw~|~wzr|~t{|lu{~uw{y|yyv|{usm{|{zcw~}~~{~z~|{|~lr~vzltfp}u|t|~}x{{~~qnx{|{}~w}|lskvfpxu||}v}t|~v|}}}yur~nw{t|xy{~mt{hqu~|~u{}sy{~~yr|ox~~{lz~~l|~}tyx~|u{z{~|z|w~t}z~{t~q{rz~~y{||}{~}y{~||}z}o}|pz}}{yv{}~rkqz{t~}yv}y|y|{|}w}z~|q{t{w~{oyup}~z|yzz|z||uz{t`xx~t~|vqnuozl|utywx{|yzr}{yw~y~{wxzy{uz|zwr}yw|~|z}~yy{mrx}~kzz}yyyy{}}~wx~tyt{p|{~|w|~}~xz~s}}tuy}{w{{yx}~lsxxhqyt{yzu{~}{z|~pn~zt~z}ltwhqu|~v{~}z{~~}qnxxzyzwv|o~v}o{px|{y|zz~z|zpy~tnz~y~xv{~|zydo}o}y|nx~trx~uxy~~zz}{||wy{pzz~~uwxw}~{{{{h{}~|ut}|uqt|~onvzz|yz|{xp|y|}}}tx~q~~x}k~woxw}{r{x~rpy|v~zv{v~}y|~|zy~}x|rv}~~}{|~~y~p~~wsjy}uwsxz~}pstzz{ux}|wv}u|x|z~}u~{}|xoy{|xt{n~vmz{o}|||x{|qy{vn{|v}}~~{}xt}yty~{zz~}z}r{|{~|vz{|~}~~z}u~}{ntz}iru|~v|z~p{~y}rpyt~v}~}ls}t{zry}w}y~uq}w|z}|mrws}|t~z{z{j|x|xsxx~u|x}~v}}}}{x{|~}}z}u~xv{}~|~~svrslwz~y}w{y|}{~{zvz~}|}~{~|r||rxroxzxzovtzyv}r~x|zv~}{~}zz~}w}xqz}~}puvk{xw}z}~~z}{yv~|}~t}y{w|{}yx|yxx|qszmyz}|xy|{}yx{xny{~~{|y|zs~}|}nz~|~mz}xz|vz}~yxmw~xqwz~w|}|{zxxqy~wdsp|~~vv~~{~~}zzy~mn|xgqyu|ys|~~|yp{xroy|}}{}~~}{}z~w~y~}w|}vx~}m{~znx{w|r~}r~}~w{u{|xxxpv~u}s}}}|u^~zcu~utvumzt|||}~}wvxxwy|}xv}xw|tz}z~}wv{v|rxyy}|xmwzzzp~~{{{~rj|~{}~r|~t}{||{wy|}~}z}z~}mzv~w{y}{zp{vhzur{{s~zuz~uuvvu}vvz~}qo}~{~yyzy|uy{w|zxqu|ru|u}~wwqxmlx|{{|}x}{v{}{s}{{}{|~}wyxzx~~~~}zzx}}|wszpjzpznt~|t|vyx}xrvq~x}s}~z}|z|y{{{||yzrt{~pgzv{m}ts}vwnn{}o~t~~r|vs|{x}xq|t{~x{zzsx|}xx}~}~vu|xsw}{{vxutzm|yws|ywz}~~y}|{xt{{}}v~|x|wuz{twwl|wz{zu{|}x|yw}~}{}{{t}}w}{~}~u||yy{}~zz~{z|~v|{~z{wz||qvs~z{wuxnxxv|xzi{~qxz}vuvxwz|x{~s{|~|z~pxy}y~ty}|y{yz|{i{vu}~{~lsswgqzt|~t|~v~z~qnx}{~}w}~uz}}{~|}}q{~z~~{{ltzwgqzu|vu{~oywy~zq~nxuzps~m{~r{{|vz|y{xzy{~}ywxzzx~|~{xzx|}|~|wy}uz}|{}~y|~~y|u|~lt~ziqu~{|~v{z|zz}wqnzy}{wl}}|z}~pnry~z|zup~m|~{}v}{z~}zxy{x|}xwrt~qlx~x~~|}xyw{|~{|{~zww~||{z}|}{~~}~x|vzvue~xb}X\o~z}o{}wzy~v}mZgt~xsyw~|i_}js^o}|wkvzmspiq{u~{{luvyiq|u|w{}|}z}qnw}x|yxus{}}p|y|~z{uvx}zz}~|s{z~~{u~~v|}}z|t~}utyxnu{y{|r}}o}v{w{}s{~ww{y~}~zv|lq~yhqu|uzu|}{{}||vx~r~oy~t{}|}luwyiq~u{|~v{}|}zwqn|y}}~{|~pz~r}|}~v||sv}yx}vzwzlzzvty}||u~~u{x|~w}s{{{y}~z|t~~qjtw{vqszwozx}~u~f{|p}v}wwxpxmor}a{o{}{u{{pgqv{~ve}wyu{}cg|||yyr{{vxso|{yposwy}t|z}y`y~uyxzw{~rmxvwzqxx~t~z}|~~h{z|zy|wary||Zx}~~~w|}~}w{`yov{{zxrz~nnsr|vuqx|}ty{}y|z{}b~wuyo{{vz}ww}wyy{y~~{mw||ywyy{~oqvjy|zyw}{{wxx|s{|yy~|~~xz}yxzjv{|x~|t~}~zuzxux~_~~}~{x{}ol|}try}zx}|k~o~zq|}~izyz}oz~z~|~}v~~~v}tyx~zpmv|hq~u|~v|}z|y}|roz~{r{}pru{y{|puy}~}q}x~xx|zz}zt{vq{w{}{y~zv~wwuywh~s}~zz|~uv|}|x}onvvmzz~{|zs{~~yzwxtwzv}|}tyy}}~~y{~uz|}zwy}s|to~}}}y~}}|pwp|~w~|x|||z~u~x|}x{~z}~r|zyr~x~}zkxxy~}}{|}|twuzmn{wwv~}zz~~|wzxvn~~}~|}u{|nv~m{}}z~wv~zxwnx|zy~}~xy}y~|}uwn|~}{}z|||r|yqu|}}zupulz}yq{y~|wz{z~{~ty|{|~~~{{}|}~}y~~~{|~ls|z{wiqu{{~w{|~z}z~pmw{orp|{}|z}z{~s}pya|n}ku}d}u{wz]o~q}~fgxyoioxs}jWs~j~pf{{vx||hipZh{txuyx{r|{ysuor{~v}yy}iyywz}}}v|~wyvz}zz{|||w}o}x}|}~tv~|v~|lt|{Vthq~t|s}u|}}}~q}~nx}y|}z{vn}w~|zvz~yyysz|~i}~~wx{zywmy~z}ttztw{{u{|yty~_y{tywyyz{~}xz}~yx}}z|~w}wmyr{sq~y{vy~}z{}{}~{z}v~x~{xt~w{v}}}wz~ot{y|{z~~{r}n{{~}vx{wm}y|}|}{}v|yl|~}|uzzny~}tw~p}y~{w|y{{~~urwy}|}zx|~z{|q|y}{{}~}wzuys~{r}pr~sz~}~~upjx~yzxxlzx~{|z{~|nq~|xywy|}}|{s{{su}{|t}w|{}uw~|zzo{z~{v~v~~||ox}|w~ly~|}tz|}~|wzyyp}|}v~qn||{xt{z~|wlzzx~{t~~ts}|opiyr~ly{}x{~vy}}zpzyv~{~~wr~}zw~z{~tz|x{y}}}||~o}x{{}}|~s~|z}~}~~|x~||~w||~xv~{x~zzz}~lryziqu||~u||zys|xqnyztvt{w}xuv}r{|cnsxx}pu|w|vvz|ywx{}}y{}y||f{~}{}rx~{{w{wquvj~}|o~}l~~||zi{z~wvytylyww~pjv{}~m}|wvyzjpiosn{x|wywuwm{{xwsq}|{yz|z|}w{p|yy}~||}~r~|n{zz}z~wxwy~s}y{ts|kv{ryz}zyz}|~lszxhq~t{}xu{}}y}}~~~qnyvpwrum{|}}w{z~|{r|zx{y}~~|qwxzu|~}|}x}{{~|~}{twp|mnw}~}~ty{z|yr}}xzz}}{}}|}{r|rqrny{qy|x~{t|yw{x~u|~~~~v}vo{|wxt}stzpmx|{y~|xxvwq{z~}}s}x|}}{}ut|v~}~~uov}zjruv}}{}u~~z~x~y||}}|tzzs~{y~xt{no~zvzpq}z|}xu{tzy{n}{yw||vp~|y|{}~~|}|u~uv~|~~~y~}wtzkrs{}z~|~ywz|xnqyhmxp}w}{|}z~u~sn|~}wyzz{z}~r}||{tz}ww{{{z|v}w~|y~}z~}}{r}}|{r}||{v~~~y{qywy{y|}vyj~|y|}v~z{xxz|~wyuxyx|u}ztdvwxvizpcvpw{zk{yxzyzoz|wr{qr|qyxwpxy{~c{sszm|g}vyss~pyrpv{uzg{unmtzt}xvivx|twjqny{rsx|~uzts}t{xxwomymkwwvovvm}|fzjztyjqwix}{ptwuouwm|sjlrxyovu~wvrs|x~rzwuzwy{wtzuy|xqp{{{zxmpzrns~zjut|eryyuxuvw~uw{y|wuowu}xon~z{u|]}vDvvxrzt|vpkv~{y|~x~}{{ph{{w}w{ww{m{zo}soznxox{sqt{wwwpyouxrl||}}~|{u|pxt|bkro{~{|uzv~~}wx|~zs{uvsykv{w{~hwow}vtxs}v{|~rv{}yyz~mz|o|~}js{xnz{}}zwyvazztxz~}umx{}yww}z~{|||{xr~|z{yy}}tyxwos~l|tz~z|~{v~ty{u|{z~~{~untwmyzxtvy~ktswxi~x{yz|xxpp~{}nx~xv}~z~}y~{l|w~~ywwszsyyury~{~~s}xuzvv~r|su{{vyuxv}u}z~yxv~rs|zs~wuyyq}z|y~|zu{txwuwwu|~~{x|}~nw|}jozo}~{|xy~|wrm}o}q{|{s{xxos{y}xzum|}rm|~~~wo~|}zlsxz}tsxz{|yxuyp}u|}yy}i|~}vwy}r|}xywxxv|t{~w~{wv|}yy}zv~|ixxz}yu~{z~}~uz|{vwxyyorrwrrsu}{ywzzi|y{|vmoqvzqry{x|u|y~zw~pk|yy}swn~yx}lx{vo~{qxy~}~x~~v}}u}}~kx||vqr`{zy||utzu}wxxqqyztopyv|{}zs}|}nds~{trqx}|zv}|xqy{xt|{lzxyzzxz|~}~}zxvs{~{{wwmy{}xyw|ttvux{u}~u{{kttvzvxywz}}vvvyy~y{n~qu{tk~t}~|}~xy}cxz|us|sxvw~|}z~{rt}~|x}}{}|}~y~x{z{u|yxxrx|tu}wy{|{wt|}z}yn}wtz}~gl}o}|yu{||}w~{wzs|}vxvoxhxrywsurwmyw|xrxs|xrplmn{unvvsyspvrurx{swy{{uqwiw}i~py|q}wwum{zmvw{zqzr{{}{ty}{}|vz|upx}t}m}}y}~|szrqz~}|sy~mys|tzzqq~vzy|~v}|x}{v{p}zw|}zz~zzuv~{w{t{~zy{n{{}ywvtu~zwz{s}{rs{{xq|{z|z{|~{{|wbw{y~us~zu|~~|~}u{}w|v|||~{{z~w{z~{y|q~{yxv}{zxn~|z~wv||xxvzm{|}}r}{zm|y{yuxn~uxxww}nvushxq|x{xyt}}|kwwv{xp|vw}m~ve|zuyz|w{v|}l~xvxywxys}u}w~kulzxzzxv}wwmxks|rkynytwztnozsus{xuyyrt}x}}no~qv|{{t{q}vtt{vwtprxw~twpmxuwtt~wpqzwxp{tptxxt{vsup{~syry|}nv~ywvy}t{~ymzyzss~~}sxtp}wy{|}~x{{h~{{}{zxq}t}~~zw{hy~xx{p}kv|x|}{z|}{~|}l~~u~wzw{v}v{xt|vw|{}qz~y{}{|nuysz{p~wyz|z~{yvhyx{s{vivz{|yzwyxw~|}|xzxid~}~}wsyz~xrzvvps{rx}ut}~y~pswxy}~s|~vywt{v||uxu|tv}yx{~xyx|s}yo}z}qyyrz|z|}ytzww}vxr}ww~}qqzd~n|o}qos~}x}wvqtv|mt~}{x~mx}yuww}s~x{k|x}mzzvoyrus~vy}y~vzx~zazrz|{zrttz}tws~p~{yqx{s{~zvzzyv{yxyzy}zxu|~~zw}t|ws{|xowzxys}uuvwv~}|z~~|}rxuq~|x{}}}{}}u{wuuy~x~uux}~wy{}vxzntz}xwww{|z{~xwu|wf{|yz}z}wv{tu~uxx|}yx~v|{vyzx}|xmr~e|~yyrx{qputfrsm|r~zyuxpuzw}r{~|qz{uyrk|zxw}uxt|twy~~ywqt|s}zwp~yk{xuyzx~n|x|vwqyzzy{p~{zm}{w{|{z{Yfjrulzx}}m}~p]y~su~{{{uzy{~rp{||s}~}gx|~z{p|yvkw}x{p}|xw~|}ys}sfi}{vuqxx}|g|tur}p{x|svr{suyzyrk|tr~ovzu}wktyzsxlu|px}uryzv|xvv{z{ysp|rqyxzpxxo~g|u}v{ktxly~suywyxysz|voxuy|ry{yxuv|vs{vvvv||y|{w}|{ts|||{ntyspu|yxx}mvz|vyxzzyxv{|wxyu}y~}~mzxt}zz{xt~o|{|u|y~ywyj}y{sv{sw}xwz{xv|{|xcyq~}{{ro{uz}~|x{{zyt~vvy}ux{yvvyuw}z}}}yvyws{vx|xynz~}pws~vu~wx{|z}pu{jp~~vrowvw}{y~w}~{~|y~w|zzniq`z~kwkx}q~}}u\}{xmrt{dt~st}youszt`zn{~hzgxy||v{xWspxxsttsv~zx~v{vju~xl|pwzz}ymrr|z{|||~~w~{y|}wx|{vz{~~zuwvm|{|w{vot~z|{}|yyx}~y}|v}ftx{|qvw|rx~yxsy}x|vwy{~}yxwdup|sxst~jozzsz~vxw}svztyx~{x{yzy~uzwtxvxzu{}wxvy|t|}qy}stym|yy}|y~ymvw}|}yvu}rv~x~qtpxywyx{s{i|z}~tvvtx~tzry{put{q|o||{u~{zxr~x{ta~~q}iwyri~xo{xqywsw~}x~wu|}zw|{ywzz}wxv~}ywns}w{rxg}z}uuxpxtsvxxu}{u{nr~u{hn}~p|u|{yvw~nz|u~~qo~}~~y{v}|{|yn|}wuywu~|z~p|z}~u{{{mzr{v~vnpyuirzc{vvvz~p{|t}z}us~x|z{ys|}~y|~wx|yuytut~t}v~~x{yxs~}{t}xyvzzt{w~yj}wy~uz{}uuvf}ty{yx}uw|z}{x}wgv~}u||ow{st|zlx||~styy{urtyu~|u}t~{y{yw}txvzwuuy|r|xxw~r|uuxw|vxsq{z~}z{~}wy{wxr~~|wwzzyxz{ot}qzwzx~z~nnx{~s}sw|owz|~ui|xz~|vpxyguy}pwy{xs~|w~~xzthsx}|ws}wwst}us}r~sy}{uurts~yuxvv{v|yuxw~zvy~|}syv{}s}v{wzw{xvy}{|{v}wsv|rvsxry~{orim~o}{|xwx}~|{u}o~n}~xzns|~il|o|{~y{{{{~}|~x~~v}tlsy|z~y~pxfop}ux}|w}wypxy{|}vt|}~y}~o}s~~jmuo}uy}x~||v~~~{v|~r{n}xw|}|{n}uh{muo|wy}zyx}uw{~z}|~}~vyomy{tu~v}tvvq}}szwwv~|zwvxyq{|xyzw~wgy|x}}zvv~l}||yyww{vv~}yrv}|i|y~}z~tvt|v|zzr~~~vwz}~uuzvu~~qxxxz~t{|wsrxyyu~|xw{s|wuyo}zlz~wzw||zzv{v{x{vtyh|txzz|}tzts~{z{|{sz}{mv{zu}s|yvu~}{xux}qqz}l{zyzyz{}~|}~ymq{}w|w}tx{~uxyzvy|yqh|~}xwz}~~y{vv}zo}v~~~~}}o{t}y|z{~v{p{luz}uljp~vs{v|u|~zm}v{|m}}}~|}{uyyqo~yq}{hx|qgutu|tsx}vtv~}vp}{swnv}}}kuw{p|||lt{qr~}vyuf}~rbz}z{uq~{yu~qs~zv}}tv{sor}|}u}p{vzxwx~x|ru~w{vp}{{pt||{wuwyx|~{}fx}~}v}r}pv{z~~t|z{|y{lxwzpv{vtu~y|~~v~uw|{xj}szxrsxt{}~rzt~{t~~{{v~vz~wm{v~xyu|~}yxwq}yzuztz}}}xu~{yzy|}r~s|~y~|qwztq~~w{qus{|{vvvow|t~{py{|{~|o~zfzm}s||}lqs|uwyr~vzyov|y}}rw~qr}}~{||w~~{|zh{|z{}x}w|{ps~{{~{}uv}zg}s}wqvqvy~q~zz~wx}ww}}}e{gyx{zyq~w~uzy}w}|uz}}zt{xvzz~uux}z}zwp~~|yrus}~|uzspy}|ruzy{u|z{zs{|zx{ty~|yx|ytz}zwysyvzx{zy}zzx~lyy}tvuzuvzyw|wwz~z~|x|phtzx~zm~{rhrq}~q~z|wqz{lu}yv~|pvynz~n|xrxxtx}u}~{}~zv{t|wvw{ym||}x}ysxvuw{v~q|x~d~w|{yy{||}y{{unv~x~~||zyzz~q}{{n{t~|~{{y}~~yz}}~|||vyyz{znywyougpvp|x}|y~~~~{y|}rwu~r{i}}w~}q~xx~y}p~{u{xn~{w{wz{sn~n{y~wwxbx}ouzny{|h}zryt~jv|}u}q{}us{}|v|s~}}q||{|u~~z~|~xh~~z~i{zvkwvv{l}}yuz~}}|zt}slg|vvkxvzl|tt~ssyx|ut~rystyzyvvk}msp}u{vzxkyxyvxlt~qy|tqz|w{vv}uzzyxso|qtzxwqyxo~e|v}wzkvxmy}suywuxxx{|toquy{qxuxvvv}vs|wv|z||y}yw~{{sr}}|{os{rou{oyv|muz|vyw{yxu||ww~r}z|n}yuoh|m}}ozny||w{{~|yxvq~mhxutsuq{{o~qrsw~{v|~ywx}qszsy{xxuwp{t~{ls~|vxtvxywxys~{|y{txmnw~{wz|uzyr{p|povx{{ysr}~~sl~szpyu{zowyrw~x~~x{t}u}quqyzsy~syusz|t|{yy}{}u{y|wwys|}|{svvk~wx~x|oxzw{~y|tww|v|w}~qrz~uw||{~}~w|wu}yv~yr~~~ouwxwztxx}|vx|r{t|~x{|~~}urxk{s{~}~wmor||t{}{zxtpw{yv~us{w}|~wuv{zt|zr{vxtz~~szvz}oou~yvs{|ryk{~wy~t{cxyuz~x|vvj{~}~|~z{y}}v~zup|||{vwx~ye}~v|ulvq~ttvtely}{qyxuv||~~|~su~px|w~}rvxnor|}vrusrwrytw~wyum|s|yu{vzprzvzzzx}x{t}nsx~}nxst{}wx}xvx|~y|m|v{zx}~xxum{ys|xx||w}u{pulzvy{{|st~w{xr~tz~w}x{v~pwx~~|y}|xyzix|xxsuywtszvu|op}|umsy}}|ptzv~y~~u}w{u|~w|yx}yux{~yvws|zr|{rwxp}}y|x|t{w{|vr|}}x|lz~yruvtqxsqvuzqx|z}tx~}w|}wx~}}o~}x}yzyt{{yvt~r}{xz}hs||~n~z}{u|~~~t~~~f|v|xtzz{qp{yzwww|{|}y{{{|wy~z{zr|}}{{y|z{v~{{|nsimo|~y|~{}y~~z|uqnr~t}~~~~xm}|yzzu}z|{~|y}u~yx|pz{wo}{v~z}}x|vz~w|hzz{v|wq{vr~~v~uy}||wzuz~{wzy{yy~{zw}s{vwuy{wn{{y{vswtx|{zlxjw|ty|wzxzzzy}{}{ywpt~oz{xyy||z~~w|xfxx~rwts}|nzu{}{zz}x{vryu}pz|}{}~z{z{z~zm|zx{}v}~z}}ks~v|vzxcxv{}{n{wvw}z{zxvzuiezxuvunsxxh}rssk{y|uv~q{swyz{ri}psmv|yzvnly{svmsqx{ukzz}w{uv}tzxxxtv{stwx|ryxr~}fzv~yzotyoz~}uwyvrwxuv}tqowyzsxvxtvvzwr}wszw{|yuxw}|ztt{}}z{qsvsruzxxw~qty{vyxzxxv||xww||~}}xm|yvgmzn}w~||{z|{|~xytox}|tns}zim}oz{~wz{}}v|~t~}rm~zozvwvkzx}{zuxvt~~{}~w~{{|yttz{fm{ox{xwt||vv}nwY}ht~tzuspxxunutr{}rq|zyy|z{||}xzy}{{}u|~ss}~{zxx}~zzxl||}{vwxw||wpw|{z}xyu~~|{|c~xwyvzuooxhq}}zzx~v}{zwmonzvxy||o{{}|~}n~{y~in}tx~pvn~w{wyrww||xz{mt}uxu}xrutuu}yqbn}zzvyy~skv|rzyto}u}}wr{yzxoww{n{wzzrv~yk|xkzuzy{zmyy{{y{~}|{w~xw~yyypz||}ys~wv{z||r{|m~z~}}~~rz}}|{~q{yzvv{wznu|in}}q~}w{v~sw~|w~sp{wu{~}~y~zw}stn{ywrwv~vz{}s{z{t}i~|}wo~}z}||o~x}~|ouuw~vs{}}ww{tyv}pu|~~z~yr~~}nvtzwuxysv~}r}||~}misxx}xwnz}xx^x}x}{vzlffo|quyv~y~sx~}xxozsp}~|zmrzhlo|||{zzxz}~~wz|rnr~~irwzx}u}~yxp{u~}|znyy~}sp|y}nww~qvz{{zww|~vz~|s|}wv}{vv~}zw~y~~yssx|vzt{|y~vz}|t}v{ysy|ww}k{|w|||ny~pzyxx{zw~|}ywtkuzyxsvsuxtmv|zur|~smw~y~}xtv~qv|wuxy~}{vwy~|zwt|ytx{~wn~zz|z~|vxsvs~usznsyxwvrztzwvxsq|v~x~}y|~}{ynsmxz~uuzqp|w~mw~||uxt{|~tv|ztxn|tz|{u~{|}lhqspptzzzp~|x}~}lyu}e|m~mtxz{vrxs~wx{{x{{~nsnjz~mnnxw|{fzz^s}trrwzl~vi{r{mns}vz{vmwz{vwzuzy{zvixyqymy|o|}zzjvpp}vx}{xx}vqqu~zvlwrwww~v|||q|}p}y~}s~{|pv|tzz{y{ysf|~xxr~~yvxwy{zs|~wv}tz~u}zzzw}zzzw{y}}~{x}t|v{{}xp{~{{yt|u}ww|o|xp~|lmq|~}}p{t|y~{~|w|uq|{{~z|yx|wz~y{ux~yw{~}{nqq}~~{x~{rxy|y}||y{w}~thy~{y|xzwpp|}v{~|~~{tv|uvy}|v|wxxyh}vvsuwzwt|ru}xi~~uvwp~y}mq~wv|t~zt}x|~|qzv~wwuxu}~x~|yurs}vvvw{~xpxy{yw{mqw|vr{vxi{oxtnnmpss|}~z~s|tu|y|{}zwz}ivs}owvyvpvt|yxw{z~vs{nxvvvz}us~~nuxw~sq}y~|~}}|xyykz~u{{sy}zy}v}yz|}zzshty}vpuv||zw}xw|||ynx{}wx|~{usxzyztzww~{|}}x~zv}w~{u}}{{u}z}toz|pz|y|z}yxww{xuj{~x}zv|vws|}~}}{{un{xp|{|vr~x|x{ww}}|eurz|wstsxlw|yz~y{{}t~|yy{uww{xzz|zy|~~}xz~v}w}}z}wl{}}yk}un|~vv|{s}z~zrsquzzst~o|xlnkyx~wr{xvx}w~~~z~exxxv{}hvx{dr{}yh{uzw{vu~s}ynpekk|z|ns~|xr}{hs}p{{~~}zuqont{x~yx~w|z~txwvyxuww}x}wutt|}{o|y}xmvxz{|yi|y~qvv}wu}xxn~yp|~|hm{o{x}~v~vrw{|s}sn{x|zlofm|t|z{}~|xw|zuwsqyqktmx_rl}vmt|{fzrxzmhptuu~vrzqt}di|xpymyss~syw{iqhfzxzwkqu|ozfxlwwdnjvwyo}zlhvgq}yy|~}jp|{bmGc}sa]ha}Sx|vzttpiq[onimhw}pqyrx}{sSspqozl~yz{qwwo|q~~vu|xv}|~tyiurv{pz|}zwspxoz{ry|wxx|w|otyxx~vz|{|xyiq}x{{z|zutz}|zw{vxuy{|z|w}r}tyvs{{|pyv{~x|m{~y|}}v}y~~{{xmx{pytyt{y|x|{x}|}x{y{}yzv{||{zqum~ky~y}ty{{yx}}~xx|}mz{vutv|kjwtpxbw`quspyiwq}}ad{yrn}vp{||w}mtpqsyfttrpqw{kvblep{ybu_srk|y{uwpzxqp|}fvo~ovvqypwjqd]w}ydopxtlpw{ouw{zx~ovkzzzofTi~wvjw~zyxxY}xh~luy~y~~|uk{~~xzw{~~sw{z}{|~xty{kxy{z{}}y|s~y|~{ty|uxwr~{yt}p|v~vx}}}y}}zzyutuky{vr~w}{v~}}|x{uty{}}{y{z}~~{}jvw|}n^rpsq|trQxx}}|}vu{~x{~vsyx`rp{{nxy[swzyzuy{ys~\~}dqwq}xs{}z~wyqsq~sw}pyx}zw|v{rpr~wvit||xyyhxpu{u}v|uxg}vxwtu~ov~dirp~{zz{x}l~~wvr{hu}}~k~xqyttzwyq}~z|y~~|}~{}oy{}z~}qlzo{vz{~{z|~zz}oy~\~}ls~xyrspqztozr{twu{{}zxxu~uw|z{~vyvwzzx~x}yq~wi|{~wyu|tp}vvx|yynpimuo|v{~w|uzz~~twrn{{}t}w~zzyy|wvvxt{{zuy~~yy{zt~zz~|x{iZs~z~mz{ytrx~~tswp}~jsyq|q|}nmyjut~wopunqw|}~wqs|yu}~a}wr|r}~|zz||ri~w~z}yztw|xtv{xo~|kv||vxu{z|v~{{xxz|txxz~|z|~}}{zfw|ywqqn||wv~rv~vr{|xvr{pvxotwwru{{}vzwoy~}uzyr~wz|orh}v|w{yw~{zwumzzrxzx~os{{~v|rwj{|zvyyw{vonvwmzvuy}pxyyzzos}~nu}w~~usq{{vyqpuzrzr}tz|t~|ywvqwyytvuywvuzxwvrvtutu~wwzu{ozuvz|}{u}r~uwp|yhx}tx~qs}{v~~}|pkzryu{}{x~yud{~||eszxtywy{lyyv{o}{mv{}~uy}|rw|y~y{uv}~j|yyzr~}|}yz|{t}|l~y}~}uxt}{{w}}}~~ly~}pzz}t}}|~{{y}}wzvwbr{zzrsy~u{zv}y}}}v~vu{~{tzwwzts|vz~~}zvwus|uu}vzwm{{uytxv}vz}xz}tw}m{}}zz{ywyy{~g{rzyyy~}wzq}{xp{to}}|}}~}||hsy|~}uss{sr~}}{vz~x}s|{yy{|}uzzv}syvxr}~}~}zqu}wy}y|ep~qiwsf~~v~}zvyxwzuy}ql|mvtucxomwqy~{jqur|vqaxxsm|orw|p~l^yy~qnxx|}vusws}ovrrj|zthu}pvpvyrywvvtqwqpzxptwnjzuzwykrr~nwpryuowsp{}tlkyrusz~uzvwpzt}nvsspxyzyut~{zqvxwvqx|vrtrjo|wjuuzptxstszy|w|tzxw{|~z~xy~nr{~|i|losx||}|s~}pz|}z~~x}vvlhntvxly{}fsx|nyi~~y~cz~|xwk{pcyotkrs^d~n~}|sx~rwssqqm~u~q~ltrvp~}{u~u~w|zz~~|xxywz}}un}xsxu|qdusrytqlzzxu}{qyx~yx}pht|pwllwvxv~spll|vuvt~mxjwx}ru{g{qw}pzu{z{wnwvvtjs}utyv|}}{sws{sn{sz{ttyxt~xvuvuv}kz}zqsxbt}yzzvmqypywyvkt|sw|z}yzxxx|rqvvzyu|}vwr|~}~psztov~~wmrc{}xs{xz}|w~}yx~y|{t~vwut|xl{vz{yyzwity{uxzr|nwx{~}~t{msso}zrmp~a{~y}vv{t~qyqszqr{|j}|n~vttt|{tvoqt~|uz~s~~v{\~s{voxxuevpmqsw}{ymvvw|~zvpsqqwj|wtmn~|p{stqy`tt{nu{prvxyxwkgsp~iqzwxw^yvwswkr~m~{rhytzsxq|rzyzwonzqqwvxoxvl|e|{{u{hrwjxwpsvtluwz|smhswxnwlwsstzsozvxw}z{vvu{{votz{|yynqxrnrzpttzwsxztwut~v}wtz{~wuw}|yqs{zlq~s~~sx|y|t~nzz}u~|vo|vn{}xz{k{mjstx}{zk}wxr{}yy|~wvwri{j{wvultu{|j|rqp}ezvypw{o{rqxx~usg|sqmnzw~twkyxrwjq}oq}ui|xuyr}rsxyywppyqtuvuouun{f{x{x|kpwmy|{stusjuwt~{rnotwxpvtwrstys~qyvswxzzwvv{{xru{z|yymsurns~|vst{lrxztwww{v~wu{{|vv~|}w{z~x|}}txoru{{zsg~u}w{}zzmxtzxqq~gx~s|{{x|~n}w{bvmjpvtp|v~y{xpl|t|thtv{}|m~xz|}|{wqwswxm~ysp}{i|qruql{x~}ts~srrxyzypk}nrnt{v}vwhz|yykr}ozsg||x{wu|u}zyzrm}ot}yypzxnb|p|tykvykwxsswxqwzv{}vnou{{oxpxquu||r|yy|}}}y{w~zyrr}|}{{nq}spwylxx}swz|yyvywyv~zwyzympywovzvjz|uywv~}sxq|ztuzyy~}x~|~|t~lsu{u|xslpxtm|{|q}|qmrwy|uxx|zp}r|x~~yoxs}wyy{{xppv{~}yw|}yx~y~||}q|r~o{~r}{vs}|{~n|}u|s|v{yy|~{{zwyzzz|u~~|x}}y}x{sk{klry{yn}}~txttypt|}x~~sy}p{}~tov}zjlpo}xx}}}|}y{|u~u{n~~|tw{|yk{z}~x{rxv{}syh}w{wy}m|qw{uy}yq~|||z}~~cx~y}{~tru{}~zpwz|w}tx~|{xz{{~w|~~{y{rt}ty|ynz}y|qvzwymzmuztzm}|}|~{ws}us}x||v}[~y}{{r~pr|~j|{y}~~t}tcy}|xs}vvk{}~~|{v}q}}z|{|w|y~z~v|{twv|wwz|}{~vmw~~yzzqyztzqmjvv|uqszytucpto}z|}pywuy~|||s|}iz{xx|}s}kyzznwx}vrr~y{zyu|}rr|x}w|xy}|tw}lxy~z|vvw|n{}xzwy}w|x{cx}}}z{qqqvzw{xty~z}vz|x{x||{xz}v~~}zxs|~|~{wnyzz~|qs}wtu{{txv|fzt~}}]tr|}{yss}ozdBvow{{szyzsje>nymnzz|{{rxz|t{z{sk}~kl}~zyqxiys{o~viw}}b^uzx|v~|y{stywvzo{yztj~y\z{|{zzwv~~yx~wnxrim}p|~zxyx~|~u|u}ro~~txxyzyy~twzzzy|}y|xy}r~v|nshlwo}~~{~{}~|~}zz{wsnyxx|ot{imwq~r{}}zz}n}}}y|to{|y|~six}{q~~utf~y{qq{swv~}|zkxwzov}}srywz{v|~oq}|iys{ukx|mtxol{t|tsyxywt|x}zzz~}ysx~~}~lx~~}uzyn}~}uy}n~y~tsh|m}|p{wz}}uy~|zzwqmy}nu{ilp}z}{z{o|sz}{z~w}{um}w~y}}~}gw{{}}w{{r~{wz{~|}{|~xx~vktrv~o|}{v{w}{{~|yw|vgyy|qq~zulsyq{|y{~zzw{x|}}{ztkw}v}{t~uwy~yyms{|{xzyxwbvx~zzse}tgp|uzwhwvxo{|j~{nl}xv|vmz~as|}}{xjyjvxwf{ynvxx~z~}xvwzv{bmf}~r~tzv{}{w`~rj}||z爚|quw\n}w~w~{v{~ssywzfrivyyxz~}q|~lu}zy~|w{rix|~xz~txwsy{|xx{sz~suxsv}{{s|~|y~~|yyvypyv{u|vk|~ys|~zp|vg}}z|uor~v}|w{y}{xxtpez~qlt|}ts}}nvx~lysy{|pfm}vtx|~|uzxrzw}~uxvqv~zxzyyxs|whyzzr|xot~{uyqz{l|vu}xwr~|yv~~|{}nr~}|{tt{zu|t~w~}u|}~yw}zkp|k}winuz~{oipzju{ny~x{r|quvzz}s}x{{vmvy|x}|zxy{}|x}|zyxw|{s~ixz}~oyx}tw}x|}y{y||}z~{|b{u}~r~zp~w|t~~x|zzuyww~|w|w}zyy{w~|zvv~s|~u~zx|yp~yz}|rruyvu~xz~t}ot~~jl}p||z}}}|x{~n~yw~~mx}|xyum}{y~por}}im|q}~zz}x{x|~|}}zp}xwrnz{~wnx}hmp{}z|{|v}v~sl}~qwp~zxruw|w~v~zpwxrzy~wtvy~{xz~}||||ntr|~imp}y}}||~{k{u{z}~xv{yuny{n{jmuz|yq~nyu}szw~wz{rt|{fqzwqxssn}q}yn}~{xqxxwz|yvsv{uo{x~yxsmr|su|rw~}y|||k{xq}r|u||ztvkzppw|{x~il{{}|{lqxw}|uxes}~|}ryy}{|pw}qsp|}xu{|ou{{wy{pmzo{zzwzwwx{}{t}z|r|wqr}~}u}t|vzz|~nvshm{o{~}z}y}~uz~wqm}n~uvu|uzs|~~xuwftx{~~vqz{s{}|v{q|}~vx}|{v~~{ttvv{}|{~{wvyq|w|{|}|x|v~xyyl{uu|{}}|{txvwuyuum~~|}}z~s{yuqf}~zxz~syzuvr~w|u||~kxzy~~vzzwtok|~t~wszuyvxyw|t}|xxyzgvqz|n|u{rsyyrrx{r~zyv}|rm{tus{}wwtvz{wy~sytyvz}wxxmu|w~tzrymz~{yt}{xyvzyy{yxv~axxuty}|roy~u~vtuvw~v~{xr~w\yw{x~{zyqwwx}~z~{y|uvzqxp|y{x{|vt}wz~|syx~p~tz}|xu~wxwqq}}}n|}{r{u|{x}x~~n|w}|{vh|}|m~}zxr{y|ywzxuzy~xysw{x}upz~w}|}vzxvpy}xzzvy{vy|tzzyf{z~y|y|}tuypz}y{uuyxvzxvx|v}{wtzoe}zzqrv}rts|lr}{mmz{zpr|z~cnyu||~ytuxyq{~wr{uxy~zuyu|zxvss|xl}}vwwyk{~vypyzmzvt{vpz~y~x~uzv}x|{|}|{v}{~{}|||uzy~txux~u~~pypxyz}~w|p}|x~|z~}z}{w~}z}u|xorxzhmyo~}w}}w~x~qz}}v}rm{d|yxvsztyuxv~{v{x}~}v}urx|oxy~}s}uxz}w|yvv~xyu{ywxx{{z~{{|y~~uxtq}||wx{q{z{y{z}s~}uz{|zwwtu{{uw{yx~oxszzw{wxi{~xy}rx~uzsl}x{vzuzvxz|x|u~v}|x{z~qzyt}~}{prvl|t}y~nyzx|{~|xts|}hzzwqswqwtozrwu}zwsqrwyx~lv{yuvr|{p~rkx~uzxuyvuyv{|||x|~yxok~zzy{m{w~~|zv}r{lz{{zx}vz{{}oyw{zxzvs~|uv}p|xlvxmwy|pyp{ysqyw}yy~}~u{v}}|xux}~}|yk{n}q|xjx{z|x~~|y~wvrx{}xvyu~||tt}rpv|}v~y{}q~~~yz`h~onwlmq{wzfzy|f{s|yw{vruss}qzzdyynqfx~uxzpqo~cxvo}om{y}ozv~q|}{i{mpx~s|r|yovg}~yt~rwz~{xylq}yo~zqv||t{ur|{s{wz~{ynzsrsv{{ns}yw{w~~mz|ou{{srpyy}zxw{yp~x~zz}~`qqhx}s~it{xv{u}v|v~wyvu}|{~r{{yxpzw}}w|~tzxzwt|wt~uzyp}{~u|}pnt}wxx}{vx|~z}}ms||o}{}|y{y}suw~|}v~vy~z|l{yszvz|ztp}woyrt~zTtysez~{nrvm{}uz~||~sz}z|||ut}|otxy}|v|vv}o~~v~|~}{~xytns}xilo~~z|z{}}}{}~xzvsmyt}tsuot~|}jl}o~}}x}{|z|q~ywwyz}|wz~tm~~}wr~yx|o~u}jmpz}zz{y~{{w}~y}wrlw{yv|vtwtqz}v}}q{lyz~qrv}z{{xwyvixxxxsr}yxqx}f}|tzxpyx}vttn}m{yv~u~w}t{yvm|y}zvz|ag}sufutwzuttysmlqyizm~vx~s{~}gkuwtt~yt}w|xm{vzs{uwy|stzxqwzxx|t}xbzysxxpsx}vyszzq{jxwtqxov}||_{wt{zxixqxwxy{}vo}hu}rvytpuofrxno}~u~|vwrbvpuryzt|uy`t^}|zn|t}~vwxdyyvywouysurtstiv}{ruuvtmtfpwmvn~|qdsx}xqgszpqu|zrqmw~}qzuxppo~t|um~~oqqq|svqpowzyspp~|rqxttkuuwsszs}lrntzl{wrxmx{tw{p{ssrt}x}pzywju}ty{{v~zv}qu~|}r|y}}zyz|{r{{{p|{}}y{~z{x}|xvluZ|~t}wt}zsxw}x|uwuxwxi|wx}{{||wvd~ypw{ytzvz~wqz}zxz{wyz|~jtw~uxx{zxtpy}nx}zyw{r}{|}swvv{xnr~wu|xuxxxywvt|}wv{lq}y{k{|i~{lw~}yy{}{z{{vzuw}rn~{|~}zo~vrimpo{xw|w||tw~~~xvs{p~~n|n}~vosim~o}||z}{}}~q|w|}v~sl~dw|pmnytsszy~s{ouw~ws}x|}}u}{{yp}zv{tzwwqn|r~v~vu{|zwypw}}}xynxpknu~mzzyxy{}p|qrtx{zy~}lr{}trs|jx|{xfu}nx}x|{uo}ssoyzyv|oyv}{{u}z{z|{tz|sxwv}~{|{hxttrx{v~u|fwzwtw}}xvumvr~ww|~yk{{{vyzpxutzt}~ww~}z{tvy~|fn{{l}|}~wuz|yy}yp\l~m{ts{}{xyj|xx~yxpyyzyx~}}{zy||{z{rt~zyvx}whz}{~~|~v}xwyzts|zq}muzxvxvbwtjt|xxq~}}}n{~|zt|yzw||~|s|_qz{nzxot}z}{lw{{{x~}yv}tg{f{uvxnx{yc|wwv}syy~uw|rzsv|}zzsistq~r||~{woyzsymur~{wf~{{~v|svtv{zzyrq{qs}yqrwwo}e{w|x}osynz~svywpwyyt|uqtvx{rywxttv{uszwvvt||yxx~|zss}}|z{ptvov~zxvxzouz|vzxxz~xwz|wxxkwzz{{mwtw{wszyzp}u{xw||o}}z|~w~qr|}x}|~z~uzz~}{u|wmy|}{|pt}o}zy|{q|txx{~}vn{~}oxi}y~u{zusr|~xt}|uh}mwy~||y~zw~}s~qxysu{x{z~yv||xxtrxl~{xys~}xzv}ttp|u|wol~z||y}|~~}zp|wv{j~nqv{~|~||w~z}}}ywnqm||zpqzq{xuowv{vz~}v{uwoszt{v}{~{{zo}{krvz{uwyrssys{{yj~xutu~trukmtz|pvxx~us|}jtu|}ruy}nyh|yzs~yzsiwgyqz}u|fqxwzvuyyx]{}xzywqqektnnkqosxwsbm|rzbtu{xuw}y}||qpym{}w{spxyu{}yzatyvowx|nmyw}pw{lpx|kn|s{yv{n}ust~}i|s|ypww|~{nxy{|zzysz}ox~yz~l~yy|tzys|~|xw~{x}x{t}xbuvyyzqiuzyo{||y~rz}}x{~{uz{~wzwuzzx{~x}~zxyzt|ws|~v{xmz~{ymts|~vwws~vtkzy}}|x|xs~~~pz}vw}~}}vuy|}nwozxe{~~|xq|{}vx}wy`lr~w|vs~|hs|xlspv{rtx{|}zx~|xu{z|z{yt{~|~w{z|x||x}vwr}|}v}swxvu}}s{|}{m|~{svu}zu||x~~zuw~{~|n{z}~}n|y|r{~|}}}z~z|{{{w]rvy}~rzqz{wx}s|wvzu|~}w}~~|t{xxywwzw}{w}zw|t|yr{|wpy~zywtt|~vttp|t}}y~umtvryy~zx}t~v}{||||~{{~hw}v~so{{y|q{}z{~~y{~w~r{^|os|z|wr}mqz~zrs{tz||zzwzvz{x{s}uuz~y{||zu~u|uwwjvw~|m}uzuuw|uw}v|}~rtzu~tszq}||~vs}}{zr|{|zu|uyx}}wvu{xkzyzyz{{vtvvm|wv{zswivuz|{|zwcr}t}wtsusqxvvnlx{t~ovwzttzt~u{wu}||vsxyx{zuyt}}uyv{{q{tk~n~mxvtz{w~}xv{mvzvtu~}x|uo~p~wjlwp~|~}{y~x}w{x~{v|un|jzrz~usvty{~~~}yztz~|}{vz|v}{h{u{qylawvsyxzu}xztxnwyvu{s^}qzsvnnu||kyrrs~h|wwru}pxszwwxvug{qr~lvyw|zvnbwvqwjtzos|tt~zvvyss~syuwwrpzoqwwwnvxm}k{t|wzksxly}}rtvtsvwr|tootwxnvxxtuv{x~pyvtwv{zxiwv|zxrpz|yz~mrsqmqzutr~dsxyuwv|w~wu|{}vvumyhsvvts}xzo|qt~yo}wtwxz~}{~|{~t{}quyuyfzrstpy}~r}x~t}~s{|}}}v|~{|u~s~~yvuvzyrpvy~|ypy}sysvmp}{uw}nivz}q{z|y|yvr|}ptlzutpllr|}xtevz|o|vzzwqoyoutxwutw~v}oum}{yzyvwyyourmxnmwrjwwz{lt{zo~v|uym}vmxw{qgs{uy~trxu|zo}uwqzuvx|~zt}swzuyu{sxuwt}{soxsznzuxvqy{x}szpwwzy~v||}|m}|{~{uyuz~xx~s{}z|rys}zvty|x{{{}{{z~{qf}yz~{qxtux|}swy~u||szts{xwypv}x|}}{w|s{px{{{yp{z|rrs}vxt~|x}evtyt|}{x|owxy|w|{}y~|syozz|vrx~yy}ruw|m|xsuuuw}}}|zx|op~zs}k|xzz_qmyq}{~}wpzs|u{n|\{{|oyrr_|u~~owwv~}q|uz}uoqvqqu{sozp|~pl|soou|}vw~tt}}sgv}ysuun~t~|ozz~wzzu~w~||q|u~{x}uz~|~yw|{uy{{q|zur{}}px~p{zzu||urdzstvxscv|jt{xx{xy|~~zs}}~lvu{y|yzxx|}||}{yzu|~uwl{|vxw}uy~xx}sx||sxyt~}ryzszz~~}}xzvv~r}ov|z}}}q~yv|xu|{yzyx~{cy|{|mx|qwrs|utw~yw|yy~|vz}}}u|xw{y~|w{}|zwt{xs|}}yj~y}t|xrr|}~uu{[~x{}uxr}|ty~vwsimuvy|wuy}wypi~{ltw}xy}su{x}qz|twpnstyr|s}|u{~{{|zx}}xnu{wu}r{wzzn|p{~sv~u~{|~|zs}w}rv|x}z{sx{|}}~{~}zuuwr}yp|zv{~}{{~}w{}q{ypowjm{o||y{|~{~{}~}|~}}x}tlvsy|v}~}||~|q|r~qz~|{}qy~r}~x|}|yt|u{~xxnu~il{o}~x{|zv||{~uzw~yxwsmwvu|w~wyxy{~|yxz{v|y~~|s}|uzwwr}x~z{tl|x~|yxqyx|q{zv|qvwzxsx~}{xuigyzwqwtzts{zrtnjqz~w{lq|x|jtyvv}vrz|{|wzuuyywxvz~{{~{yv{t}snvwwq|~yyww|{v}~vr}y}z|}u}xwvu{y{|}~{~z~uvn}r~imyp}|{}v~||j~v{|qn{x_yxsx{~t|{~}|sƐrw|y|qsx}{rr~|wyzj{x{}w||m|tt~||v{|{{kyuw{t~{{zlw{szw{{s~w{z|xy~y~k{z~}|p|yvqu~wyzy~w{buz{{r~try{}w}~ry}ww~s|~|y|{~x{xzzywxw~~}zwzs|zuwtwrz}}sts|u}t}vxz{|{rs|t~ox}k|k~yzrb|l{y|ww}w}lz~m{z~l~zz|o}pt|n~wy~k|~Wxsmq{~z~s}z{}yz}|owv~twxrvwyqwvu}u|pv}y}zpzy}ovyim|~p|z~{~zv~|~}w{rl~w{zy{~}yu|yxt~wz~vyuixi}}{px|~}}x}yxqsv~~~y}xt~xx~k|x}}xqr~xx}ww}~{v{{x}v}||~wyys{y|y}x~}}yyw}|vzzo{v{w~{ssz||wuv|u}~{nvz}tzt{vyv}{~~vs{|p}p}{oz||t{{{w}xz]t~uwt~zv~vwy|}|r{wx|{~|{zz|w{vy{zxw}}}yzpx}|zw{yx}w}~|tzn}o~~~imp}{z{~|nxqyo|y{|}}v}~uns~|~y}nwthmxo{||}}z~}~{~}w}}~yvvrm|~g||uxvrsx}}|}{|{zt{y}}qxyq|zzz~}{vq{q~~p|qyz|}yz|zo}}|x|~puxxd}}}wzwwqrxz}yqvw||ytyp~yuthtw{xx|upxx{{}w{x}~z~stpqv{ruwyzz|}yt{xly}}kzz~zwvxlv{i~t{z}jzzzu}{~|u~x{x^pvo{|uzpmxX~}rxsvyzoml{wzidzxtmrm{o}|{}lrwv~|}ruy}z}|~wvnjo}|zexnmn~{sy}|ftykdof}l{z}zzzvwrrzxxm}vv|}}{n{zv|{{wt{~`muv}|k|oy{s~|xzt~}]z{os~vywq{}}}wzuyv~t}||}}|`xrz}tfyujwox{dy}z|uz}~wpzq\cxuxt~wv~b{suwk{n{x~nt|otqr~xyypg{zp|osxizviywzpwjp~n{spzzszsvs~rzyxxpkzplzwrpwvm}a{n|vyjrwhwoswunvwtz{rmvrxyow}{wurt{opywuyw{{xzyu|{xpoxz~zznrwmuzrvu{ssx{uxwux~wu{z}uwm{v~~~r}{pt~zj|zrw|v{nyy{q~|v|wtx}{yyzvwjz{z~ztrv{ixw~}w~{yxuxz|x~|og{zyyvyxutsxpqrwwxxy~x|~povp~y~{w|vy~su{yyxyvt~y}u{}t{}y}y}vxqm}wz|z||wtsx{wt{|w{rn~}wqx}jly{Ssnml}wq|}u{uvt}~|zogrxai~|wx{~w~}~|z}rpj~~~txoltzz||o{wzity{v}u~o}|{t{x|z~~s{{~yovimp}yy}|~|~|z~v}~~x{ulzn|xrwp{|w|tnxvw|~||y~~yoxz~{y|~gtwu~|{r}|tyyr|s{}xq{{~rlzox{wwzpzv}wz|}}yy{v~yzt~r}{t}z|{~~v{}}x|{vuyv{q}}xxxt|~ts~|m|u~ty{x~|x~xxya}w||kn}~o}xww{x|z~w{wv{x{}||}sl|~{yz~|xznw~g~}x}||x{o|t~xyi|xv~o|w~w~xxr}w}u|y~xzvrz}y~{xl}b~z|uouvr~ssjtrxssqwzrwwwy~~xswz~tzwwwzx{~vuzzxuvmt}xkxvt{zh{zvx~zy~xpwx{yvtr~~kv~z}vyvt{{|zyq}~}~nbz~r}}~~wv{y}qw{yxt}z~}py~|w|||oy}y}gv~p~~r{|q|wtystt}{yxox}~~vxvrwu~}ytyovuy|sw{||srtxzwqy|zy{{}w{|syuyqzy}xw~yxput}|}rv{qy}r}y{uw{s~yz~j{y{|x~}swz|j~}|ryx~~{o{{euuw|{~{|{hwu}sr{vu{r{x~}{zo~yv|~u{|~{wx}z~zxz|}~wzyt|~}}wo|{||}ups}uuuuxxyxq|{ywztznx~vxz~wpvowx{tzv|qvz}j~v{zxi~zz|{{zxw{j}{{u{wtqxszt~t{zdqxxwvuqrws|}qutw{v}u|{w}s}~sq|t{||r~wzuz}ywv}vwtw~}}zv~rs|~t{|r{xot|{xy|{z}{ttxx~zw{y{u}y{||~zz|y~y~{}~yxx~~~zx{zww|zuvz{~l}x}}ytws~|x}{xuw|{wz~|xvw{kzxyzzuut~wtxqq{~t|vv{~nvzwx{~ysyxy}}t{|w{tx|~}u|}}}ywxt|wu}|yp~yn|{z|~yv~twz~}wrz{|||y}}nw~}hm~p|~zw{||}g~v}pn|ny_{rzqwxr}lkipe}|{l̄{sq{ozb}yjwv|{p|Oxnv|_qsriovs}{{xq{}zez}}wyzww}|tp|}xwrkmyxt~vsx~zu|y{~~||~vx{|nwx}lov~wu~jm}wo{|yxyz~|}}~yy|{v|ws~m}yp|q{|}quxrz}ywuzs{|q{tv~z|~||||}}ppw|{sop~}tywmyx|v{yptwq{~sy~{|tiw}xx}xyy}w~yyqtuox}|w{x}y|yv{|{{ts~vv}q|}p}p|pz{zz{u{t~~|xss{rmwr{}{{|xvyzt|zu~vvzqvrwyx}uyv|{yt{}{}{{vx{q{z|{~pt{l{nz}txy|l~yww}{{m}vx}|}mvtp}t|wquys{r~u}}}{y}|}}lr}|}xjpyzy{utut|y}psy~vsyjrzzot}zqjt}ylxmzvmzvvxw}w|zw}txy{{|{wy|v~}r~zwo}w|||t{to}y~uzxzntsuy}u~sz{y~xwyt{}zrxvruv}{uy~zz~{{~ws|||k~}xxsio|{u|zt}z{zo{yyqq}twz~~ryx~}zpy~|yu{vj}xww~svtuxylzueru{{z|zvusx{}|~st{wu}vy}wzwtwqzst~|zz~sw~{uuuezu{|zz}zuzs}{{}{uynwwwrwov~nsswwwn}y~tttsvtwr{utruwou{uzxxvx}zuy|sx~p|w}vz{p{{y{r~|xr{{rrg~w~}q|~y|sw}wmw}l|z~rw|}zb|zrz|s|{vx~{x}x{~}|s}{lxw~v}|{{qizu~|z~w{|ut~}~y}|wswz{u|xz|~z{z~}yuqO{p{z||m~|||z}zpy{v}|y~y~~reszwuvjy}xj~}sw~yv|{|~~}z~yw||~}|{zz|x{|t|{trx|~|{x|uvw|xvvmv{~{`wxuuxtp}mqxnx`oxyzyq~tzzwwkqq|usw}yoy{t}~wg}yumgz~vycw|yuxv|yj}ww{{yrq|lqtmow~uqtxv}z[syvv{~vxxdyo~f|zu|npx}wywky{|ryu~w}z{gz~l{}i~oy}w{hx|v}|pw{vx~i~xx~zyxtn~~ty}u}{zw}~{ty~r{|v~wyw}y}{yu~~|~|y{~zuyy~y~y||}wywmy}~v|{tvx}{|u~yyyy}}||wzv}|uwstzx{|}nyx|v}z{p}y{y{s{v~|{|~{x|~}t}~xzyx~~|xuysw|{qz||z~}~yxw}mz{|vznq}zjmzp~y||}|}qz}||~~~|~u}toxu{}gyrq}axzypu{zz~mrw}t}q}|znzxwuuvwp_|sp|{x~wo~zh\{|ynpw|l}pw|w{rv|sqwr~|xr}z~|{p~pn{imztrwrx|X{wy{nutz|pq~u}vvqptsgxqwxmpzmwp{vusvmz|ynw{}~~m{z|~}~|woxyy~wvo|i{}~zykm|spk{y{qlxzpzu|wyuwquz}y}{xyyvwxrwtzxsxyy{}z|~{vy|z|z{vxmyq{y{o{y{}orvoz}|~y{xw~z~w~y}nt{hl|o}~~}zz}~}z~q}wsn}~x}{|z{|wu|xv|{}}~xvy}~wwy{zzz~w}|}pmx}~ur~xtvmx{uox{zy~v~x}yzzfy~vw~}zrzuvnrx{ot}ssv{uw~{r}xw|v~xy~rv~~}|zwvs}yr}yyszp{|yyxzu{vtv}nzx}gzyzv~zu|x|yx{{ot~oy}sqy}~z}|~yzfzttqvsu~zq|~vy~z|z}v}zy|vxz{z{|}~}|vzzs{u}z}vsx|szv{|vx||rz|hx~yxz}vr|zy{}|wk~p|~o|{uyu~{~{|xtyd{vx}zvrvpyx~{l~~~wxvuv}}wxy|ypyz|}xwx}z~|{y~q~{~{zutx}zwry~{{xz}|uyx~|h~x{xtwvqs{}}|{}}xrqxmz~xt{yy|~{u{y{{va|qvw|rxsv{lyx{|w~x}zx~zxyvuuqz|~w~zz||~|wvtuu{}|vnv|o|sp|wu~}t{}ur{zvpowq|}r{|}v||m~~x~~x~{{qy~s{or}~yutzu|m~{}w{srxwqk~zsiv~x{tup~|yv~~yop}|~}{}x~cw|~u{tr|ystur{{l{zwqxzx|y|}yzx{y|yy|ypw|mr{}wyz~z}unu|v|w}x}t}l|}|qswvxv}w~tzvxns}t{}z|}y~x~|m|kv|{wnusy}tt|wt}top~w|oxvxz}|~{{~{o}mv}lryy|~oquqmg{{{wzly}o{|zl}w|}~{to{~{}{t{}{x{x}ttyys~|~}y{|w~zxz|yj}{|{vyzl~|z~wyvxxxxyw{z{|{~~rzx{|}x~z}n~~|~||us|s}r{{}z}}|~z{v|~s}pywp}}y~}y|{}v~~{}z}x~~|}x{{rs|~~~v|s}}~~~zzt|~zkz~vtq~up{t~v}skxzxcq{~x|swt}{~veqsp}zxxruw{yuxuvf~uu~t~y}{spvwrnxvt||{z}yqw|~|}wzzn}{eq~}|~|~y~ds|~r{~y|xt}zsqvuyz~}|}z{~yz}zzn{xhy|yvvwp~xm~}zrryg}{u{r}z~o~sz_}qz|yytwv~yuxr~nxxyq}y{zv}s|u|yn{yg~|~z}w}~~z{{~{vywzrt~{zs}~qyzxx{z~wxww{{~w}~z}~~kycou_xwwq{rdq|jyqxv||{iyiy|rpjsizoT~v{lw|uvf|}pj{u}i{qml}yzka{y}jhyyj|vumxuszkykynrpyyt~qvfuy{utugstqfqyaxrtrvovptpunlzduwqr{qtwwvvsvmpqptz~yxy}lhv}{lu{fvyoxwtqv~mwlp{vzkuojpqdmxwkutvsnwwt{swwxo{{x{lxws{wwgzpxvv}uyv|zv|vwzlyy}vtstlykurxyv~|}fyxts|i|yvqy|zpyrr{w}vd{yq~o{qz|{tyrw~rvtxkm}r||wgwurvus{swvwvpwuqitvpqsuqzvty~zypixqzyvvrqorwrtzuruxuvruzz|xsruuz}qwxuswywv|uyw{trxywwww}orosorzpr}txuqxyrywqv{t}}wyzxyt}~zv{z~~wv~|wr~{y~z{}}}}|x}y|{|k~~}}qpw{~zu}tvs~yjr}mw~}|t~znx{w|vy~yx}xr|s{~xw~t}{{zw}}}zx{lxltyk~xkz}~w~v}wz{|}zwl~|~{~rwxy{z{|}zs}n~}{yyw{zx}{sv~~vtqzy{{~z}y}~|~{~}rvwtrxtxsngthlywt}vptsoluvnslpu{ofegpgzmo{ywyus}j}pwohroutxgtf}q~mrv{wwztj|ywytqev}Z|vrqurzxzxtuupu|fiuxorrm}jft|vyxvkumpf~|xwyqvx~vtlnoutyot~xtptpntx{zw~mjzxz{mrqu}kx{tsuzjtgumnzvmtzwxksqox|~r}~}vh{w}}lphstz|}{vq{lsquz}xxn{|s|{}{xpx}|vruskrvwywy^ywsxr|mxykxzw~ovqoxv|{zbyznpnzy||}nytywts|ilrv{ut}}ypvtr|rvwuukutodtvonnsnvjytwu}kfu~mzwttqopqvqwzrnruuvpu|}{vsotuu}txyuuuyvtwxt{tptyvuvv{lrpwnpy~hq|tvzpvwpwuluzt|{txwuwswi|{|z{xk{sovuvwztuvz~wvjwv}vquskpyvvsbxvs|oh~xvzlv}yovrsyxxlex{nmpyq{}vxpvwt{inp|}tt~wrwvq}tyxvwnpwnjvviortnyj{ryt|mkvlxz}rttrnswox{smstvwovv}wpqtw~~qxwtwzzxvxxx{sqszxxxw}lpromr|~pt}tzsrwyrwuov|u~~xzxxwt{{~{|{}{sryky}{tu{}ry}u{}}x|zzm|}z|}xz{|sj|~|y~}yxz|}z||vxvj|xt~}~|t}{|x}||z~yzt}{}oyy{yzuz}{y|~vv|xqt_}vv}y{yyx{}|~zyy{}|~{||}|xm~|}xhys}wvtyrnxqyyzqyuqz{~yfzz~wsvtrtxvxy|k|yv~v~kxymx}yqvszzyx|e{|qpsyv~wytz{svr|kqs|vm}ysywrzsxxvwmwvqguwopsupxj{zzv|njvo{zutsrutwux{upuuwwqv}y}xvquxy~tzyvy{zxvxwyw|uqu{xwxx}oswvor{}it}txyrxyrxwtx|v}}xyyxxtwwy{zyj{z{s}tz}zs~s}yqx~}}yu|ul~ywzx{xm{lzl|{uv~qy|vy{}~swtw~vv{jwwszx|}yszsvssppsu{qv|wvpzuyyxxy}zuuwxpw{zw|zv{~wq}x}~~z{wwtv{rqzyyu}wxww~}|s{ywxq|wuw||z|{y||{xx}|z}{{tts{txqwu|psz}x|{{{vx~}|zz|}~vv}x{yix|zru}~|z~~z|~{zpyzr~zzvts|zzozzlz{uwz||vsyvsui{v}wtxrk~qxuyvmy~_zusv|j}yusx|{qzr|zvnd|wrpvz|}~xrdsurwlnq|wiu{svst~swuvvq{vrisvspuurxlxy{wqkyr{z~vvtrxsxttytrpwuuru}z}xtttu{~pyvty|zxxlvxy{usv|yxxx~ornzps|}kt~syqqwzsywux|t~}xzzyyuq~|}zxwz{qw}v}z{y|uw|zz~xu}{~rsw}z}yz~muctytoeyokwxwxztxyqyvwsgzv}vtxsgznvuwn~{y}{zsrskvvqx|yotqwywtrb}zxpovqz}ywstrttzim~r}veu~rvpq|qvurunwspcsulopsptiyxxt}peuoyw}vuqoxqwqvyspkuutptsw{wupsvx|rwwt|yuutuxu{tpt{vuwv|mqlmnozbq|qxrovxpwvqwzs|{zwxvxsy|x|x}{{q|{w|y{}~~~{|z|u|o~|y|xy~|}|~w{|xo~wqrxyifvywzxsup{u|tzj{y|xuxs]~tvyyuz}e{usu}p~xuty}{puryzvwyrdzvrozsz}|wsoqtswlm~r}yh~xzswrtyrwvvvqzvqitvsqvuqwiy|zw}pkxr{ywvsryswpvzurqxuvtvyz}xvsuvt}rywuw}ywwqvywzxsv{wxxx~otsspr|hs}sxhpwysyxtx|t}~xyzyzu}}yx~suwznsu{x|w{o}s}xzop|||t|qzpxyzvxw~|p~sp}oz~}~}vn}wq}|~xutut}|yyz{|~{kt|~vyuv~~~}}htxk}{z}ry|z|zwz|ykwx~u~~zssz|vryxv~~~{~|ty}~~~x}|x~{mvw~}~|hv}u|||w|ttwxz{}|~{|}}{~rzkz~{wtpu{}trc{nsw{xtxpysqxw|xhx{|vsuthvktywxuy~zu{wrr~kywsy{xouruzwxb|zpp|oz}rxuxtst{jnt{}whvxrvsrzquwuunzspetvpppsquoy|xv~pev~pzwvvqooqvqxytqowuurt~v{{wuptuu}txxtxzyuuuzu{srw{uuwv|nsornpyjp|rvrowxpxwrwzs|zxxxuxs{}xyz|zyw{k||~|v}t~~z}~z|m}}ut{~}yx}|r~{|zossyv|t|~}z~p{}u|zsw}~vx}||z{~x~|t~~~~|~x}u{{nkzqmx|vwyx|wt{u~vey}|wsxt`ttxzt}w|{k{wq~s}o|xvsy|zptrszvznczxqpsz|vxt~wptswkkrw}xpx|svrtzrwvuvqyuphtvpqtur~vlyyzw~pixr{ywvrqqrwrtzurpwuvstxz|xusuuv~qyvuv|ywwuvyw{urwzvwww}orstpr|gs}rxkpwysywsx{t}|wzywxutrz|zr}}qntv{xxr~wp}v}|xfx~wsztfqvzztzd{yryt|rxxnxzxpvspywz}wcy{pqmzx|iystwst{jnr}|wm|zqwtsyrvwwvmwtpftvmoosoumz{wv~nhv~o{w~vuromrwvw{tppvvvqu{y{wuqtus~tyyvwyywuyvyu{uruzvvvv|nrvwopz~jq}tvvqwxqxvo{vzt||uywvyt~~}{wz|x{ut{{yr{z}~}|~~y}w|t}}v{|}~{~wi|z|}wxys{~}}|vsxy~x}}~ov~q}|j|~|zzx}}z}qxxtyw{|ty{w~u~zu|x}u~~~|lzz{}y~q}{uzvsz|}pz}xy~t|f}{}|zz~v{}|~{wuyk|zyx{vy|{~h{zpwqrxl~|yzyxl{xpyxvvyvt{tz|~znzv~xsxtszww|vyq{|vezvvu{k}zwry}zpvsy|wxf|yrorz|}~xwqssvsxlnr}xovtwtsswwvvqyvrluvvrwvrxuzy{x~qlxr{z~vwtrztxpvyuslwvvrvv}xutvvxrxwuyzzwwxvyx{tsw|yyxx~orryps|}lt~txvqxzsywsx|u}}y{{yyuu{|zz{gzxvzx~ruyytx{u{wj{v{uqvsj|nv{uxts}wzfxtrr{g{yupw{{oyqxzuypc|wqotzz}yyxs~qvurvjnqw|wlsysvrt}rwuvvqyupjsvopvurywlyz{yrjxq{z}uvsrurwpoztrvwuvru~{}xrsuu{~nyvtwyywwuuxx{psxzyxxw~oqkwos{nt}r{upxyrywvw{t}}v{zyxu~}{~~{u{|kutz~{s|{}}|~}~}{zz|x~jz}{wz{yzuu~x{s|}|x}|xz~z}{y}~|wj||z}|zx|~~wtwx{|z|u}}wv}wzuv}z}}~}t{v~qxzul{y~~{|u}}z~u~t{us|}ywx}}{~||yy|}~y|{}}j}}~z}|y{u~}z|puvs|tzxs~~~}{|~yw||{{}|{~}yt{{|jz{btztrixpuuzwuzr{r{swufzw}wwutp{pvuytz}~n{wtq{m~xvqx}zpurw{w{{d{xqp{pz}wswnurykms~}wcwvswsszsvvuvpxupivvnprtqvkz{zw}piwpzyvvrqrswqwztqmwvvrur||wurtwx}qwxuw|zvvxuyw{urv|xwww}nrrunrzns}swmpwyqxwrx{t}|zxzxxti~}w|~swtt~zs{xxz}|~{sopk~wyxlky~xw|vux|g}}wut}|p{~zxuv{yv|lx{m|vhoqqxttnysw|w~xx{||~rkmykszyrwi_|vf}lu|otw||wpvs{rz|w}tyr~xvt~~o|}vvuv~}svzr{|}x|{}uxszyrzuurvp{r~fulux~zqu{mqv{vrun~wm}|{xtzxxzlwsu~~l|qx}stq}kvy|lju{~mv_yr{v~r|p{rutait|ukmn~o~wss{q|j~l{vs_{}ykp~rw~r{y|l|p]}x~k~ovyo|yvmwrwgri~sc{~qxsupvwlvtu|usocuuip~sa~viqxwsynqlxutsrvmvxlwfyosml~vr~xptnng}|cutgzx}wqtvv{g~qo{vqtvjjbqmowmqxxqttupuss~|l{xx~tuvpwxsx{rhvsqkuty{ouxurw|vsnsyzmsrz`yqq}p|v{vpwy}ug~~tzzlh|rw|e~^}wz~lny~w|vw|xjpyiqrl{wovwovk}t~pyvtuqwwsfqyrxlrnznyqwsznalt}lz~usvqvssoxppnzpwpw~t}yztztwr|~wuft{yyytwxysuqvztqsvqnjtgoxozruvnlru}wtupn{vz{w~q|yykz|~o{~~vuys~~|wcv|zywn}}oq~i|qkt}|}q~xqun|}z~vts{w~{zk|w~zv}puv|q{yv}zw{x{y}~vt}yt}ynxmp}slwfw~py||vs{xlyxrl}{y|zqx}z|y~v}f}ox|~xml{pl}uvpy{pqvyu{fu}|ysvsdzri{s{rty}vxvvwixuw|mnys|}m{q`yyl~pz}|}uwxyxqstyirmxyxg|}uqvpu|ruwtuq|zxhnyrxmttroz|yr}riv{nz{xuvowtsqytpsmyrulw~r{}ssyqrs|rxvms|y|wztyyxusxzsqrv~sokrqpy}fvzsxvrtvxxuv~}s{wx}wwqtrs|vupzonv|yxyuzwq{svtmzx{wuwtgufwxuxtv~}qzurr~mwvpy}z~pyqy{vvc{vqqxpz~ywulptsxknr}x^v{svqs{rwvtvp{upjvvoostpvey~yw}qiwpzx~wvrqtrxrqztqsvuvsux{|wurtuw~rxwtxzzwvquxw{usu{wwww}nrpunqzir}sxppwyqxxsy{t}}yzyxxt}}zy|}x|z|~|~~u~{}wwx}wx{{u}|{}{|{|~~~wxx}znz{v}}xxy~tlyg~|v}xp~zxjpz~rrovujx|}}{wiot~n}{sys~{otx}vti~{~v~pzxqv}}o}|}lym{jcs{vrvxn}wvv|}njw~]{vm|lrt{o}yzuvqmo~yvDypsoqrypxt~roiezltuvt~xz}oszdw}usos|zqpcv|io~~y}nwsq|m|wyhy|xyz~u~~y{}z~vu}u}|{|w{vz|{lt|~z}uw}~|}~}ht|wm}|z~sy{|zwzzzkxy~u}~{sv}{vrywu~~~}~|ty~~x{}y~{lqt}}~}hw~u|}}w{uuwvz|~|{|~||r{k{~{zm~zz{u~z}buxs{}yxs{zr}|yyy}|{~~~|}|}{z}zy~z|jvu}~t{uw|xyst|~q{}~xyufy|ykw{w|zyzq{~|{zx{y|{p{~vxzsy}|yqt||uvvwt~z||~|~ux}~}}vv}|vzv|sq~ty~}wzy}~~}xt{}ww|zswx{}{}|{xyxyyzs{~~~}|v}{~}}x}~}x}xy~~|~~}{|~|y}|}w{z~~|t~|t}uztyv|||{~w~vv~o~zowi~ywlzz~}x|zx|x~u~xuwzzq|s|z{{~}~}|z{z~tzy}{|w{s{{~xv||w|wr~qrns}}zujysssy~tty|wr{twm~}z{wrysc~qw|vyvp}udzxts}kzzvty}{pxru{uxwe}usq{u{~}{xskvtsulm~rv}yovzuuqv}swvvwtzwrluvqrxvszxjy}}zrmzt|{xwssvtxsryvtvyuwsu}~ytvvuyp{vsuvzxxpvyyzutx{yzyypsmwqt}nt~sylpxztzywy}t~~w|{zyvx|x~{zyupxkiv|uzzwxuu}tt}lzw}wvys^}tw~yxnvhzrru~o{wvpx}{pvruzuv|odzwro~sz}xxqyutsvlo~p}}xht~rvps|rxxwvq{vrltunpwurwmy~zw~skxr{y{vvsrwswrt{trowuvru|v}yttuvv~pxvvz~zwwxuxxztrwzwxxx~ornpps}~gt}szopwyrywtx|u}~vzzyyux}{xswzw~~zf}}t~xzso~}v}zk{|rhwzosyv|tz|~z~p|y~~w|mww~~zzzzzk}|{}p|rqsvty}{r{z|{vwp{yxswtty{wwq{fywu}qr}v{ou{qytuzzurixyp~nryt|~{xovyt{kq|p~}uy~ztywsu{zyxpo{omzxjprvn|k}q{u{lqwly}~quwuqvxr~}umtsxzqywyttu|szwww|{{xzy{}wrs{{|zynqyunu~}tvu}nuy{vxurx~wv{z|wv}~{t}~|~ttz{r}~{~}{{|y|}}yzx{}~z{}}izujvzryut`zqqx{uwzvuwqzu}qevv|vvwuezkwxwrz|{{sps|l~~wunx|x}pwrr{v|ncyxporz}}pxsstr{klpw~wi{urvqpyswwuun{uqistioorqtk{|xu~pgwozx}uvqooqvsuztppwtuptwu}yrqtvy~rxxuv|yvwtywzsrvzvvvv|mqmmmqzjr|rxspwypxvqv{s}}ywyxwtvslzvnjwogxxt|ytts||owyzsept{zujlmyus~|ut~{srpu{t{lxm{qwupyy~}usyc~|x~o}pzs|v|qzxzppnvs}iyysupvfx~q|usuitzmiyvgqpjrzbtwuw}qitzxhuuzsu}lus{psywiqtrwto~ruwqspqy{ow}vyxw|puwyz~ymvzvrvzpprrlyy{qu}rwsrvyvwxzxq{w}szsu~|~ztv~u{w|}y{u~zkv}wwvyw~w}~jux^~|{|uyz||zy{~zk~xyx~{vs}~vszxx~~~|tz~~z}|}qy|kw}v||~|w|vuyx|}~~|}|}~|~s{o{~{y|~{||x{yv}ztvwttt~zr|}{w~|sz~v{xs{~{v{~~z~xr~kz}}{w{|~}ov}tyws~z}~}}z~|~}z~~yw~xx}}j|}xtv|yruzqdumwzw|mt{uvvfz{~wsyqfvxwwozoyvt{r|o~twnu|{otrwxwwpsdx|o~nryv{~}xptruqxion|tr~yrxps|qywtvmswmduvdostmxd{lyszkkvly{sssrytws}{smmrvwow~w}wxqsyv}qxuu{zxvpxww{uoq|xxxw}mpvunr|{et~rxmrvyswusx|u}uyxywt{s|r|xtxv}u}z{ywz{j}z{xxtkz{yzy{~bzxwy|pzzytx~s}uz|xtzvkzxu~ov{}|zpisysvoq{s|wu~yxuyuv}u{x{xut|stwxytyys{}v|}~zqt{t|wwxw{wyt{|xutzxytyz{uxyyq|wwuy{|zrzz}|{vwy|~{{ruv|sv~vxv~muz}w{xwywv~}~{yzv~zxwvy{~r~}~w|}oyyzz}fuyyZnw~|~s~oukwmz{w~wrz{~|}|~yv~v|nt||zwy||vu|{~t~}~q~||}~}|~y|}}}{~~~~uk}~~y}~r}v{v|y~U~svtb|~~pzv~uz}u{{}xukzstzs~|zx|r~ux{s}}wt~}z}{uur{s~|qzry~{|{wzusw|}ymqnu}}utmy|}yzww}}w~zzx|v|upy}}z|yq~zz~ypyrwupw{~z{}y}|u}zyrvqX}zsu{{l|~}x\]tzt{}stzz}{zpt{s}xwys~wtx~~`voy~|zpy|r}{{}~{v{z{stysz|}t}}|s~}xyw{{}{{{{vjyrtx~||qu|vuz~nyprx{ty{ziz{~yv~}xrz{~|}x|j~}v|wr~vupz~~}{xm~wrknwo~}wqzq{zmy~vy|syx}~z~y}x~|{qvrug}~avyvsnythvywzywz{s|vyp}euv|wxwsl~twwyrzz~ztrt~j~wvmzzypvpwzt}tubyzqozpy~~~xtppsqylkry~wbu|qvpszrwwsvo|sqjttgpttqudx|yu}rgwozw{vvrpvrxmrzsphvuvquow|ytpsvt}rwwuz}yvvtuyw{uqu{vvvv~mroroqy~gt|rvupuypxvpyzs||zxywxuzy}rx}~yw}u|yxm|tl~{~|zyizpy}}{~xy}{y|qpi}zx~vw}pu{~swwyvzz}|ytw{{m~|xxuh{z{{{j||yx~u|zyuzu{v|}zryzn|vw~ry{~zqoqyswqt|s}yp{{w{ux{v{y}zwv}uwyywvzzs~s}|~sw}v}xxzyxy{{z}yvx{y{v{z|xzzz{s~xxtz|~{t{{~|~xx{}||tv~|tx~syx}kw{~y|zz{yx~|zukvyuxhzrjxxtwzw{zvywstdvr}vuysiziyuwq|znysrs}i}tvox|yowqxzvutbyxpozqzz|~yxsvwus{jnq}vf}tzrvrq|qwutunxtpgsvlnpspugzxxt}pgvnzx}uuqosqwpu{soputuptzv|xtpsv|}qvwsz~yvvvuxw{rpt{wvwv}mojpnpy~ks}qxqpvxpwutw{t||zwxwwszz|{yxzux~uvyu}z~}}r|{}}z|~|~|~w|}mx|zr|yzs{srz~uxx~}|qv}ryz}h{x}xtzuh{ku~xxuszzc{utt}l|xssy{{pxrx|vvqe}vsq}rz~}wxs{sourulor|~ygu|svtu|rxwwvs}uqltvtsyur|woy|xskyt{{|xwrrrsylrzutwyuvsuz}yttuuy~pxwuw~zwwuvyw{tsy{xxxx~prnuqt|js~r{oqxzszxwx|t}}u{zxzu}}r|~{r{xyyyuw{v}sz}}vz~~}v~ww~{{p}os}}uy|vz|zz|ty~y~~w|uwzvzskvxp|z{ur|}{xwwx~}{|yuxy~s{}zzqpx~uutxs~~x~||~wy|~~|tu|xw~uzws~~su}vz}}w~~{v~z|w~~x|sxyy{}~{~zxwx}w~z~~{o{~}|}}x{~vqs|ozrky{sox}v|tv|~szxrzgrz|rwvwn|qwvywxuzur}v{m{sr{}woxsyyrxa{~qpozy}rxxowu{horp}wnvxrwrr|q{wtunxuqesyqnmrowlxvwu|mguozuvtslpqvluysouvqvsv~w}{{vruty}svwsxyxvvxwzvrt{vrtv}oqnskqylu|svpptwtxusu}t{xyyxzumw}|ojzzrrx|ryy}|y{v~z|dyz~wsytevsxxux|{czuszq{pzw{trx|{otqwzvt}nbzxp~nryx}|zxswlusvjl|rv|wt}uwsvrr|rwvuuqwupgruvqutqxvmx{zvohxq{ywvrqrrwjvztrpwuurtyy|xuruvw}pxwvtyvvvwyv{sqwywvww}nqqqor{hs|r{hpwxryvsw{t|}vyywyt~|}~|zzs}y|{tt{uqx|{y{}|~|t~~}{}}{yy~wi~{hry}ytx}qjz~vy{{mrv}~{wdoyxsfxyqvw{txot{{~wv{}wr|p}|xx{{urqmn{o}wn{xvwn}v{zinvl{y}~{z~ho{|stSi{ifzoc|~vy|~z}luwyz>hyxr}~~~}wav{uyzx~z}xzwvz{z~}~~z|uw|xzus}~zz{wqv|l}zzwuy~}yyxzyzzr{vw{rz}|yps~}uuuxtz}||}vy~}~ww}{{w|uv~vw}~x{y~v}}zt}}y~|v}{txx{}|}~||xy~xz}zr{~~~}|w~zsnn|~}}f||cp|zwzy|{~~||zy|umzz}xw{{vt|ts~m}t|t|q{ryr}tm}x}y~~sqvvzxv{pxq_~}}lz{m{rw|}~~ynt}y|yv{~yz{|~}~y~wv~~~wuw{yw~}{~|zxv||}{{||vwz{{~vp{|z~~~tzmxywxn{{|{vqy{~zx~w|}|z~n|}|}ytt~tuqzs}u}~~l~{{ruoe}w{t|wz}zl}t}z~u}}t{|zt}v~yo~}s~~z~|}|~{y~u~~~}ry{{{|t|z~y{q|~{wzu|~~yww~}~}xyy~}xvs{l||~ut~crhuzyzxwxxzx{tiw|~wp|th|uywyv{Qzrptp|{~vynxyxosr}wvwebz}noozyx|uwuzutzhq~r|{uy}xrvrsrvxvtkstobsvvpnsovrzyws~kfu~mzxttqorqvhzzsoruuvqt}{{vsotww~tzxvz|yvuxyu{rptxuuvv{lpxzno{~pq|sxtqvwqxuouzt||sywuws~~v~}yxvz|~tquq{yv~xy|w{u~us}x~vz~z{l|ulj|{wfqyol`trw}urtuqvwys~cww|wsxqftvuwr}zyfwroztr|twqx{{ntowwv|sn`wvnn{mx~{zwutoupzilpz{vk|w{qxpn|pwvrsmwtpdqumpkrpv`yszrylivn{y~strpwquhwyrnostuqu~vu{vtqsur{t|vt}zuusvxuysop{wuvx{mqslmm|}^r|tzhouvqxwpyyt|{vwxvwsz~{sz}~vtyrr{y|{}{|{{}}}zq}~}oiz|uszv|szv{pvsyq~m}~v{{~{ow|z|xpvwpuywx|{xxz{qpmryʅ|yl}vpxyzzpwzwsp~yi{xy|y}y~~y}y|~qw{|||{yu}~l~}~~}}z{ypr}~|oq{p{q|~utov~z~~v||}}z{~utq~zq}y~z{|}}v{ww|~t{~{}}xuzxuz|z{un~{}y{zltg|{x{qz}x||vzwxtypyyt~{|zts|yuutvtz|qy~zzru|v}z|{||~wz{zvy}xu~xyy{{{{~z}wu}|{w}y|x{~~w~{{xrxw{~~~~y||||{}}}~~vxyw|}x{x}qw|{}}}yx}}xzrz}zkwxwb}w~qw|xwnwy|sv`t|{{nrwnrq|}~{z~|{zq{{x|u}~}xo|rjvpq{zr{ycz~fqxvvvx}dwymssz{ix}u{puj{nurupvunivspswxiwzsfpvurtuk{{puw}psorr|xruavkprqxxx~mw{t{qh{{nustxxktvuwsv{uzvt|gouwptv{du}vwsttxwqq~}xfywxwv|lsrxx}uxpzvmyvxvws|poxztz}gwv}wtwtm{ntxwvugzvstzlxvrwzyoxqxyx|oa{yplpyy|~~twvzqtr{ins{whwxtwvs{ruutukyrodrvvomsoulxuxt}mevp{xutonsqvrwzrpsvutquv|{vtmtv{|twxux~yuuvuyu{tpu|vtwv{mspsnox~jq~qwspwwpxurv{t|{wwxuxqzf|{u{fxuqvvxxy|p|uzusukzu|vsvtqsxwwuwqyusom}uwovzpzqqzxvpexwnmryy~{wrsxs{in{pw~tn~wtwtp}txwuwnrwmjwvnnounzzjzuyv{kkwly{rtssnswqy{smttwwpv|v~wrrtz}sxwuu|zxvwxw|vqsyyyxx}mortlr{mt~t{kqxxtwuqw}u~~vyyyvtzu|z~wwtx~|qz{zzxr}tt`u||wtwqzxy~{dwmvl~yvzsv}u{{wuw}tguqw}y~}yysuyrmvstu~w{{xou{y|{xxxs||wv||~|||zbn|}sx{{yzu|vrqvvy{~~yz~{x~|}xy~yy}}m{v~kv{~wv~|y|{vzyt{tys~}|u|}{z}|ryx}p~x~w{}y}m~~z~j|y}}{zzzwy{xr{u{}zzsz~}~~{u|{~~wzx}~~{~wuq~}z}}zzy}|zz}~zu|tr}{yyw|}ygt}~v{sv|~{~ziuvp|{xxpxx}|zxyyxj|ww~ww|}{trz{tqyvu~}}}~{rzx}~}x{|v~{nzx{}~{jv}tz{~{w~{tswwz|~}|}y{{zq}znz~{yskxz|xqnv|}qwi|||zzfwyq{m|twwv|Otqs|}_zzrveuyvqz~vwsvuxkv}c}}uxt{{~wghvs{{|sgszzu{nltxxwxdx}pf{t|gqt`sgyjyv{unvcyzwik~ix~Xnqoxvxlxxwwtiw~vvrvv{yk{vwrxtr|{yy~qk}fwmv}wyvx|{tyt|{\xhzyt~||~xqrwxqox|zvuvo{vwgry~uuj}z|xcqqd|{wx~suy{ysyvwg~v{v~~s{~zr{zsnyvr~}z}{w}{sjv}}}~w|{v|{vs|~|~~}}~z~fs}~rz|~ys|zsrutyz}}}z~yz~|{{ozxiy}tzv|x}u}|wwtv|}u}{yx{y|w~~uy}zxzo~|{v~x}{}xlzzu{|ytps~spzy|xvyuz~xdr{~w}twr~|{zeruu}zxyqvx}zytyvwhvvv|z~ytuyztoyvu~~~|y}zrw|~}~x|zs}|ryy~~}}~~z~ft|sz{}xt}ztrvuzz}|}{{~z{~{{}o{xjy}zy~||}}uv|xszwv~u~|{~s|~}|}z|}xyzuw~}|{iky}uiqvzrb}|}lwysyq~y}ruu}~uvb{{z~|zz{wxvlz|tum{p}xir}vy[||ugyd`~zsi{{uy|{qbp}vy{|wiusth[u||{vw{j{y}txrotp|ntonv~{|tsyt{~|{q}}yiw~yos|z~vvt}y|~}gt~u]}|z}sw{{zsztyiyw~w~r|}}{rx{uqyxt~}|}{sy~~~x{}u}{po{~~|~|gvt|}~|t~{utvuz{~}}z{}~||q|zi{~{xstzzow}~~{qrr~ty}{{|{v}}||sz{v~v|tly~u{yxu|yxzxr~x|ui~z{rv~w|suzwnvz|z~sz~~~~uwxs~lv{w}||xv}zyz{y|}z~~w~p}}w||nx}|}t}s|v~}{|xntx~ssrb}zop{sw{}|rwx{|}zz|~{{txzwywy||{{~xz}u}{wwyvxr~}{nulsq|yw}twqnyr|x}xyu~xy|{st~{tz|~y||{v{ywvvztt~|s~~y|}|}z~zx}y{xy~ltxv}{v{f{zovt}{w~xypw~t{zownyv}vrutg{mwxxt}jyvsp}p~vxmw}y~puruyw~zodzyom~qz~|~vxowvszin{p}uo}xrvsr|rxxvvnsvnhuvfootnxkzwyu|mjvmyy~strqmswox{snuuuwqvv}wqqtw{~rxwtuxywvwywzuruzwxww}mprsmr{qr}synqwyqwvnv{u~~vyxxwtwz|kx{t~ovuwzyzlyy{yxx}xptsxn}vvtTxxvvq}ox{mu~yp|swyz~rhyyonpzs}~qxqxyt{irzq}|s|}}zsy{suyxyxmnznkzwvopul||s|oyuzhovky|qsvtmvwn}{tlztxyoxwrruy~tzwurr{zwzwz}vrqz{{yx~mrtwms|}{uv{lsyztwupw}ws{y{vt{y{|}~}}}}vq~}yxqxw}}zvv~su|yzty~|zyw~nqw~yv|zx|q|T}xztxnzyt|xz}xru~rppxxs~|z}rvzsmwzzvw}uyrxy}ix}}wswul}rvuwuz`zuo|pzl|wvmxzxo{rvyu~nbyyoooz{|}twtqrurxknq~yvn}v{rvqs{sxuvunxtnhwwumuso}yhyzwv~niwmzw}uurporwtsxtovutvst{{}wuqst{~qvwvt}ywvsuww}uqtzxwvw|losvlp|jr~txqpvwqzvqw{s}}vzxyyuvw{|{~w~tsSs|zs|swop~rR~nqsjqw|{j{}uoyopAx\}l~vtyzur}{|x}k}wwxz}~zvp{v|guno|yvnuz|}suufx}}l~x|zgx~}v{ksj}pvtz|||zxvubuv~|f}|gsv}}pvy{yzyuoz~xmwesw~tm|wlym{n|}|~|zttzz}uu{zrz{}|y|}||{{}z|}||~~}~yj{~vszzz|ysznxqqtmow~ux~nmzy|t}{{xx~~zr|x|{{rv{|u|qz~zu{u~{}tu{|s}z|w~|}z|~~~{{y|~}~{j~}{z{}xwuy{xs{nyx}y~|}}}zsw}~{~t|k{twy|xupnsn{qsuuxqyytsly}ov{woclcjwlyujvt|{zyi}k}ts~cmpml]v{nqi|pursz{rv\m_phuroucz|uuwuls{|fy{hjlmyxvvlzohruc{}woh}vxw}wqlo~tu~xzqxlygu~z|wvf]yxrvwtxxzmsyutit~qmek|sx{~tylmwspuyu~zsk{trvvgp|z{{v|y|vuvs{|zzs|~{|}|{{z|~|||}||}}{|j|{}{x||wzstzsy}|w|qw}wv~w|~}z}|ujyvsv{xt`ypour}tyyzrtxwvsnsvyrmptgupov}muuv|uqytj|ztqw{s}jwhxk~t^tw~l{qz~vwyvuktrsymoioztf}ysyrtew{pussthwufgplerpswqeytvozlcvvxcxytsvpwtxsuurmg|qycu~uwxwpvqyw|yvtkh{xzosu}{ztpuyvtlummjuhnxqhu}qwkstwwwswy}e{wywzpqzv}~x{ow~uu}bjov|v}zzp~twus~mw{nw~t|v{y||gxr~}}yz~|~qxs}{rtt{fmfwytzR}luBrjxsyixtqqxyo`wKdt_~bpsw~rvu~~pmel{q|}kqp|{vzz~vdqhfwoqgnpoq{g|zh}lusu|}|q}\~ywv|yczu~wzsylxst}yyt}{|trzxjx|t{zzu|wzwkzw}xvxsjxyxyux{gzus~u}o|xtsx~{pwqyzw~|odzzrqsz|{wrlmvqwlmr~|xt~wtvrssxvuvrwvqjsvxquuq{xtyxzw~okxr{zwvtrvswn{yurowvvru{|}wutuw|~qxvuwzwwqwxx{xru{xxxx~orr~or}~kt}ryjqwysywux|t~~xzzyxu~xtt|z}~y}prx|wvyuquyxzw~vtsn|ruvzu{{{}sp|ozv~w|lwvzw~s{ynz\s~rq~mm}qt}i~~zwiyp{|ww}x~s~l|mtqt|vs|z|zp}uwxz{vtjxnjy}}vvyrxxnxv|t~hyw|tqtrczrvuxs{~dytpu|jxwrv{w~nzpvxvjayypmszz~~txrvuurzin~p~{vkyv~rwtq{qvtuumxtoervtnqspupxtxu}ogv~nzxttqotquwvzspqvtuou|z|vsqsv|}qwvtv~yvvvtwvzsquzvwvv}mqmpnp|}gr}qxpovxpxurv{s}}wyxwxr~w~|x~|y|tuztx~~~x}y~}{y}wx~~yox}y}|}y|lwy{z{z|v~t|{|s~yzx{}wyzv~yqzj|z~~~z~vk{{w}{~|putzxs}{{|{~|{s}~~z~w|{yj}~zx|zpe~|k{~{y~w{~}[zy}oq|x}mrz{~zxm}y{yxux~{yu}z{u~~~~{vysy~txtysz}}}z{||m}yq|xx}{~t}}||rkzt{}zzwv~}}}m}}wwp|}lxxwyz}{w{jzyp}~xz~t{vv}tvz{~ysy{~}zi~xzqz~w|wt{zw{|x{xwx|zu{|{uzto~|}x{psqz}zys}|zwx~uyw}}z~wo~wvr|{~}yjkwyuwrs~r}xvywztzv|yz{xw~tv{ynv|{ts~y|}tx}u|}vyzzz|~z}yusyz|v{y|w{y{}r~xvzz}~|s{z|{xw|}}}tuxty|yzw|rw{~z{zz|yv{{z{~{w~}}uu|tzxr~{~{{|{|}}}}vx}~~{~}i~z^|p}t|rw~}m{zy|s~~}rvtsxi|}zx||riyutvyvy{pv|us}jy{r|yxftsv~q{~o{szy~zzufp~usw|mtl]wvg{hw}msv|xjpr{|zyzu}wz{{|xvottt~r|t~}r~~xw~~}wvz{vnytp}tqt{uyxysz|w{t{|f{w}yvtsp|pwwyx|}h{vt|s{q{yvsx|qur}{wxzf}us~ooz}~wu{lwpvlp~s}}wp}wxtwst|sxxyvsuxooxwtr{vq|yt{|y~ooyr{|vvvtruxjxzvrmxvxsv|~xuuvxuqywttyzzx|wyz{vswzzzyyosy{ot~~vttz_rx{tyxvy}t~x||{xwkvyv|kyz}}r{{z}}zy~~}tvtqw|uv~~~{z|whzywwzu{tvx|yv}n|{r}{yitzv|t{q}v}|z||{~~ylr|yvxrkp[|zl~oz~qvz~{otv~~z||u~w{y{yyrwxwvu~~p~zz}xx}wp{}xtvyshxxvyyy{r|sxvzi{y}xvysg}lvwztx~z}s|wqtm{xuty|{qtry{uzrd|xsrxqz}zwsspssvmmr~}yiwtvpuzrxwuvr|urkuvorwvrvny~{w~sjys{z}xwtrtsyotzvtmxvvsuxx|yuuuvs~rxwt|zxxswzxzwsx|wxxx~psrwqs|~gs}rwmqwzszxvy|t}}x{{xzv|{}|z~x~~z}r}{~z|~}}u}s~}xx~z~y}{x}{v}zyu}tx{}vs{~{t|}y|{||~{zvu~s|j{|}~~|wzwv||yy}~~xtx|~vyth~{}snuyr|yzz~oy~|zyx|yv~{xvvz~rz}{znsz}uvuwsy{}|~v~y}~}vu}}xzvvul}tw}~wzy~z|xu{}x|w|xtwxz~z}~{zwy}xy|~zn{~}}}|w}{z|{tz}{z{s~xzuz~v{usy~unz|q}{|{sy|}{y|zy}zywv{uz~w|qt|vxwwuz~}~|vz~}ww{~y|wtrm~uw~x{z|}yt|~y~x}zuyxz||~|{yz~zw}~|u|~}~}x~}t~y{~py{{~\~vw~uzvsj}rvvo}~}w~~n{}|~|xxykro{zz~|yx~~v~}~pv||{{}|w|}~y||z}s{}~~r~|zn{}uqizuvxtxzywto|nzvzc~z}ws{sk~guwxryx|{tp|nxvpw{ypvrr{xxwdzzqprz}ryrttnssxkn|qy}vh|ztvuuxrvvtwpvuogtvjpqup{wiywzw}ojxqzywvsqpswsyzuqtwvvsuwz}wurtw{}ryxttxzxwqvyw{wsu{xxww}orsxorz~hr}swkqwysywuy|t}}vzyxyukqtuovxqf|}x{p|ozyt}oy|zxs~v|t||u{zutyuyxxzmvh|z|m|r{zw~}sus|v{uzyvf|y{vwwsiywd{}dhui}rworkirm}qv}rswzu{zln}uy~z}qovyno}wwzoy}|tiqp}~y{u~tsvtjpxq~xwt}wvz|}lywz|zx^||xz}|yt{vt~rrr~|tx}xq|yrtu||~vzr|ywyr}s~yu|}~z{u}yylutx}s{z|~|{|~|x{y}w}y~v|v~j|}{}}|v}{w||~tuyt|~~v~|zp}zx}{vz}{}~vu{vykwow~zt{wz}ut}{t~~x~{|}{{w~z~~}~~v~kwu{~z}{wsy~o{}szz}yt~w~vi|x|xw}sh~vzxxvnz~ezvt~v|o|xsux~}qyrz{v|qf|wtqvz~{wuclvqvmoq{|ypv~uwtttyvuwt{wrntvxrvws{yszy}yqnzu||xwutxtxqszvtqxvvtv~~yuvvw{pyvuw|zyylwyz{xtv{zzyyqsr}qt~~lvs{iqx{uzxzy}u~x}|{yw~z}|zx}zzwuyortwtk~{}vv|}~{hzq}a}vz|u||uz{yxwuutm|||w|~{wfvxvtws|x~www{voz~wyyyy~z|ut{o{}{~ypzu~}zw}w~ll{}rww|xwy}w{tyrzwz{}|mx~}yz|{}{|xzxyz{kws}xv|~z|x|w~}ry~s||}|~|{u|x}nxzsn~a{s{pyy~z}{xsxr~y|}{sw|luvplr{||~hzvvytwwzxz~uv|vsyv|y~wvzui}qxyxxxxzySzuuuzpzzwvx{{qzsy|w}kf~yrpt||~~wytwwuxlq}r|xm~x}swsu|twxywqxwsktwwsuvsxvz{yqkyr|{wwtsusxxwzvtoyvwsv{}yttvv~~rxxwv{zxwvzx|tsyzyyxx~qsqxqs}}lr~u|wrxzszwtx|u~}vz{zzv~~{}{u~wvtzqs||}zyw{{z||}u{{|zl~{~|j{y~{~{{v}{~ut}||s~~}}~{z|xt}|~|xwut|~|xjww~{szou{{~xq~z}uy}~x{ug{|xpv{zp~zyxlz}||yx|yyzs~vw{sy}vzpqw|uuvus~yy{~{}vy}~}~vw}|vzwqpp}tz}|xzx}z}yy||x}v|ytwx{~~{|}|{xyyzt{w{~~~~|w~|qox{psyletkw|yv|zzwzutxczwvsvrg|vvxpysyvt|r~otxlw{yorryxxxotcx{o~nqxsz}|xoxuuqzino|unwqxoq{qxwvvmtvneuvdpstnwczuxt{mjvlyz}sssqwswp{|smlrvwpv|s|wwpsyt}qxvv|zxvtwxw{sprzvwww|lpwtnq{|eu}ryprvxrwuqw{u}~vywxwtt{|yr|{|{{i~b}|wpoxmy{|kz|w{}y{x{|x}~x{z}toz|~~~qux}|yxxysur~}|xq|yhz{jt|~xxvvp~y}fzr~uu}|y}pwy{|zsz~|xjwyt}~~yttu}tqzwu~~|w~{tx}~~x|{u}{pt~~{hv}t||~|u~{ttwxz{~~{~z{~|~q}zl{~zv||x~oihr}x~~}`wiwm}ur{{l{}|ynz}~wv}nv||}xtwzztum|rzwwyzz}ryurz|}qu{}gy}ypyvkxtnqxyr{x}|o{sxxx|w{y}~tgv{t{wx~q|{nwvs~u{rwxwr|zpzyxw|wxny{yx|v|uz{zxu}z{z~stw|wxmzyv}rvyx|{|vvqn}yzyww}zx}xuvk|x|vw}|rwzq|yhozzzr{xuz}q}~n|u~zuyyz~z|w~yy|vzv~yyt~}p|{}x|zzuz||~m~{yyxp{|rz{{zn~y~|t|nxwnf|u|yyuiz}xwqt}|zvpzrk|{|{zx{{}~pzy}{~q~{zx~r|x|pvz}zvztmxy{{jp~i{|vv|rxz}uyz~tyu}}vvulvw|t||~yqtswtsqqrx~ywx|yxp{u{xyzz{}uuxy~rx{{vy~r|~vv~w}~y{yy{y|vr|zxv{xzvyz}v}y{xp~wvw~||}v{{~{zy{{}}|ttxvz~q{v~mv{~y}||{ww|{prv}ytmyxoqv{xwyt}tpyuquhyx|vxysfykwxxt}wb{vrr}l~vvqx{yoyqnyvwxazxppxoz}}vxu}}rtsyjmru}wd{wwrvtr|rvvtuoztpesvpnmsp}ufyxyv}ngvpzwvuppnqvorzspvutuqt{z{wsptuz|rvwtw{yvuyuxv{tqv|wuvv|nqlpnpyir|ryoovxpxvtwzs|{xwxvxsxwyztpzrkvpw~zwvu|uyvn{z|vqvrfqxvwotrywt{qh~swnv|{otqswwysvcx{n~o|qxu}{~vyq{nqtszimo|to}yrwqs|ryvtwlrvmdvwinusmzwgylxs{jjvmyztssrxsww}zrmlrvwowyz|wwpsxz|rwvuw~zxvnwwv{voq{xwxw}mqosnr{}_r}swrqwyrwuqw{u}uyxwwtpu}~zwspyqd{vxxxtzsqwxzw{ezw|uqyrk{owuwr{x_zsq~u|mwvqv{y}oxqzywja{wonsyx~swrnsurzioq{vl~vswsr|rvttulxtocrvrnqsouixsxu}mgvozxutqpxqvtxysortutpu~z|vuosu{}qxvt{yvvouxvztps|vvvv|nqosno{|br}qxtovxqxutwzt||uyxvws{po~xnkyicw~tywswxqzu|pxbsy|uuxtbstxxp}y|s{urx}o}vsrzzwnurz{pzwk`x|qmqyy|ywrtotsyhmpvvf~}txqumqypvustkxvpdstinpspsiwxws{nfwmzv}vttluquntzronwrunsrv{xstsxv}pwvqxyuvtuxwwxqszuwtv|mqoloq{}fu~nwhpvwswusv|u|xwzwxrqg~syyvizrovuwzuqqywzvrzx}vsxrkyszxvwnty|~kzvqt}jzywqw~zpvrr{upd{uro~q{|vvoyvtrwkmqy}wotsuorswwuurxwqnuulpwuqwrz~{v~plyrzz{vvsqqsxpqytrqxuvqt{x}xqvutwqyvryyzxx|uxyzusw|xzxx~nonsor~}ms~rxlpwzsxwrw|t~~w|{zxu~yx~|t{wxyy}tux~t~z{|~z}~}|yuv}{{|{}~zukzwzyyiu~vry~yxxx}szut~z}t|szxz||}}~~~|n|y|~x||{w~~xu}vt|}xwq{yxdt|~y{tw~{zerwj}{ywrx}x}|zxy|xj|vw~x}|}{tn}{tpxvv|~|~{px|~~y{{v}|lz~{|~~~|gv}t{|~{v~{urwwy{}}|}z{{{rzlz}zxr|u{w}|zvx|nzvyxv|l}kz|wo|}c|zoy}w|vxzv~~ntxz~}}vnzv~r~~ozzz~yr{js|zi{two|toq|{um~{xuzv}{|ztj{tu||}vst}zt}wy{w{{}yr|wur{}~wpx{~|yqu|xxyyy}wz|wxwzxr|oxzxww~}zy|swuuuswz}tz~zyq|{~w{|{z||x{zyty{z|v}~{w|~}yywx|uu|{|ryzyy|~x~{yzu~zyy~}|}|{}|{z||}}wxzwztyw~wv|~z~~~xy|nkz{szk{nmxvzuyq}wrvtj{|mys|urysnr`wuwq}tfzsqr}iwwsw{yozquywub|voovoz~}qwszuuu{inq|}wb|vrvsq}rvutulxsnftvsnnsouhysxu}mfumyw~utpprqvnxzsoutuuptzy{vsosu{|rwwsz}yvuxtxu{sqt|vuvv|mqirmoy~jo|rwpowxpwvtwzt|{xxwvwspz}v}}zbszrR|{s|w}vwt[|xv|yv|yjr}cmwzxy|yd}|kwyznzk~j|x~y{yxt}|~}pstk|y~{mzuvywj{vx~vz||qzjhvz}xyzw|x}syw}w{rmtq~zt~vjq{w~txsyZy{iavyt|vHr{~~xy~j~nzzr[zu|mxqr}~fx}{{u}vw}xxxxn^rztjxlv~~xlz{yryx{~zxtt{m|t{}zwwy}zwjpz|{~yvyqtt{vwixsqzwuroyywsvzcvx|ur}vzr}uvp{qlvqyzzxr~ko|u~y}eyz|wuvti|mwxxxswnzyu}u}lwwoy|ypurtywztc{zqo}pz{~}}uyuytrss{jnr}|va}yzrwtrzrvvuvmwupftwmpptovezxyv|nhvpzxvtrqtswtv{tpnuvvrvvz|wvptwv}tyxtwxzwvqvyv{wqt{xvww|nsstoqy~jr}susqwxqxwrx{t|}wxxwxtwoswumjyikvwzxzpxvpyo{t~e{{|vtxsftkwuwo~zn{uoro~vwow|x~ovqszvqbzxpp}pz~}mws~vqtrzinp|}w`wrvqqxrvutunytofuvompsoueyzwu}ogvnyw~uuqoqqvvvzsopuuuqtxx|vtpsvw}rwwuz~yvustxv{trt{vvvv|mqqpmo{bq|rwpovxpxvrwzt||xxxvws{{zy|sz~{|{}xr}|~~r{{{~u}~y|tz~y~zz}z~|}|}lzdn~z}x{z|}~~}{r~z~||{|w~}z|uu~y{t|{~~}y~~}~z~~~z~y{~~~k}wzvz{ux{p|{xsx|{|~~|{~{puzw~|t}wy||tzv}|}s{~{y{y}y|stzsz|~w|~|vy~~{~~w{{|{|yx||}jtq|vvvwlzvov{tyx{uvt~uvrjys{vxxrc|pxxxro{oysqs|mzwunx}{owrv{u{{sc{xrovqz~~{wsurtqvknp{}wetxrunr~qwvtvrzvrmsugpsurwh{}{w~rjwrzy|vvsqurxmnztrqxuuruyv}yrtuvw~oxvs{{yvxvuxx{rsxzxxxw}oqotpr{~mu~qzqqvyrywuy}t}~wzzyyv{zq~}o|}|{|}xw{t|wyyz}~{wyxz~}}zx}~{w}}|~x~{z~~y~{t}|}ut~ysz}|~zvzz|v}|ywyu}jwjy~{ut}vmwzwUt}}syVrwy}prfqzf~yyqtw}xzp|{wuwxvoyy|~~}~z~mxw|nttpxoz~}ekr|xoyyt|~u|xfu}~~tz}}}~yx}|vwupx|wtjyokyxvvzv{vqxu~xhyy}urwsiznx{uwo~zoztqu}hvvow|y~oxqxzv|pazxooqy}~}txr|otsszioq~|wg}tqvsq|rvutumzspeturntsotlyywu~ofvozw|utporpwwwzsppuutot{y{vtpsuz}qwwt{yuuqtxu{sqt|vvvv|mpjomoz~cq}rwsovxpxurxzt|{xxxuws{qxz}rvvtd}zwx~xjx|}oyf{l}wyo`~c{w~yzi}dt{|ww}t}x{nyzzuuyymz|xqwxxzvwhz{zua~~du{|wsq|}|nv~szu~~m|}p{w}nm{ws{w}yyizzxnvywzyzu}jx~nvu}w{||}{w~~}xu|tzzs~~zz}|||}zxxz||}~ru~j|kmyw}xwu|uxzx|}v{{{k|~{wzsl{kyy|xd{|x|s}mzyqz}{syt{|{pth}}uv~v{~~zzrxt}nstwp|x|uzzv|u}yvxttztjz{wrrws}zq||zw}oo|qz{yuvsrvyw{|vrtxuytzy}}{yyw|{~sxywu~{y|~wz{}ytu}{xyy~qtzwqtzkwvyqvxywyxsz}x~{z|yzvye{}wstyonvpx~zt|u{v~w|j{zwuxsruxwwoozvu{s}m~vyov~{pvszyy~rvfx|pnqyt}~|xs{vvszjq~p}uqx}syur}sywvwoqxnhxwiosunyl{tyt|lmvmz{~sturwtwq~{tnrswxpw|z~xvrtz|}rxwuz}zyvxwxy|vps{yyxx}nqxsnr}|ot~syoswyswusx}v~wzyzwu|v~x{xxw{x~suys}z~|}{z}|qv~lsww}|~z|z}|xj{}u}}{v{|uutzvr~~~{~}|{|||{|zzxx}o}j{~}n|{{{~u}zz~}y~}|v~{swuty{wyxqwo{zyt}q{{zsxuv}|ytzozv~r{|}~yotuyuupu|r~}wzxxzv|v}{{{xutw|yvv|{twzx|~rx}u|vy{zz{v|}yvxzz|u{|w{y|r~xwvy}~}{|z}zwy|~}}tuutz~~{xsw|~y|{{{yu{{|~s}zy{}uk||xu{~tush~{}uzzuzz|vvsyy}zv~{y}w~o}|zzhtwwuwp{s~yvzwqsyy}sorW~|pr|qw~k{ryx~xz}~vwz}}z~xvxz}xv~}~}||z|~r~~}~xzt{{po~ot|{ztpuyw{{z{~{y}{|t|~{xvwrvrr~xm|{utr~vxtzfq{}t{sts}~|~fqxuj|zyrvty{xryxwguw~r{|yqrv{spwyt|}|v}zrw|~}}wzzv~zmm}~}|}{ds|s{z~{t}zrrvtyy}}z}~zz|z{|p|xhy}yutn}}{xvq|ytvssw|yytxtpxkvy}xqvlrwpx|u{tozzu~hzunw~h{yvsx{yn{r~zuqd}xvpxp{{~~yvwfqvvvnnovxwht|suquuvuuvnvuumvs|rptwvzzpv|zy}rn~ozy~wvuvwsztquwoovsvps}yzyprqw{qyvsqyzvzpu|z|uqu{xzvw~qrpxpo}zotryrqvxr{wux|}o~v}z|zu}]uv{{qwznzqx^~wz||~wh{p|tcxuyy}hzthzqyzx{~|z{|{t|pv~}x|{{{wy{{|}smywzv~vynhqz|w|{oksrz}}ucj|q}i~yjoxvrnvz|xkjtzvixvt|x{{f}{~}|~{w~zo|}{~wx|{}z~|x||zu{u{sy{w|z~~z|y~zy{|{}~z}ir}zoptzn{|yt}ysranz~zqyoy}|}l}zryyy~uw~|w}t~s{}}mxsmzt}qrytzuxx~qz|z|~|}rsslvzpr}zy|}xd~zxvwxuyuvw|xu~kzzr|zhtxs|rzo}t}{y~z{~~wjp~}uz~pnnZzxi}ny}puy}zm{rt~}z{zu}vzw{~wwq{vw~t~t~}l}~zy|wx|rzw~|zss{vqlvv{yuyvq|vtwhyz|xwzsa~ov|zx{x}}^|vqs}u{yvuy|{qsss{v{ke{yrq{p{}}vwtpurvmmr{~yq}ztur|u{sxxvvrxvqlsvprsvrwoz}{w}qkys{zxwsrosxluzusuxvwtuzw}ysuvux~sywuw~zxx~xzxzwsyzvxxx~pswsqs}~ks}ryhqwztzxtx|t}}v{{yzv~rm{}pys}x}|s{{zywy|x|zr}wzuvtq{ywyt{z~ozywv~p{zzqw~s{u{|yw~vl|vt~nwz~}xnttytwns{ry}wxv|vyvvu|y{ywt|svyxvtxys|}x}~{~ru{s|uxxwzxyww|xtxyyzsyz{tyx{}q|xvvz||{|zz~|xuxz|~|{rstxrwyyw~nuz}xzxvyxv}{yyssy{xm{sovy}yx{w{x|uwwnyw}vuutl}syvwryhytsqi~uwow{yoyqqywxobyzno|qzy~}wyrsxvs{il}ry|tmurvqp{rwusumwtoeuvonpsoujywwt}neu~nyw}utqppqvnw{ronuvuptyx{wsptv~|quxvy}yvuuuxu|rptzvuvu{mqhsmpxhr|syxpwxpwunv{t|{wwwuwsuov{}xsxrlxw|yzwtxvvvjw{~{uxog|q{zvyvu~{i{tttk{xtsy|zqvsy{sod{yspzpz||{wtsrwtump~r~}xk~utupt}qxwwutwxtmwx}tozwryqx{x~ro|r|z|wwutssynrvvtvxquuu}x{{qvut|pxvsv|zxxxvz{zxtwzwywx}prprpq~~ktszlqwyszxpx}t~x{|yyuzzvyvukysqw{vxzvvu}uxu{izx|wwvtf|rvxzsxyozutt{o}xtqy}{pvrwzv{|sd{wrp{sz~}wwszmusxlmq}}xiwzswrs{rwvvvqzvqjtvnpsur}wky|zx~qjxq{zvvsrtswruzuqowuvsvxx|xvsuwx~qxwvv|zwwxvyw{uswzxxxx}orruor{is}syppwyrywtx|t}}xyyxyu~{u}{}|~v}tyvs||~{zz|||}~}|v}x}~{{y{jzztvevtz|~oktzr"{pdpqwwq{s~zsxy{ury[z|l^zszssbe}w}{rn{|wx}vpu{kwm}y}yww|vt{vet[~qjzr|fwnez||xz~~~wy{v{~sz{}y}qztx~}}~u}}~~|z|}w||}vxr||{~w|~~{znvtwus}zzu~v{y|}t~~xt~~~}y|s}j}zwk}uy}~|vvw~~xxw~w{|mtypuyypq{wnw~~~{|vzu{~|zvw}y}}{tx}xm|o|}|{w|zv}|}x|{~wyysu~}vztoz|zy|zo}rzvp}{y}ny{~zxxyxvvtxzq}|yrsw|tuuvs|z}{||s~x|}}~yv}|{{x{s|~xz~y|y~pv~}|t}{z}|u|{{txwz|}||}}}xx~xz}zpz}~~{v}}{r{t~hj{|xt{{zqz}fmvyq|p}p|w|~{my~~{~vy~~y~wz~}v}zvxiynxzyxvzw{xz~sq}{xszyqtmvvplz||yojz}m}xxtz|ywzz{{xwpmf|zuu|{rwwpwswuo|}|wl|o~yjvxsu~|}l{tz{yqw~s~zr}~yr~|l}|w~|y|yw{xq}uyy|uysx|v{w{yv~~xthwl~rwtn}lvtxzt~{z}ry|uzvwizkx}sqrto~up{i|{mvy}x}xqsz{zw~{tvttx~su{x{ty{{wwyuxxy||zwty}tux~|p|stuxzt}yuwtzy~q}x|yuxtfzzzyx{{^yyw~x|s|yxux~rxuxzxw|wi{xs~py{{~|ypttxuxmq{r{ws~{vyuvuzxxxstzrouxxstxq}u}w~z}nrzs{~uvvv{wyu{{wrwxxzty~zvwxz}s|wvuy{{ytzy|{{ttz||{zqtu}rv~}uwuzkty|vzxyy~wu}|}ywfy}z{xp|ztu{yul|}}u}}~yzwq{zyqqz~}u~x{y~s{y~|vx|zz}}xsxy~zy~px}w~yptywys{~sy{{}{{z}z}~}yon|}ww|uyjo}{rzs{}s|w{~|us{~yy~x}}uxy}{}vzxwvxzvxo~zo{~~|||}vy}zxx}~xq{s}wv}y|}p{v}ot~z~zzyxm}uzzw{|Z||z}{}tw{qw}s}u|{ytl|~tpv{z}zup|u}mwzt}wm{w||uw{yzzrp|rpzzruxq~p~}|z|mtyqz~wuxwryz}{}wqzwz{tz~zwuw|w{zwsx}|yzz|}{vu|}}|{rv|wpv~vxx~ov{|vzyxzyx||~xx{pr~|~xzww{~v{z|}x{}s{}xyui{||{{~Y{{zzy}xy|{yzv{w}zqzvp~yx}ry}~zrzz{tusw~s~z~|{y|u{w~{{zvuyz{|y}|u|~~t{v~yz|{}{|v|~{xx|z}w||~x}{}zsxyv{}}z~|}}yz{~~~uww{|}{yny||}|}{zw}|ww}}}uzuw||w}|~w}~wzumz|~tz~y}zyvq{|~wxx}yz}|v{v~yy}r{}zzosuxuyr~w|~{v}~z~~{ru}xyusrk~|qu|~uxz}}|vzz}w~x|{uwz|~{}{xwy~xz{|s|~}}}}x|{rzy{v{~y~ďttzs}}~vv~{x||zx|sz{y|z{~{{~wjv~}m}~w|z}~~xyr}o|xpsntswqsv|tu|xwwwl~^}}y|y{p~zv~x|ky}}~~q}szvzow|u~}m{}xvw}|~xr}x{~z|~uzx{~ynzyxr~t~}xr}w}s|~ywww{{}|{{mxe}|zn{~}~z}|xyv}|~{yl|~y}vzpxpu}zx{zxn}~xwvqzrtlr^}|~zxz|}{{|zzvw}w|xvq~{{rrr~uz}r~{w|y}ttzs~z||{~{||}{}yz|~z|j}wruzw~mxsmyrztyyy{zst|rss{eys}vxvse{hwxyquzmzsru|j|wuqw{{pyruzw{zkdzxqn}rz{|}~uyq}ttrxkop}}wbuzrwtryqwvvvp{uqirulprtqvlzzzwrhwp{y|uvrqsrwst{tqtwuuru{t|xtrtv|}pwwuzywvyuxw{srw{wxww}oqloor{~ls}r{sqwxqyvvx{u}|xyxwytqjv}{ywfypmvxvwwrswz~t}jpx{vsrwgufvuwsx|{ssvygxssu|z}oysutu_z}uooy|ztwy{ztvszjtiv{wfyuuvpv~qzvsumyvrjpynqqsrvg}uwv{nltz~iywutyuprurzsrosxrynx~zyyytvtrz|pvvmx|y{z{tw|utqr{usrv|spjokrxgw}twoouwwwtvx~u{yy|xtsqwt~}|umype~v{xu|tt{yytrjuw{ztqpnzkt}uuu{yqzswx|g~vrs{tv|muuv{k{{_{|snmx~{}zyutuwrxlrp{ug{vusupyw~nvuuqywpgsxpnxpiwhwuwuzojv}oz{|vtsnquuowwopqxszqx~xw|yu{sou}mvwk}}yyyuux|uvsq|utxv|mnishtxmw{tvtptxzwupuq{vy{wztupqy~xssyunh}x{{nxmrzzwxjuz|{rxykzppwxq~u~hwwv}y|qzsqvw}m|x{vtq`ytpmx}~uwy|oyuxiqmx{wk{wpwvw~qzvsunwzrhn}wqorkxe|uwtzljqzsy{usyossvl|woouwrwlww{swwrot|nxvp|y{vzuwxxtqu{usrwzprsojrz~bs|vxpmvwvwus{}|v{~s{|sur~}~s~y~usxxyvw|{sw|}~~||}|}z{zy~~~}{xsz{}}zo|}x_|zpxaxguvvzw|}znsytyqvtpzt{wuxsixlxwvmvy|}{rqol~uxpv~zpxrwyw~reyypm|tz~vrvtszipzow~tox}wtvsq}rxxswqvwnjwvinouo~ym{syw{mlwnyz~tttroswm{zsoxuwwqv}y}xrrsy~}rywsz|zxwwxxztru{yyxx~nqmqmr{ou~s{cqwyrwwwx|u~~vyy{vuz~|s|r{|wx}|n~~}yp{npz}uzxh{~{zqz~{{~y~v}y|~yr~~}}{mw{zzjwmzv}yzuys|z}{{shll}no|xx~uny{x|u}w|vv|r{o~}vy{{xwztz~{z}mu{~z{orum~swj|wxx|m~zv{nx~}zx{zrju{}ysiy}|gu}xuz}vpunp⍠nyYksxzhw~ocUmp~du:ɸL{{cjw(Z횚U܉VAqm~mEnn|R+~sեV^6pptSpGF~'ѕP+)@:0q>y:P43DEf2HD5H?% .;^RzZ|JhspnUVt5/i&Y=( יPai|72.>qB%AZ3]Y2_TsoQ A:DmcFz&T=(YTlQfXIEFS8mcaQ2KQXsgJ2,3DX<>JAlO[v|eI^b,ENCJFddSC[ZXM:Yr; 4AKr_]LgP;FKR8<:Q4dfRJg=Y;MW +-XM?97Ӥ!QcV_k1@R5pPPLLVs&L[Ap;?& :}PNdq:4} oECm_yrEn AdIiV,ZXƩFW^Q+f̣!eZ|RKClajQ}Y(msMIFK;NnݟN{c`~Li;9Uzc`$CRHdgtx?yw\K`Qcj1oXdaGvp>b_JW4FpH6TPzK-Z$ii?[`ec`hch_dflfY]h]cdcdef]`^m_cpfifcabn^^hjjjj`egnege`cnUdm_cYeb_gZdXe`g]cd]bfkdd^b__]effi]b_hh_bchccmieg``gaiffcXdghkffac`[]bgibaWjg]Thchfafe`kec`Og^bebd^_dcgbdhah]cgihic_\\ibb`^[_]kjjblUZpaggceg`b`_iadla]edbabcZji_`ZYeb`bl__cafn^ae_^i`ff_\eedq__]bccfgffb[f`flcegafdjVkd]Ym]^h_defdZfd]dnlRfeb`bhdk`Ynbbsa`mlgclimdjihXei[bf^Vo^^W\jd_mo]iZde`^f]aki\hlhekbfdod`]o^d[f``WcDfb`V\k_bl^^oc\\nT[da[jctcch`q^[ch5_cgkidmbej\l]bd`fabecd[cb_ce^bi^ahggf]mbcp`a_accZk``a[jp\cafmb^mb`baej`cgWcp_ld`cdfcgc]ibhik\aq]g`\bil_e`cTc`dahaYac]gfcpZdbcab^gn`^^ehfdoidaa__ke]df[chjadae_e\ch\bdi`Qe_c]`[aam^ib]^^coh]g]d]ea\be`V^ie^bdf_i\\fffae[l`efjdnecd`c]\degYZai^^qg`gc^`dbd_X^b_haw_`ci^a\c_cXacifd\]c`dbeihl]fcd_lckj[c`mej]bcdfe]bm_blYedj`jgdbfkh_iae]fZaj]Ydgnelc[`ddeckdafj^cbjajfgcm`caf`ccehgmdijbahddj^`b_]eh]baei_g]^_^bqfc\ab]hf\ifcoi[jgj^Wipc^`\rgZbigggbaeifj[Xich[]\n`e\`d\gbfjnbej[cgbdc[oc`jhhlTeg]^lgebdbd^ahbf_f`d]c]f[ehcnb[`aRU_efj^ghiZbcf]_Zha]g[]dccfecj[bjeadf`ajcaObc\ld^]d^cfbiZU[gcfd_odaf^c`dRb`jZcha[a`ea^[kg`^]e`bbem_aecbb`b]hg^eabd`befZhcb^hgcbb\bY^de`bd]gcadcbeb[bjheda_cddbbccf`cffdhcgefj^aiifg`\_fb\_d`cjif^gkjehai]kkbndhcainV`YeebXigen^had`jefhbcecb\]h_jTjgck^ajgiehf^j^afbdegldoagdc`dfbh\\`aifkdg_cach`acgehggb]a[_a][\fbe]ji^`abdi^\abbah_bb_hcdacnfedaf^dakhg_bf`g`hh^jie^dng\gjafa]l_c]f^Zk\fd\[bb^_afie`\_kVia_`gr\heb\i]`icdk\^plia\gcZbhdd\abt^d]m^h__bfZpcd`abgdla\fcf_^aj^baefbdmae\`ceh`acYednkbd\][``iY[^e`hq_Zhcjeecea]da_]hqham_]fge_ee\\bZbbrcc_ZfZc[beg]^lcch`e`apdm[e^aZa^g\gabami`e^g^_che_`di\_do`ab`hcb_i_]sbhe_`geafj_c^_`add\hb``aj]d\fg]`^hbifk_`gccgcbb\hcfd_eddbf`^bdlej_ghdcea_f^d\`dd^_ac[dbeab_d`bcfbghmbdeef`ec_`bcjgb[bbfaj`bceb_`ihfeb\^cbf^ia`b^d`i_e_gaec\hbihcgYca]_`Wc_bc^bqe_f_ebdh_idhdhggc`c\`kgibedb^bbckeh\]b_``aa`ccdgecdackdcl_e_fehfkc^fg_^f_afe_dcb`aZ\cbbcecfacgg_f\hbd_bbbb_]_dibihg\b[gYa_b`]aic]egdedhjb^``cdcf`hg^ab`af`fda\bkkgXiica`[dajhakdadc`fg^ah[adbgddf`hlaaj^ade`becbddmtdbM[jdpbeb[__jcdhf_gn^]gkg`_^g`fcad_ab]\`ec^dbagedcc_c`hbe`dica_df_^^f]`\cf`d`iab_]deWficbcbigfcc`g`_]^h`bgc`a_hgdZ_b``iia`f_`deoacag]jdflgcfkiihabgZUilkho_dd\^beaih\bk`xkcbZkf^\f_[f\dd_\eafae\glfYihafZIf]ghbkmaf^pfc[diZZfc\f_hbbgi\``eii`^f`Yf`ga[^lgo^cc``ccaa\cedniYbalacc^_a``Ye]^ebdbb]kZdej\_ca_Yj[fa`fa`jd_cgkjcfa[gfbfa`ebc^i\ldadi]`bjdbj`ffbc^ii\`jbdg_cdedie`cdg`a_fejhgdf\cjNjaf\ehfeaachb^i_\_eeedjdfcbj]fige`e_bao\k``ce]hdf[h_e`^e]engabeZ]cb_bba`cfhfYdc^_ddedeaajaidabagd]icZga^d`c`df]iic`aih^idbe]_ideddhbckiZ_fa]dhcd_e_acfl]gd\gbcbdecdkdoje[eiacaa`ob`gfcgc_`Z]ca_d^ai_cngfb_eelfkbbdhgbcg^lp\acaaZde]kZ``gc[`j`_faebb^ee_cicdfbak_jk^Wecb`iZbjafj`e`icg``aeade`c^b^f^_ecff^afbeffd`bec_`bceceeccc`heehdfdccccgf``aelbc\cfgdk`bcbaf_daccadfeedf_daffdd`adfacaaafdgbdeb_cef`dbdcc_bddecbfb_^f^c^bceegcbecafdbk]bd`dcdd^ccbeebebc_cbe]ca`fgbebfeee`cdbh__cg`babfdaafehbgfccabfedababicb^d^ccgeaaadba__bccbbbcfceg`f_c]cebeacicZ^ebhi_dgg^e`dbhfc\ba_gbpcd^ceja`gfe^_eldhikdidjh`id^b^^b\f]nac]degagigfnfa_`]fabZ`gb]bYab[aichb\]_ca``djab_heee]__l`ejX`]h_cicf`fdajfcehcahbaXfbf]jh_acbl`c]gfi_b]f]dg_d_bn`]a_de``h^]jZfgd`f[ab`]ed[jd`c`\a^ceglgc`efed^defg_e[^fdleZceiea^hca]ddicbeahj`a`iddl_`ddggdidc`eh`jgeib\beedcejmd^d_`[^je`fb_[kg`^a]^k]cccbnmdgm`[a^cc_e[b_cXae_fcbd\`ecej_bbmjb]_gbbj^ch`acmb_mgjkjcddgjane`_ghf^c\_hib]_gofahci_ebcfdeSaegdbbi`d_ceb^edcjgadeg`ab[ek\pdcc_abffjcec]gaWbc]a^fV_g_b^_mg\hdqbfa^Zhkja\cl[]Yba_d_aa^fgi]\\]dpakagfcdddddcddcddccccdcdcddadcedcdcccdccccddccdccdcdcbecdecccdcddcdcdbcddddddddddbdcdddcccdddcdccdcdddccddedddcdddddccdcecdbdddcdddcccccdcccdccdccccddccddddedcbcdccdceddcdcddddccccdcdccdcdcdddfedddcddcecceddcdbdcdccdcdcddeddcddccccddddcdccccddddddddbdddcddcdddbdbdddebcbcbcacabdfcbbddc`bbbdadedfdbbddbccbccd_bcbccbbeccaccdbcbbfccbbc`ddccedabdbddacbaceb`cccecbcaadcdebfbcddbddbcccb`dccbdbabfebbdbaacebddccbcadbbcacacfccfbcccdbaccbabd`bccadaebbccedbbbcbbccdacdabfedcdebccbbcebbcecaccedcd`babfcbcaaaddbbbcdedacbcabcacaaabhd]j]ece\bagfedlqgf`i^eee`_cddfg`bje^b`fqbc]^ihi`ja]`lWX_^b]\akl\^^iiddbeg^gacZ_g`kccinh]jg`bZ\dfb^l_fecamaa^b_cd_lhafdafcfnchZk[e`j`a^nc_gfW`hdge]ea_cnh`lfd]hff_]cicjcXdcjjmancah[e_`c^_UelbjbheX^dhd^acieefd_h[ideedcpic^dbcf]ff_Xfgb`^bbeihc[^fXZ]bYh^lficdccdcffccbdcdbdecdcccbdbcddcbdcbddddcdfecddbcccccddcdcbbabdcbcccccdcbcecddcbcecbdedcfcceedecbdcefbbcccdcccdecdbdcccccdbcdddcddbcbeeceedccccddbeddcecddccdecddeacccccdcbbebcaecbcccdcddcddbccddbdccdcccbcdccdcbbceddbfdcddccdcdcdeddcdecbddcbdccdcbcbcbcceecccbedbd^cdfccccffa_bcaeeda_`e_^g_dcbcfhdf`cbcbgdfgffd_^cfee_jh`b]_bc`d_`d`ai^agda]bfhcfafe^ecc`gbdecehiaecacdaebccgcgcehdega]fjdbb`cZfdggfd^ga`ffcffh][ed^cdelZh^[deabbdceabYaffcebab[dcb_ibedgha[gced_bajl`fga^cgedega\idde^gb^f_dcdek^dac`_`^`_adb__cc`gecfecef]c`hcbbbcabbccbeebdcedbcbccaaccbccbcdbd`dddbbdcbccdb`cddedcacddc`cbaccdaaadbebeacdcbddecabbbcbbcccbcdacddabcbbbcccdaeecdbddbddeecbbbedabcdcddcbcebbcdbcaacadccdcecbceaccdbcbacccebbbbdccebaebacbcdcebbcadecbcccadebcdcdcdcdbddccbbddcecacdddbcebc`cccdbcaccdecddbbcbcb`b[Zf`ef^e]jamaafjfeZebgoagcd`^i`eYbXhak^egiTiciXgl]^jhidbn^_daeedc`ekia\icYc^e[d[cc^ddgh[cfoefa]^o]_cb[gdltfZvdhchcgdigb]cefc`f_]mfa`eccbh]ge\ikelefd`_ch`f]hedak`e`^^lhefd_niYnc^befc`fdX`\ilahied_`l\cg`e`bfcfiYf_dj`b\ie[f\gagW^^abhdldhee^bee\se_edfdeg[^`d^b`iil_cbaccb_ec``dagcc_`_i_k_bccebdgggbeg`bcY`ec\ijiVjfce^^^b^hgcf`_acaaadg\^]d`ccgec_bc]hch]cefh_`_fbgca`YagUb\^^aaYie^i\e[`ga`ebeaa\^Zcbfh_gem[a]b__n\hfdf^``igie\chkgc`\d_`a]idfff[bidig___ij^eadb_becbibiagpb`fc`ac`j_]c_haf\cg`]biccbdecchag_ea^d^a`lbhegccccccccccccbccccccccccccdbccccccccdccccccdccdcccccdcdcbcccbdccccccccccccccccccddcccccdbcccccbccccccccccccccbccccbcbccccccdcbccccccccccccbccbccbbccccccccdccccccbcbcccccbcccdcccccccbccccccccccdcbbcccccdcbcccccccdccccbcccdccccccccccccbccccccccccccccccbcccccccdcdccbcdddddcccbdbddccbcccccdbbdccccdcccccccdcbccccdccdcbdcccccccdcdccddcccdccdcbdbdcccbdcdcdcddddccccdddbcddecdcbccdddbcccccbdcbccceddcdccdcddcacbbcccbbcccdcccdcccbccceccbcdcccdbdcebcbccdccddbdebdcccddcbbbcccdccedcbbccebbcbcbcccbdcccbccccdbdcddccccbcdccc`befa`[eag]iYddiWdcd\c`jbgd^eih]j^_Ze`hgbefacd[bgijX^hd_ckZ`]hheidZakabgk^lihjg]fdgl^bdgdbd\`\_jfn`cchld`_fiqcdR`zjl]bb[aUZ`_db^\cblghdncahcgefggO\fb_dbX]edaa[lYba^gdelbXagd`ki`ih_dbekebbgccY\dfc`bed^cdd]bj[biabf^`cf^g^fnic^X[dbal`kf_jchedlga_pefbf\`cobe]bba`i]af^beh\clSdZh]d_mff`^lh`e_f\fhbeh_c`_a`Yd]^gga`ff]hbae[^`\iqhcaaZafe^gcjf_[g_iebccVcaddjlfad`\g_ga_kdac_df[c`fZghZc[]f``cdi\hafcbae_ei]]g_gax^djhgdda^adf]`][]onmi]gbj]ei[_gdcc^jh_dahmbih\bcYg]i`^h_\\c^ibjlbdehT^_dbU^`cxae\geea_me_`gibajhaeYYb\aagfbf_hhcilcbfg_hcfcdejd^fj`ecbcck\fbeqm^_gl\ec`^h\gZif``eZddakhi^oihapd\accj_\`kifge`_gfaccfcnbed`a\`abeeWghkdZ\fijc_geljnfdacjfh_chcgcZ_W\l_kg[fe``cb]]kdbbnbO[be\h_j``_X\gXeWfbfekben`^]g`dnocbZeb\edcegcbb^hb_fea]dcfaffe_caq^ciZe[g^eecimdWZi^f_ij^^gi_`[bcdj[ciac^`ch[_d_bd`g^ngb[g^jdje^begdap_biZe`f_ajebWdj]dbff^chimbbg`c_aghjZ`ecdidh]gjYc\Za^_g`hadbc^gfkioc_ejef]c[jkkf`Ydbmeocbc^b`eifkdd`cZc`eabhbddY_degheggkgeafhiib]i[_db_cbfcchbcfbnb`_ed_d]b^bTb]bei\Rj`ekba`]a_b`dkm^fdcdefcgdhaedbYadebc[a[d`dl`ih[ci_`dg[bgf^]^f]^b`mp^h^afT^gi]bf`lj_abb\Ycbf_^cagbhehfg_ibcdaig[jg^ejfdeecded\gfbacgheecm\e`^fcheijcd_cdc`je[]dh`\dfcde`ab^hane`c_lde_ibkcdge_jcYfjX^`_a]]af]fdff[``]ag`dlsbaadeg]dmjZee]f_ldbdhhi]c`d\jfY^dnmeemXgZenh]eibdagcmeeg`f`ajdb`ebdcbabd[le_dfggcdaekdd\g\d`[`^bcaVccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccafcbd]be^`fdcbmbef^j[```aadcd`ecbag`_`dbhj[l_ab`fbecfafdd_`dc_gef`ebfbc_d`_\biebcgcddefcfgdgdkifjdhed__gea`cadf`bf_hi]gdbdabc_iae^_bgbde`af_egd`i`mbbifec_hca`ddledajbaecegh_egbcjcc`ceadiiabcbb^ifecgh`beae\eb_i^aY_`cd_aedhge^\_`ga\`eb`fja[daab\lag^b^_`cb_^gfe`cifddje`gd_agab`a^f_baZYggmfbh[[d_jcj]elhehab^c`fgdjjgc_cdla]^`_e^^ZaeZ`agbd`mdfgb`_gd[ii`^bbfdh]^bheaZkhg^cVjefY`jaebbbhg`]aUW`cjeagXadcflg\gGh^`_abdcg`bf]b`ch\\]Yf`f]ff\cgfdbgidgjggac^[]d^bd]dX_[ghe^ehna_f`f_`ia`fgbg`afiZ_\idgl_W_dhg_^m_a^cf]`i`\^clc`_\h_jc^b^`gdh^gbkldeeYd\fbh`d_g[a]ljk_aghadeeddfcbf\[kga`Zbed_^ehjkagc^bgcifdhf\aib]hdfgaedc`[]gg`]cf\id`f_d`bcgcabieje]]_]`ag`\aZbacacflc`]_\bfegcbiac`^abf^bdd`eZ_gddadd`[dfegemciZd_`jcdm^idjfa^^^dc`cgi_\cfcg`nba\`b_hbi\debedgg_`bm_hfaj^bgf^nf^b]g[f`b^ac\nkfaahYjmd_leX^df`i\`dkd_d_f[^rdbh`f]feiZfhgdghhcihacgf\`gg^mo^e_aZc`k]bekhabg_feedd]hXndXg_Zd_W]f`a^bah_^fchbbl]dcd_ffheaYhafghfi`_djroa]copafgaKf][\fhcbfcecaj`bi_U__a`igheaabeZ_^dcafk_gaf^^Td_kec^chf`cchf`fYcbg_hgbdcjggd`cikdd`icf]f`Y]cbg^k`cZbg`n_jZg_ebcbccbcdcdcccccdcbcbbcbbdcdcdeccccdccbccccceaedaddddcccecccdcbccbccdcdcdcbbddddecdccbedcdcddbbbebdbdccccbbcccdccccedcdccddccdacbcdddccbeabcbcecdcbbdcbccceebdedddcccdccccdcccdccccbcddcdceccbdcbdcbbcdbeccddbcdcdcccddedccccdccddeccbcddcaccccdcddcccaecbccdbdccadeccccdccccbdcbbccdaccbccbdcccbddcdbcdcdcbcbbcbccdddcdbdcbccbccccaddcccccdccbddcdcccbcdbbdccddccbcccbcccdcdbdcdddcccbdccccdcccccdddcdeccbdcccccdcdcdddccbccccccdbdcdcccdcddbccccccdbbdcdbbcddddbccbdcdcccdccccdbdbcccdbbcddddbcacdbcdccdcdcdddcddccccecbdcbccddbf[c`ccd\g^\[aihYadafil]cgl_i`fbdccdeVdkdf\]_beg`[eejZ[cVgjc[Zgbdcbbamtndi[f[X_\[]im_hg_f[\`cqabY\bndbZZdf]cajc}ehbfhVXbc]lfcag`lbaug\qQebgbV_i_qzdh\je]YfcbdihdTYfmK]Z^kdmiWceaie\eebiVPdb=nleZebjcge`vXYclbUcqaUh`aieai`backbhka\df]e`gr[bb_]o`d`bnge`dhec_[bfccccccccccccccccccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccdcdccdccccccddcccccbccdcbccccddbcccdccdcccdcbcdccccdccdcccccccccccddccccccccccdccccccbccccccccccdcdccccdccccbdccccccdccddccccccccccccccccbcccccccccccdccdccccccccccccccccbcccccccccccccccdcdcccdccccccccccccdcccdccccdccccdbccbcccccccccccccdcddccbcccccdcdcccbcccdceccddbcddcddbcddcddccddcddccbcccbbccdccccccccdccbccdccccddcdcccdcdccccdbcccccccbddccbbddccbcccddccbcddcccddcecdcccdccdccbccbccbdcdccbcccbbbdccdccdcdbdbddddddddeddccdccddcdcccbdbbccbbcdddddcccdcdccdcdcccbcccdcdcccbddbccdccdccbdcbcdcccdccdccdcdcccedcddccdcbbddbccbdbdbeccccdccdcdcecacdcbddcbdcdddbcbcdbcdccbbbcbbcddccabcbddcbdddbbdbcedbbaadccecccccccbcbcdbcbcabbddcaabdcddcecdcccc`dcccccdbcdabbccfcccabccbbbcdeecbdcdbdddbccbdcbbbdbbcbccddbccdcbcbcbcdbccbbbcccccbcbdddbddccbbedbbcddacdaebcdccecccbc`acbabebdddccbaaccabaddbcc`bcebbccaacbcbcgcacdcaccbcbcdccacbccbbbgdbccebcabaabbbcabbacddcbbcbcdabdacccabacccbdcc`bccbccbcf_dddbdccbc_cacdbcdbccddbbdbcccdacaacbcdccdadecbbbbadcacbacccdcdde`ccbcdbdccbacbcbdddbabbbbbbdccadbdabcccbccbbbcbbdbaaccbccbbcccbbcbdbadcbcdbcbabidbc_gcdbccbe[c`fcbabfgddca``e_cfdadfaadcceedebfdceeaaem`affeejacebbfcabbe_bfc``ead]ac_bdfded`a_cace^efeccbaahaacacfbfbc``k`cb]ccbgbeb`e_deeaga_``bb`de`b_jbddadc`ec`a]ed]bdadbec`cehbdbabgdbddae_bccdacbeddhbcedeab`be_c_d`e`d`cadfabechcac^adcf`d`bddegg_cle^hcccccdcccbccccdcccbcccccccbbcccdcccbbddbbccccccbccddcccccccccdcbccccccccbcdcccccdccdccccccccccccccbccdccdcccccbcccccccccccddccccbdbcdcccccbdcccccbcccbccdcdcdcccccbccccdbdcdccccbcccccccbccccccccccccccccccccccdcccdccdcccccccccdccdccccccccdcccccdcccccccccccccbeebe_ceeccbdfdebjac_f\dedbfeca`ebbebdedfeceffggdccecd`dbbedbecfiabedccccagbb`eebcddbcdehaedagdiecebdeffebbcbegccbc_iefadebdcca`acbfjddgbfbaecddecedgeac_gacadecgfded`ddda_bffebfefd`ceaafg_ccffcbcd_cebecgbfchbf^dgafgcbbdbefeaeegeffcdb]_ecccbc`ce^`_`abfdeafcZdam_ac_h`b^fbh]a`gedgc]_f]agpf]`\bYTbccccfaaffg`]\jdeh`Wdce`gibb^afeg^`gccco^c^d^chf^f]ggdcebb[_edj``\Y_hncmgg^`iebe\abdafe`_haahel_egd\ajhhnfa_Wfibgd_]]dfhh_^hgafai`Y_hhgejilhc`_kgk``fdZgcddf]_fe^d^]bfc^g[ggad`ait`fep^ka_dc`fachh\bZkgdi_ei^ccii_db^gh`_gpZibY`gdj_iagn`]gcTib_aaa`djbdc`gaccdofb^^j\efldUjedaghSd`giWf^_[elc`e`agfb^dg_aqicbbo^fdbc_dc_hg`cln]ac^fb_fnggkdfda]b`^\ihhcgifbkshef`mfmdffcg[[[a]gaab]he^_Vc_ifcae^fcg`^kj\_Y`_Yedin^bZTmccg^\Uddab^eba]kef]``fgXf`S_d\h]dkckagheg]d_f_e_Wca[d`\fbifmkh`eia_cccccccccccccdcccccccccccdcccccccccddcccccdcccccccccdcdcccccccccccccccccddccdccccdccccccccccccccccdccccccccccccbccccccccccdccccccccccccccdcccccccccccccccdcccccdccccccccccccccdccccdcdccccdccccccccbccccccccccccccccccccccccccdccbcccccccccccccccccccccdccccccccek\Z`]g^_i^`ibba_[ff_^jhfgk^d`_nid[^o[iagab_hc`aj_g^YZ[edmc_g`jiefidaf\j_bYb\_bedd\b_^jgh\^bhahcadboegacac_msh_hcb]kd^`e^cie^ib`dmicbifllg\a_gcef`_gfmn[\cfY_b[agbYadaf]b__d`^hma`Zbcm`ehUYnb_efa`egcac^[`]gc\Wicmf]f_See\\Ue^ccZXhcch]_kwelhde^^f_ch^dlh`fdeh]\ccccccccccccbccbbcccccdbcccccccccccccccccbbbcbcccbbccccccccbcccbcccbcbbbcbcccccbcbcccbcccccccccccccbbbccccdcccccccbcbbccccccccccccbccccccccdbdcccccbcbccccdcdcccccccbdcccbcccccbccbcccccccccccccccbcbccdcccccccccbccccccccccccccccccccbbcbccccccccccdccccccccccdcbccddcdcddacbccccbccdbccdebdcdcccdadcbcdedcdeddccdececbecccdccccdccdddcdfccbdbdcbcdddcbcdddfcecdcedcdcdadcceddddcefdcccebfceebcdccccccbdccdcbebbddebbcccdbebbdbddcdcdcdecccdcddadeedcdedbbcccddcccbcddccddddcceccdfeccedcddebcbdbcddbecddeccceccdccbdbdcbbdcddbldae]je]ch]b_a^k]aadaddcfcfVc`eggldebhcbb`ebag`dggedbef^ggacaddbeida_ccefhbbceeh`cgdbcha]^bi`hjafbfgd`da`cbcicfcidage_cd\cjbbdbd_cgdebc_^dfead^cfcbcfaf`hbcdZbhaadf`[caagd``_addd^eaaedfbefa`hbf^bce^f]eb\^hh^ecbec]afcgjc^ffdj_b\bfdebcggeca`dfdb`^`ffbe_c]bbc\cbdcdccccccceccdbccdcccccdccdcddddccbcddcccddbdcdccbccdeccddccdccdccdcbccbccdcbccbddeddcbddccccccddccbcdccceddddcdbedbdbcbccdccccbccdcddbccdccdddddcccccccccccddccbcbcccdccccbdddccbbdcdccbcbcbcccccededcdbccbcccecbccceccecccdcccdcccccddccbccddcbdcddccddcdcccchfgdU[iceb`bgeefdcg]g^g`ghb`bc^__oab]i_daa^k`rZg]adcjijf`emh_Zcd]kg^ide]afg`dj`kf[dia`efjbfeY_je]aijed^`cdcafgfchcchg`badciidf]heide`aiej_fW_\Xie_c`]_b`fajgcXdakZZgi]hha_^gieghk`aic]h_c]b__boYb``d_^ejhdfhh`de`df`c^ebgejegc`hbg`eOhc_if]jae^h\`le\dbcad]che]dceebbadcaccabddbccbadbcaddbe`addagabdebccbbcabacaba`debbcbfbbacdbbacbbca`cccbdbdbbcgcfbbbbcddacdcadadb`adbdcdcddfdcacbdddbdbbd`bdaddadddbbccadada`fbaba_cdaccdd``aacdbadbaedcedcebdbd`abcc_acehbbbacccfccc`abfadcdddabbbc`e`_cacdca``dbcccaebacbcceebb_dccbdbab]bc_]md^dXejebjlcbd_i_Y]_c`Sc^]e^gfnkefifb`c]_i[d`ak^dqo_e_gadefgmc`dgifdeZhjZ[`d[d`jitf`\bbd_fkjj]jaTc`hdegYcclg_`gZ\aaccZjac]acbjemei_blac\ajijb\icZa`iclhbekXccd]Ui`b^hagf^fijmhfhgdeZdlZfi^j_aaZdf_fd\dgcXhd]gh_g`]i`kfkWgeb_`_jh]ajdl]a_]ec`\e_bcb][hb`cbZ^a`eqfpdeebbia\hc`ic\]gccbg_e^^`dfkhd^madc`_aab`h_agggdn_af`addea\f`f]faeeb`e]md_ebdke\^ii_i`\chechhf`bg`bfldc_[\hd^[[eldji_hcae]ch\dchd`h`cp_imbdY`ca_bhh_gdl]iea\gab_afaheac[bb_ap`c^bc^icWg]`^lf``]dhgefbd[hbe`Vbncdm`ob`o\fcdaaZ^hd^^aZfb_cebc[dgge^cfdfdbkgfb`^_h[hfccfame_e_cc`gbbhakgjf]\eejacidcc`dg`g\e`bcjcbc[hacadg`facifa]chdaffaaddh^__ceb^dbbe_cbfbfedd`bdcbf_afh`wa\f]afbea_nd`i[h`addajdc`_c`agia^j`bfh__gkbbhdccabfc_ah[cad_fca\_cgeaipbaigej`c]cghahdei^gfcg_feicn^gebcia_cbcjeeadbfgdlbhie[adaefbcdladei__ha``cccdcbddcdccccccccccdcdddccdcdcccccbccccccdccbdcccdcccdccccccdcccccccccccccccdcccccccdcccccdcccbcccccccdcccccccdccccccdcdcccdccccccbccccdccccccccccccccdbccccccdcccddccdcbccbccdccccdcccdccccccccccccccccccccccdcbccccdcccccdcccdccccdccdcccccdccccdccccdcbccccdcccccccdcccccccccccccccccccccccccccccccccccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccccdccdccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccdcccc]\_kq^fd]e[hfYZeedfYa`\dacsfY[i_e`\hkck[d\cgRsda\chg]bdb_fgfbc`][e`X`ehcga[Vi]ibe``dej^j^gdqdadhc_lgced`h]acfgpfZfklcah_agbcca`kc`k^f]aZd`fb__``zh`Zc_a`cZ\]hi`_h]kfe^bjcadeh_\_gc`\ce``ebedbdZb^gfleadgbmlgZmi\_l_`hdeg`gfdajkchfd^cf`ea_ge\ejaldd`jf\j\i\bdl\b`bc_be__bbc_aab`ccfbeeaadbfbhgkab_aYcad]`fcc]ded`ababbd^_e_a`ebbcacedc^_\ebga_ba\icbdaa_affc`c`d^ddb`baacecdebh`dfcba_bfccb[a`c_`fdadeb__dagcge`ccdjd`cafbdbecacbce_ecbdcabd_]_db`_bjb__ae^decbc^_cadj__daacb`eahaefccaf_gbdbdifaaadfe^dh]e_dcbf`fabf[`fe`ecb^_beccbdcedcdddceccdeddeadccdcbbddcfcddccdcdbcbdcabdeccecbbedcbccdedbbbddeccccdcdbbbcdbccefceccebbbecdcbcaccccbccbeebedbecccbeccbeecedeeedfcdecaecccdcdcbbabdbcbdacbdbbcdeecefcbccbddccccbbccacdddcccccccbbcccbbceccbddeccddbccdbdcbbbecbdcebcbbcdddbeebbbcdcbddcddccbbebebbdcde`cbccdadedaaba`bagbedb`d`bbbbb_ddbccdaebfecdbcdcdacbeccbdcagbc`ecbfdeb`ccfgbbdbe`accdcecccecd`bcbdbaecccedbchcccccebacddabbfdecbfbaeccdaaedbfdfbdcdcbbeadebecbbf`bb`ebacdcbecddb`abcdaeb_babbdeedebcdedeeaeddcdedacdeegfdcdabcccbddcbdabcdcbdcdcddececccdccabdecdcbedbbbcdddbcddeabedcaddcecddccccdddbbcccdacccccfcdccbddcccddfddaccbdecbdabcbbddaddbbebcbdccfdcceeedebcdede`ebdcccbeecddcdddeccdbbcccdccdddbdcdeccdccdcadccbbfbdddbdcdbdbcdcccebbbccbdddcbcdccccbdbccbdbeddcccbdbcdca`cccbbcdeebcdcabadddbbfaaeeb`dbYibfYiX`^dc^c`bc^ih]bef`]g_ZgbZbabcabklZ_`^ach\Y^jZiYgmgaiZa`^_m\iZ`dfg_dZR]ggi[koafjaed_ghdjdj`dd`egdbdadW[\kS_e`gbgfg]kiavcf_cb`ejkkd][ebdbdah`befYe^akW^gOib[Ye[p^b`ebd\dfahe_`jc^kfhaeT[shebg`fYWbc]eih`agbcl]ff[eifZb^`figeeivfwjWdhagf_g_c_bc^a\Z]f[ogiccddbcccdcdcbbdcccdcccccdccbddcceccbbddbcdbdcdbbcdcccbbbdcbbcbcbbcbdccebcccdbdbdbcddccccdedbcddddcccbbccedbcdcaccbccccdceccccbcacdddccbaccccddccdddcdcbcbcdcddcccbbcbbcddccacccccccbcbecdbcadcddcccdbbddccbcbdbcbbcbcbdccbcbcbcbcbcbcbbcbbccdddcccbbcccbcbcbeccc\a_`id`V^abuZcgh^ab^X_YffncZfaobeY^h]fd^id]mh_[^_hUYkPcbef`ca`eebb\l`[bfbhggb`e]eX`rihkgg_^ceem_mi_hZ^fmdWidYo`]h^ie_db[df\fis`_aVcgdf_jg[\diapiddahh^ij_`gdfe_]f`c`dbfekkc`^cei_maZ\g]f]le\ddY\qgia`Ogh]Zla_agaifeaUa_jc[\Zli]V_\gaobafj[ef_eZ`f`gZfhfbe`e^ifZcdcddcddcdccccddccdccccdcddccdccccbcbbddddcdcbcdcecbcdcdcecdccdecdbdecdccbbddccddccdbcdccdccccccbbdccccdcdddccdcdcccbbccdcdcccdcdccccdcccdecccddcdccdcccbbccddcdcddddbcdccccdbcccccbcddcccdddccddccbccdcbdcccdbdccdcccdcccdccddbccccddcccccdbddcdcccccbdccbcbbccbfhc```aadged[djeb_laeZ`cecba^bcccadcafcddeamdbafe_befl`bff_ddZc^age^eac_hb`_feagecblaha^d^eacfhddbdcfbfceeffec`ddfghd^gbcheh]f^id`d`dfhfbb`d]c\gbbe]_c^h`cg_chde`hZfe``fjced^gf`hhae`ddcaafhbcfbbY`\hbgdabgedZbc_b_iecbfd_chbdbj`e^b\gc`i^aabdffdbeeh_ebai^_g^_cccccccccccccccccbcccccccccccccccccccccccccccccccccccccbccccccccccccccccccccccccccccccbdcccccccccccccccccccccccbcccccccccccccccccccccccccccccccccbccccccdccccccdcccccdccccccccccccccccccdccccccccccccccccccccccccccccccccccccbdbdccccccccccccccccccccccccccccccccccccddcdddccccdddccddccdcbccccdcccccccccddccdccbdccdcdccccccccccccdcddcdccccccddcccddccccccdcdcdcccdddcccccdddbcdbdcccdccdcdcccdcccdbddccccccccddccbddcccbcdcddcdcdcdccccddccccccccddccdccdcdccccdddcdccccccccdcbccdcdddcdcdddbcbcccccdccdddcbccdbccdccdccdccccccbabbccbbbcdddcbcbbcbccbccccccbdbbdbbccdccdbccabcdbbbdcbcacabcccccccccbbcdbccbcccbccccbbbccbbbcbbbbcccbbcccbdccccbccbcbccbbbccbbdccdbccccbccbcccbcbdccbdccbccbcccdbcccbbbcdccbbccbdbbccbdbcdbcccccccbccbbcbbbcbcccccccdbccbccbcbbdcbbbcbcccbbccbbccdcdcccbddbacccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbdccddcdcccccbcccbcbbcbcccdadccccbbccccbbcccbcbcbdbccdbcccccbdccccbbdccccbdcccccccccccdccccbcccbbcbdbcccccccddddcccbdcccbbccbbcccdbcbcddcdccccbcdcdcddccccccbbccbcaecbcddbcccccccccdcdcccbcbccdccdcbccccdbcbccccbcddcccdbccacccbbccbccbbbbcccbccccddccdccdcbcccccbcccccccccccccdcdccccdccccccccccccccbcbccccccccccccccccdcccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccdcccccccccccccccccccccccccbcccccccccccccccccccccccdccccbccccccccccccccccccccccccddcbcddcedcbdcccccccccccdcddcdcdcdccdcddcddccdccdddcecbcbccdcccccddccddcdccbcdbccdcbcdcccdddccddcccdcdccdcdcddcdcccccccdbcccdcbccecccccdcbcccdccceccdcccdcbbdccddedcccdccccccbbbcdcbcddccddeecccccdcdcddbddcbcbccddccdccbddbcccdcbdeccdcdecbcccdcedcccccddddcbcbcc`]_g_cdch^gdag^]cge[_megdehf]ie_egWfVac_`dgdgkcUVcnXceYdfcdef`]admeeb\gcg^c`bdkW_da^cfngfdUekabp^dajpgdk`eda_\ac^ccccaik^l`ceid__gc[Zba^bbjglacdeadbafce]kh\edbfeZZ^cbpb`_fagcdj_d\hXbj`ecbjdcakk`\h\gddfab^hdadeeakdedgg]`_gbc`[g_d]b[[g`fgVcaahceimd\hdbdl`cccbcccccccccccccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccbcccddcccccccccccccccccccdccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccdccccccccceccccdcbccccccccbccbcccccccbbcccccccccdccccccdccdcccccdccbbcccdccccccdccccdcccbcbcccdcddcbccccedccccdccccbdbcccccccdccccdccccddceccdcccbccbcdcccccdbbcdcddbdccccccccddcbdcdccccdcdccdccccddcccccbcbcccbcddccdccccccccccccbddcccccbcdccccccccccdcccdccccccccccdccddcccdcccccccddccccccccdccccccccccdccddcdcccdcccbcccccdccccccccccdccccccccccdbcccccccccccdcdccbccbccdccccccccccccccdcccdccdcddccccccccdcccbdcccccccbccccddccccccccccccccccbccdcdcccdcccccccccccccccccdcccddccccdccbccbccbccccccccccdccccdccdcccbdaagj`ef_aaedd]\dd][__a^f]]^le\dbj`fi_gbaece\ca`ebeib^lf\chmegZacbe_eebbagafhciabbfdfg]fekbi]\_[Yai]`ceada_db_maaca_daebachfe__ibdh_ea_Xjb`ai]gfgdfe_e]c]ldkd]hbdca]fad[igbdcbdceaWhakbWgaficbac_dfle_fmmi`edcgdcbhYgdaeibace^b_db\ecffkeae\feghfj[fh`ffd`^aaeh]^[]mdej__bZ`i^]c`^j]hjYdfifffce^`[hfcbafd]]`Yl`_ja]j`7^magiY^k[`af^cdc_c^ddg\Yefa[eabfdg_b]fYl`_f_lffdg\^\\bmcoc^\ifg\a]a_bcd`^idgi`eck]`_`\edhfz]fcd`aedcb[\hh_lYbm`tcaZZd`gPdga[hendd^gZagece_lijed`bfgmcZhdheefjgSdfib\hkdfVh_jbe_aluhbg^beeh`]dab_mdgfih]cdeecccdcdbccdccccccbccbdccccccdcddcdddcdcbcdbcdccccdccdccbcdcdcccdcccdcccbdccccdcccccccccccddccdcccdcccdccccdcbccccbddddccbdddcccdcdcdcdccddccddcbccddcedccbdddddccbcddbcccbdcdcbdccccddcdccdcbdccdcccdcdddcbdccdcccdcdddedcbccdbccbcdcbcdcdcdccdcdcedbcccdcdddccccbdbbcdeebcccbdbbdbbbdbdebbbbccdbbcccadbebcdeabcdcddbeebbdfcccbdcedcdcceeabccddccbaccadeeddcedbcabcbbdbddbcddfcadbccbcfcacdbbcccddabdcbbccccacbbccddcdcdbaccdbceedccccbccccccb`cdacdddccbddcddaccdcaccddcbdcdebdccdcccbaebbdbcccedcccddddabdcdcdebcbebbddddbcbcccccdcdcccccbcbccdccdbccddcccbccbcbccdbdccdcbcccddcccccccddccccbcccbcccccccbeccccccccdddccccddbcbcccdccddccdccdcdcdcccccbcccdcccccdcccdccccccccccccccbcdcbbdccdcdcccdbdcdbccdcdcdccbcccccdccdddcbccccbddccdbbccccccccdbccccccdcdcddcdcccdddcdccccccbccccccbdccd`bc`bdb`ebfagcbbcdadbccbbcdbbacacccbbfaedaecdccchaadfacgb`deccefe^eadbccbbbebddbbfcdedcdfcb`bdea`fbaeccdgbcbd_aeahccc`gcaabad`ccbc``edbadcbfb`ccdcdcacbdeb`bgbcbcaacdbbecgfddecdecgcdbdddccfbbbcbfbdbf`cdaded`cbdadcdic`dddgb`d_ecabdcdgaaeffebaca]facabbcdcaehedcccccccdccbcccccccccccdccccccdccccccccccccccccbccccccbcccccccccdccccccdccccdcccccccccccccccccccccccccccccbcdccedcccccccccccccccdcccdcccccdccbdccdccccccccccccccccbccccccccdccccccccdcccccccbccccccdcccccccccccccdccccccccdccccccccccbccdcccdcccccccccccccccccdcdcccdcccccdcccbcccdcccbdcccccccccccccccdccdcccccbcdccccccccdcccccbccccccccccccdcccbccccccccddcdcccdcdccdccccdccdddcdccbdddcccccccccdbddccccbccdccccdcccccccccccccccccccdccdccbdcccccdcccccdcccccccdcccccdcdcccccccccccdcccccdcccdcccccccdccccdddccccccccdcccccccccccbcdcccccccccdccccccdcccccdccbcccccdccccccbccccdccbbedcdddccccccccccccccbcccdccccbccccccccbcdbccccccccccdcccfccccbccccccdccccdbcdccccbcccccccbdbcccccccbdcdccddddbcccbcccdccccbdbccdcbcccdcccccccdcccccdcbccccccbccbbcccccdcdcdcccdccccbccccccccccccccddcccccccdqe`iafdbhJ^j]_mcfYnchfk\V_p^Yig^\YbiVi^df\m[_ccga[_}f^dc\egngfd`eodid]\bad]hh`[ibf^g`gbc_\kicae]bbdc^dfic_edTlmdQa`i_ghgbbkcbccalpZb\]dfkjchc`Wa_op_gm\]`gcf_bdlcZlc_]g^e_e`db_cadhZgW^iNfcerd\k]e`abefaaea]jdp^rg\s`aXbcdhdcUcaggr^Zf^iefnf^hbc]ebadb[^djf`dcecdeccddddaebdeccdfddbcccdcedcdcdcddabdcebdcbecdccbeebbddedcdfcdcbadccccabb`cbccceddddedcddbccbccddebccdcdcdcegbcccdcdbcdcbcccddcdcaebdccddccdebdcccdebcbbcdcdbddbeccbcddbcdcccccccdcdbddceddcbcddbcbdbdddbccddbcbdcdbccdeebbdcddcddccbcebeadecbcccbbaccfdcddddccccccccddcdcccccccccdccccccccccccccdccccccccccccdcccccccccccccccbccccccccccdbccccccbcccdcccccbcccccccccccccdcccdccdccccccccccccdcccdccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccdccccccccccddcddccbddcbcadaaacbbedecabc`bdadbebcdccdccbbcbaaecbccddeccddcbbbbcadcadbcacddaacddbddcbeccbbceddbdcdddccdcbdbbddddccbcacbbcbbbcbddcb`cbcccbcaedcdcbebccdcbgcgbcbcbcddgcebcddacbcbaccccbaccfbacbccbcaab`dddcdcbccdcccbdebdcdacccbadcdcacbbbccbecbbdcbfcabacdfcbaeccccccccccccccccccccccccccccccccccccccccdccccdcccccccccccccbccccccccccccddccccccccccccccccccccccccccccdccccccccbccdcccccccccccccccccccccccccdcccccccccdcdccdccccccccccccccccccccccccccccbccccccccdcccccccccccccccccccccdcccccdccccccccdccccccccccccccccccccccccc[bcedckha_hdbabac_eadge_d`ebd^d_camee^dleb``abea`^e`_bcZfg^gehbgfb]bYijdia`bgei``e_fe\cih]edafb]eZ^daedic^g_c^_Z^cgbcheheh[ijbae_c`fbfffdgfbcabbhefbaca`ekcfejeec`^fbecca`g_fjac`l_feb_gajbheh`efc^dcbg^iaf]e`ecedcceicefc_gh_ibgdecfcfefggdgifec_d`b`f_e]daadb`dccccccccccccdbccccccccccccccccccccccccdccdcddccccdccccccbcdccccccccdcccccccdcccbccbdcccccdcccdccccbcccccccccccccddcddccccbccccccccccccdcccccbccccccdcccbcbdcdcccccccccccccbdcccddcccccdccccccbcccccddccccccddccccccccccdccccccccddcccccccccccccccdcbccccccccdcbeieage`bic[ei`ca\hb]cdeb`^Zichcaigebd_a^fkchmcfahh__hef]\ff^\ghodbdi\bbbbbedZlbc^d`b`b`fdba]bjif^_c_ccfcdfbc\ca^abd_[ffjed_bgYegce`ef_a`gh`de__dbamaddcihbgbl_^hgdheg\`bcefaabfdd`kgl]Vhafe[dbejbia]`g[fde`cec`ebfaidd_geag^[akeg_g_ae_agaechbhegd[da^bcab^hdefcbbfcbebageeahbbebd`bc__b`dbdd^^fbcdadeje`d_gdbabagfbf][lca`cc`c_ababbbbcedbddd^iaab]\cd`acaaf[afgccbba`dhf_cdcbffbcdbfbhhdd^_hY``\ghjae`_fd_cbgdaa^facdbccbbbfb`debi`a\bbj`cebfdg`adb`jcceaejbgf\bc`e^deckf`c`decbeded_e\dicdg^eedcadedca]daae`bddbdei_fb`__g_ca\c\h\_hXc`l`pgjc`f`qeCbZeTageiaWjX\^j[^kbgour]adegoTdlixhm`bmflP^gq\dV^dilfeijaZUebVchagYgn_a_Yon^fbdijfee`fcod_bf]bd[__dU\OZf_g_\`_[gdeqa_^Vodeeceb_`balXg`Yeh^e\db`ealdgkdZb\\_dgamZ_ioaXcle[ak]]emqkW`e^\dVcpbaiaicWpebbdeYcdvWbUbfce_bhb]`ad_^gady[_^tXsct_eccccccccdcccccdcccccccccdccccccccbccccccccbcbbcccccbccccdccccccccccccccbcccccccbcccdcdcccbcccccdccccccccccccdccccccccccccccccccccccccccbcccdcccccccccccccbcccccccccccccccccdcccccccbccccccccccbccdccccccccccbccccbcccbcccccdcccccccccbcccbcccdcccccdccccccccccccbddcccdcbdbdaddbbcdcbbddcecddeacddcbccabacbdcddccc`dd`acbddbbdeebfbbdbccbcdbecaafbddcdcdbbccdcdccebdcacdaddcbdabcccdbcbdbeecbfbedcecbbabcbdcddcccaddedcdbbcbcccccdddbfbeccdecacba`acdccabcccdbbbccdcbcbbbgccbdcccdbdcdcbccd`bccc`bcdcfbbgbccbbcdecdcddcbfdadcbceahdb^Xf[_]^e^]iekehbccbphgd\\eb`^cc`c]deidg\d`[def\_e[df]ibck\c`d]^ake[n`]Tg]b_edlYgdheab]bi^fkTakhgfkf\`Yf``_`aga^cb`icdmfgqbmgfdc_h`hfnZ\d]g^ed^id\b`^dc_fbd__ff_dXj^lacfibhjck^cedadefg`a`afg`gc]l`c_dcd\d`haihbi_fiecdha[c`_c_bdfoei`ddbgchdcaf\iZddckdhdhlec``b`eaebcdhdeddddcdcbcbebdadff^ceadae`c`c`ccdffeed`fecehddb`edcca`cabhdcccfa_hcbdedbcadcebhhbabeacecaeebdbbcbb`debaa^gbecidaggdb`dcedaacafcbec`gedbcbdchddbbbcd_bad`cbecbab``debcebc`ba`bd`cccbgd`dagb`ddbcf`cacddaabecdfcdddebdbdcddcccc`dg`fee`bbcddcbe_cabdcccffcbcmf\`ayh`YY_gj_fpdWa]ujbgmY^a[__bjb_dd^RmWmXa\chj{bRqechjhj\e]kgWXb]Z_zc``dil`ef[^\^\iehdUdWjco[bdffTh`owke^[diX_de\^^_^`ljKggd_elX`f`ggbiZbdZmhm_U\k^Zr^`^neecYUa^hfjdi]]el\\glg^yerchbbeifali_mWbc^]]f[]wfcL_~XUVbv_jache\ei`cbXdfcfY`gZ^bYdg[b[^]iRX]^idcdbcccccdccccccbccdcddcccdcbcdcdcdccccccbcddcccdbcccdcccbccdcdddcdccccccceccccccccccccbcdccccccdcccccdccdcccccdbbdcbcccccbcdccdcccdccccbcccdccbcdcddcccccddcbcdccccbccdbcddddcccdbcccdcbcccdccccccccccdccccdcddcccccccccccccccccdcdccdcccdccccccdddccdccddccccccccccdcccdccccdcccdccccccccccddcccccccdcccccddcccccbcdbbcccccccccdbbccccccdccccdccdcccccccdcccdcccbcccccbccccccdccdcccbddcccccbccccccccccccbccccccccccccddcdcccccccccccddcccdbcccccccccccdccccccccccccccccbcccccccccccccccbbccccdddccddcbccccdccccdcbcccccdccccbbcbccdccccbbbccbccbcddbccdcccbcdccddcccdccdbdccbbccddcdcccccddcccccbccccccccdcdcdccddccdcccbcccccdccbbbdccccbcdccccbccbcbccddccbdccbbbccdbccccbbccccbbcccddccbdccccccbccccccdbdcccbdcdbbbbdccbccccdccbbdccccccdccccdccccbcccccccddcccccedcbdbbdcdbddccccdccccbcbccddebbcccbbeccccddcacccdcccdbdbbdecacdacdcbdccagbcdccbecccccaacdbacbdcbcccddbcdccbdecccccbbcbcbbaccddcccbadcbcecbcbccdedabceaddbbcddcccbccfcaabbcbbccbbcbaccdccabcccbccbbcecfcbcccbcbchcdbccbccacdcdcccdbbcccccdfdbcdbccccccbceebcccbcbedcacdddcbbbcaccbacbabedbdccccbcccbcccccccccdcdcccccccccccbccbdcccbcccccccccbcbccccccbcbbccccccbccdccbccbccbcbcccccccbcbccbccccbbccbbdbccbcdbcccccbccccccccccccccacccbccbcbcccccdbbcbcbccccbdcccbbcdccccccbccbcdccccbccccccccccbcccbcbcbccbbbcbdcccbcdccccccbcccccdbccccccbbcccccdccccbcdeafaebeeccecgcba`ccedbcfehdbfcbbc`cgacebcbaddfbdd_bafbaccdccbedcccbdedecbcbcceecddaeba`fdddfdcfa`af`ecb`ed_bcccbacd`bfcccag`bced_dcdeaabefcbbccbgccdcdc_bcdeeccbbedddecb`ec`caabbdeccde``ffafedddcebeecbgbefaccdddd`bbfdcaedddecdbdegaeeddb_ddbcagfbabacf_fccacccccccdddcdcdcccccddccccccccdcddcccccddccccdccccccdcccccdccdcdcdccdcccdddcdccccddcccccddccdceccdddccdccdcccecccdcccdccdcdcdccdcccbccddccdcccccdcdcdccccccbccbccccdcccbcddccbccddcccbcdcccccccdccccccccdcdcccccccbcccccccccddcbcccdccccccccccddcccebccccbddcccdcbdcccccebcddcdcecdccebdecdcebbbcccdcbbbdccbddcccbdbdbcdedbcbbccbcebdcbdbdbdbccdfccdbcdcdcbbdcccbabbccdccccddccdcacbccdcdbddbcdcbdcbcaccbcecbdcdcdcbcbcbccdceccccccccbccbbcdeccdbccdccdcdbccdccdcddc`ccddccbdccdcddedbdcdcbccbbbdccccccbccbbbbccccccebebbccdbcdcbddccccdcccccbcdbccccdccccccccbcccccdbbcccccbccbccdcccccbccccdcccccbcbccccbbcccccbccccbcccdccdbcccccbcddccccccbccecbbcdbccbbcdcccccccccdbcbdcccbcccdcccccccbccbbbcccccdcdcbddcbdcccccbcccccccccccccdccccccbbccccccccccbcbccdcccccbccbcccbccbbbcccdccbccccbcdbccdcccdccdccccccccccccccdcccccccdccbcdcbcccccccccdccccdccdccccccbcccdcccddddccccccdbdccccccbccccbcbddcdccccccdccdcdccbcbccdccccccdbccdcccdcbccdccbcccbbbcccbcdcbbbccdcccccbcdcccbccbcdbdccccdccddcccccccbdccdbcccccccdcdccccccccdcbcddcddbdccbccccccccccdbcccccdcbccbfebZa]j`_gbj__^g]\fe\^cbicagmgjja_`ecceg\fXkagbf]VVf^_ihfbed`djdY`dhk_g^^gdne_[_`jckjff[\eeha\abk\h_d`\]Xkgrkdedbkledd[cbgeaVhjdbdaeWgcYW^g\ecej_eeedp`i\g[defhadb^e\dg`bfe_c^]jic`jdbhcff]fec\]dbd]dal]^ikddhfaeag^[ak^h^ebindd]heZ_ahe`oig^eafcdbfbleZk_eee\c^g`ica_af^^bcbhgeja[eggeZ]V^a[Ze[sg[b`^e[e`QbYeh_hgredehSbm_eY`YmdhXjWem__addabhfeka^\aah_eY[kxd^geeba]b\b]gghfY^b`b^hgdoijboh[fd`^ZZmbffj\_lqcfXgbjrajpgndj_dgfflfhSiZ[[ahd`dbjjY`Zkg\ccbdb\cbihimZacghg_ic_]abQaib]pdfna`X^cecee^bcaScgbnminedhbfb`dZ`daec`dYVaeddccacdbccddbccdbcccecddcdbcdcccccdddcdcccdcccddccbcccdcbbcbcddbddcccdcbccddcccadeccbccbbcbadcbcbceccdecccebbdbdcbbbcdcddddddbccbcdcbccceccccccdbcdedcdccdcdcccccecdccbcbbccacdbdccddddccdcdccecccdccdbdbccbecddbcdcccdcccecccbacdcccbcccdbbadccbdaccddbdccedcccdccebdbdbccbcdcfbdbcacceddbdddabdedfeddddcdefccacccbcabcdcabbbdaeccdddbdddaccdbdecbfecddddcbbbecebdadccabcdceccdbcbddeccdccdccbedeecbceeecebcbcbdfcdccfcdbccecdbcbeccdbd`ceccbbbeedecbdbdcabbcecdecdbbddcacbbcdccdfccdddececccddbccdbbgbcfcd`cdbceacccebcccbcfao]dcp_YZcfgbShZn__P`cV[rk_i`eTgXnekeUcl]ddeceg_^bmjgX`edjk`]c_\\]ghbf_kchpifZbj\]eQcebdZ]keXl]foe^b]]lk]ccdYe`W^`hf\kfX`XZc^gmhbUv\iehf`j[][c]hbabX_N[_dqh^de[bg\ZYa^cfga]_Y^a[h`_lgbMiaVoWg[g[][g`lchbmbcfgmdmoe_]lePnqabMcbdbfgkecbaerbkc`kjddcfgl]kjch]jqmfjXhe`a_g`jV`lm`nj\\__p]df`bYYhbe_fc]ldb_fj\Xbafaa]cXaf^ijvbddnea]Sagj^[cgdacfabZd^Zeg\dbe]Yi]jjh[de^cgghdZgc_m`fbeojccha^ae_]ebgcZid`c]g\d]gh_Wabbiofc]p]ag`geinbg^[\Y_nfaiaag]akgdkbeiZ^jjlbWd^fcm[Tcbcd\jadgc`fdjqd__coljc_jdb^am]_Yc]a`ia`ahdddhbmchngccY_Wdedbccccccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccdcccccccccbccccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccccccccdccccccccdcccddcdcdccccccdccccdcccccccdcddccccccccccccdccdcccccccdddccccccccddccdcccccccddddcdccccddcdccccccdcdccccdcccccccddccccccdcccccccdccddcdcccccdccccdccdcbcccdcccdcbcdceccddccdccbccdcdcccccccccccccccdcccccccccdccbcdccccccddccccddcdcccccccccddccdddcccccccccdccbcbccccccccbcccddbdcaccddbccbcccccdcddccccdccccbccbcfcbcceccccccccdccccccbdcdbccbbccccdcccccbccbcdbbccddcccccccdcdcdcccdbccccbcccccccccdcdcdbccdccbbcccbcbcddddcccbbcdddbcdbdccdccddcbcddbcbcedcccbcdbbcdccdcddadccccccdcdbccccdcbcbbcbbccdbdccbcbccbcbccccbbc\df]\j`oj]`eafebjchgff`dm]ipfd^eW]becdhc\f__`aiib][_ee_^d^c_^beec_]fiegeefa`dXb[`bgd\bcfcbaaa[_gdidah[k`dceg^hagdda^^]cehd]^]eee_akiceg^fgbda\hbehigh\c_ffg`acb\h]bgd\k_a\Z^d_`fhcgfaebeadadcddifge_Zdk]agcndcaf`abjglf[adfecj`edeb^kfcggfa]dfbacbediedca\cf_fgcdccbcdcdedbacbcddccbddcccgcfccadcccabdbccdaccbbcbebddccddacdbbbfcbbdcccccacadcbdebcdcccccdcaccccccddbdbdbcdcebaadcbfccbdcddfdcbbcbcdbaeddadcbccdddbdcccbadbdbccdcdedcbbcccccfbbdebcddafccdcbdcdcbcbdbcceacbb`dccbbccdcdcbbdbcdcecfebbcdbbccccccdcbccbdccccdbcbcd`fcfd`bfbace`fdaadgi`a^beacgf```bffbeadebb`hhaed`dccceebc`fbbbef`cgadae`dbdfbgf`defbecadkfaacegjfaaef_eefb_b`hefbga`caiebcb`bbebe`dagc^bcbbfgbda_^hagbfeb_bahfabacaddda_ecdc`fbcbaibb`cfcbf`bbcbhfacbadbicdfc`abebedceadbbfjcbbbebabdbag^adb_bacdaefcebcaa`a`abbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccddcccccccdccccccccccdcccccccccccccccccbccccccccccccccccccccccccccccccccccdccccdcccccccccccbccdcccccccdcccccccccccdccccccccccccccccccccccccccccccbdcccccccccccccccccccccccdcccccccccccccccccccccdccccccccccccccccbdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccdcccccccccccccccccccccccccccccccdcccccdccccccccccccdccccccccccccccccccccccdcccccdcccccccdccccccccccccccccccccccccccccccccccccdccccccccccccdcccccccdcccccccccccccccccccccccccccccccccdcccccccccccdccccccccccccccccccccdcdccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbdccbdccdcbdcccccbccccdcccccbcccccdbcccccccbccbcccdcbcccbcdbdbdcbcccccccccccdbcccccccdccccbcccccccbccdddcccccddccdcccccccbcdccccdbcccccccbcdbccddcccccccccddcdccdddbbcbcddcdccddcccccccbdcbdcccbccdbcddcccccccccccdcdcccdcdccceccccccccccbcccccccccccccccddccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccbbcdceedbccccdcdcddccdfcedbbebcdbbdbdbcbbddcddcc`bcedcbadcdecbecbbdddccbdbdcdeccccddbcbeeecceeddfdeebecdcdccdbdcecbdecbddeddbdceaccecdcdc`dcdedbdbdfccdcbbcbeceecccededbeeedcdddbcdcbecedccbddddeecbcdccccde`cacbbcbdddbfbcaebedccadadabdddedceececdbdbedbcdcdddccdcdccddcddbcddddcccdbcddcddddcdcdccdcccdcdccccbddcdcdbccddcccdccddddcdcccccdcdedccddcddcdcdeecddccccddddcdcdcbdccddccdcdcdccdcdcccdcddcccccddccccccdcccccbccdccddcdccdddddccbccdccdcdbdcecdddcdddccddcdecdcdccdbdcdccbccddccdcdccdcccdcccddcccddcccdcccdccdccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccccbccccdcccdccbcccccccccccdcccdcccccccccdccddcccccccdccccccccccccccccccccccccdccccccccccccccccccccdccccccbbcccccccdcccbcccbdcccdccdccdcccbcccccccccccccdccccccccccccccccccccccccccdcdcbcccccbccccccccccccccccccccccccccdcccdcccccccccccccbccccccccccccdcccccefgfeaa[difa[bbj[d^acghf`g`]edebiilaeeegk]dbc`gaiedcb^jcd]bcddonf^`dlgfa`ehb^def^`bfefcbj^g^\fib\bebefdj[de`be``ibfbgfdec_]kihVcdg_f_bd`ZdchefeaZc^fgfec_[bf\Xbgfih`]`^gbac\d]c\fhadhhc``eqgbddeW`ci_behgbdcni\dg`dffabd^_bcbci`]hj`bcdcbfhbYjf_^aYb`]hcdhb]ikgdccccccccccccccccccbcccccccccccccccccccccccdcccbccccccccccccccccccccccccccccccccccccccccbccccccccccccccccccccccccccccccccccccccccccccbbccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccdcccccccccccdc]`fdi[_caaei^ed_ceag]hccglfdaem\bija_le]cbgie^dfglb_a[]obafbcahaiegejbbhceijZdfjg_[higi[j``cd`fcaacgicbaef^bc]bf]cge_ec_d[^f]ge`eddje^dd`b`fb]`j]cfbodceda[h`^bc`eacjmggg^ajaeg`]bab^agd]_df`ce^fc`cnjajfbaeggcc`klZca`fc_abid^_\dah\fhcblc^dhacbacf_b_afhccdbecccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccbdcccccccccccccccccccccbcccccccccccccccccccccdbccddccccccccccccccccccdcccdccdcccccccccccccdccccccccccccccccccccdccccccccccdccccccccccccccccccccccccccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcdccccbdcccdcccccccccccdcccccccccccccccccdcccccccbcdcccccccccccccccccccccccccccccccccccccbccdccbccccbccccdcccccccccccccccccccccccccccdcdcccccbcccbccccccccbcbdccccccdcccccccdcccccccccccccccccccbcccccccccdcccccdcccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccddcdccccccccddcdddccccccdddccdcddccccccdcdcdcccdcccdccccccdccccdcccddcdcccccccddcbccdccccccccccccdddcdccccdcdcccccdddccccccdcccccccccddccdcccccdccccdccccdccccdccdcdccddccdccccccccdcdccdddcccccddcccccccccccccccdccccdcccccddccccdcdcccdccccccdccddccccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccbdcccccccdccdcccccdccccccbccccccccccccccccccecccccccccdccccccccccddccccdccccccccccccccccccccccccccdccbcccccccccbccccccccccccccccccccccdccccccccccbdccccdcccccddcccbcccccccccccdcccccccccccccccccccccccccccccccccccccccccccdcccccdcccccccccdcccccccccccdcdccccccccdccccecccccccdcccdccdddcccccdcdccccddccccdccccccbccddcdddccccdccbcdcdccdcdddcccccddccccddccdcddcccdddccccccdcccccccccdddddcdcdcccccccdccdcccdcccccdcccccddcddccccdccbdccccdcbcccdcccccddcddcbdcdcccddccccccdcccccdccdcbdccccdeccccdcdccccccccdcddccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcdcdcccccccccddcdccdcdcccccdcdccdccccdccdccbcdcccccdccdcbdcccdccdcddccddcdcdccdcdccdccccdccccccdcddccccdcdcdddbdcccccccccccddcddccdddcccccccccdcccccbccccddccccccdcddccdcccdccdcdcccdccdcccdcccccdcccdddcccdddddcccdddcccdcccccdccbcddccdcdddcdcddccddccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccddccccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccdccccccccccdccccccccccccccccccccccdcccccccbccccdccccccccccdccccccbcccccccccddcccccccccccccccccccccccccccccccccccbcccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccccccccccccccccccdcccccccccbcccdccccbcbdbccccccccccccbcccccccccccccccccbccbbccccbbcccccccccccccccccdccccccbcdcccccccccccccccccccdcccccccccccccccccbcccccccccccbccccccccdcbcbcccccccccccccccccccccccccccccccccccdcccccccccccccccccccbcccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccdcdcccdcccdccdccccddcdddccdcccdccccccccccccccccccccccdcccccddccccccdcdddcdccdccdccddccdcccccccdccdccccccdcccdccccccdcccccdccccccccdccccdcccccccccccdcdccccdcddccccccccccccccbccccdcdccddcccccccddcccccccccdccdccccdccccccccccccccccdcddcccdcccccccdcccccccccbccceacdcbcdcccaddccdceccddcdcccdddcdbecdcdccdcbbbdccbdcdbdcdcddcdcdbdbbdccddcccbccdcdcccccccbfdccccddccacdddeccdcccddcdcddccccccbcdccdbddcdedecdcdcceceddcccccdcdcdccbbcddcddedbcbcbcddccccbddbdcccdbddecbddcccddcbcdecccbcdcddcdccccccccdcbcdcdcddcdccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccdccccbccccccccccccccccccccccccbcccccccccccdcccccccbcccccccccccccccccccbcccccccccccccccccccccccccdcccccccccccccccccccccccccccccdcccccccccdccccccccccdcccdcccccccccccccccccdccccdcdccccccccccccccccccccbcccdcccccccdcccccccccccdccccccccccdccdcccccccccccccdcbcccccccdccccccccccccccccccddccdccbcdccccccccccdcccbcccccbcbcccccccccccccccccccdcccdbcdccccccdccccccccbccccccccccccbccdbccccdcccdcdddcccdccccdcccccccbccccccccbccccccccccdccdcccdcdccccccccdcccdccccccdccdddccdccccccccbcddcccccbccccdccccccdcccccccccccbcdccdbccccccccccccdccccccccccccccccccccbcccccccccccccccccccccccccccccccdcccccccccccccccccccdcccccccccccccccccccccccccccccccccbcccccccccccccccccccccccccccccccccccdcccccccbccccccccdcccccccccccccccccccccccbcccccccccccccccccccccccbccccccccccccccccccccccccbccccccccccccccccccccccccccdccbccccccccccccccccccccbcccccdcccccccccccccccccccccbcccccddccccccccccccccccccccccccccccccccccdccccbcccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccbcccccccbccccccccbccccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbccccccccccccccccccccccccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbccccccccccccccccccccccccccbccccbcccccccccccbcccbccccccccccccccccccccccccccccbcccccccccccccccccccccccccccccccccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccceZcchbgdbib`a]abcb_^gjblb^`ma\ao\__f_b_[bjccbaca]UchXgga_ifamdanf]el]efcbc]^cZdfd^``b\]phcchbcf`fbe\fae^dkjmcXaf^kgaiga`hh\bc`j`Whaeecd^ghbdeecY^bhe\i[c`nca\]bdd^gncgeblgbee]_be_jgfk^fb^Za\\df^a^aiadce`[igkbj\gidaga[dbb`kgbclek_p]ddchZh]ice\ade`dglgYfeRgi_ecdceecccddecdbdebbcbdbcedeecdddcbcddeccbdbccddecdbcddcdcedddccccbdeecccabcbccbdbdcdddccbddcdcccdcdccdccccddbbddeccccebebdfcceedcdcbbdcacbdcaddceecbbccdccbbbcdcdcddaceccccccdbccdccdccddddbbdccfdccbdcddddeccbddbcfcbddgccbcddeecbccdbecbfcccdbeedccdcbdccccecdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccdccccccccccccccccccccccccccccccccccccccccccccddcccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccdccccdccccccccccddcddcdcdbcccdcdccccccccccccdcccccccccccccdccccdccbcccdccccdddcccccdcdddccccccccdccdcccdcccdccccccdcccccccbccccdcccddccccbcbddddccccccdcccbcbcdcccccdccccdccdccdccccccccccccccccccccdbccccccccbcccdcccccdcddcdcccccccccccccccccccdccccccccdccccdcccccccdcccdcccccccdcccccccccccbcdccdcccccccccdcbdcdccddcccccdcccccccccccddcdcdcbccbccdcccccccccccccccdccccccccdcccdccccccbccdccccdccccbcccccccdccdccccccccccdccdcccccccccccccdcdcdbcccdcccccdcdbcccccccccccccccdccccbcbccdccbcccccbdccccccccdbdbdcbddcdccbdbccbdccccdccccccddccdcccccccddccccddcdccccccccdcddccbcdcccccbccccbcbcceccddcdcccddcdccdcccddccddccddccdcccccccdcccbcccdcddcdcccccccdccdddccaccbcccccdccccdccdcccccdcccccdcccccbdcccdccbcdcdccbdbccdcbcdddcdcccbcccddcdcdccccccdcbccdcccdcccccccdccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbccccccbdcccccccccccccdccccbccccdccccccccbccdcccccccccdcccdcccccdcccccdcdccccccccccdcccccccccccdccdccccccccddccccdcccccccccccccccccccccccccccdccccccccccbcccccdccccccccccccccccccdcccccccccccccccccccccccccccccbcccccddcccdcccccccccdddccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcdcccccccccccccccccccccccbcccccccccccccccccccccccccccccccccccccdccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccdccccccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccccccccccccccccccbcccccbbbcccccccbdcccccccccdccccbccccccccccccccccccccccccccccccccccccbccccccccccdcccccbcccccccccccbccccccccccccccccccccccbcccccdccccccccccccccccccccccccbccccccccccccccccccccbccccccccccccccccccccccccccccccccccdccdccccccddccddcdcedddbedddcdccccbedcbbddccecdbdcdcccddececddddccbcdbcdbceaedecdecdcbbeadbccccecddcccccddbccdddedcdcbbddccdaedfbdccbdedcbcbccbceddbbacdcddcdcdccccabbbcdddecccccdcdddbcebadcbeccbbcdedefcbddcdcdecdcbbebccbcbbcbccbccccdbeccdcbcecddbddddcdcecdbcedcbebddccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccdcdcddcccdccdcccccdcccdddccccdbcccdccccdccdccddddddcdddccccccdcdccccdcccdcdcccdcdcdcdcdcbccdcccccbdccccdcccccdcccccbddddcccccccccccdcccccdccdccccccccdccdccbccccdccccdcdccdcbcccccddcccdcdccccccccdcdddccccccccdcccccdcccdcccdcccccdccddcccccccccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccccdcccccccccbccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccdcccccbcccccbcccccccdbccdcccccccdcdccccdccdcbccdcccdcdccccccbccccccccccbcbbccdcccccdcccddccdbccdcdccccccccddccccdccdcccccccccccdddccddccbccdedccccccbcdcbccdcdcdcccdcccdbbcbcdbcdccdcdccdcccccccdcccbccddcccbbbccccdcdcbccdcdccccccccdccccbccccbccccdccdcdccccbccdcccccccccccdccccccccccccccccccccccdcccccccccccccdcbcdbccccccccccccccccccccccccccccccccccccccccccdcccccccccccbccdcccdcccccddccccccccccccccccccccdccccbdcccdccccccccccccbcccccdccccccccccccdcccdcccccccccddccccccccdcbcbcdcccbccccccccbdccccdccccccccccccccccccccfbccdcccbbcccccdcbcccbcccccccccccccccbdccccbccccccccbccccccbccbcccdcccccdccccdccccbcbcbcbcbcccbbccbcccccccbcdccbcbccccddcbccccccdbcccccccccccccbccbecccccccccccbcbdcdcbcbdcccdccccbbdccddccccccccbccceccccdcbcbcccccccccccbcccccdcccccbccccccccbccccccbdccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccbdcddcccccccccdccccccccccccccdccccccccdcccccddcbbccccccccddcccccccddccdccccccccccccbdcdddcccccccbccccbdccccccdccccccccccccbccccccccccccdcccdcccdccccccbcccbcbcccccbccccccccccccdcdcccccccccdcccccccccccccccccccccccccccccccccccccccccbcdccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccccccccdccccccccccccccccccccccccccccccccccccccccccccccccbccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccdcbdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccccccccccccdcdcccccccccccccccccccccccccccccccdccccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccdccccccccccdcccccccccccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccdcccccdcccdcccdccbcccccccccccccccdccccccbccccccdccccdcccdcddccccdcbccccccccccccccccccdccccccdcccdcccccccccdccccccccccccccccccccccdcdcdcccdcccccccccdccccccdccccccccccccccccccccdcccccccccbccccccccccccccccccccccdcccccdccccccccccccccccccccccdccccccccccccccccdcccccccccbdcdbcceccbcdcbdcdccbccccccdccbcbccbccdeccdcddccccccccecccccccdcccbdccebcbcddcdccbbddccbcccdccccccccbccdcbcdccccccdcccccbcdccdbdddccbccccdccccdcdccdccccecdccccccccecccccccbcdccccdccbdcbccdcdccdcbcccdccccccdccccccdccbcdcdcccbbdcdccccbdbdccddccccddbd]ekmg\``]_]_cY\^d^^mfe]cgjk\_ng]`d^b`ckgidghf__dki`lhhgdcfap^fdaPe[ad[jfWbedid`mijegb`_Y`dg^dYa^ffbi_cdbZid]e^fceeo_^hc_fWahde\baiadbhYjc`ii_gaZaa^le`dij_bj`d_a^nd\d]_ia`dae]beef\l^debbh`befjgeimhf]f__ggdcgf`eb]fcface`bk^agadYefd\`fdpcecc^becafk`aXibZ_c`cdddcccdccccccccbdcdcddccccdccceccdccccdcdbcccdccccddddbccdccdbccbccbcdccccccccccccccccdcdcccddcccccccdcddccccccccccccdddcbcccccbcbcccccdbdccbccdccccccbdcccccdccccdcddcddcbcbbdcdcccdcccdcccceccdcddbcdcddcdcccccccdccdcdcdcccbdcccccccccdcdcccdcdcdcbcddccccccccccccccccdcccccccccccccdcccccdccdcccccccccccccccdcccccccccccccdccccdcccccccccccdccccccccccccdcccccdcccccccccccccdcdcdccccccccccccccccdcccccccdccccccccccccccccccccccccdccccccccccccccccccccccccccccccdcccccbdccccccccdccccccccccccccccccdccccdcccccbcccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbceebadce`dbfdbdbdbcbdbcfeefeccdddbbbcdfbdccebccddbddfbbbdcedcedccfddbcdccbdbcededbdhccedbfbcbbccbeceabdcdadfddhcbecddcfbddbdedbdabfadccbcebdbdbdfbdcbddec`dbcdeebbecececdcadbcfcccabcccdddddddbcdddcddbdbdddf`facbfddeaccd_ddgeedccccdcafecbdegcccd^cbeeddecde`cccccccccccccccccccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdddbccdedcccccdccdceccbdddcecdebccddbccddccdcdcccccccdbabcdeedddcbdcddccdbccddcdbcdcdccceccdccccdcdcddcebdcdcdcbdcedecddddcddccefbdddeccdcdcccdceededddcbdbdccecdccccbedccdccbddceceddccbddcccddcdccbcdbbccccddccbddcccbddccdddcddbcddddcccbccdcccccbdaddcdccccaccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccdccccccccccccccccccdcccccccccccccccccccccccccccccccccccbcddcdccccccccdccccccccccccccccccccccccccccccccddccccdbcccccccccccccbccccccccccccdcbccccccccbcccdcdccccccccccccccccccccccccccccbcccccccccbcdccccbdcccccccccccccccccccccdccbcccccccccccccccccdccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbdcddcbcdccbccccccccccddccccdddcddccddccccccdcdccdddcbccdccccccccbccccbcbccccbccccccdcbddcddcccdbcccccdbdcdbccbdddbbccdcccccdccccccccddccccccbccccccdcccccbbccdccbdcddcdcccccbcbccbcccccccbcdcccccccccddddcccccdcdcccccdcdbcdcdccccdbcdcdcdccccccccccbdccccdcdbdbZa]b^ed`^jef`d\c[`i[^bai^aVmZWbgXc_]fi`ig`nc[cdjsWp^ZdbbnmicdXb`i^e]hgacf^\dbdaaXXYigbd`_aZfoic]ke`ahbgc\cblagacdfUd^fi^eg]g]_`ccicbhdhdgZ_aafcbhjhjd\adae]`djniaiabajtffck\^lkOebhcb`hbf\b]cni\cjYibc\pk`jabehgi_ggeckf\]kf_dbic_[he`bb`fecdedkafed^caghgj`[bccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccheacch`ed_[jhbad``fa`b_gdceb`ccaidbdfhedlcad^bg[fdgc`fdcdZdddcaiecgif__eceeddf_b_bjacd_d^ccad_ifdf^`d_f`_fg^b^\jh[cacafggccc_c_hg_ej^da^_bgba^cggn\dl]ia`jicZbd^dia`cc_e^^dcf`dfkhccb`a]ffcbdncbea`g_^`beddabageifbgf]dcgdg^fmde^\ccbhe_jab\dfdfgdecb`fggodel_ddccccccccccdcccccccccdccccdcdccccdccdccccdcdccccccdccccccccccccccccccddcdccdccccccccdcccccccdccccccccccccccbddcccccccdcccccccddcccdccccccccccccccccdcccccccccccccddccccdcdcdccccccccccdccccccccdcccccbdccdccccccccccccccccccccdcccccdddccccccccccdccccccccccddccccccbccccdcccccdccbccccccccccdccccccdcccbcccccdccbcccccbcccccccbccccccccccdccccbcbccccccccccdccccccbcbcccccbdcccdcccdccccbcbccccccdbcccdcccccbcccbcdcccccdccdccccccccccccddcbcccccccdcccbccbcccccccccccdccccccccccccdcccbcdccbcccccccccccccccbcbcccccccddccccbccbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcdccccccccccccddccdcccccccccccccccccdccccdccccccccccccccccccccccccccccccccccddcccccccccccdddccccccdccdcccdccccdcccccccdcccccccccccccdccdccccddcccccccccccccccccdcdcccdccdccccccccdcccdcccccccccccccccccccdcccdddcccdccccdccccccdcdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccddbdacbdcccddccedcdcbcbdbc`dbdccccaeddcbcedbbfbbbddcddecabdcbccccfddbdddddccdcdcbbeccbdbbccdccdbeedcbccdbbcdcdcebcdbbcccbeecdbcabdcccbdccccceeccabcccddbeebecdcddccdbbccdcccacacecdecddccbbbcddccccddbcdcdbcddfcccddbcccbdbbcddddbbbdccdde`dcaddcddcacdfecccdccbbfe^_bbkad_kch_mifbadg]dZh\^`f^]c_ageedbe]f`cj^ead]hiahe`_f]bh[cch]fdf]cjeditfe[dke^`^cfig`bdhhamol_cflha`c^`dcW^ada_fa[jeag`X_bb^c^_d]ne`iYw_`_`Oabgec[fi[gafdjgcliqYj`^iaagblcg^`l^fi^l]hbabddbe]afhagcnfd`mk`bdhdfehgchi_arfhcgicgadecc^i_b_clac\[cfk`a_gabd^bdZ_de^dcbg[ckb_dedg^bfbmf[jagbfdagaalb`ah]aa`ebe[agb[h[b]eheZlhd[j^nY^d\^`fZ[_f`aigei\begeagfjcbg^`hddccmfdeahf[hbbedf__bgZ^becm_`bcY`\daj_^_bd_oq_ef_fec_a[db`i_c`gglag]_e`cZaakcaW\cadhbZdabaghjhd`hb`ei`__c`had\^`e[g`g]_Zhkacejigb^j\Zd_ljaeadehfbbgd_elcak\hb__\iababZigd`ZefffYjlb\hcbijZb`diQ^\agZcamhc]g_bd^aphhcpb_abWaaf\dh_``f_e]fo[]acdfYnd\ahcaabbd\anhfbii`X^gf`WeVf`hdbdf[febghh`a^gahfljkdapb]mfeWcbk`dajddht_fdZbn`hWbm]lab]ei]gXji`boa^XUf^fcdgcd`e]gfj^_djdd\[b]bh\bdmnblh_lnbc`ecc^``ciffcdb^g]akfhccf`cieb_c_egonQodcZdk_Zafak\ec]beabe_ef^hcYflbZegah_me[pjcdje_g_ffba]kjkcjg_`ebehee^c\^ee_eh^fYcbhg^gh`_``doj^c^bi^^__^fTe`ee]ka_hghacnY\_e\dmfc^bab[^bljcgolldc[jfac`^iek_gfaZbgfcai^Y_iaieW[edjd^cib_]`Wiaggbbf[f`ab_^eV]^e]gZbjWkcjrhZadagd]i^jeboZhjebbg]dbbf]aajcio_^modaa[hhuaddak\acdihj_ehXe_dcbdia[kZf^TodbeYk`mdrWfVdmZ^hkabnXbbgfa`^fnmjag^V\^ja[]aYbcg_iegkUi^[[g_lgh^f_c`V\^gf^`le\Wfe`Yhmfha`bhX]\Zpkacgkrh\ig_oa]cccgabiV[e_hgfaX_a\d[dl\a`^g`mgZd`oak_^n]e_`eb[\`d^ag\ThahZ[bj[ee^qg`b\UbfcenejdXdUSicjhbmc^djc`ccegadfece`faedbcbc`dehdedc^beddefbfeedb`ffdbbegeegg`geb`g^fagcab`i``fgbab]bbd_ahkaccd^ccbbecafachb_gfcfaecebeeddfcabf`fgbgebfae`bceeacb`ab_gdffced_``cccd__e^cebaefacfadgbhdge`cci`gdbee`fa^ebecgfdbcb`gcabbecfdbf_cdddc^d_cflaic`bfabaafib`ce]a_d_ddeaahc_chbagbchcagcddcbccdbdcbedbcdbcecdcccbddcbcdbeddccddeccddbcdbbccdbbcbccccbccccddcbcdcbecccccbdcdddddabbdcdcbbbccbedecbcddedfdcdecbdbccabbaddddcbdcbddcccbcbcceccbbbabecddcdcbcbdcbcdecccebececedbdbdaccecbbbcccbddccccacdceebdcbbcbbdeccbbddbdacccdbccadcacdcdbbdccdccddccdbe^bdhldiV_fg\gnpnkfe\wbbcicZccZieVbch`dWih``]fWea[\fgRfpeSZkg`c[idfb_kee_\_ecjgi\e`c^_]jikggbdfbhb_]fac`iZe\b_l^oaceekn`afS`ghh^bZUZlbR_gcmhclgi`bd^knhef[dihc[ejegWkgghfo\[]ip`_gi`UofaidjV^dmnch`Xch\il`ceddi\`ccbf_h_caj]Recc^dbgeg_KgCa]cdaWfiddffem`_]]lfYZskmehb`h^cfe`X_cqfaiaddgehfce]cd_lfhee^ggZ_ajgckV`g`akjWcZejfl^_c]k^ac_j^Yaeecef`elgaf`d`dge^aaZ_ckZe]he_i^]_bddg]jffd_hdgXf`legcah\]dfdgdiZed_kg`acdcaeWg]c]dgibcZd\gfb__\agcccjlRfaZccnki_^d`kefdabbdhbXjenmkbd]gdbbaciee^dhfjdqfi`lcbWUe_fVba^fo\aid]h^bZqbfYfddbaaabb`afacdec``de``accfde`e_fe`feabdcdeaebbgeeedahe_haeecd_bbe`dbdecbfcfadecaf`dccaa^afdacbafbddacbdac^ccccac`bcdd`fbc^ccdde`eca^bcafadbbacedddcbacbfdefdbbdhbdacccdbab`e_bedbadeaccdebeadceabbbedbecacaeecadedabddjdgbace`aedhaceceadf``dcdaddecaidbadb`bcb\^f`hb_U`_dgiaidXg][hWf^^fZep`dZfbXhj]hcegkcec^ghjj\fb_\_dV]\]ffedfcneci`aeigf\b^eacbiaZ\b`afWdghbi`]cghdfapea\ag_f^gg]bddg[a]_gc`eji_d^^\c]Zkcd]a`e`gg]j^`lclff^WeW_`Zkdehebf]_c\gbfXaf]]henghYbecgh\ijboi_g[a^a`^nddmk`e^\]fi\gb_gajb_pc`gjadnagggdcljb[`i]]Yf`dbbcYd[h^]cN]hdgadh`nWfdvbfk]bg_bU_\ej^_\Z[mmbedfghh\bW^oj[ehedl`WfbdehjcY_^fhkeh_kZchegXb^Yjh[S_fhdf`Xd[f]l[`ggc_cebcuocakjqi_k_bda^pdd^balZ`cgYga`o^dhjhca]e_jc_e\kbfe\`ic`Zc[]hbbXaahaj_gfpg[ofhdbYbcbYpdd\maacj`daknVWYko_hl`o_^r_bac[fneadjecfd`ibf[h`V^nbbejf_gdpb``cl``_]f^cmhde`cmfgibejfa\a_hh_egi]_dgld^hccjdabcadge`ahada`dbiag`g]]a^eaddbde^__cff^d^deh^gg[kfcdee`ljeffafbec\baeaabbdgdja_ecbfgedhba_ddfb``^\be_ke_fcdeech_i`blcbbd[bf[jqicddgdgb`Zcdaaddcdfd^^d_^cllaahlk`cafcje`gbbdcefg_bkfdfaccfhbacbaeccc`da^eeeccc`dccbaeabbabdbdfcdcddebde`bcgdcfbcedcdbb`cdceddcdafbbddabbccecdcaea`dbacc_dcadadda`abade`ecbcde`bcdccbdac`eedbccceeedccccceaagbdcacdebdbecefdbecbd`_bdf`gcf_bcdcabac^bcdbedebbceebcebbcbbcfcbdecddfbcb`bddbdfcbae`adeccbcdbbcdbddcededcaaeeeab_cabcbccbeabcXj`bc]i]e`]jhY\[`aq]_lhddmihgfajahbdf_o]hle]]\ed^baa\X\[`[babcbpaiY]X^facboca`]gYc^_^i^qkYh`^`cdbe[mfjbhckbch]`k^`li[ddg`nW\enggeia[`edlkfda]lZkcff_npdkib]leY]^`ed_egra^[jea`cla]adUmWahb`qj]\d]mpekhdahSaac\fj]gii^_hpffTZb[j^ZZhe]sf`eaj\bgj^`en[]Xgcjkdh`cc`ccbcbbced_dedefbdfbaccabdcccdedaeecdcfdbbcacbcdagceecbbcdcbdcc`cfdcbacedeedcdaeccdecdbddb`dccabeadcbhbdbdcdddabbfdaedbeddcedcebbfaddfabdeddccbdccaadc`bddecdebceeebabbdebceeeedfcfdcbbgdbcddecbbbcdecdcebcbb`bacfedbbddcbebceddbebcdcccfcebbdcdddb_ebbeeccecbdcd[cgZpa\ie^ebekak_bb^cgob^dckefcR]`lgZk\dbh`jabc]]cXdjdhjac]cdflej^`_cgcd_fe\fdikrddmfdemhefadb`c^_]]egek`dZb`\cjhWcZdge`bc_cgajef]]ifa`dchd][]ecfrc`bb\fhejedc^`\ccil^bajdhZelb`]e^d`ccfUjfg\a_Z_lc_egX`cafhcdkWaeWk\f]c]l`gYbc[\ecfab`ehe\`ngahegYeh`acn`fk_ffhbbcccbbcccccbcbccccbcccccbccbcdbbdcdcbdccccbddccccccbcbccccbcccbccccbccdddbcdccccccddbbcccbccbcbcdcccccbcbccbcbccccbdccccbdcdcccbcdcccccdcccbccbcbdccbbbeccccbcccbbcbdcbcccbcccbcbcddbcdccccbdcccccccccbcccbccccccccbccccccbcbccdcbcccdcddcccdccbcdbccdcccdbcccb_WkNi[Tbdda^gm`gdb[d`Vbghc^obWa\m_ciVdiWbhZ[]MkdagehkNjfXhZi_SVke[Zbgbdcgmh^_if\`pV]^kRYUadjqojp_h]]f`e`kf_bhe]_T^`gheZgSbZUj[mdaiNnYnkhg^X\eb`\hrjpPekinghdieYk\\q\ida^gu]kX^mig\obcFf^ckfnk`dRZvejl]kegdocXgfR]f^]a[etZo]dYrjUl[hr`da[j`]ijebh_lhecauwbncncYegdcdaeabfcdc`fa_ddcadb`cebcfgbdeeefc_^bbbfbd^b`abbfehbdbehbbfgcaabcbd`baaceb``cfdddbd`cacd`dga`abh`bbeaaee^aadabbc_`cebbebcbafbcbede_bbdedfdc_cdceha`eefeebcadba_abcbeadddcec_bcafcd^ccabecbiccbbag`addc`dcbceadadb^b^gdifbb`cdcdcfdadcccdaecbfc`cbadbcdcbabcaffcccbccddbbccccccbcccdbcddcbcbcbcbccccbcccbadbcbdbcccccbbcbcddccccccccbcccbcbccbdccdbbcccccbcccbbbcbbccbcccbcccbcdcbdbdcdbcdccccccbbcccccccdbcccbccccbbccbacccbcbcbccbaaacddcbccecdbccbcddccbdcbdccccddbbbddccdccbdcdabcccccbcbcdccdcccdcccbbcccccccbbcdbccabcbccccdcdccccccccccdccecdddeccddcbdcccccccdcdccacbccbcdbcbccbcbdcccdcadcccdbcdbccdbadbcbbccccbccbcccbbcbccbcccdcccccbdbbcccedddbbcecdecddddccdcbecbcdccccdccbcbbbcdcaedccbbdbbcdccbbdbdbcdbdccddbdbcccccdbccccdccbbcbcbcbcccdbcdcddcabcdccdbbccdcbbccbcbbebbbcbcccccdeg\^e]`jY[kkmgim`^fo_gb_[YqSe`Zkshk`kY`jcji^cbbSgfjcZjhjhcZhbb^_ggh]gjeo]bbj\hf[b[ee\hcdddd^ddjf]rbgghjiiTfinamj[ldrcbj[[Z[banh^ipYea_[egehaacoj^k]]befgJcddjY_k]^^Xoekjg`al\dbf\epXdemee[_bYe^iZadjckjblbg\dgS^djZidi]cdaikoYk_U][\bNcikbaecjdf^^fwb]_`h^iiri[mlhggiadfkbk^l^```ie_eabg^bja]_c`_bf\bb]ghanf^ndabhic`jeh`Zgcegeedeg][c`fi]babibgca_de`aa`eahdeaXhe[cdigdhaa`cgb\f[ee_dgcaak^d_ce`b]aedaefcjdbcfickcbgfjfae^aceai_dcekbd^fgm`bgcdjlgcchcaededckhfi^_ddab_eb`[i`e^lcceeb`Zc`^[e^ao`ebeddf`b[laegae`ee^c`[ddb^dee^g`^hkbb_`hdb`ujmcnbn]b_hZZY_dcjjWajfep\pblhe[]`ifjWi]edfn_a\_c_dm`^adefZfed`hif^ed]na_g]o[g^]a]]vcjb\bdpkVdfeg`Z`e_ada`fflfSXdUjhk^lhib^bi_efh^d]`Vlddap^^_icSb`\ebf_[aVhVddooaf\\i^^mfcffjh^q[Z_fh`fnbn[]ga[e`]c`g^bgeeZejoedZ[Wl`ecca_h^bgmWdck_W^hd_]aav^tWgcggcejddgei``ik_ef^_bddeiaaci^aahkcacgp`bgid[ia_g^a]^dge^ebeafa]ahbkmi`g^e_c[YleXbc_d`alZj[Vd^_Zgmc`ij^gcf]eVn`[_omWZb^[ebmf`gae`^gWqdb[fahj]dReieZsZendh^_\_bYd^elj^i]W\_f^^`q`icWa^\icZejhakf[]obffce]eZ\`b`a_bWbiibhgX`ehd[gd_gec_g\][`gtl`_g[]^_\\a[WZjbddafd]Yd[a]fia^`hbadea\ccppc`bfg_fe[g\b]fgi`dgg`eflYg_aaac_a_nl[medhgbfc`dd`^j__djg]fi]a`\offgk\bkeabgc`]hgeba]haecefjbaddcgldkgZcdgcfd`hhe`^ife^ba_[gagb]a_`c[d[f\d`]df`f\a^bhd_akcng]eiccdgaa^fghgjf\\fh_a^fg`icf^dea_beei^]ef^h\]cedec^]eaX]e]``fbddf^^d\eZ`bl_`^g^cdccddccccdcdccccbddccbcccdcdccbddcccccdccdcccdccdcbcdcccdcccccccbcccdccdccccddccddcdcccccdccdccccccdcccbcdccccbcdcccbcdddccccdcccccbccccccbcdccccccddccccbcccdcccccddcdcddcccccccccdcdccdccdddcdcccccdcdccccdccddbbdcccdcccdcddeccdcccccccbccddccddcccccccccccceb`mcafs\falrfk_ka]cbhm\^bYgdXdhbdacuaZU\nZkGhg[omk[feil\`dk`fnnhjcdSmei^TcZlgqoep[]`^cq]cXaY|dV^gddqa_c{d`\^ccek^dafVmcfe`mhhqm`\U[gifdeaekq^kW\dp]}p`boh`ccjbhcsoSrS[kc^]LYg\bbaWdX\^Yabl^nkoTjemd_chX^j\nc`cYbe`RfuT`XX_Y^edb[]^pcZbf^_d]fe_ZdfYjmZdkOb\bm]Tf]l]c`jecfe`mfhdb\ci]bafbebb]fmdWcaWghh_mcghadpad^eY]_gfeaa]W[cif`p`g^c[bid]hkf_cc`bigad`_hgab_jchcfgfki`fdddgb`Vfdd^_i`]jbldbc^i]gi^kdba`jiYbf^eaMbbebbfdeafgeckg`a_^bac_fgeedj\dcaff`d_l`feegf\k`Yi`eh[cfg`c]_deb\rd^gaf[b]ieai`V__bidbhmfdadbaj`l\k_egk``fck`fb_dbjl_afdfcpeX_m^acdaj^\Uc]f`e_bjefihdiddee^dc\k_]daffeVg[b]^gkjhiZb^`bfchbj`Yaedl]beel^ee^ceZmgjb_eekblbf_\^[ad]f[dgbYb`k^Z`eff]h_bbegi^gWdhee]ackr]dbflcgVgiVbdae`iid_c_egh_ede`i]gd]d_as\i^af_^jia`bfgd^a]dghoh_jabb_ba_`]ejYgaei]ghfeeaa`eh]hf`[fel]l\eglfdaekZc`c]ijd`_[beVgddbemeafahd[ydgibbX^gc`a]ahie`fd\dgiqccdoWaffdc[`cbha^fgeeb`gkdfcbilaac]fcid^[bcjcd`Za\e[_icjldbYcrbci`f]jceclhc^_`foff`XaoeihfZb_Yg`__```bag_e]cdOgbddhgb`f^]a]_akaffi_dYeagX[dkge_g`ad`dekcg]c^ddfagfZm\fb`[hcc`_d`ddici_]dg[gda[ej\j`fcZ_d`eaceajhZbai^dfb`bbcif`Zaajbhea^accbgh_ka`e_ah\Zb_`j\ag_^f]ecf`a__becccef[`fgf_ajdgc^cccef``e]_iiegad_`b\akgbalifachbfgabhiZdaacd^hcfb`Zfebb^abc]]bfgdd[a]i\f`[cfgchih_gdc`e`m\bddcgkbdgbfccsd_^gaZ^[fdagi^^]`\ff^adgef`^cg\a^a_egc^bcihh[`ee`_eg`]e`Zbc_cdfj^dg\ccdccddcacdbdbdceccbdccccbbcdbbbcbbcccdccdcccccbbcccbacccaacbdaccbcccccccdcbbecbcdcbdcdcccbbccbccbdbcbccccbdecdddcddddcdddbccbbbcdccdcccdcbbecddddccbdcdaeccaddcdecdabbccbdbebccddcdccbcdccadcdcccbbbadccddcedcccdccdcbcabcebcccecebbcdccbccebddbecbaccdbbccbbcaafdc\ea`he^c]cmdb]cebb]fga]cbefddacaabcddb__af_a`a`eb`jeggb]ffabbcbegdelafcf^cebddddaabdc_beeeaf^cfg[gbfbgegdc\_c`dff_bfceleidebfh\eec`caedbbffcfdegbh`cj_hfddbac_ce`__bff`h_cddaee`da_c\_bbc`icecfcddee`e]`^aae`bhe_eededgeffcaec`ai_eca`^]ceehfdbdfbefahha__deccccbbcccccccdcccccbcccccccccccccccccccccccccbcbbccccccccccccccccccccccccccccdccccccbcccbccccccccccccccccccccccccccbcccccccccccccccccbcccccccccccccccbccdcccbdcccccccccccccdccdcccccdccccccccccbcccccccccccccccccccccccccccdcccccccccccdccccccccccccccccccccccccgdmgf\jodhbd_Wdeddebcjbbjbg^bfaefei]cdX^Zddg^ehgfagc]ndMk^Xiba`f`]gjbagc[eib^egVdbggecbdfeaiddcYf[a^bbge`cja]d`_c\cefebecgek`hafaiiS^`dee[`ibXaahhde`agaicg^m_ckahcZpklda^ebgfbfeiSbdj_a^\ac_ldom`cZZef]^ff`^c_]lZbfddgbgbekbkbbafega\ghaar_e`cboYg^`_f]_caii`^cbccbcccccbdccbccbcbccbdbcbcdbcdccacdcdbcbbccbccdcbccbddcccdccbcbdbdcbbbccbbcbcdcdcbbdccbdacccbcccbdcdbbdcdbccccdccccccccdcccdbcbccdbccdcbbbbbbdcccdcdccbdcbdcbccdccccbcdbddcccccccbcbdcbccbbddccccccbcdcccdccbcccaccbdccbcddccccccbcccdcbcdedccbcbcbbcccdbccccdccccccccccccccccccccccccccdccccccccccccccccccddccbcccccdbcccccccccccccccdcccccccccccddcccdccccccdccccbcccccccccccccbccccccccccccbccccccdccccbccccccccccccdcccdccccccccccccccdccccccccccccccccccdcccccdccddcccbdcccccdcbcccccccccccbcccdccccccccccccccccccdcccccccccccccccccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccbcccccccccccccccccccccccccccccccccccccdccccccccbccccccccccccccccdbcccccccccccccccccccdcccdcccccccccccccccccccccccccccccccccccccccdcccccdccccccccccccccccccccccccccccdcccdcccccdeebbedebbccdbde`cgdbbbedbbdbadececbdab`bcdcdccddcbbcbcbcdaecbdbcccddbgceabcbdcbcacacdecbccecbadbacbccbebddgdeaebcbcddcbddcadbecbdbdbcabeabcccebca`dcdbebdacccdbddcbdbdccadcbcddbbdbecddccebcbacedacaefddbeddbbddbccbdcddfcdcbcbdddddbbacbdaddbdbceaacdcbaccccdcccdccccccdcccccdcccdccdcdddcdccddcccdccccdcccdcccccccccccccccdccccdccccccbccddccdcbcccccccccccccccccccdccbcccccdcdccccccccccccccccdccbccccccccccddccbccccccccccccdccccccbcccccccccccccccccccccccccdccccdcccccdcbdccccdcdcdccccdcccccbcdcddccccccdccccccccc\Yj`teb][`ihj\uQTsajl^\hm>aoT^oheYN_R`O\]gXWAeNqUccUshAZU]HayUpXav`gelZ8K_Y\fZi^XqrP]wcTR_Kv`WKcL_eV`me`i>]jLcf:]gWwb\`UmaeiV\_lvPdZooTzVtjXKKfMkhYobKz3tiZ`_hqNls]wdlkuMuYWFViGwWgvffjjan\ZlooM[UkXZtbe=fU?eVipp[j]ylGnYghBPtWe4cqrk`}Med_\Vr}]PNZW@jc]Zycccddccccccccdcccdddccdcdddddddccdccdccddcccccdcccccdcccccccccccccccccdcdcccccbcddcdccccccdcdddcdcccdcccccccccdcccdcdcccdcccddcccbcddccdccccccdccdccdcccccccbccccdcdcdddcccbcccccdcccccdcdcdcddccccccccbddcdddcddcbbdcccdccbcdccbcddcdcccddcddcccdcccdbbccccccdcid^feebdYZeo_X^gee_`cedb`_f`h[Xmeb^ca_a^bed`icc[`ccmceg[kebf^aa\ac``Y^ab^cZahkle_maci_c[]ab`iakXm[n_abd`pb]jjbbeeddgfeahdgkagel]^eg[`_cabqe`eggcig^b[gc_ed[hchcdcaYdgbf_ba`ackbeacjg^d_dli\oadgl^ia\bcdff`_afigfgWeibd]ggdXdif\feb`[dbeh`ddfebc[`ia`Xfh_jW`Y\`_\bdbdbdcbcccccceccdccccacdbcbbccccedcdbcdccccdddbdeddbddbcccdcdbccdbccccecebccdccdcdbcdcbbdccccabcdacdcccbcccccdcbbccdcddcbccacbcdeccedcbbccdbbccdfcbbdbdebceecdccbccbdcdccdeadcbcddcccdccccbbcbccccdcbebccdbbcddcccebbbcdddecccacbbbbbcccbbdcbccdcceddbbbcbdbccdqibghfahcSZ`j`\ea`je^jbebeecZbidmnocl[e_jee_VibZcUgaZ]jfg^`di]csedm_\c\kd_ahUl_eWblkXcZcg`cege`kc_cnlhlf^bbcja^`bd`eddcdgee^ec[amg`fce\ebdfa\^chdjYf_fg``h^hf_be_e\`af^afdaceloaak_ebbZdafgj`egjaZ``jagee\`\dbig]\c\W\d[k]l]e\af[jkcb^_^i^f_\occ]e`geUbdipkckdab`cbcccccdbec`haebfbeegacedbfdd`_cbdfeefccdfbc]d_bafc_f_ha`a`fceeeabadf`fh_dejbeabbdefbb`dfa`eacibcbdbddbdecb`haabgcb`ebdgfeafcd`g]degcdddedaaddbcaea`b]fcdedcbdcdaicebccbcebbabdeidd`cebbcc_dddgdcciddb`e_aaabcbcdcdc_cddfcd_dfeaa``ciccfb``acd`gc`dbbacdedceac_bcbccccccbcccbcbcbdccdcbdccdbcccccbcddccbccccdcccccdbccacccdbcccbbdcdccbccdccbbbcccccccccdccdcdccdcccbdcbddcccccccddcddbccccbcdccdccccbccbccdcccccccdccdccccdcccccccccdbdccdcdcccccdbccccccbcccdcccccccddddccccbbbddccdccccddccbcbdcccdcccdcdcdcccdcccbbdccdecbcc`]h]qcf`X_]afdbhgdcace_bcjgc`ahahn`i_echbej`cfdf`\gd`qhh^`Yfc`cdgdfY__]ff_hhdbcddfghcjd\hdefe^mf^ddjfb`dh\]d]_^eqbo`bfckb^a\hbUcc_iedfbddc_k`ef_\chc`\`geaidnhdkgelaoemfddkbfhbckheagbffZd]lhhkee_Zcbieg^^egejk^`fbmegjb`ck`hcZfgka`\_^Y]bg\aceeacjbgcd^lc\d^a`[jan`Zhdgha_kbfckYiqd_W\e`k_\cb[\dgni`efmegeg^]_[``___bhag_Xg^b[d[f`aZ_lfd__jcfb^iY^\fjhgh]aaobhf_emkigfee[_ckj`fh^i]beebi_`jj`akob`jc^]fd[i]`\dh]ajdmbbuk^fqpicbd`fha]elhbjbgdaiXcf_dVclbghh`fqbe\b_b`__ZaabZgk\ae^joadcSec]Ybbgjkiceb]cida^gmb]dfbiUih]plddnbgp\n\sW^c_qdZ_jih`jad^t`m]iggh[__eWp[S`lbf[c^zfiZ_fhacfalZ]ahc[`g]ej`he^^glh^[egckWYdnWZjvliafX`yhj[`Yja^`dc]UjfgebaZof^^^felmZjY\bdrf_fmp^e\e]]LlcY_cWa^febffVR^coXUb`_jka^dp[h^\nhcffemUeVd`^`oPb]YZgVuml^oiph^hcUla\[bZlcfdkcgmc`\bW]r^d]fl[]`hh^ieddaie^Uhul]b`aadod``dabd^l^`e_jca`fddfieab^]c`_bd_da^eagabd_ae\^eg_c`ca`beclbcc`cbj`bdf^\da^cfid`bid[e_\f[]ffae_egbafbcg\d\gacffd`bja``hf[gbdeeaeecia`]b_^e_facc__ajaifb]_abb^d\jbecdcof`g\]ddcabchebb_be``dYb_fdcfkeei__`k\fblgcf`e^_`af]bhbgbace^ccdZ^ecedhchde`^gdc`bkik\Rcmas`^baZnefkseTYbr^jib\\Ted^dbjike^bhniahf]jfhgej\hoicg]efpqo\bZSdfjihkahp^Nda^bYen_gf_bcl^jkag`dfimfcfjpYmZkecekPWlcbdijmq[f]dsgfknbpeUmSfd`j[[fdNcU`PnfkegYb\f_Wlb^X^_fe`etjggdniahY`gVmh\sdegYehY_VRabLS]nQmdgcg]ecn_i\idedW_icZhnipdYWWh^_Zk\`\]_Wjlc^p\bjceabecld[`m_fcjd_baa`_gb_^cdb__odacYZadh`_eck]d]mgeadlbfe_^_l^aa][cbcjbmacih[iefdkekc_lcahbhf_`coh^`afg\eb__g]\da]Y_]eann_eefcc]ghd]biam]ghgffibRjaffdlmkc^fYfig`l]ecdk_]cfbah_iYdd]UbcjbdXckcfd^aac^fjefabdnhe^d]fiedjhg`c^lcabaf__i[c`]ebchhbc][ccch^cc`^^iadbc`[``heb_eff]ddgcca_]\`c[\ki\dbd``dcaa`_c^^cc^j`g]becidm_ee]ccacchgf`efb``ndeae_jccdffb\bd]cfbd_hfde_hb^fefbaa`f_i_cabd`ecb`fdecgha^bc`fa_bi`fhdkhmYd`eufadc`cdecbfba^cagb`kc]i``eieZhc_dcgd]idccacf]cgbheid`edd^jie\dj`gecai_i`ik\`cdfa]ebcdde_be`\gggchcidde`dccccccccbdcccddcdcdcccbdcccccddccbcdcbbbbccbdccbbbddccecdcbdcdcccccccbcbcdcbcbcdcdcbdbddccccccccdcbccccbcccbbbccdccccccdcecdccbdbdbcdddbcccbcdbbccbbccccccccbccbbcccdddccddcccbbbdcbbcbcbbdbdcccbdcccbbcdccccbcbcbdbcdcdbccbbbdccacccccbccccccccccccdbcccbcbccdccccbcccccccccccccccccbccccccccccccdccccccccccccccccccccbcccccccccccdccccccccddccccccccbccccbcccccccccccccccccccccdccccccccccccccccccccccccbcccccccccccccccdcccccccccbcccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccbcccddcccdccccccdcbccdccccbccbdccccedccdcdcdcddccdcdcdbcdddccedddddccdddcdccccdcdddecccdccccddcccccccdddcccdcccddccdddcdcccccdccdccdddcdccdcdccccddccdddccdccdcdcdddccddccccddcccdccccdccdccdccccecccdddcccbccdcdcccdccccddcddcdccccdccccccdcdccdddcdddcdcdddddcccdcccccbdccddcccccccdddcdcccdicc_bqcfkkdWkaZabfajd_giiXgkhbcg_g_TgebgcckcaVgmd`geecX]a_h]ncf_[hj_c[fde^^TUh[icdg]ZdcVddgmlj\cj]X[bfbdjigbj`glibeifd\j\^`eaTb^i``g[j]]^[ccZhc]h{ged]`]]_dY^[dbgeahkhi^i^d]ed_Xihj_[md\bmenmaiccb^Waab\j`abbcockc`W\\[_fZ^`f^ajefhgchc\jYbbddahdqhefkadfb\a]`cedbcdcddbcdcc`cbdcdeccddecdecbdbcbcccdedcccceccbdbdcccccbcdccbdecbedddcccccccdebcccddbcdbcdddcccbccccadccccecbedbccaccebcdbfddbdbbdcbacbbdbdacdccbddcccccabccbbddccbddddcdbcacacbccdbcdcccbcdccddeccbdcddccccbdbdcbcdcacdcbdbceeccbbedebcddccccbdcdebccbcfcacecccccde`ecccbdcdcdabccddebdedccdcccbdbbdbcecddcdbbcbcdccc_cbecbbdecfcabccbcccdcbceddcbbcddcccdbdccccbecbbcdcbbacdcddbbebdcdbcbcadcdcceeddececdcddcbbddcccccaaeabddbebbcbcccddbcbccbacdaedcbdccbcdccddccdddbccdcbbddcddbcbacecaaddcdaaacdebededccbddedbdceb`ddcbedcdZc`aab_pc_de\kjhiac]edcbce[^``^[j]bnafd]ca^b]abbbk^ed_j]^a`baf^_ggabZdfck`gblgl[fo^fbhdbdaaW_keefqj^bcjk_dl`e^bX]^[h\_d\ac`fd_f`amYX^^h_eUbhlb_c`\e^Y^cgnp__iZ_pfctbsblg]`cjhgbgkWei\Sj]g^h^`b`\kadjecfs`dfa`og`[c\ei]fpfWYoajgb^goic`]ac]dn`a_fcehkabgfhegche_egg_df^haeefbbc_bech`^bcgdccedfcaadgbafdbeeafaebdfehihd_badeacceaiccdadg_accbbfhebdceigchdbdiaha`ciafgdbc_cfb]cek``h\bcfe_hZfe^bdaddcebhbbcdi`af`fhfccbbjgafahZac`dgfebaecae`bh_`b`acaca`bhbc_cdbbeeacc`ggggejefada`Y`dac`f_c^`e^efaca`d`ddafgbcabd`cb`ccaegdaefhXaf]o[]WdY[eZdbefXd^khd[dhcfiY^daRVhagcWltQ[cefci[SZnWkZ^ma]fcdhXYeb`Vf]jca\ZS\clc[snagm_cbfnoklbj[hiighj`ZnhKW_c^agbjbjerdrm\uhl_WhZkriib^^k]`Veani`ge_]bgdWfdUr[UYd^oaa`mfg_kfjgbbgjYjkdbYa[VkpjbnSf]Yabeogf`[eY]fXil\if`YZYaedchh^v`l`_jkefegg^_bhh_j]]ilUrghccbbbbbc`ccdcc`acdcdccfbbddccccccbdcdbdbdbdcdcbbbccbccaccccac`acec`cbbcacbccccbccdcbccfcdbdccccbcabbfdc`bcdabbbdcddcbbabecabbdcddaceeddddbbbcbccaecbcbbbacadacbbbddbccdddcaecfdbbdad`bbcbbbdddbbccabcbdccdddcacccdcbdcabcb`_ccadcdddbedbcdddbdcbdbaecbbbbcbdaadcZ^jflgbc]`VoVdjbUh[\`hZWcxdabcl^hWakZ`e_ib\mia]b`f]YpVWfa_il[`_b_a^`j[YWgckk`bgfXeXesbhgdd`]e^gefa`bgY_`ljSbfYe^ZbiiagfecaS[eqi[\eXkkehkdjbdb[Xqk]edjiZi_a`ghce_ctb\aadc_ofcoadpcYehdTcejdonfcj_[nkf^fXcfebn_ab]b\dcdTgif`ac^h][Y_jnKwcKWhd\glc_gfbd[d]]dpijqhd]ccbcbdccbdbcccbbbbdddccdcdcbccbcdccccccddbdccdccbcddcedaccdbdcccbbccbcddddccbbcbcbcbcbbbcdcccdcbcdbcccbbbbccbccccbcbdcbcccdccccdbcccacccdbcbcddbcbdcdddccdbdcddbccbbcddbdccbbbcdcbccdccccccbddcddbdccbcbccdbdcdbbdcedcdcccbcdcd`ccbbcccdddebdbcbddcadcccdbccccca``hb^gecgcecjdbbc_agfacedfcidbe[abacfcc`ab`bc_`bdbbee`bbadddebidd`dgjedf``kedbeaab\eddc_effibccbefcbhe`chececdbj`fbh`dgc``_jecfaea\daffec_ge`adddfggddb^c``_`edebedad`ejeai`ddcgaccccbgdechbgc`aea_c^ecgbbdb`dcab^dZfgd_cabbfcfaac_iag`ccae``f`fgf^cdhac`acabfafbc`ccbdbdddcdacdcbccca`bbcdddccacdcdddccbcccdddccbcccdd`cbcbecbbbcccdcbcbdab`bdcbccceccbcabcbdcbbbbbdcbbacdbbbcebadacccdddcdcbbcdbcccaacbbccdcacchccccccccbccbcbbbcbccbccbcccebcbbbcdccdbccbbdddccbcbcbacdccdbdccddcbcccdccdbbdcdcbcbbcd`ddbcbcecbccdccdcccddbdbccdccdbdcccddcbdceddccdccccbccccddcccbccddccddcccdccdccdccccccdccdcccdddcdcccdbdccddccccccdbbcdccddcccdccccdccddddcccdccdcccccdedcccccccdccdcccccccdcccccbccdbdcccdbcdcddccdcbccddddccdbcccccbdcccdddcbecccccccccdddcbcccccdcecbcccdcdccdccbcbcdcccbccdcddccccdbcdcdccccdccccccccccbcccccccccccdcccccccccdccccccccccccdcdcccccccccccccccccccccccdcccccdcbccbcdcdccdcccccdccccccdccccdcccccbcccddcccccdcccccdcdcbcccccccccccccbccbccccbcccccccccccccccccccccddbbcccdbcdccccccccccdcdcccccccccccccccccdccdcccccccccccdccdcccccccccdcdcedbccdcebdccdccbbecbccdbcceddccccdcccdccbdcbccbddcdcccdddbcccbbddcdcbccdccbdccbecdccdceccdeddcccbcdcddccccdbbbbcdccddccccddddddcbcccccccbcdedbbdddcdfbcceddcccddbdbcdddcbcdccccbccccddcccccccddcdccedcccccccdcedcccedcdbcdbbcbccccdbbccbcdddcdccdcdbcddbecddccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccecfebcedeabbhe_dc_`cdddab^a`aacjdcdbea^daabe^aedff_cbh[gefeeece__dd_aaabc`bbfc^eebc`bac``bbecaf^]`dec`bbeafbbdaee^daccbfa_fbcd_cbchdfbd^`ffcccehb`cddae_accaahcaaddgbb^^aa_beeaccabagegdgiafccc^cecedaha`gcad_addea_cm`b`dkdcd`gfbcce`dahecc]``aaaeaccabacdaefbadccdcbcdcdcdcccccccccdcccdccccccdccdccccccbccccccccccbdbbcccbccdcccccccdccbbccccccccccdcbcbdcdcdbccccccdccccdcccccccccccccbccbdccccdccccccdccccccdcccccbbdbcccbccccccbccccccdccddcdccccccdcbccccccdccdbdccccdcccbcdccccccccdcccccdcccbdcbcccbbccccbbdcccccdcdcccccccbcccccbcccccdcccccddcccdcccbccdccccddccccccccbcccdcbccdbbddbcbccccccccdbcccccccccccccccbbcccdcbdcddcccbcccccccccccccccbccccddcbdcccccccccdcbdddcccccdbdcbccbccccbccccccccccccccccdccccccccccccccdccdccdbcddccccccccddcccccdccccccccbcccdcbccccccdccccccccccdhehh`k`gac`[hf\hb_d^gV]ckY]cgghei_gcd^\ffZkjbbqcf`Y`fejb^[`cdf\_`bfc_ae`aa^faee_cjedbe[iUcf`]`kdd`m^fmhdahfbg_^cda_ahh\lgelbhX\gbbhc]]Xh`c`^efdg_a_f`\abhmg__]ejhced_g\cZdcejajdjikdm_ggde]^]bdlkb\mcUfeaYb]dgbngcegjg_de_^egX`gmg_\^Zea]\_^eae`efafbhgg`cddckn`cccccccccdccbccccccbccdccbcccccccccccdccccccbcccdccccccccdccccccccccccdcccccccbccccccdcccccccccccccccccccccccccccbbccccccccccccccccccccccccccccccccccccccbdbcccccccccccccccdbccccccbccccccccccccccdcccdccccccccccccccccccccbccccccccccccccccccccccccccccccbcdccdcccccdccccccbcccccccbcdcccdcccdcbbdcccccccdcccccbccccccccccccccccccccccccccccccdcccccccbdccbccccbbccccccccccccccccccccbcccdccbccccccbccbccccccccccdccbcbccbccdccdccccccccdcccdcccccccdccccdcccccccccccccccdbccccccccccccccdcccccccbccccccbcccccccccbccccccccccccXgkWf]`_degdbec`efeiYx^ZcUbf^b`iViheeec^\iaef]akdenfldTigdhag[cla`\W[aj`jadk_`ihXa^\[j]fi_f[mZhl^aomgceee]`dmhbb]eh`fiaeYfWljebYlcYkejgkihhgabf[fvnf^sra^dajc`fjZ_ijai`b_jd^b`cXf^Yfj\cY^a`ljbnc]Y^\njV`ljabgWdeZ^kdQgZej_gg_g_mVefWq_h]cgTf_nYgem^^][qk\rf]\j_\dcccccbccdcbccdcccccbcccccccbccccccbccbdccbbccdccbbbccbcccccccccccdccccbccccbbcccbddccbbccdcdccbccccccccccdccbbebaccccdbcccccbccbdccccccbccccdcbcdccccbccccccbbbccbddcdcccbbccccdcccccbcbccdcbccccccccccbcbcddcccccbcbcbcccccccccddccccbccccbccbccccbccccccbbcccZb`ctiff`dafYdgZf]jg^saXeil^aakmWi\cmh^Xfe^UZ]mZhq_Uai)cZ_feh```hclbYc_e``^ic\\km]Zi_dlgiV\_i`lW^f[rkabik^\[bhie^``fffe`Xdbkfad`cmp_ekjm^b]nRfheev[hig^gfdgebXma`lX^khse`TVe[iTagVXegkgf]MX\vmcaYfkdp`]beimlU`^ibfehjJ_r]ajapicXacoaZc`ndbfecebwdXf[b\omdjkq^gccbccccdbbccccccccccccdcdcbccbbccccbcdbcccbcbbdbdccccccbcccdbccccbccccbcbbccbbcccccccccddcccbcbbbcccccdccbdccccbbbcbccdbcccccdcbcbdccdcdcccdcbbccdccccccdbcbcccccccccdccccbdcddcbbcbcccccccccbbccccccccbdcdcccccbcbccccccccccccbcccbccbcccdcccccdbccdbbbdcbdcccd^icm]fd`dgn>nnf__q`fefaecng]dfXb`le_cc[doV_b]hi`fg_Zcfchgkogbab\sYofeh_m^`chigwbn_icl[hb`k\gfqad^eWmj\``mh\Wekhgn\hfpl^ZgijYa]hieZ]`nd`incl`lin^kfagibX_XeUbgdbam]gZo[b_oa^ckf^g`r[]gkofeZXeaiipbbeeidcfhcdagn_`af]YofIfS`f[e^h^obcjcVk[Zabo]Z[f_`hadfXi]`i_l]idccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccccccccccccccccccccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccb_ffbg^ff_be\me]d^ece_]bc_[hdb_ak``i]c_dee_jdgbijji`^ekdk]dg[b]kdh[j`_gbbe[d_fieblacXcddaff`h`bddc_dfj`abh`e_`gjm[j_c`fhaa\e`j\d^d\edibebekcee^b\dbf_jZeb`Zcbedai]aabp]Ye_gccale\ck`]eibageaj_ffdha^c`efZccaagfZheabWdjX[Y]l[bXhaieZhbW``d`db`i`c]W\jb`S`\e\`af`occcccdccddccdccccccccccccccdcccbccbcbcccbcbcccbccccbdccccccccccccccccccccccbccdccccbcccccccdccccbccdccccccccdccccccccdccccbcccccccccccccddccccdcccccdccccccccccccccccccdcccccbccccccccccccccccdcccccccccccbcccbcccdccccdccbbcccdccccccccccdccdcdccccccccccccccccccccdccbbcddbccccccccccdcdccccccdcdcccccccccdcccdccccdcccccccccccddcdcccccbdccccccccdccdcccccccdccdccccccdcccccdcccbbcbcbcbccdcddcccbcccccccdccccccccccccccccccccccccdccccccccddccccccdbcccbccccdcccdccccdcccccccdddccccdccccccccccdccccdcccccccccdcccccccccccccdddddcccccccecbbcdccdcdcdcdbcdcdcbcbcccdcccccbdcccccbdbbddcbcbdcccddccccdcbcdcccccdcccdcccccdccbccddccccdccccdddccdcccdcdbbccccbccddcdddcdccccccbbbbdcccccccbedccdddcbccdccccbcbcccbcccccdcdcccdcccdcddbddccccbcccccddcccbdbccccdbccccdcdedccccbcccccccceccdcddblkcmdgsc^i`iI[aeaghm[x_\`ajAWr_zskfcch``fabkTu__gffcYhfje\\^iYrame`kigfbS^]k`Ygf]ZfauVohsa[ggnnfcfaredY`hgi\ZceVkif]hehYdfogdiZ]Zva`lV\S]fhbgbcfm_^bisfjo_^a|Thcbf`b\pcW_e[g[fYdf^[`\nXeU]i`]iiwcWi_^dfha_`a][^gWk[l`Ri\c^n_cncbF\fjf[cQasudYo_YaZlV_RXejjgbcQgccccccddcccddccccccccdccccdccccdccccccccccdcbdcccccccccdccccccccccccdcccdcccccbdccccccdcbcccccccdcdccccddddcccdcdcccccbcccccccccccdcbdcccdccccdccccdccccccccccccddcdcccdcccccbcccccccdcccdcccccdcccbcccccccccccccbccdcccccccccccccccccccccccdcccccccccccccbddccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbccbcedccbccbcbdbccccccdccdcddcbcccbcbcbcccbddcccccbdbbbccbdcccccbbccbbcccccbcbcbbcccbbccbccccbcbbdcbbbccccbccbcccbccccbcbccccdccdcccccdcccccccbaccbcccccecccbcccccccbbccdcdcdbcccdcbcbecccbddccccccccbdccccccbcbcdccbacbccccbbccbbcbccdccbdbbcbdcbecccdcdccccccccccccccccccccccccccccccccccccccccdccccdccccccccccccccccccdcccccccccdcccdcccccccccccccccccccccccccccccccccccccbccccccccccdcccccccccccccccccccccdccdccccbcccccccccccccdcccccccccdccccccccdcccccccccdcccccccccccccccccccbcdccccccccccccdcccccccccccccbcccccccccccfhgmemjgdbdgnXcVh\fibe[^m\bbW\ee`kgfd`im\aeS^Xfjchq_]dXaeidejaTk]h\aEda[ho[ehhb]]fWa]WjicSe]^f`eePfhabib]UeadfZijia\bicmk_Ysefa[mjnectnstc\na[dUoi[e[`b[cbfgacjfbfSbcpik\X_dmZjdgg[fi]bf^dcrvk[h`^[[eccc_ZbchTjm^^kmgm^kki^dfibcq\i[dadqaq\dhbgij^fZc]mjdo]bVkl\ccccccccdccccccccccccccccccccccccccccccccccccccccccccbccccccccccccccccccccdcdcccccccccccccdccdccccccccccccccdccccccccccccccccccccdcccccccccccccccccccdcccccccccccccccccdcdccccccccccccccccccccccccccccdccccccccccdccdccccccccccccccccddccccccccccccccccccccccccchmk\a^SigUWldV[^`elXas`a\[[wfdilLhsd_haeSec]oioe^clrjm_bf\rVfkcucWdpLmfXdb]cOfb_NZhbQfiipXdg\YbhYTah[_lbaaa_X_W`dhddQ`ilnlfqe`^eedqnhfqblid]mV^i`bmh_]`ke``^oa_u_c^xS]\`gohfe`c\]dj_mVK_\`j`\egf_`Yd]ZYenlcjc^`l\]doXccUr]mm]oajnkZZaZ`hej[Zihige\^deYgXjne]m`jfdcdebccbcbbbdcbcdcbbecdbdcbcccbbbccdcdbdccdccbbddcccccbacbccbdcbbdccdcccccdbdbcccdccdcbbbbbccccacccccbbcccbccccddbccbcccccccbcbccbdbbbcccbbdbdddccccbccbadcbcdccdcdcccbbcbcbebdddcccccccdcccccccccddcdcccbcccccbcccbcdcdbecccdcbccdcccddccdccccccccabccbbbcccccbbekg``d`dfa\kb`fb]hih]ihdbgfgd`]`ceacbieaccak`bgibdckcdfcgcchbe^aefcgaeadge_dbe`afcdifb__dgjb`egdagc_ibbbdad_bekbcbe_faad`dZbhi`ce^c\fddi_`^]ea``eec_dfbk`dg_gdbdbjebgefa``ecb`bfce`l^bckgafcgaehcbcdfdd__bcgd^c]b_`edcjbcfbackab_egc_eagchbaief\chf`figbkagbgccccccccccccccdcccdccbccbcccccccccccccddcdccccccccccdddccdcccccccccdcccccccccccccccccccccccccccccdccccccccccbccccdcccccccdcccccccccccdcccccccccdcccdcdccdccccccccccccdcccbcccccccdcccccccccccccccccccdcccdccccccccccdccccccccccdcccdcdccccccccbccccccccccdccdccccccbccbafdbddcdeeacbfbdddbdcdcceceddcbdcbbbcbcagdccfcbdddbbddcceecdcefddddc`dcfcbbeaccbdedcbbccdeedhcfddcededccadcccdccdefeffacfegebecabbcbdbecfefcbfejgbi`dgbdaddeceedceedefbc^edbdeadecadbdbbcddfbbdebe_dfabbfbebefbccabcbc`efbaadcbabdcdeecbccdcbedfd_abbbcdcbej`X\X]raUX]]iQZ\i^jml]_zfFhU]_kcWXjdW\brsdjKWeT]hoaebWisfreeeScQbjac~j[v\^ErVonklrX]acjW^^df[ekJbdX`jljXrCii_cc``rbjc[aae_kdncccseiXc_i_i]`ZdmupkeejN_g]efcamn\PlfXe`bPhcdlchgphZ[kiakpemsboOach_hacqaqW^XhT]bgWmfc]Zbe`Scy^d`Zbn^cihgagd]dkfjba]aa]_Kh_ajmdnfr_dbdeddcbabddbccecd`d`dcbdedebdbgbeabd``cfecc`eaebbb`eccc`becddabfddcebcga`ccbccdccgdbdecbbcccdababbcacfbcffb`adcfdcbabdbbhecddbeadecd_dcbde_ccbcbdcddbcddcacfbcbgehgadadcdbccbaceccbedc_bbbdbch_eccaceadcdebddcddb]cddcbde`caddddeeddcdac`ccfdi`dfgbddc`cdb^bccdqhoi]d`fi\XjnkWX]`fdcWfj\p_y\bqk_dWUljk][g]^Wk\ckieiwn__effmVnbgV^m][faf[abk^nTagnnj`kt][]bcZ`g]dNcqdd``pn\dda]ee`d\fWsZhg]cZgb\hfTcOQfTbaZel[bppjcZeXfee\ca^b]bbw[hh_qj[r\hhieXb\ie^ffT^`^ffrZfhie[fmcVmh_[bgau[^cZ[eOhrbcfguf`r`ddgc[`iu`fYbkj[ajaqcgaj_^kaas_\^tWt^phhccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccjljcdTby^YfjccU`gcs\^o\X[UaggwndUVi[SfVg]ke`Se`feabbgeT]^_fcm`eYcYkajf^[\cZgcnbd`_bfdgp^bgVhdn_]^bcjdWX\dda]]og^^mbla`achcja`^uZd^lj_]cgeil_gYkj]xngh]ceQ_a`wjk`Zj`wlX_ZcgleYe_dj`__^b\S]hfa\^d\okcfWgcNgnn_idZZj^iihllJ^bodbe[eYf]fcVfd]_mdWm[aXSabg[^W_hcpqecegg`_\Xha^\`agXa\jcail_dmfRf\`egaY^e_Z`cqkejV]l_fdo``f]ka[p_]a]iX_fbaldaq\aPgZkjimc^cb`l^aXde[doWadVdkjdYkJcc\bc\ge`_]``]dgjkt]g\ngiZf`kidb_]]boflacjTYe_fcdbgiaZhc^c^]Wkcefcbdld][ddfijecf_bWadejh^glahXX[g^\cfaj`]d]fbaYdk^b_`eeaiehc_ic^bfjg_hh[``j`d_dhcbmkpcdccccdcdbdddecceddbdedcbbcbcccc`decdccdcccbcdeccdcccccbbbdcbbccbcebcccccddbcccddedddcbddcdbdccccdcccdcccbcccbbcbcbdcccdcddcccdddcbddddddebdbccdcccccdcccccbdbcdcccccdccddcdacbcccdcdccdbcccbcccdcdbdcdccbcccdcddccdbdbbedcdcddcbddcccccabccccdddbcccddcccdcccdcccjkibeeie^aaj]]\Ygpceo_]bbwchmg[\a[dfah`[ka]\o[kWXXhibW]Tn[^inilbhZchT]i]^Zxechkfl_d`Z_i_amhh\WgYjcpabcdeVcTqose_X\fWdhe_fgi[dplBlfeccrTyb^`fZeYc_Sobh\V]k`Kt_^bhclhNV_^efeakc_Zr[`ftg`kildjg_]ec^oiemPcg\[]d\`xjgGa|PMXbr`e_dgaaag_f]ehe\c]bcR^\UagUY\Z[eVY^cibdbc`acedcaaddecadccaeeebdacae`dbfbcccecddbbcaddbabadbdddgad`baaegbedbcaeedeecbagbhe^bdfafbacecc_cfdabcbeegcdaeadeddfbcbd`ebdbfad_edbb``bbdccddbddgaacccddgeffcdedffgcedcaeadb_ae_fccef]bccacaacbeaeb`bdddb`adedc`bdcgd_aaccddeebddeddddc`acfcced`ffdcbebbce``cdTgdmhtQ_f_emkhefea_`ifad]hi_flcp_ZQdsi[Zmc\c`ffhYYWfm\\b^p^ei_iiaYU`i^jldecbmj]a[e\WiibYfdjc]odpj`e^gkckv_fcbafe[idZbZaX]^lblan__h[^\gjjnghaYgdfkemcjf`sgg\`doajeW^nchgjdfcjbm\fg^t_^W]afhcnd\l[`\nn]diQc[dWc`f]ahiqYceZhjebd^X^\Y^al]f_b[c^^njN]daachbiddg^ckfgccbccccccccccbcbcccccccccccccccccccbcccccccbcccccccccdcccccccccccdccccccccccccccccccccccccccccbcccccccccccccbbbdccccbdcccbcdccbccccccccbccbcbcccccccccccccbccccbccbbccccccbccccccccccccccdccccccccccccccccccccccccccccccccccccccccdccccccddcbccbccccccccccccccccfddd`^cbl`c\_djkaib_bd\bddbYded[fb[`cai^i\gabcfcerh`hcca^bhaddf\e_Wcnihdf`^g\ccnhhbccYf]d`jfe_d\\c_ele`fkVh`bi\\eTe`ieafnhhfag^lcdacdeng`b`_kcbkca_bZea^aZifacXecabXadb]Yfcedeeb\^b[_`iibe^^dhaleededYfcbjaajbadh[ehbic_ffkYabchffjfdcacac_m`iaeccfbhd^adebibaliccccccccccccccccccccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbccccccccccccccccccccccccccccccccccccccccbcccbccccccccccccccccccccccccbccccbccccccccccbccccccccccccccccccccccccccccccccdcccccccccccccbccccccccccccccccadccbcfcdcacbbdecdabadcdbe`cbddc`edb`ccddecbbc_e_bdcbbfcaadfbdeedbccbcbdba_bfeececddddebdece`dabbaeedeffccecadceccdbbfceeccdce`dbbcfacafhb_baeaabbbdccdcddadcbccbcfdcadddcbcbbcbeeceddcbedfccbccefaadebcgccdcdad_cbabed_dbfebcbcaedc`cbbe_adacca`cgc`ccbcbdbc_edcjomincffinangi^cfaZehafhc`b^`y^\foag_a^ji`dVc_c_aeXda[aReZahgir`]aaca``geme^g^`^`dcbmmWejgcfdi\g^`jk\djbgjb^gdmfhd^jgXg[Zah][Q]ag```m[aa^ak[gbeYmke[`Y\d]Z`dmb``ZgrbijXdb_jb`[bibTaiedWdfdiUa]ifXfmegi`h`e]eealkigVqch_K[]^k^Z^ZdSkc`dea]]_fdldcfciZ[i`aagk[qdccdbcddddccccccdccccdcccccdbccccdcccccdbccbdbcccbbcbbbbbccbbcdcccccccbbbcccdcccbccccccbddcccccdbccccdccdcdccdcedcbdcdccccbcbbccdbdccccdcccccccdcdddcbcbbccbbdcccbbccdcccdccccbccccccdbcccdcdccccdcdcdcbccccbccccccbcdccdddcdccdccbccbadddcccddccbddddbdbdccbbcc_h]e_pm^chfV^gf^hb[a]`f`ekfa^`\ba`bjk^_aclZc_\\^^]bZbjjogdki`Zeeifs`cddlS^bb[[beg_ao_dg`fidZdbf^c_dnfiXiZiWegcdilXcsha^h]ane^ndgelaf_ch`a_`dYh_hh~Yhai^aedhhd\gfai[ahfwb[ae[coYbbfcdc^^f]d^`_f]egVem\khg\\ej_`hicb`l`_ecjdb^a\cb`lbaZfe\gglco`fj^hkbdc`XoXgebb`ijib_ijbmghfeh_e^k]bnk_]ehebcbaeeUlfZbffciXi_kcebdjY]kY]aWakbffeUbfnejfWrfehedk]kYXX_bbjdgePc_dj_Zm[keheYrgef`lko_aib\[cdo`iek_jke[ef\Wfa__occba_aji^c_Zhgae_m_e_bf^aa]_^njgdgd[`a]dc_h`[adj_[blch^ddZ]_i`Wbaf_^dc]fbgebRmPlicb^h_fhigec_[jYUgd\^b```njXbjeaOzeemab^ea^fbdfcgcebi]ffcae_bdebegjjdda_`bjah]cffal^f\hadfdeXb`b\fag^bebfeaaf^gbdcggei`cdgccaibcbccfcjcgc`d_caf`medcdbge_kba`fehacbccadhcga_\Xcd`dg`abgc^he`hg`cfehhcfafo_`feedc_d``_]b`__idc^f^bd_cXdbc^e`a^ckgdhggef_e`_`g_i]g_ad_^\a^\fjga^f]d`b_caf^fej`chafddb`daSl\dW^kYfie`s`mr`Wn_kaZdVb`\Rfcoc[_Y_\SifRcTelbmkdca_`kcp\c]`YsjaSiX`qZgem_^ddXcmW\_db^Vj[[ltindim[k\hZ^Vhneg]\Tf^`mdco^^rhcanag]QVfbidqX\]v[f]ahjdbpvfkbj\abhke]mQqc^`Yfj_Ugcjb_[b[SkTac]abaicru^bbnmi_u`gac\R_d]_neaucc]aZsjZc^hjgT_^cfhdhjdmfdfhb^pn\han\T[bcbhadchdbc_aXbca][f^Vg\_cl^dddfflgc`\deZ^]\addkga[Vck_n]ahc\_`e_`bbgZcd^Z\dp`g`[ceZsmafeha^ffcch^ei\b`^hahcki^eahcefbfaiddfggXa]cgZ]ee_`h`^gggdabdjh[_adlZhekdhg\eaed^db]gccbie_ae`^dh[b``c`adgbdhcgd_`lcd`pdm`j[b]ib_jhpbYg_df`ij`b^icjfjb`nhejbffbgc``bdfe_ejhcbbccbbbcbcbcdcbddecbbcccbcccccccbccbcdcdcccbcbccbddcdbcbccbccbcdcbccccccccbccccbccbcccccccbcccccbbbcdcccbcbcbcccdccdbdcccaccbbccbcddcbcbcbecccbcbcccccddccdccbccbccbccccbcdcdcccdcdbcbdcccbbbccccbbbbbbccccccdccdccbcbbccbcdbcbcbbbbbccdbbdcccbcbccccbcccccabcci`d`ca^_dphXVc`e^[TagQ[lhge_a]b`pbclSgdc\bcfhk]a_mhhYZU`gilbb`ecWcd_e^fffbleaghhdlZdd_e[doaYjfimdhfZRcfhjkkYka\\]`i_hj]_TdbbfefeR}X]b]jcqU]]l`haf_h_VechjmZ[fSdcm]b^fZg_^_c`h_^fg[jgeSkc^bXiZ^dc`igpc\dubed[jfgia[ZniLmydbNefimcahqebcfkbhhikdcgfib_Ynphkdgdpff\h_[`_fanViaoeoo__^_h^n`dfeajYdZeh`ga\`ibaU\^j]ebgUdfYhkqZd^fkZQX`bceKaca`dgZ\^hZbdci_affcd`inh`ei_]gmm`W_[aida]ppeedf``dlmflfelTkd_bgb]ia\ghWb^[kqfabp[`da`dgc^lZ]\\`ncbl\[gfbpc_lXYh[df[laUfimkk]Vb`k\ded^k`ebcfaicTltls_`mkk``h\_[becib_Ydndfby_d`fo_egSaWhYg]ojgam^Zifcdfjkdi_aXe``]echad_dactj\ekZdg\bk`c_io^g\gdbgg_e[e^caacf_^`^[ekbcbZ_aceg]dbf\a^edhtk\j]eted``bgllcgdaedaccg^^jeglapeZ`bk_df^\c\\b^^abcgd[iWc^obid]]ebbfgbcgm__iahdae`aaY]ck_kgRie]i]eYgh]^``jfUfceceYecc[ligrcgbea_\`ca_gcifag^[[\]ddidjeedhbieba^]`cabccccbccccccbccccccdcccccddccccbccccccccccccdccccbcbcccccccdcdccccccdcdcdcccccdcdccbdccccdbccccbccccdbcccdcdcccccdddcccdccbccccccbcdcbcccccdcccccdddcccbcccdccdccddccccdccdccdccdcccccccccdcccccccccbccdddbcdccccdccccccccccccccccdccccccccccbcdccccccccccccccccXbiik`drdocX^hnbRgq\Qyelc^ape`aZ`pa`gh[]fQbag_j[[W]mQ[ajlf[kesk_dqjZi[\`a`ikY[a^Qead^hnjc_cb]VybgUV^^`Xqmlfp[cUj]`x]hi_hX=K]dr`fZ_`bhZdgerhlje^^dcdmjjiLbb^Zbf]k^dnp_]XYachjY^`]dg_di^ffX[neWd\c{eWxd_ufeZe`]ckWfZihUYkV\vkdgaifgTZpcaIUaDk_W_]`me_bddijteRbje^Ybbl]iXocWah_gVY_jagtqqkc\YykiajL\bc\bhmSd[`]d]dgVTk`jgnchgWfgqdd_Tnqjhef`mXmJ`a\Xof```k[]ad]XVk_cWWf]ebfed_Z[\cc_a^XXd`o`iYUngf^Xun^jaY`Zf`a]fabak_n_cfa`b`YnUU]^`hg_v[aV^\gcR_`bg_`jcla_]egc_Zmjjfb`fP\jgj[a[hfldtccqNblueqq^md]W^qoahf_aVjaghk^c`knd]XY`shheilfc_]h[g_]^ca_\g]_Z\c\\riegcdUk]dlbhc]hhjTf_uhhV\sbceapSbijehfUUaj_`ja^udc^^Okhc\gb\^jY^]be_aeeg_`hj[gdidZU]gjdtc`[dia^j]g}abqdeflbi^hhhelgU_fcqgoP_K[^b_he[bedbZcWgMXN^ulceb`]]b`j_cMkaYef^Sgl`V]egc^Xrha]_fcjdfffg__cg`^aieg\affddaiY^qjc_lZ`i^o_dfjl`jcjWkefYdcedfaaffd``dggccecbaf^_cbdebc\ldc`_`b_[_ec]`fdbic^e^dn_`eee`bdegXecdghde\ccbagehicdec_hdf`dfgbi]fgbl_beeecib_gabgadbcfgfbccjbibh^aejddabi`gdcg^c`fche`en`dbedec`ce^h[de_d``agfd`ld_ab`cigg^cbfleidbbaj]ag^hbe_`b_`^fj]`def`f\baiad`b^`j]`e]`jfgb_Yda]`b__``Xc]abcc_^daide_cka_a_cdZcjbdca^ajjWbbgeakchmo]\WT`i``mjfkkXbf^cbc^jZ_adbdbhglk_eb^d]bii\amdd^abdd\did_cqb[jb`__hiWVgebbh^eX^gl[aU`a]fahm^a`e^]ia_ki^Xkg^h\ka[cgcd\bbeliih^jYecbYafaamUbdebic\gcshck^_]iic_aaalkdd_dbcV_dfgebbaihkbha\hddfebcde`^cddb_k^ahfgbXhjia`m\ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbccccccccccccbccccccdcccccccccccccccccccccccccccccccccccccccccccccccbcccccdccccccccccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbccdeeeddeccddccdcdbcdbddbcdddcfccdbdccddcccdbdddcddebdcdcdddfdddaeddcecdbccbccaccfceddedcdebddeedcdcddddeddbbccfeecddcccfeedcfbbbcdddddcdcbddcccbecdcccdcdcdbecebeecccbdddcdbebbcbdddbedddcccdeddccacddcceddgccdbdbdeecdcdcbddfddccdceebccdbccdcdcc`ecbdddcdccaW`]cYbja_W]\fhfZbecm^WjtgbXqfia`^an];kbddmble`abkUo]c_hc\a_i\^khbijhfehgafg\calcc]hdZTehY`fXLo]Sn^AJghf\fWgcjfhjggg][ae]n^ke`bucXZflbhmmm[gcm`T]dcjdib_hjdcio\f^cjjfqiicae_``^cloeefV[`aeh]cqX\Vbr_^jccd_klhfjgh^pWX`YbiWaecllbijc^jjrnbb^fcohehb^ial_caegbcieddfg\]Lmn`femcUNjZacejf`dgf^]jieTkQXaUfZrZ[][lhhbbiiiYdabb_ejlo`kjeb^WahnU]Zbadfhlmndedga^[hailj;ecle^Ze_hZc`enre]e`bc_iejghkgk^YqimVm_uX^]ddhmkX_hbj\iY[`bW[__hk]j`mYi`eii]t\`_fj]Xc``hdlg`bbdofYccUh[kf\kh]aqlkodcfbf`cjSbnscY_bfcfjddd^ff\e`mcm`dgemdZq^aUaTl]ccbccccccccccdccccccccccbbbcccbccccccccccccccccdccccccccccccbccccdccccccccccdcccdcccccccccccccccccccccccccdccccddcccccccccccccccccccccccccccbcdcccccccccccdccdccccddcccccccccccccbccccccccccdcccccccccdccccccccccccccccccdcdcccccccbccccccbdccccccdcccdcccbccbccjg\aab`r_Xqclcllpcqhgcge^b\iqcRie`QXd\hlh\Saj[thnlfY^fgkiijX^XZ_hXUdlbcfock]abXie^\do[fajf`okeigladmjcjdZOeiWod`igepbanl`oYZS\^cqbpnhpiXll_pii\q\jYWloQkkj`kfReOiq]gscjeZfckflhb`\ephdS_cl\\iWbnh`fh[ec^[_ggxfs\iegddghbQlj_adjb`hUmmahc^`\[q_[BUqibiefegftblW]i^biY\e\dccjk^dlchfd]vdijabbqk_][_Z`_vckaeho_gg]Z_Us^`ane_ogg\bfhgdn]f[mdbpaYqkbi\fh[eagZp[Yhaj]cijod\g\eXqtagndicfdjhdY]`i^p]Z`rg]>hmff^eeeWhZ_ie^dT_eiejc`^haa_cfTdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbccccccccccccccccccccccccccccccdcccccccccccccdcbdccccccccccccccccccdcdcccccdccccccccdccccccdcccccccdccccccccccdcccdcccccdcccccccdccccccdcccccdcccccccdcccccccccddcccccccccccccccdcbccccdccdccccbcdcccccccccccdccccdcdccccccdccccddccccccccccdcccccdcccccccccdccccccdccddccccccccccdccccccEYe]gsecWg`W]obifj`e]g`Gg`Yffoe`\i^gjfYVgabXa[odab\gqc\mer^h^\U`k\eimorja`bkj\b`o_[\jp`a\m^geaSd[^lf`^j\fYnnhhgfcffgvch]QYaiamdabcYnjTicpoReq`cU[rrkg\[b^cgc[_d`\yYbWk]bkd`X]fi[glge\c]b_a\l\]k]Pddfgf_hkikiiidcZhl\nlaeahidm``et^]`t;hnbjhejffr^ac_dQZgQ_ch\ec]f^ombd[dYcRccifrZcafbh^qgpg\aoiUlchh[dn`nl`j]lW`aca_p:]]g^[ha[`R]_igffZ_Ye]bfj`kS_W_ojada^[h^Vaek_UUphhe`j_el__dk^hi_g`^_cPVhdjTd_adgjiddtnbilfiXeZfanXi`_djcf^\m]dadjcjajgbgafil`gaa]mgdkmgghhT^ppelb`cb[ebc_jib`bdbYlh^]gg]aj^i_]e[njXbXNd]g_^khad_e]feccbhmdaddebb\cecbede_`cgdbfhdbgbcecdacbdfddcdadbefbceccdeecafccabbcddbdc`dcdbahad`abg_ccebeeebdaccbdf``aecddefcdcdbefgcbgbdfead_cbaacagbdddbbdeccebafbccb_cbedebbedbeddbdc``geefggbcedeb_fccbfgcadceeddfbabdcdcbbeecdcbhdccedabebcgac``hbdccdbdeeechcfffcfcgeedfcadbecdccbcbccdcbdcccccccccbcccccdcccbcbccccccccccccbcccccccccccccccccccccbccccccdcccdccccccccccccccccccccccccdcccbcccdccccccccbcbcccccccccccbcdcccccccddcdcccccccccccdbdcccccdcccccccdcccccccbcccccccccccccccdcccccccccccccccccdcccccccddccbccccbbccdcccdccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccdccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccdcccccccccccccccccccccccbcccccccccbbccccccdcccccdcdcccccccccccddcccccccbdcccccccccccccdcccdcccccdccdccccccccccccccccccccccccccccccccccccccccdbcddccdcccbc`qmgaZbrd_heaefdi\bfamdZcb^d]hk]\`gfdZcbYfadaffajabcWdYhid]bbh`fa^hi^mTdbgg]i_bghc`]dYebagbmd_Aj_ddbhb_ee[bYkgcej`d_ndeV]mhj\id^cdkefof^n`qd\]e^ci[ebdbd_\bgd_hge`\^jgl_aU^h_d[h\gR\^]lbafaleln[b^gd]ejW^adfhV^`hg]ctejbhclmdgkjhebfcWd`jfafm^eedgh_cb`\khfghbdflhdepm`fX`]a^aZihaaVbgbZbah_o[i`hb_bjb[dcp`g^cdddiZffgZa]`^ih``^`_ib_aX[mcQ_abchhe_`gk`h[aeeekfc_baab_[igigheSZ_kgfh_acl[gb[b]ocdfk`aghcg\a__bdefr^d[[bghag_[]l`gjXcmjobe]cdfbdgjccfbegVdihlie\^ho_c[ddd_WddebaTgd^if\fmdah\\\c`mcgkefejf]s]gfal]dea^cb^cdcojhlccdcccddddccdddcccccdccbcdcdccdcbcdcddccccccdccdcdccccccccccdcdbccccccccccccdcdcccddccdddccddcdcdcdcdddcdccccccdccdcddcdbccbcccddccccccccdbcdcccddcdcdcccccbcccddcdccdcddccdccccccdccccccdcdcccdccccccddcdccdcccdcdcccdccbcccccdccbdcdccdcddccbccccccbcbccdcccccbcccccccccccccccccccbcccbcbcccccccccccccccccccbccccbcccbcccccccbccccccbccccccccccccccccdcccccccccccccccccccccdccbccccccccccbbccccccccccbcccccccccccccccccbcccccccccccccccbccccccccbccccccccccccccccbccccdcccccccccccccbcccccccccbcccccccccbccccccccdccccccccdccccQk\k_]hcm]\a]hk[khe_c]`[mlcWhmknacdda\eidWZ]`ohhje[d^gffd`f^dbkYbadchogdZg^k^VhbVj_hjdcXTj[Yhkdi\Ybhimflgb]]fYbiiaeeq\abbXZ`[iflgd^i__U^m^Zhu`fkan^lkdcnW`fefgbl^aWd_fbi]YZl[cdgjjhc]jWigVc_geruflg\d_[a^bddif`m`iqgl^fblcqaijoYneiak_febfelhodh_deh^Zbec^ghNYhTfajinUM`NMe`cWefhj]amhfnW^clrpfUw^oek^[lWgfhe^_ba_liY\\dka\ibjTNhbaoc`af\jhpY^kjYZ[alvZgV`_ktXScZOkq^op\^XT`YfQcldcikag\cocpcrZV`j[kiZnenb_cadecZbVhBebho\jefhn^_cV\Sncdkl^[\Wjibl]dhdghd\``[_a^rPehhiiV`ck_jb_dy]foofo_o\qb_diioapfgYbliafb_^gihcf[gledYlabosVbdcddbcddccbbcdbcdcccbcdccccdddcccdddddbdcccbccccddccdcdcbcccccdcceccccdcccdbeccbcdcccccccdcdcdccddccccbdbdcdcccbdbdcbdcddcecdcccddcdbccbccdbbdccdcceddccbdcdcdccdddcdbcdcbbadacdccccccdceddbcccddcbdccddcccccdbdcdccecccccdcbedcccddcbdccbcccbddddeb`dbdbddcbddafR]ckZd_W[a\l`dfd`]Rhg\gkqYrjk_[l^Wcd^jVjliToa`[c^mijhcZdY`gkg_ffdhbubhr^jXk^iiaqkdelq^dgc\naR_[b[fkfcec^hbl^keiSbamegcXUegU]df[gac]dKknbh`^[j_^dh^d]W^Wdgebi[X^jmTlpeciph\^i`jkkpjf`h_i_c[f\Y_e`^h\pjggldiZdgd[kms\flfh[acbjeaZb\`mZ\`ge`hiieekgcbaafileXkhceb]cccccccccccccccbbccccccccccccccccccccccccccccbccccccccbcccccccccccccccccccccccccccccccccccccccccbccccccccccccccdccccccccccccccccccccccccccccccccccccccccccccbcccccccccbcccccccccdccccccccccccccccccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccYZ]jsogjYVfi`_Wbcg`hmdRgc`]lffaf`]adfddegacicljkk_`[fVihj]ihb`g_ldadeTYf[g\fgd[a]h^dqo`_gff\ginJghkcdd`gSkUmbeZeTfZkfTcghd`]jnec`eba^a_i[f`eaokig_dg`_baf^ge_l`g]^`]b`fcfdlhyfcqldm_g]daX_g]dagdlZga^]abgadnX]\jUieibba\T`V]igf^W^[i_fld\N^e^cacc_Sefg^bdh^^bfjghfmfjm]hajanW\e[jcbf_jc^^Y\mgV`bZa^j`em_f\g^cgXl\g`f`jlne^bilibohjjf_rdfg^hfcfa^h[gelcbjgilec_bpfd_NiX^lbni]^Vhf[gmfna^di\ig^cfdebdb]``[_ncbak`ZXdd^`oaY[gaggiYb_m^Vbc]_h\aUdfpklW^cV\bab\idedfZd\e`kRfa_jcab_c]igipb`fYchgajdYXfehgehmWke_ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbccccccbccccccccbacdebbcdbbdbeadcefbdecacddccbdbcce_adcbdbccdedcbcbfbcdddcbccdcfccccbfacadcecedce_ccbcaegddbcaaccdebfc`cddecdfdddddbdbcddbcfaedafccabacdcbccdcceedcbc`dc`ebbcbebbcbfbbdbbcdbccccedeaebdeceacdcccdbbcdadddcccabbebbddbbbedaedcddbccdbdbecacacbddaccbbbccccdbcbcdccccbccccbccccdccbcccccdccccddccccccccccddccdcdcccccccbcccccdcccddccccccccccccdcccccccbbccccbcbcccbcccdcdccccbbcbcccccddcbcccccccccccdcccccdccccbcccbccadccccdcccbbbcccdcccccccdcbcdccccccbcccdcccccbcccdccdccccccccccccccccccccccccbcccccbcbcdcdcccccccbccccdccbbccdbccccdcdcbcccbcccbcbcbbcdcbcccccbcbccbcbccccbccdbdcccccccccccccccccbdccadcccccbcccccccdcdccdcccccdbcbbccccdccccccccbccccccccacccbcccbccdccdcbcccccdccccbbcccbcccccccccbcccbccccdbcbbccbdbcdcccbdcccbbcbbbcccbccccbccccccbcdbcccbddbccccdcccbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc_bXQbjkhZcbda]hbihab`fW\YdcYo^Sfg^iseZhe_Vc7[^_ia_a_^V[\\[_gabeedkfZ_gid[]^j_Yc_\lb^\gdTVaffu`fbn[chebgf_gblgd]hkh[g_ddfd`Zg^_l^b]]gsU\Yga[ahmoi^awddgekabW]ej\meed\ak\^dd`Z]dYflcc]lgZkfgdpgf]rdoa[bp[ahe[mcfZfc`Xhkcbfi`b_\]d]kbjhfbij_i[cfhd]p_Zbk`ehjf_fX\ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc`c`deaccb`f`ddee_dcfacebc`afdccdb\_fa`fgbddcccea_`d^c`e`cfcdcdaadca`bh`ggbdcbbfccedbcbdbbaecdaabb`dddedc_c`edbabffeccebbdebccdheb_chddcedbfd`a`acddb]cb`bbced_`ddcacdaacaddk`hfcdcaecbaeafdcaddbaaaab_`bcagcbaef]dabdac_bh`dcddefacbbddbbcebbdbcaccgdcacbadeccgacdccccdccddccdcdccccbdccccdddcccdccbdcdcccccccdcbcccdcbcbccdcdcccdccbcccdbccddbdccdcdccccdcdddcdcdcccccccdccccddddcccccdddbccccccbdccdccddccbddcddbdbccdbbccccccccccddcdccdcccccdccccccbccccccdcbdccdcdcdddcccccccccdccbccdccdcddcdcccccccbccbdcdcdcccbccdcbcdccXYQ\ekgf^edffcacfiocc^egZeeb^^\`Y^[ax`cWSqakkfe[g^efocmg`dadbjc^aUrn`bffkccgc\\bccnjb^[^gfmgY[hhincaegbcZ_`lcZmajl^i__eX\fgogWqf`]gh`abh\cpgagVdfbm_eebdea_^c_hhibi`jc`dlifhedn\f]c\jjhll\]XgpcfaU]Wjd[j\_dabdabTdfkYih[ra`cZglhce]cbl^reba\niax_f`dcjfaibcd\\kcaUXOacd]b_bb`d^hdh`_pZkjdSbpich_lrbm^reZ]_mc^flgpglib]bkbcZc]e_lihcjdmma[bj_lsd]khfhfra]d\f\][ndhkaah`egd\`\ZheginkVehdfZ^k`a^]lmbZcc_c_ah;_db]dZeiiR\_`]hdfeck\hkm`[fd]kiTe``_e]ckcg`_ZXkegomb_ab_^oambjicdmidena]]dgWdcaaa_Y_jmb`_t[hoge`klYgiikgh^b[l^Xad`Xega`fbdfgfcddc_agdacfcb`fdcagddcb_aedb`_cdddcd]aab]]`__ea^fbacbef_aicdabadcdckg_bacdfjgd_a]fa_dfa^eedc^eff_cgcf`a`gfacbb`afa_b`gecfdfd_db^d\hccgdbdagc\b`bgefeg_dcdgdcbjeedaehcfebdbcdc_caceabafacgacad``cdegbbaad^bedebcaba^ecghbcagebce_dfi]agabdefbdca`dfbabcdfcccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccdccccccccccccccccccccccccccccccccccdccccccccccccccccccccccdccccccccccccccccccccccccccccccdccccccccccccccccccdcccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc[c[`]^jcc_ikhdf_`blga\ifkfdYf\Y]a^ccZ^[[qq`ml_dcfo_pbgb^]ucikgWbggbhXjh_cmcZgebVdS^cijdifdaYeqmihdc[`febg\bWmah`d^]Wg`gac]eabkeel^a`ccf_h_Wddd_g\pdbeebegadnYdnf`idcc]jwfj]j]addNien[^cfd\^aZ_hf_^cZj]dcmd]icleYjhcccqnj]]_eadcdcd`Xc`Vh_hXhdai`ncdide``kfikdYb^dcagYhl_ZdXaeXd_iffcjhnlbmre`ajdbo`Uid_bbhkQab`]lY_Xn^]_^g_jk^cgecdRfkcagg[gahYf^ga^oYYcdde`bUPhaaifhefZc_Whg^fd__ae^d`^cq^__WeYVaibgh^dZi]kRe_dgk_`Vc^eg\ga^kf]e]gj^lWm[haXaU_l`hdafcafgfwTgdj`lddf]`UnhaZckc^_`Ye]n\pf__bqick`a]apiiij__g^adia_sa]aieYd]^\ad^cdcbdccddcdcccdddccbccacccccccccccccbcbcccccccedbdcccdcccccdcdccdbdccccdcbcbbddcccccbcddbccccddbcdcccccdccccdddccccccdddcdccdccccccbbccccccbccccdcdcccddcccccbcccdcccccdcdcbcccddbccccbcccccccdddcddcccdccdcddcdcbcccdccccceccccdcdddcccbcccecdcccdebcccccbcdcccXbjY]jchmUdmjecgiba^nRgacti_\e^Nc[ajbZap_bm`j_YdUbgO[ai\d]r[`d\LdWhdvaahi^oqk`g^poYaV]a]fmdZfgOZ__hgWX_`Yae]bzje[^\c`g[\bncn`_^`gj^cdhgefd]g\d_nhjij__bZfcbo_Zh_an[j\hfjifnhcad`kVW_gfk[b_q\_nbddVgZZeeddnfbhleafelcjejk^fY^cZa__kegXggumbt[ns`i\brfgc]`kebeSYchdg]hShhb_fmb`cfZeelhc^bfk[sP\aii[ihhbb_cbZflic_iai^_in`bfknadlXk^njWci`_[b]^galYig_\caiicc`^[mgYbgbgd`__dg^gdhof]geem_je`]a^`cdiq_i\g\_g_bXg_ccig`jglgf]ij]ggg]bhg_abe_ljd`hh^gde]a_jmYc^QYZekoukk[ck_]add\`ddVnglcYikV]dd_mh^Sd]eZeami`be^hlcfma\faac`edbm^ZgfcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbccccccccccccccbbccccccccbccbccccccccccdccccccccccccccccbbcccccbcccccccccccccccccccccccccbccccccccccccccbccccccccccccccbcccccbccccccccccccccccccccccccccccccccbccccccccccccccccbcccbccbcccccccccccccccccdbcccccccccbcccccccccccccbccccccccccdcccccccccbccccbcccccccdbcbcccccccccccccccdcccccccccccccccbdcccdcccccccccbcccccccccbccccccdbcccddcccccccccbccccccccccccccccccdccccccccdcccccccdccbcccccbcbcccccccccccccccccccccccdcdcbccdcccccccccccccbcccccdcccccccdccdcccccccdcbcdccbccdccbcccccccccbccccccccbbccccccdcccbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccckcaYcYdo`gbTbbjjh\`ebbfnj^bam`eeb^ojX^dk`d_jemmedhYif[[]d\fbb^\jegdikocaai^Yco`bYf\`\c[chni]fd]mVfZZhd^a`anggVgbjdadfi`f\fQbbfX[idj[YdYU^Ze\cgjdZ^`bda]idfcgi\]\siZWmbmhh\]gc^gf_bfa^ckeeidcbZde\ofdYPdYcqjjdl`W`h[_uXe[[_miaejfoccjY_bgga_bji]d^jmibbbmf\dalgl]bacdbicjbdh_gdk`\`_k^``ahXmac_kfbe]Z]cW`^^\a]_el\Zbcaklb[gdahgjii`na\fe`bUg[Zbf[f_lmYbcdi_q]dj^`[ie`\_fejb^_gc`i_\bd^eedcefld^ca[hY`hab^`XW``dc_ee[gc\c`g[gYn[lbfgacclfobikdahea]h\_gh^c]`[bdca\bg_Z_[^gbjfi^k_n`^\bibjgj\blbaZ_`kcgla[[]aebcd`kZo_\n\\]qdY]eh]dccccccccccccccccccccbcccbbccccbccccccccccccccccccccccccccccccccccccccbccccbcccbccccccccdccbcccccccccccccccccdcdcccccccccccbbcccbccccccccccccccccccbcccccccbcccccccccccccccccccdccccccccccccbccbcccccccccccccccccccccccccbcccccbcccdcccccccccccbcccccccccdcccccccdb^e^hnk[\lrgbgrnc`n[YZvlF`gbc^dacdZe_kj[^oifb]cfjcgpeW_bdVamcggca``ekniZbV`]bZTYi_OQ_fgbjtiYal`w^eY^hnam@eojelS]l`^bWk_a^j``kLZ`[`VfcWf[Tpa]aZql_X_kjjkh\f\bfZlgx\]cehe^[^beeda_`q\i_hdekdkcdifXeXZc^d``ZlXi]_aimfgeheo\hnelh[UXZ\UgV_idUY]tpeflpigej`[mY__ktqfgij`TnbmdiYgbqdlm\ffheaelkekW}kYcnpjkggjYc[\ZdbkdT\\jTfg^g\b`aWX^Ygbdo_eX_gfk]hVcbnbYm]k]_]oeVXhkb`hadj`b[i_ia^SVlhYbe__`pecfpmidiVUbapeh\g_eo\a`V]e^oYocil]d_Mceg]cWbk`f^`]Yaajcc`hb]f_[Raeeg`ZgbfclqgVa[[\gg`c]_gaecohehgai[`ngdfrpVidc^Zbghlds]hX`hcjbn^bkg`]^]]`blib^cgdfhji_h^e_cge_Zeceadfgb]ee^ag_^_ec[ab`bfe]gbVfhgce_i`bfh^jbkbf_f`c_fc^W]ckdc_eZdahkbfef_ffd]dZc]llaegh\_cjdf]a`gdedhc_bYe^idfc_ddabf^dc`bdgidn^n^b^e_]_b`idfcbcj\aafb\febbmhheebd`]`_ic__`dlbecge^fbabccekafecgZa`bdfbd^ead]ej`fh`eekdcjalfage]a__e\hcdde\cabfd[lXcarhf[fgaZg^\hWdhiWbh^hj[_a`gjjdt`ehmfjlhiblgcWdn]cd^Y`gdecg^bewadebi_Zie_mf_beZ`mffggbffp_dfc_`XcHa`e`]ccake]ha_fiXae[ee_k^lg^nZ_d`=e^aa\]fjZcX^`emb^ikadc_^Xfmh`bkg_k^kecj]gkfecjeb^_ecc`cbd_hhkdXfc`i_deikYacmaibkc_egafXdage^a\cWUa[edoXife[e`]b[chjg``ib`abdb^eehqcfiflgk_bffd_cnaZ_jgfig^dcgic^egXd^hebfj`]eaf^g\]ab_dbjfXXce]`ghhd_^m\iif^_bgfYafghaYfeghcfkgdagk`da``hcbfdb_]kcgfd[kafd`]c[cficddc\XYga_ge`^_X\_mg_cdjk_kg[\debcabgf^ai^gc]gaf\oajkdcdea^`ecc^ga^gde\^deZaehegcbhbca^i\ddhe`kee_d^\ih_^dgbigddfc`bfgbcedabbd`b`dd_b`aacaeabbfagfaddbdc_afad`efceab_b_fdcea^_bddaacdbgfdcdgcbjaadbaa`^bffd_cccbdbfecafe_cb`jfaiab`eagc`cfea_cdhbdebchbcbf^bffgc_]caeciagfb]edefff_d_de`ejecddbcc_aeadh^jc`bdddbdghbbjfidicia_cdeaecfdkdbhieecjg`aegdb`cadfb`c^cgebddcdelebecadcbgjj[aee]eecdhfd[i_b[eb]ak]Zacja\r_jeea\l_`ajkbgfqe\kich`cbaeeedgdb]_ccbcd`bf_d__ddc]Ygbfddfkl`igZc_dgc`a`eadf`c^bhdfdbc^X]]baahce_ea]aed_j^`hiccbgd^g]lg`cd`fe`d[\haea\^ebbb_hgbhfehgid^hYcc`ba_bhd[bbdaa__cicfVbbdhfbgba`eei]abacecgaci_g^bciodijda^i]gf`f^bbfbjWgbefgc_hacaebmdhldacd[jbgfiaib_ceac[mgacehd_^i^`ggh_caaemhb\bebecacbehhdgc`aaeidfaf]`fj]b`b_h^kbegfghd`\k\_fcbhdc_b][d`d_jda]e^\]aceeZcZafcfeekid``h]iddcb[efhei_b^Zf`d`bfdj_fhjee`gdcafgcjgc`cahaffcakgd`j_]^cefccajc_^i_`_mb`g^c]Ygcbg\eb_^c_ba^`^^X_e`fcccccddccbcdbebcbdcdcceccaccccbdcddcedbcbcbcabdbcbbcbdbbcabdbbbcddcbbcebccbcdcbbacdccbbbcddccbbdbcbcdbbabceccccdcabccafcdcacdbcecccbccbbcccdbcccbcccdbbbdbcccbccccccbddccccccddcbeddbbbbdddcccdcbadcbaecddcbaccabdbcbdbdbccdcccccbcccdbcbccbccccacbabbccbdcbddcdcdgchkcc`ead\^^bccd`]gbi_aaeadek^ama_bafg\`ib`dbbe^h_^bmk`]bk`ekc_ceea^ajh_^_ebac`gaddc`ceebfb\ae[d^geeccbapl^mkbaeshdc_b_dgbh]dfbia]`cb_bg[jXgc\^a]jbbdYk^^^beYcdfjc`_aece^k_`^ce`_bema`ffc`^dea_akidfghgeaji`\``fba`^[`Zd_bb`[_kfc_`ieaga[aai`fe^ba_dcbdk``acfcccccccbcccdccbbccdccccccbcdcccdcccccdbcccccbccccdddccdccbccbcccbddcbcccccccdccccccdccccccccccbccccccccccccccccdcccdcccddccccccccbdcccccccccdbcccbcdccccdcdcccdcdcdcbcccccccccdccccccccdccccccccdcbcccccccccccdcdcdccccdccdbcdcccccbccbccbccbcdcccdbcccbcdccccccbeae`hd_dfe_aad_daibdc_befcaffad_cfdeccacdbbbhahbagcdf`beeibbegbd_dcebfefgda]afffcj`accedbgebafa^daffdacbb_afcbfad_fbbafce`cdbafg`ccachf``e\bh_cccfbehhb^`aa`bcdfbbecafbdababdc`cdbcebb_caeafebbc^imdcefd_bdcccbe`a`adaac_eeh^gcebbbed^bd^_cd_fccceb`eef`dbfdbb`cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccc`^[Ykzd`gc__efi`_`]dd_gccefgaa]`_ia[_jdldeg`hbhgd`igecb^__f^_`dch`ecZcbbf`h`Yef`a]lp_`jacZhaig\dcdck]e`di`h\fef^db^Xbaf``\Zig^c]^lXec`]hk]dbbh^[a]fa_\ccnSoWma`Xaeebbkakcdceala\_cfXijae^e`hldf[`b`[ccclkf`kdh^dabacd^ej`e^iZ__gfdbddr[`^bbajaeh`g`iib^^g`Z]bbmgcccccccccccccccccccbccccccccccccdccccdccccccdcccccccdcccccccccccccccccccccccccccccccccccccccccdcccccccccdccccccccccccccccdcccbccccccccccccccccccccccccccccccccccccccccccddccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccccdccccccdcccccbcccccccccccccccccccbccccdcdccbccccdcdcccdcccccccccccccccdccccccccdccccddccccddcccccdcdcccccdccdcccccdcdccccddcdcccccccccddcccdccdcccccccccccccccdccccdccdcdcdcddccccccccccccdccccdcccbdccdccccddcccccccccbccccccccccccdcccccccccccdccccbcdcccccccbcbdccdccccbdddcdcccbbdccccddccdccbdcdccdaedccdcdcbcccddccddcccdecccdccddccedccdccddddddccddcdbcdccddcdcdbccdcdddcddcdcdddddddcdebbececcccdedcdcdddccccbdbcdccdccdccccbccddddecdcbdedddcdccdbccbdcddddcdddddccecccdcddcccddbdcbbdccdbddccddcdcdccbcccddddccdbccdaccccdcdcddacfegb\jdc]dngibjgajbccce^_jjcf^ifedbfcbmaiiafd]k_cbZ]heeaeaf_hgcagoabgceddZe\bg`[adc`]c`aZecgd[_iibdfbf\]^h^ebb`[hedcd\f]ea_ceh```bg[h_bab]^dc\bdef`]ai`e\lb_g\c__``_kbff_m^`begdgbheh^]e_``cdW^cb_ehf`Z`akb`_j^hZk^]afYkdh^f\ic^g^`lfafccbc_kec_`fgicbcbe\fiebe^eeedbc\b]dhahecded^ah\_aa]gch`]^kcfafcZa]b\`bba_hkkbab\cbchffc_bcccbcg[ccece^flgiiejg\ebccgfZd\ahcce``jZd`Wca_dh]eca\bbijYia]bkgZh_jhd`gb^bgjfa`bdi`adelfamd^ddheg_ag^bYbc^`^gb_h]biVh`ggchgfdeddhhkfe_dtcheec\hYe\Zf_k[kd_fgb^dbd^a]hh^bicf`fe_^aZbbgffbd`Tdjddecacabdbbccddedbbcdbbefccdccefecccacccdabc_bdecbgabcbbdfbfbbcdedccdbbeccbaeadbbebcdaddabbccdcdbabdcadcbaabbdbbdcecccbccbbbddcbcefbbbcdcccabddecbccbccbc`aeaf`caccbcaaefccbcaace`ad`deeccbbcdbbcedbeedcbccccbfcecbcccecaedcdedabebcdccbca`adedcaeceeddeacbbaeaedeigdfddakfb_hbfcgjd`egedfgacd\ik`da_a`ba_cg^hbcec_^f_c_ehaadic`jeka`bb[eaj[`d_^g^_dYf`b^Zf_djab^cajeZbab`ababbhlg^_^fcdjbacc_e`debi^hbe`e^h`bbcbb_]_`[db^bc``[dcih\g\`cW`Z_fe`fajfeb`kclbcaec]`g^`ebfg^bbhfcf[fj]f`_daach`hg_a_hfahg`cedgk`]`[afcmqZbgaadicba`d^`caS]g\d^f__keccfYjgg_`hbeeiald]eia`cdcchdad^^lbbecac_`jcd`][]]efq]iedkddeaaag`faghd[ae_]g^eaef[a\cecec\dYdgmc^hek`iaa`fcglde_^bmX`ga`f`acabahaachcobafb]cj^[ad`hcbc[[]anehd_`jbahabbej_`bhXmbjZabdhdZecdjdfc]`eheg^abbdcX`hiafcg_icm^e^ciabid\ibg\fe]]hgfcb_Wfgdgf_]eebabd`eic]fcgaf``edaaeada^_dbef`efedcaabhace`hb^efjc`d_edibc]a__ead^g\fe\a[idacgdbac_caddi`a^j`cjfh`\e[ldjg_^Y]eflagddg`bgj_gde_]big`egic``[ahcceal]d]\ffhj]gib]a`dh_f`ddd^gj]_j_hd`cbfbc]ebcegbacc\hcc_fbheh_kibhi\\m^eehbbd_gf]cmibef_fiefd[bbdbcg_daf^]cdcccbccbbccccbcdcccbcccbccccccbcccbccccdcdcdccccbbbccbbcccccccdcdccdbccddcccbcccccccccccdcccbccccccbcccdccdacccccccbccccccbcdccddccccccdcccbccbccdbcbccdcdcdbbbccccddcccccbccccdbddcdccccccccbcdccbbbcccbccccccccddccccccccbbcccdccbccccccccbbccdccbcccccbccdccccccccccccccdcccdccbdcccccbdcccdccdcddcdccccccccdccdddbdccdcccccccddcccdcccccccccccccddcccccdcddcdcdcccdcccdcdcdccccdccccdcdccddccdcccccccccccdccccccccccccccccccccdccccddcccbdcccdccdcccccdccccdccccccccdcccdcccdccccccccdccccdccccdcccccbdccccccccccccccccdcccgZfdabd`dgijdksbcijda`ae]``l`c\agkhehfbd\a_]]`]\pnre^[tcYqT_dbb\i`Xchhsi\^eQW_mcpcadf_deaXh_Xhkn^_YfzZ_Zce`QU\ZRknWmo_e]k]iea]_`gc_jf`\dY_`dahif_aS_ejgdoeg[ba`]YZt]heigcghfg[^\ek_[Wpi`ijbjcVXemd``fk`\iiaYekkafrXdpobbe`kbcaMe^a[fYVqPg_^a\mi_cRtkj_cOg_gch^odfecb`dcacdiagccchbceefcceeaceeb`gebf_ceeacccef`cfccedebabebbcc`cccfcdffcbbdcfefaddbdfcbaaabffdddbacddcbcebaccc]fcbabccdccecdfbf_eda`eccecadcbbbbaa_e`ccebbcfbfbdabcghgcceeb`bbabgbdbdcebdde_cdfdd^aedfafbddadbeeaebdccdcdb`gdcbc`dddecdecc^`eecdbfbfbcbbcafhc`c_c_i\hdfjcglbfjc[daa_gae[_gahgb_geac`gbc``_f\[fjcfa]agf[cgdd_eebd`egafbb_dc_`hddgd_f_aiee`l]_cjd_iedbccidccaie`eeiib_debfh`f`a^f^_\_fiaabc\b`dfdcY_ccfgcj`fgicegbbga_fekXfbdabjg_`bacdeedee`jadchd^f\ae`emdg^hcgi`aci\ea_kaddh[`bagaadgcb`bfff`e_adfdea_ffe`dd^c`acbfbcf``ageceddf_fece`cdmedefah]fgcbjcfblcdX^`_ddcg^ifc[`j\_aff[cecbgcbZnedj`a]`cecfg`iea`jdcekee`hg___ediecb_dmbkeba`a`^abg`d`c]cbhaffdaa]d`cgibgbjgaYbejacdbccj\dhdfcljgcf_cadga`cdgcfecdlbd_f_`dfk^gdca[a]ed`^ca`ff_f]d`]`e`bbd]eb_^Xb_cgabehffccbf_hb_ga_hdcgaddbbffiadd`ffa`acd^aceejfbcbhc_ab_ddgeh\hdcdc``fdc]adecec`fb`fcdafbac^eabbeg`d`edee\e_`dfe`addhb[`d_^ddbf^did_hceaabedaaeed`_de`bcb``ad`figecmecdccaaadddeaaeeabdeecfcdaeea`f`cbdiecde]bb``ahbd_iacdbeigibhgadechbgeiadcffejdhd_cdgbagjcachceijbdd`^fad`edc^ccbbcdceafcbbccbebbbebceecdbcbabdceebbcddccddddecdabcebch`efebbdbcccecccefcdcbfcbbdcecbcbeeadbcccdacbdcdaebddacecbfddbdcbd`bceccedccaddeeefbebbdchcfbcdcdd`fbadcccddcbbecdaadbdecccecdedbfbdcccdacbcfcdddadcedcbadddcbcbccbbcededfec`dfabcd`dfdbdfebacfeaeddbaebibbab]adcceddbefebec`c^be\a_a`jbffbdbecgfcd_ai`i_fcbbffgifcbb`agchdeebc`befcbbbejgfaehfa]]dbbbca_ga_a_ded_cghbc`bcdofabfbejgacdahfa`dcfa_c_edaeedidg`cef[acaagecebaaedaacacgea`e^e__aah^aa^d^c__hddbbbcbaefcdga_abcdbdd`dh`befa^dfcg^]gfcbbea^`bbf`dcmebe`ide_dedbehldbffaeh^baddg]ffif`cd\\m]oladdejaf]eeodhf`bhda\ic^fd]d``hfhcagchd]]^_cciaXcbbddca^egabc[\jba`j`afhhg[affgcU^a[Yaggga_Y[bhfc^b`_e_fja[]bgl^a`Ocdddhhhge^`[cljdbcel_`\dXefchc[difk\bnhghh^`[eZfaajdgcf_c]d^b\eo\`k_a^bcfd]Yakh[_fagWcgaf_f`d_[rbZna^ehc_hcmg_ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccae^]YdcamfabV`e_`^db^[ag`d\iflha`\`eYdbeQb`aidbdaWcb`dm[Zgn^bmeb``bbb`iafZibaVbaebpf]ddng`ng]d]cVebkZ]`d^i^ddfh_adc\alec`qgg\g[ebicibggg\^Whgq]ecWgadc__lchdhjid``]aPf\`afdb]cbad\_dlegee_Zag^ZVb^bjd_`\ck`eaogo\]hfbhr^hbjlfgfhg]_YhgajcddcgYfjae_]ml^fhcbb`dbccddecdbcccccccddddcccdccdbcdcdcceccddcccccbccdbdddbcdcecbcccbcccbbddbccbddbcdcdbddeccdccbcddccccceccdcccccccccccdccccbdccddddacbcbddccdcccbcdcdccdbdbccdecbdbcdcdccddccdddbbbbccedbddddbcbcdcccdbcccdcccdcbccccccaccddccbdcddcccdccddbdcacadddccdcbbaccebcdcbddacadbdecedbccdcccddbdeddcdbbdccbdccdddcbbcccccbdbeccccdddbddccbcddbcddccccccccbdcdcdececdbcbcbcddbdbcdcddccdcbccbbdcbccddbbbcdbddbcbcccccdccdccccccccecddddbbcbcccdcbbdddedceddbddbddcdcccddcccbcbcdcdccdcccbccecddcccbccdecdbcbddcbddccccbccdccddccdbcdcbdcccbbca\cgd^``_aj]fcYabb^egbnglgb]j^eh_cn`]_gebb^gg]c]f_bhcaggka_h^Zebca^gcfjjcedfa_ee_b^acla]c`c[kgg\ca^_di]`\e^gdddr]hljj]ahfd^a`giYld]ibXi\^d_db^^aa{_m^ghi\egcfgdhYanke]d`i^k\gdcfab]ga`iedia[cbedcfc^keegeYf\iebdoec`dabdb`^hbceedce_gcfZccjafmbhba[m\bfYeeef\bjbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbbbccccccdccccccccccccccbcccbcccccbccccccccccccccccbcccdcccccbcccdcccccbcdccdcccccccbcccccbbcccccdcccccccbcccccddcccbccbcbcccbccdbcccdbcbdccccbcbccccccccdcccdccccddccccccccccccdccdcdccccccdcccccccdcccbcccccdcccdbcccbccccccccccccdccccbcccccbcbccccbdccccbcbcccccccccddccbdcccccdbcbccccdccccbccdccccccbcdccccbccccccccdcccccccccccdbccdcccdcccccccccdcdccccccccddcccccbccccdddcddccccccccbbdcbcccccccccccbcbbccccccbccbdcdcdccccbccdcbcdcbdccccccccccccccddccccdccddcdccccccccccddccbdbcccdcccbccccccccdccccccccbccdccccbcdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccadiaebcb_dc_kd`ea\]c`afc^`_fddd_fcfhabaac_gahde]gb`hac`qaaca_ag_e`f]_babcbeece^d^bbaiaebeg_gbbbdcagebcbcecbdbfej`dcc`dbead`bibd_a_gddaedbh`_a`\chbcdd`ccba`cbdb`e^ddca__aecjaggbehdaa`bhbgdd]`_a^d^hdc`ebafeabadbgc[]c^cbfff_bieibdbc^addgb`__f`abadd`bcbfda_ece``ddecddcdae\caadhfebbeccgaccdddbc_c_eg_effcdcabacaeaababfcb`cb__dai`ce_fbcbe]b]b``e`bjb^d]b`cbbcaafdgc\dcdccfc^]abccbdfcd^fiagbbccb`bhda`aec`_adcadcbcfg_gaedchbffafeceghag`cadb_acfbcccca_bfbbdacde^^ceaaaded_e^efaZccabeedif`cbcfeaaaccbfig_bf_fbeai`ifbei_akbccccbcbbccbcbcbbccdbcccdbbbbccccbcccbbccbccbcccccbcbcccccbbacccdccbbbacccbcbbdccbcdcbcbcccbbbbcccbccbbcbcccdccbcbbeccccbcdcccbbccccccccbccbccccbbcbcbcbbccbbccbbcccdbcbbddccbcbccbbcdcbbbccccccbbbccbcbbbcbbcbcccbcccbccccdcdbbcccbccbccccbcbbbcccddcdcccbcccddccccccccdccccbcccccccccccdcccccccccccdcccdcccccccccccccbcccccccccbdccccccccccccccccdccdbcdccdddcccccccccddccdcccccccccccccccdcccccccccccccccdcdccccccccccccccccdcdccccccccccccccccccccccccccdcccccccccddddccccddccccccccccccccdcccdddccdcccccbcdccccccbcccccdcccfcdb^\^g^d`i_\_`bba`igfidgbcgrcmccicXecab`hdk_`\ei^hjf[hd]kf^ah[_deiZb^`Ycabjj_c_c^njZaYjec`hbcbiafe^a`UmegfbgeiXn_d_`^aY]mggaefccggZgd\daei\ed^`cab^jgg^`gbffWla]bg`g]bddlbagabfYladZbc\cahb\g]ckcbic_dchfgb]cfjgdf^_bclca^df_i^bd]fhbXhag]efc_e`eknfdbbgdfij_igd`e`db`bi``]^daeb_[diaecjefeeY\bh^fcg_`^_Zbdhea[jpef`hb]`ag^``a_cdheeg`bkdVafefeebcgbbddbdg`dc`cb]e_g\__cebckdij_fagcb_fmfce^_^`dh`ccfedbacepb^_ace`dcc_obc_a^balbd[[cfeec]f]baiiXhbbdY[bfef_jm`\hgcbeiamddgkh^bZ_cigd^_```ieaaibecc`habg`dd[_fc`a_c`hed_ideb\^cccbcccccbccdccdbbdcccbcccccdcccdcbccccccdcddccccccdddcccdcccccccdcccccccdddcbcccccdccccbcdcccccccdcccbccccddccdcdcccdccdcdcccdcbcccccdcbcccbcccdcdcaccccccdddccccbcccddcccdbbcbbccbcbcccccbdcbcdcdccbcdccbcbcbdcbbdcccdccccdcdccbcdcccccbbdccdcbccccddccdcccddcgc^g\h`blab`cc]`gZbfc_fdb`heb`ZaddZfeac_kgc_ehh`b`q^]bab_hhc^bhj`b`fedfgbdhc`ecc_ecg^`fhca^ddefbh`cebhiceYgepgb_]k`h`^e`afei^bb^c``agihiiid`bjhcd[hh`ek[Xbo^\aeca[bdb`bcg_i_`djgfjcdcb]`d\bb`bafcdejfbhffga`g\bhf\ddac`fidXej[^aa^f]bd__`d^bh`bb_l\il`dhdjagbd\hcccccccccccccccccccccccccbbccbccccdccccdccccccbcccdccccccbcccccccccccccccccccccbcccccccccccccdcdcccccccccccccccccccccccccdccccbccccdcccccccbccccccccccdcdcccccccccccbccbcccccccccccdccccdccbcccccccdccdccccccccccccccccccccccccccccccbccdcccdbccccccccdcccccccdccccbcccccbbcccccccccccccccccccbcccccccbcccbcbccdcbcccbcbcbccccbcdccccccccccdcccccccccccccccccbcbccccccccccbcccccccccccccccccccccccccdccccccdcbccccccccbcdcdcccccccbcbbcccccbccbcccbccccdcccccccccccccccbccccccccbbbcdcccbccccccccccbbbcccccccccccbcbcccccbccccccdfcebacbddcecebdadcdbdcdcdddbdecedcbcbbcbceeebebbccddbccbcdccddebbcb`ddbdbecbebecbbdaccddcbcdbcfbbecdccdbbccecdfcebfbdccbdbebcbdaaccddcdeceec`dcdcddebbccbbcbdccebcdccbgcddbcaddcacccdddccdddbbacdbddddcccddbcbddbdccbededccddcccbdedcbbccbbaeccebaebebdee`bddbcccccccccccccccccccccdccccccccccbcccdccccccccccccccccccddccccccccccccdcccccccddcccdcccccccccdccccccccdcccbcccccbccbcbcdcccccccccccccccccccccccccdccccccccccccccccccccbccdccccccccccccccdccccccccccdcccccbcccccccdcccccccccdcccdccccccccccccccccccccdcdcccccccbcccccccccccccccccccccccccccccccccccccdcccccccccccccdcddccccccdccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccbdccdccccdcdbcccccccdbcccddccdccddccccccdcdddccddcdcddcccccbccccbcddccccccdccccdccccbcccdbcccdcdcdccdcdcccddcccddcdcccddcccccccdddddcdcccdcccdcccddbdddcccbddcccccdcccdcddcdddcccccccdccdccccccdccccdcdcdcdccccccdccdccccdddccccccccccccccccdcdcbccccbbccccdcdcd`f`kcccedbc``debac_fibabe`]g]dlhjja`icfea`eaci`k^eac\^k\_behgehdag_bhaeeiacf_c_k]affgbcicaahcabbc`a]cfeb_ae^`jhe`]`ia^`calcged`fcfdd`g`_adeaeacbg_]bacbc^j^g^dcfd^ac^bcbcbcbb_abha_ijjgbcjec_\f__fcef_gbYgceb\gceacbab^_]cd_adacaakbe_gcbedbbfccb`d`^cbfa^cbgghcebd`gaebccedhbf`bbdb`adacad`caededbdb`edebdbd``afcbecbbdcbb`dbaab`acddgecce`cgbcag`efcf`bcacddbeedcbdcf`decdbchcchdfdbf`bccfbbdae`cbfadd`eafebcbebdcacbfebecbdfcbdeedbbcbcab`cebgaeccb`daafbbeaddcegccafdcbcgdcacecdcbfdebcgfccddcagegccdacchcebdabcehbebefcbbb_erVoTgYS]igqorWWl_idcodkdOal]`gigXH[[e\hbgekljbdpcccccbccccccccccccccbcbccbccccccccccccccccccccbdcccdcbcccccccccdccccccccccccccccdccccccccccccccccccccccbcccccccccdcccccbccdccccbccccdccccccccccccbccccccdcccccccccccccccccccccccccccccdcccccdccccccccccbcccccccbcccbccccbccccbccccccccccbcbdccccccbcbccdccccccccccccdccccdcccccccccccccccccdccdccdcccccccccccccccccccccccdcccccccccccccdcccbccccccccccccccccccccccdcdcccbcdccccccccdccccccdcccccccccccbcccccccccccccccccdccccccccccccccccccdcccccccccccccccccccccccdcccccccccccccccccccddccccccccccccccdcccccccccccdcccccccdbcccdccccccccccccbccbcccccccccccccccdddcccccccccddcccccdcddccccccccdcccccccccdccccbccccccccccccdcccccccccccccccccccbccccccccccccdcccccccccccdccccccbccccccccdcccdccccccccccccdccccdccccccccccccccccdcccccccdccccdcdccccccccdcccccccbcbccdccdccdccccdcccbcccccccccccc`]abekkh\`k`bb]`c_ggkghacgfpb^^jaeecmhhi`f`gbZh[Y]_]`eYWdcbei^id`hja_gbda]^Wbebb\ci\be_Zec^^df`ae`_mbfa_]i_bcl`gdYajl_`adeechb\emcafab]_bca`^Zjdae^_f_cbd\be`ebcb_efdd`j`ccfcd]fd_hhhaa`jajabcah^bbhbccfbce\_nc^^i`b``eifcabbfnbrilah]^`\e`_`ci[fdabbg```b^gadgccccccccccccdccccccccccccdccdbdbcdcccdccbdccccbbcccbccdccdccccbccdcccdcccddccccdccccccccbccdcccbddcccccccccccbccccccdccccccccdccccccccdccccbcdccccccccdcdcccccdccdccbcdcccccccbccccccccccccccccccccccdccccccbccdbcccdcddcccccccccbcccdcdcdccdcddccccccccccdccccbcccdcccdcccccbbcbacdccbcdcdccbdccbbcdbddbbdcbcbdbbcccdccdcccdcccaccdbccbdddcbcdcbcccddbbcbdddabbcccbccccacccdbbdcddcdcbbdbbcbecdbbbcbccccbcccccccdcbbccccdbdccccdcbbcdbbcccbcbccccbcdbbcdcccbcbbcccddbdadcdcebcdccbbbbdcdccccbdcdcdcbddcccdbcdbdccdbddcccdcbcdcbdedebc`bddddadeebcbb`acceceebbbcebcbecbccdbddbdbdcbcddeacebcdfbeb`cdbba`eaccbbacecfabcccccccicddacedd`ddbfgggcccccchbddddcbdccdddbadbeeccbbddbbcebfeedfebadabdeaccecbbebddeddbccaca`cbdcbabadcbddcccdbecdeccddacccdbcbddbcbdcebcdce`dcdcddcedecbdddcegbbcbbebdcbdccdddddccccccbdecccccccddcccdcddddccccdddbdddccdddddccdccccdcddccccbddcdccccccddcccdecccdcccddccccdcecccdcddccccccdcdcddcdddbdcddddddddbcccccdccdcccddcccbccdddccdddbdddbcbcccddddccddcccdddcccccbddcdcadbccdcdccddddcdccccdddccdcccccecedccccddccccdcdcccdcdccj`bcbh_]g^[ee`f\e``emhb`defde]W_ed]`jba`emWa][[jh\kdgbi`gfcch^]dajYec[ffcfc\bdc`]nec_ecba`[afimi\Y[dadiblbfmb_TgibcbUcbhhchdhbgimk`c_afnba_g[fa^c]hf\bm]`aed`eeahZc\eejhg^Z]ihoee^g``bdbda`\b]ajge`^bebfde`dbbbej\``hhfekcdd]^dgfggakjhdfafmcedbe`^`afdk_``dfk`^ccdccccdcccccccccdcbccccccccdccccdcccdcccccccccccdcccccbcccdccccccdcccccccccbcccdccccccccccccccccccccccdcccccdccccccccccccccdcccccccdccccccdccccdcccccccbcdccccccccccccccccdcccccccccccccccbccccccdccccccccccccccccccccccccbcccccccccccddcccdcccccccddcccccddccc^eegdheaccYefcjgae[bacechg^chabd`_abc`f\hddgdee]iaacbbaYabeachgfhZea]b^^efd[[edbgh_`h]biagdaa`cdb]aambbi]`^da`fef^_kcahcdcqjca`bab`hhbieb`fgb\fcbb`bga_i^``ec^efgn]]d^amaa_k_cbc`bdbbZckg`bh]ehdc`egee_bhb`f^_fabj^`dgbdd`dfhkd`a^diZee]cfe\k`e_dhZg_ad_cdb_`jigccccccccccccccccdcdcccccdcccccccccdcdcccccccdccccccccccccccccccdccccccccccccccccccdcccccccccccccccddccccccccccccccccccccdcdcccccdcdccccccccbcccccdccccccbccccccccccccccccccccccccccdcccccccdcccccccbcccccccccccdccdccdccccdccccdcdcdcccdccbccccccccccccdccccccccccccccccccccccccccccccdcdccccccccccccdccccccccccccccccccccccccccccccccdccccccccccccdcccccdccccdccbcccccccccdcccbcccccccccdcccccccdcccccccccccccccccccccccccbbcccccbccdcccccccccccccccccccccccdcccccbccccccccdcccccdccccccccccccdcccccbcccccccdcccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccdcdccccccccccccccdccccccdccdcddbccccccccbddcccccccccccccccddccbcccccccccccccdcccccbcccccbcccbccccbcdcccccddccccccbdccccdccdcbccdcdcccccccbcccccccccccbccdcccbccccdcccccccccdcccccddcccbcccdccccccccccccccdcccdcccbccccccccdccbccccccccbbcccccccbcdbdcccccdcbdccdcdceccddcbebccccccbccbccccdcdccccccbcfcbceccccdbd`cdcdcddcddcccdccbdcdcdcddcdcccccdceccdbcdccdcbcdcdcbbdcdddcdccdcbdbddcdcddbedcccdcceccebdddbcdcbcddebdccddbcdcbbcbddbbbccccddcddccccccddcdbbbdcbbdcdcdcdcbcddddbcddbcccccccdcdcccddcbdccbccccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccabggaccfabchb`ceddaef`ddaacbbgccdg`cddcdecfb`cadjaecbcb`c``ceacac_ccbhebcc_abd_bbcbcadcc`cadfcbagbbej_e`ecdacec_efbfc`defaba`dacgdgchcbahbaeebce`_cgbeeaefeddcadgddb`jbdbcbcbdaadeabccdecccadf`cedcbddf`agbdcbbacccaffefcbfdgeaadbacfccd^`ca_acc_cf_hfbea`cfdg`acccccccccccdccdcccccccccccccdcccccccccccccccdcccccccccdcccccccccccccccccccccccccccccccccccccdcccccccccccccccccccddcccccccccccccccccccccccccccccccbccccccccccccccccccccccccddccccbccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccd]aaedYif`dekg`e_`gedhag]gjcfdjefedbdacab_fiea`b[dfdkabkq]bdgagcfdibg_fhg`b_a`eggdf_cgc`mccc`_^`a^_efhcgegdehaccec`bdc`jahb_fgeagf`ecg]b`lkeifcc_c^gbdafeef^cbjchdhcfcc\hiiefeefbcagadadiefd_beebcglebgbchlgeccabeebXajdc`Zedff`_bbbgfeaZ]j_dcj^ac\[dc^`f`f`cba_fa\a`bcdfdcgbd`^cbcbbhbcbefdbga]eb_bg_`c`_ebbbdbee\eid^cfc`ce`cea_`df`bbac`dbfeg`agaabbebchcfdbbbfcdbbahgfddccebbebeccbfbbak_a`ddfbc^`c^`ccadkbdc`aeb``cbaecaaebfigdce_ddce`aeb_habecaef`debafa^_iehacdfabggddeed`acdfbddacheebikbcedg]ac`aaieafa_bf_`ebaa_bdeccbccdcdcccdccccccccccccdbccccccccbcccccccdccccdcdbccccccdbccccccccccccccccdddcccccccccccccccccdccdcdbcdccbcccccccccccbcccccccddccccbccccddcccccbccccccccccdcbcccdcccbccccccccccccbcccccccccbccccccbccdccccdccccccccccccccccbbcccccccdccdccccccccdcccccccdcdccccdccbdcccbccccccbccccbbcccdccdcdccbcccccccbcbcccccccbccbcbbccdcccdccccccdccdcbcccbcddcccbcccccbcccbccdcccccdcdcccccccbccbcbdccccccbccccccccbcccbccccdccccccccccbbbcccccdcccbccccdbbccbbcddcccdbccbdccccccccdcddccccdbdcddbcccdccccccdcdccccbccdccccccdccdccbccccccbcccccccbccccccccccccccbcccccccccbcccccccccccccccccccccccccccccccccdccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccccdccccbccccccbcbcccccccccccccccccc^cj\ad\ge^ddb^l^Wicagchc\kchac]bfaccaef\\l_^adgbhde^iak\_]ggcifbdhdgaih]agfbd^dak[bfcee_i`_cf_^d__acc`ac`c_a`a_ccaebW_h`c^ajd^e_p\_cbdgk_[bcmai`ahheddfaj`ccgdYh]jf_a_^i^fndfddecac_ncc_ecgci[^am`hbhnZbirc`gf^[^k^e_caddh^a_hfda^ciak`cbjihjadnghe^fbcg_`g]`]\hcccccccccccccccccccccccccccccccdccccccccbcccccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccccccccbccccccbccccccccccccccccccccccccccccccccbcccccccccccccccccccccccccccdcccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccddcdcbcccdccccccccccccdcbdcccdbccccccccdcccccccdccbcccccccccbccccccccccccbccbccccccccccdcccddccccccdcccdccccccbddccdccdcccbcdddcccccbcccdcccbcccdccccdbcbbccccccccccccddccccbbdcbcdcccccbccccbccccccbccccccdcccccdbcccccccccccccccccbcccccdcbcdcccdbeccbcccdcbcccccbceccdccccccccbccdcccccccccdccccdccccccdcdcddbcdbccbcbdcbcdccbbccdccdcbdcccdcdcddcccdccddcccdccbdccdcccbcddddccccdcccccbdcccdcccebccdccccbdcccddccdccccdcccccdcccccbdddccccdcccbbddceccbbddddccedbdbcddccccbbbbcbddcccdddcbccccccccccccccccccbcacdcdcbccccdcccdfbcededccacabcaabeddeccecdcecddebbcdadbcecddcaebbbdbcdbecccccccdfedcdcbbeedcbbdbb`bccbd`bbcdfbe`dgcccccdcdcccbceddcdbbcdbdfcbadbbdbedcddcecbbfcbecfdacacecbdecede`badhcedecedacbaccdcaccabebdbccbcdadaddbbddbeacddfcbcccdebccccbbefcddebedfcecbedaccccccccddebcceceadcdbccbddcdccdbcabdddddbcbebdccbcdcddeeddeccccccdbbbcbcdbcdbcccdbccecccffcedcdcccbbbccccddbbccccdcbcddcdd`bdedec`dcccccebccccccccbcbdbdbdbcadcddddedbecdbdeccbdcbgceddccccdbcdecdceccdcfeeddecbbdbcdcbdebcdcaddcdcdcdecdccebcdccfdacddfdccccdfadddcbdbccdbcccccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdbccccccccccccccccbcccccccccccccccccccccccbcccccccccccccccccccccccccbcccdcccccccccccccccccccccccccccdcccbccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccbccccccccdcccccbcccdcdccccbcccbbcccbbcccccbcddcbdbcccdccbccdccbcccbdccdcccccccdccccbccccccccccccccbbdbcccccdccccccbdcccbcdcbcccccddccbcccccccccccccccccccdccbccbcbccdcbccccccbccccccccbdcccbcdcbccccbcccccbccccbcdcccccbccccdccccbcdccccdccccbccccdcbcedebbbdcccdecbdbccecbccdcbcdcbcddccccddbdbcccebdbddbbbcececbdc`fdcbdbbeccbebbdeddddadbcddeecabdddb_aachbccbfbdcbcbcbcabcecfcbdcbdc`bddbccbeedbccceedddbbac`ccbdbfcabadbbeba_febbccdbdaacaddccbcbccebdd`ecbcdcdccfdcdcbddfbdabcbbbbeccedcdabacadeaabebcc`baccf`ccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbdccbbbddcdcdbcccccccbbccccdbcdbdcccccccbcbcbcebbcbccddccbccbdbcbbccbccebccdbdccbccccbdaabbcbcbbbdcccbcdddccccdcbccbcbcbccccccccbcdbbccccdcdccbdccdcbcbcdbaccbcbcccbcbdbbecbcdccbccccccdccdcbadcccccccccdbcbbccdbaccdcdccddddcdbccdbdccaacdbccbbbdcddcccbcccdbccccccccccdccbcbcbccccccbbcdbdccccccccccccdcbcdcccbcdbcdcbccdcccbdcdccdcdccdcbcddccddbdcbbdcccccccbccdccccccccccccccccdccdccbdccccccbccccdccccdccccccccccbddbcccdccccccdcdcdccdcdccdccbcccbccddcdcccbcbccccbccbcccbcdccccdccbcddbccccbccdcbcccccccccccaddcccdbcccb^dYb\ecabfid]]idbi_gc]]eaaee]bacjcfbebaaf_^dc`ce_`bfcdmcf_bekabbf[b^j_hmfe`e\_gbjfccdeWeedidk_]dcafaakcj[`cgjh^``bc\ehe_cbiikdc[bZb^_jcgbbefaicbe]ca]^_adhcaf]fabcacj\`ca^\`^^l_aid`b^gi_f[ed[ihban]dca`cldYhfcb^]mh_`ik\df`i]fecihbfdalk`ebclc`gbf_geihibidig]]ccccccccccccccccccccccccccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbccccccccccccccccccccccccccccccbcccccccccccccccccccccccccccccccbccccbcccbccccccccccccccccccccccccccccccccccccccbccccccccccccccccccccccccccccbcccccccccccc_h^cgceddgca^fc`ca_^degcdd`cbccec`b\kedbcfa^aahg^f_c_hbhbgc`_aecgageadagbbbgf_llib`h_adfebc`egef\cdibcdac`ebhabdbegd_ebf`fgjeebc`edcegfadf`adcgdc___dc`gedbdgc]cdb`hdacc`bdd_ee\`c_bkda_cc_kdbgbd_chdcb_^abafbZcbbdcff``f`e`dbdac`fhccfebcf_fkc`bbda`_fbhbbdcdcccccccccccccccccccccccccccccccccccccccccccccccccccbccccccccccccccbccccccccccccccccccccccdcccccccccccccccccccccccccccdccccccccccccccccccccccccccccdccccccccccccccccccccccccccccbcccbcccccbccccccccdcccccccccccccccccccccdccccccccccccccccbbbccccccccccdcccccccccccccbcccbccccbccccccccccccccccccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccccccccccccccccccccccccccbdcccccccccccccccccccbcccccbcccccccccccccccccccccbcccccccccbcccccccccccccccccccdcccccccccccccccccccccccccdcbd\\dab^idgjicgjTab\fafd\hg^bdcdadpdec[]a_cfdYheg]adhj`aX_ca\cfalfe^ikad_e\ej_eaaf_`c_Ubgfcccfj^`hg\fhef\kca]`__gd^jlfeb_a[dSiZd`]eaaj[\g`a\le`l`_gbac_`dbgfbagbi_dbd]clbbdeefeZgbicmfefadhacce\[e][lafj`Wgl`cgbjamcibbgjf`jehf_c[h_c^cadija_hccmfhp`eadafglhd`efh^\f_`aibicmhff`gc]_feY_]dci_b_cadeajaejffbce`km]bhkjefa_bdh^igkdh`faccbd`iccecg_fcecdclja_edebb`cde`abd`bh__bfaadfheg`fcbc`cadgahgdefdeg]ddba`dd`]d_`^ddeee_b\b\ce]iefgfbgb_afc`j]agi_cdgh]f\]Xcbii`_fe`_a`dd[dbeeb__cjhdgk_k_^bf[cificdc_df^`f`dld_kibceicfbddbdcbdcccdcccddcbbdcccbcbbccdcdcdcbdccccbdbdcccdcddccdeccccccccbccdccccccdbcccddccccdccdddcdcdccebcccedccecbcbbdccccccccdcdcccccbbbdbdcbcbcccdcbccccdcdccbcbbcccccdcccccccbccdcccbbbcbcbcdccdbbdcdccbcdccdccbbcabdbbccccedccbbbcccecddcbbddccdcccdccedcdccdccdddccccbcdcccddcccdccccbdcccccccccccccddcccccbcccdcdddccbccccccccccccccccddcccdccdcddccddcbcdddccdccccdcbccccccccdcccccccddbdccccccccccddddcbccdcccccccdddcccccccccdcdcbedcbbbcbcccccdccdccbcccdcccbcdcdcccdddccdcbccbccddccccccccccccdcbcbccddcccccdbcccbcccdccbfbdedmfcda`]fgccfgegedieacda`_f_agf^bedghcdb^\^_gea\c^cc`ecZa`lbh_dbbf_c`e\^_e`dbafh`_fbecad[fddcb`ahgcba_cddebcdc^_b^ecc_fhbbehdcadecbfeace_`bc^dcceb```_f`cdbba`e`fidlbce``ii`bck`adigcgdhdeea^e``ebihb\dc``cbeeddfdbbcbib]agcab^gad^bdc^fa]bebbdgfc_bee`hchhf`bhbkca_egd__acg_bf_aa^caebicbedc_adbbbga`hhdbeddb]a`^fd^abddfgeadc`gdc`ba`baeded`ddcdfdecg_cfgfdabbbdbicbbadgcbceccbe_dbbfdcdc`ed^abb`b_^a_dcbcd_cbbd`acfdgcggegdbbecbbe`c]d^cbceccjeebecicc`ccagjjdeachge_fb`ej_`dbbca`cefcdd`ebhj`ibbecbecbpeaceg_ccfe^cee_bbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbccabccdccddaacbceebcdcdacbebdbcccccccdccdeaabdgcc`a`bbdcaddbcbcbcdddbbbcceccdbacacdacdfdabebdbcccefcbedcbcdabedfecdeccccbbceecdddebddccccdacdccccefdcafcdfedfccccacdbdbeaaddccccad`dcbcdccdecbcbbbcbdbcddbbdbaeabbdcbbadccadbcdccdbaeabcfdcfcbaccbccccbbddchcadcccbcccbccbcccdccccbcccccdcbcccbbcccccccccccccccbbbdbbccccbbccccdccbcccccbcbccccccbccccbcccbccbcccccccccccccccccbcccbccccccdccccccbccbccccbcdbccccccccbcdbccccbcccccbcbccccccccccccccccccccccccbccdccccccccccdcbcbbccccbbcccccccccccccbbcbcccccccccccccccdbcccccbcccbcbbccccccccdcbccccbbcbcbccccccccccccdccccecccccccdcbcccccccbccdcbcccccbcdbdcbddcbcddcdcbccccdcdccccccbccccbdcdccdbbcccccdccccccccccccccccbcccccbbbcbcccccbbccbcdddccccdcdcccbccdccccdcbdcdbcccbdcccbdccccbcccbccccbdcbccbbbcccbbccbbcccbccccccbcbbbcccbbdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccecdeefaabcc`ce`cbbecdcccdccbb^cagbcbcecbcd`ddecbfcfad`b^ebaceccacde^aceadbdcaaccdddebdccbddcdaaacbecbcbccbbafbeedbabgacedddec`fcafdbcfcdc_gagbbcfcbddab`addb`dbedbcchbd`cdfaabadcbddbcbaebcbfcc``ccefadedcdc`fdbddjceccdebbcdbbddadccb`ffbadaddfad_hb`bdbb`bdde`cgedagchdhgV`hcbdbZ^_`dba^_lbe_cdac^hec`gbc\cZiZcaqahh]]b^^cdeb[acf]db_aaaie`gcfchlbbea`d]afdea`e^b^fcccei`f]d\hbgc[]\hke_ee_a`adcbeba]c^ffdhe`a_bh\dbggk`jkbdhf`dgcgbfcd^ebdabjaedi_ekf_abegbdbeadgafcbgecjgge`_^faWgg_\deefba`hbahah`a__ifjfg^afachbakbffbgffcddbdccdcccccbcbbbcccdccdccccccdcbccbccdccccdbddcccccccdcccccccccddcccccdccbcccccccdccddccbbddccccccbcccedecccdcccbcccccccbcccdcddbbccdccddbdcccccccccdccbdccccccdcccccccccccccccccbcddbccccccccccdccbcdccdccdbcdcccdcdcccdecbcdcbddccccdccccbcccccbcccbcccbdcddbccbbbaebbcbcbebdbab`cadbbceba_h`dcbc`deaddbecdgbebefccddbchdeb`abcdcedfbabdaddfebdb`bccaedbgddcdedcdaedebedeacadcdd`bbfddccbba`c`edbcbbbaaccbedge`lbdde`fa`dddbcccedbaeddabdabhbbbcebcacdbccbec`cbcdbaddgcceefbcbbcdccbcababbbdccebcccb_cbccebdcddd_cabdbcaddc`dccccccdcccccccccccccccccccccccccccccccccccccccccdccccdccccccccccccdcdcdccccccccccccccccccccccccccccccccccccccccdccdccccccccccccdccccccccccccdcccddccccccbdccdcccccccccddccccccccccccdcccccccccccccccddccccdccccdcccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc`ca]bcabac_l_d`c`da`Z_b^f`bliikghcb`]iYd_lZjj__[f^hbddjff`gdf`edcckib[kcdcegfa[_afkjkke^kaf`dfgak`fZa[^_]kcli^h_adbaeec`aa[`aeede`^b_bdbZ`jdg_^geegakm`bceabeefafgm]`ea]dbe`fbaehl`c_cfcefgagea^_\`abe_bckcbc\cXj``_[\ihe^bahjgaacb_cbh_`deijeaff_]`_pf^iaeec^d`cccccccccbdcccccdcccccccccccdcccdccccccccdccccccbccddccccbcccdcccccccccccccdcccccdcdccdcdcdcccccccccccddccccdcccccbdddccccbcdcccccccccccccccccccdccdccccbbcccdddcccdccccccccdccdcdccccccccdccccccdcccdcdcdcdcccdccccccdcddcccddcdcdcccbccccccccdcdccdccdccccccdccbccbccbccbcbcbccbcbccdcdbbbcccccdcccbcccccccccbdddcccccbcccccccccccccdcbcbcccbbccbdcccccbccccccdbcccccbcbccccccccbbcbccccdcbcccccccdccccccccbccccbcbcccbcdcccccbcbcbccbcbbcbdccdcbcbccdcccccccccccccbccccccccccddccccbccccedccbcccccccdcdcdccbbccccdccdccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccd_acbacddec^_fcbeaZegYehhbiebdg]hebccbejccbd_d_g_ddhZd`\gfb`ebbdacgca^bbfeg`achgckbaccebddc_gceeeiaaagkedegbfd_ebacdida_`cgeabbdcibaabdcid`eciccdfaf]fbebaeba\dcf^bbl_gagcccagaiccdc`cc`_b_d^_abaaidcbgf`bceedgeaaebb[bhd_]efbdc_ogededee`ffeebcdhdc`egcgad`hfab`bbbbaccdbbcbaebacdbaccbeebccdedbcdbbfdcbbdcdcbabccedaaccbbcbadbebbbbbcbcbcdabebcbcfddcacabccccccedcaacaabbbcdbaadc`cae`ebecaccacdbdfadbaebecccabbcccdcddbdbcccdabcccdcbcdddcdbcbbdbbaddcbcacbccccbadcbdeccacbcbcbdcbcecdccebbbbbdcacdcdcbdcdcacdabecbcbaccbcbdbccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbbcbcbccccbcccccbccdbcccbcdbcbcccccccbbccccccccdcbccbccbccbcdccbccbcbcccccccbbdbcbccdccbcbbcbbcbcccbcbcbbbccccbcccccbbccccdcbdccbdbbccbccccccacbbbcccbcccccccbccbccbcdccccbdccccccbccbccdcbccbbccbcccdcccccbccccccbcbccccccdcbcccccccbcccbdbccbbbccdccccbbcccbcdeabccddccbcac`cbcdcccceccc`bbbdcbccdbcccccccabcebbcbadeccabdccaccdcdbccb`cdccbdaccedebbcdbacbcb`cdabcccbdce`baabbabadccaccbabccbbdb_bbcce`bdcdcbccecabdcccdcdcbccbcabcbbcdcbccecdaccdbbbecbbbceccdbbdbbcbddbbcccb^aebbccbdecbdbddcccacccaadcccccabf_ebcccdcbdbcbfd`f^^blg_ag]aacfcfbcfcmf]ilef`dX^^eabdaaj]adedhg[b_ahfbce``hgdfk_\`rhkhdeaYb^l]a_h`X`_caecce[^ddg_bhagcbbhac_aaeab`faccde`]aekhecgacjd_eYe\ea`d`]gbfbh^pddZ`fbY]^cdacp]_^\``f[cg`dd\d^`^cadigfdgepf`ef[\c`ebbbgib`ggnh^cXbd`b_iaaaekobmeg^bdbeabgii^ajda`co]af`ccccbbcccccccbcccccccccccccccccccccccccccccccbccdbccccccccccccdccccccccccccccccccccbccccdccccccbcccccccccbcccccdcccccccccccccccccccbbcccccccccccccccccccccccbccccccccccccccccbccccccbcbbcccccccccccbccccbccccccccccbccccccccbbccccccccccccccccccccccccccccccccccccccccbccbcdbbdcccccccbccdbccccccbcdccbcccccdcbcccdccccbcbccccccbcbcccccbcccdbccbbccccccbbccbcccbcccccdcccccccccccdbcbcbdcbcccccbcbccccdcbcdccbccbccbcccccbebdbdccbbcccbcccdccccbccdcccccbcbcbbbdccdcdbdcbcccccccccdcbcdcdbdcccccdbcbdcbbbadcbcbccccccddbcdcccccccccccdccccccccccccccccccccddccccccccccccccccdcdccddccccccdcccdcbcccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccdcccccccccccccccccccdcccccccdcccccdcccccccccccccccccccccccdccccccccccccccccccccdccccccdcccccdccddccccccccccccccccccccccdccccccccccccccccccbccccccccccccccccccccccccccbccccccccccccccccccccccccccccccccccccccbcccccccccccbcccccccccccccccccccccbcccccccbccccccccccccccccbccccccccccccccccccbccccccbcccccccbcbccccccdcccccccccccccccccbccccccccccccccccccccccccccccccccccccccccbccccccccccbcccbcccccddcccccdcdccdcbccccccccdccdcccccccccdccddccccccdcbcccdcccccccccccccccccccccccccccdccccccdccdccccdccccdcccccccccccccccccdccccccccccccccccccccccdccccccccccccdccccccccdcccccdcccbcccdcccccddcccccccccccccbccccccccccccccbccccccccccccccccdccccccccccccccccccccccccddcdddcdddccddccbcddccbdcdccdcccccbccbdddccccccbdddccdccddddadcccdcccdccddcdcdcbccccccccccecbdcdbcddcdcebccccdcbddcccccbbccddcbddccdcdddcddcccccdcddccccecccccddccdccccccbccbcccdddddccccecccdccdccdcdccbcccbcdddcddceddceccdcdbcbcccdccdccccbdddcdcccdccedcbcdcccccccccccccccccccccbcccccccccccccccccccccccccccccccdcbccccccdccccccccccccccccccdcccccdccccccdcdcccdccccccccccccccccccbccdcccccccccccccccccccccccdccccccccdccbccdcccccccccccbcccccccccccccdcdcccccccccccccccccccccccdcccccccccdccccdddcccccccccccccccccdcccccccb`ielchfadd[gqjgc`edhlijb]jej^l]]clYjeaegi\a`_bbibk`aZhqj_q`f_i^`bga[``hi_abbkZZei`g`d`Vp]gdcae_g[`\ag^e_che`Zi\jZWjV]abZnf`o`d_e]Znfgkajij`f[o^`fh\iedbcshbiib``nXiahjaVXeadcdbdd[]lhYjfec]`be^efdb_dggc]`\e]bbmiab_amedbbffW_e~h]a[`jk^dfd]Xhgfe`^Sidbc\ligah`kcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccdcccccccccccccccccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccddddbbffeccdccccdcccbcbfccddccddbcdcbedcbbbcccfcccdbcccdcbbccedecdccccbebcccdecceccddccccfdceccdbbcccdcgcdddcccbbccdabcddcbfdbcbcbcceceadccccbcdgbdddecdbcddbcecbecfdcddcaccccefcbddedbcbdebcbccedccccdcbebdccbddccddcdcce`cbcbdbcccbbdcdecabccecddededddbdcbfdecebdbddcbcdbbcecdbdcbcbcccbdbcaaccbbdcbbeccccdbcbcbbcdecbeccddbbcbeddbcddccbbdccccccaccdcdcbdebccccecddadcccddecdecdfcabbdbbdcdbdccdbdaebccbddcbdccddcdceaebdbcceeccccddcccdbdcbbcd`bdbbdbccbbcdbcbbcbcddcacdc`dbaccfbdbcabbfcecdcdccecba`bcfdddbebecbccdcbdabcdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccbcccdccdccccccccccccccccccccccccccdccccccccccccccccccbccccdcccccccdccccccccbcccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccacaaad`begbb[``b`a`be`addfb`ce``gdee^fhdcedbfe_e\dejbceZ`bdcacba[bbd`dcbdfddb_bbdbegbdc`bbacebfbefa_\cegedfdbcabdefd`a]dddebecddadbe__cad^eb_f`aedee_fdjafceccbebbe``ec]bbef`^`bfcedcabdaa`bdddc`ceecbdjadadcccea`cg__egccabdecbcb_bdchfebdcg`bdfce`_eddhadcdcd`ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccZd`efeegmfdNakd^[fggZdabbm^icid]e^f`[^chdcfhkdjdgb_f_bg]df`gcXfj_ajkehd[dilaajgal^adcZdb^bb^clZocbd[co`d]lkaf`dee^bclpe[d_ZfjbkeY__m]beob``Zl``Udc`glged]a^b[Zec^fjbfd^abZagc^]`bf\bga\[X`X^m`]b^h[ebbjh]kecgcgm\`aghY]ndfcklbibh^aZbffj`b`e`hbfdjqg\]icccdga\e\cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc[[khja_ddi[c`\ccacjcin``aei_ojfkagdddg^Z^ifaahbh_`cfcZjpebichhiibaedidd^^m`eele`dfdehm`Wcg^cb`jbh`e`^_k_eea]__k^aidn[Z`d`_jc]`gejeca^WbebbdaicidW^fjlbbfb^]g]_dakd[l\Z_laiadlabho`j_embemdif]_dlgaim`i^bmd]`igdechida\c]e\if\`dc_]eibbgZ[^cf\Zccfead\_ghXig^b_]`cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdbdbfcbcbbbbcbab`bddcbccbdcccbcdcaccabccbdbccccabcbccbedebccccabbfbbcbcccebcbbacbbbccbacaccbcbbdcbcabcaddcbbbbccdcbcbbbccbabdccdbbbcccbcccccbcaccddabcdccdddbccbcdbcabbbbbccabdcddddcccdeddbdbbcccccbaacaccbcadbdbddcdefbdbcbbdddacbbcbccacccabcbccbbbedcbdbbbdbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcbccccccccccccccccccbcccccddcdcccccccccccccccccccccdccccccccccccccccccccccbcccccccccbcccccccccccccbccccccccccbcccccccccccccccccccccccccccccdccccccccccdccccccccccccccccbcccccccccccccccccccccdccccccccccccccccccccccccdbccbccccbdbccdccccccccccccccccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdbccdfbddededcff`eeecebcbcdaaecddbdbbfcccbbceaceccadgcbcebcdddecdcedbcccdbbebc`dfbffcdbhefececdabaeceddccddgfdcaadcdebdcecageccbcdcedfcedcdbccedccdeebcddbb`fbeeffccdgbicfdcdddbbbdbdcdbcbecdecbecbadbdccefhbeaccbeabdbaeddadeccccbccdcaaddccgcdccagecbccccbbfdecccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccccdccccccccccccccccccccccccdcccbcccccbcccccccccbccccccccccccccccccccccccccccccccccccbccccccccddccccccbccccccdccccccbccccccbccdccccccdccccbcbcccdccccccccccccbcccccccccccccccccccccccbccccccccccbccccccccccccdccccdccccccccbcccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccbcccccccccccccccdccccccccdcccccccccccccdcddccccdccccccccccdcdcccccccccccdcddcccccccdccccccccccdcccccccccdcccccdddccccdcdccccccccccdcdccccdcccccccccbcdccccccccccccdccccccccccccdccbccccccccccccccccdccccdcdccccccccccdccdcccccccdccccccccddcccccccccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccebddebcdcdbdcccedeeccceddecccdecdcdcdccdcddccdcdcdcbdbcccbdcdcccedddcdccccdcbdccccddddcdddccccccdccddccccdcccccccbdccddccccddcebccccdcccdcdccccdcdccccceddcdccddcccddcdddccbcdbdccccccdecccdcdcbdecccbddcdccceccdcdcdcddddccbedcccdecdddcddbdcedddcccccddcdcdccccccccccccccccccccccccccccbcccccdccccccccccccccccccccdcccccdcccccccccccccbbccccccccccccccccccbccdccccccccccccccccccccccccccccccccccccccbcccccdcccccccccbcccccdcccbcccccccccccccccbcccccccccccccdccccbcccdccccccccccccccccccccccccdcccdcccccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccddcddcccccdcdccbccbdccbcdccdcdcccccbcbccbcbccccdcccdcccbcccdbcdbdccbccbdcdccbccccbcccdcccbbccdcdbcdccdccccdcccddcccbccdcccccccccbdccdccddbcdcbcccccccdccdcbcdbcbccdcdbdcccccccbcbcccbdcdccdbcdcccddccccccecccccccbcddcccccbcbcccbccccccdccbbcdcdccbcccccdccccccccccccccccdccccccccccccccbccccccccccccccdcccccccccbccdccccccccccccccccdccdbdccccccbbccccbccdccdcdcdcccbccbccbcccdccccccdcccbcbcccccdcdbccddbcccccdcccbccdccccccdcccccccdddcccccbccccccbcccbdcccccdccdcbdcccccccccbcecccccbcccccdbcccdcccdccccccccccccccbcdcccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccbcccccccccccccccbcccccccdccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccbcccdcbccccccccccdccccccccccccbcccccccccccccccccccccccccccccbccccccccccbccccccdcccccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccca_bedafcech^ed^dadcbdgfdid`ihbafabadb^f]eficbbeee_cgbeccbfiabedeeaf`cbcgdbg^`cacecca`fcdcbddffcd`cbhdbdcaecedeb_a^ecdcbd^dhdeche`_ccgdedfeddbac\cccebbdafdeg`bbdaccfdbcbcddcgacbecafgcacda_e`dd_bcdgegef_fcea`dbbdccbg`ibda_d^addccaj^edgciacdececa`cbgeaeef]g_bdccdcddccccddccdcccccddccdccccccccdccdcdcddddcbcbccccccbcdccccddbccddcccccdcdcccccdccddcbccccccceddcbdccdddcdddcdcdcccbdcdccddcecccdceccccdccddcccddddccccccbcdcccdccccdccddcbcdccdcccbcdcccddcbccccdddcdcccccbcddcdddddddccddcdccccccdcdcccdcdccddcdcccdcccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccdcddccccdbcccdddccdccbcccccccccccbdcdcdcdccccecdecddccdcccccdccdcccdbccbcdcbcccdcdcdcdcccccddccccdcccccdbccdbcccdccccddcdcdcdcccddcccccccccccdbcccccdbceccdccdccccdccdcdcbccdccccdbccccdccccddcccdcdbcccdcccddbcccddcdcdbccccccbcccccdccccdccccdcdcccccccdccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdbdbcdddeddcebddddccbdccccdddbdeccdcedcddddccccbbddbdcddccddcdbcdddcdecedcdcbfddedcdbdedddccddfdbdccccceddcceddcdbccccdfdcdedbcccccbecccddccccdeeebecfdddbcccdeccddccacccec`cbdeccddcedccdcdfdeccdbceddcdecdcddddacbdbcdbecdcccdccecccbbbcbdddccccccbdbdcbcbdcdaccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccddcccccccccccccccccccccccccccbccccccccccdccccbccdcccccccccccccccccccccbcccccccccccccdcdccccccccccccccccdccccccccccccccccdcccccccbccdccccdccccccccccccccccccccccccccccccdccdccccccccccccccccccccdccccccccccccccccccccccccccccccccdcccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccccccccccdcccccccccccccccdcccccccccccccccccccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccfcbcdccbccbedcbdbcacddbcbdccdcddeeebcdcdeccbbbbebdcebccbeecbcbbdccbcddcdcccccdbcdcbbcccdcccdceeddcdcbdbdddcfdbcefcdbccbccbdccbdddefdedacbebdccddccbcbadcbcfdccbdcbddbccdddbcbbabaccbccdbccccbbbccedccceaacbecdacddbeaccedcbadcbccabcecdfcbddbeebcceccdeddadcaccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccddcdcdcdddccccccdbccccddcdccddcdccddccccdccddccccddcbccddcccccdccccdccccdccccccdcdcdddccdcdcdccccccdcccbcccbdddcccccccdcccccdccdbdcdcdcccccccccddcdcccdcccccdcddcccbccccbcdccdcdcbcdccccdcccdccccdcdccbcdcccddcbccccccccccbcdccddcccccddcdbcccbccccccdddcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbddddcccddccccdcbdcddccccccdcdddccccccedcdcdccdccccccdbbcdebcddbcdcddcccccccdccdcdddcedcdcccdddddddbddecdcccdcddcbccdbddcccccdcccccbccccbcbcdddddcdccdccbcccdecdddcccccdcdccacccdccdddcdddcdcdccceddccdddeccccddccdcccccdcddccddcddcdbdcdccccfdcdcdccbcdccdddccdcccccdccccccdcccccccccccdccccccccccccccccdccccdcccccccccccccdccccccccccdcccccccccccdcccccdcccdcdcdccccdcccddcccccccccccccbcccccccccccccccccdccccccdccdcdcccccdddccdcccccccccccccdccdcccccccccccdcdccccddcccccdccccccccdccccccccccdccdcccccccccdccccccccccccccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccddccccdcccccccccccccccdccccdccccccccccccccccccccdccccdcccccccccccccccccccccbcdccdccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccccccccccccccccccccbccccccccccccccccccccccccccccccdccccccccccccccccccdcccccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccddccbccbccddcccdccccccdccdcecbccccccccbcdcccccbcccbcddbcccccdcccdcccccdcccccdccccbcddcccccbcccddcccdcccdcdcccdccdccccccdcdbccccccccccccbcccccddcbcccccccdbcbcccccccbccccccccdbccccdbcddccdcdccccccbccbccccdccdccccdccccbccddccccddbcccccccbcccdccdcdcdacgcacfaeaf`efdcia`ckh`agee_e_``accffafbg`feagafbdhbdf`^b`a`c`cfbbbcdc`chebd^cbbai`_dfb`edbdag`efadbeibahc``Zidea_e_e``dc_d^aaeadbd__dcibba_bba`b`ebcbabef`f`cahdgbchdl`abcb^ace_gbed`abcgedaedbedaf`feba`cdfbdbabcccbeiffbaebbfdf`ha_eiabfibafga`gbac_c`cfdddgaccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccdccccccccccccccccccccdcccccccdccccccccccccccccccccdccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccdcccccccccccccccccccccccccccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccdcccccccccdcccccdccccccccccccccbccdccccccdcccccccdcccccccccccccccccccccccbcccccccccccccdcccdccccccccccccccccdccccccccccccccccccccccccccccdccccccccccccccdcccccccccccccccccccccccccccccdcdccccccccccccccccbccccccccccccccccccccccccccccccccccdcecccccdcccccdccccdccccccbcccccdcccddcccccccddcdccdcccdddcccdcdcccdcccccdccdcccccdccddcddddccdcddccddccdccddccbdccddcccccccccddcccdddbccdcccdccccccddcccdccccddcdccdccccdcccccdcccdcccddcdccccdcccccccdcccdcdccccccdccddcccccccccccdddcdcccccdccdccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccchihh``ibca[abhag^egi^faceacdghhdkfdce`dgcdff]daed__bddek_ibbda`edhegjec_egbcdc][a`jb_fegV\dkcf_fd`fd``e_aabde`fX_\f]gd^cflZ_``ke__fj_lh^badd_d^djgfgiacefn^jflncaajdcc`fjgcb_]_fl]dgbe\dba^agabc`iecadk_dgZbl[dc`jXfacgheeehdcj`fh]gdii]ch^faedefhc_^cnebeehkbb]cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcbccccccccccccbccdccccccccccccccbcdccccccbcbcccdccccdcdccbdccccccdcccccdccccdbccccccbccccbbcdccccddcbccccdcccccdcddcccccbccccccdbcccccccccdcccbbccccccddccdccccdccccddccccdccccccccbcbccdccccccccdccdcccccccccccdccccccbdbcccccccdbccbccdccccccbccccdcbcedcbddccccbddccdccccccccbcdccccccdccbdccccdcccdcccccccdcdccdcbbccdbccccccccccccdccdbdcccccccccbcccbccccccddcdccdccccccbcdcccdcccbdcccccbcccccbccccdbccccccccccccccbcccdccccbccccbccccddccccccccdccccccdccdcddbccdbccccccccdcccbccddcccccbccccccdbccccccbccbcbcbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbeddcbccdbdc_dbbdaecdddcddbbbdeadeeabccdcbdccfdecbcebcadadgddddcbcdddceabgebdccadeccc`ceedcdbadacdbgcceddcbbaccddceddcdacbdbdbcfbebaccdccdeaacdeccebedaba`aaaeececbbcbcdcdfbeeabedcacaacccddebcbdfcccdcdfebcbcabccacbbdcdccbcbedddcdcbdcbbacdedcfbfccccadcdabfbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbdbda`dbbbbdbdabdcdddcbcccdbbbcbdcbccbcdbbdcdcddbbbbaced`dbbcbdcd`cbdbcaabdedcddccbbcccbcbbbcdabbacbcccccdcdadbbbcbdccacbbabbbbccdbbdcccccbabcc`c`cddbccecbcdcccccdbdccecceccbccdbcbbebbbbcbbcccdbcbdbcabdbbdd`dcdcbdbbddaaabecbdaacdbdbccadcdccbcbceddbbdacdbbdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccdddccccccccccccccccccccccccccdcccccdcccdcccccccccdcdccdccdccccdccdcccbcccccdcccccdccccdccccccbccccccccdcccdcccccccbcbccccccbccccccdcdccccccccccccdcccccccccdcddcdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccdcccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccddccccccccdcbcccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccdcdcccccccdccccccdccccccccccccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccfcc`d`bedcdfibecaccecc`bcdacfdicdccdcgadbdedbedbeacbbaadccb`c`aceccccddcbdbddaedgaefbbcbdcbcbaeaecbcebbeceacc`ecadcid`ceeebgecccddgdhagbacdedbed_cc]dbcbbdcdbabbeeadacadccddcde]ce_dddebddccbfcddf`dfcdbdcacdcddfbebdb^cbdd`dedbecdccdcabdccdbecdbZhededcacababcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccdcccbdbcdbbccccccccdcbddcbaccbbccdbccdddbcdcbcccccdccbdcccccccccccccbccddcccdcccbccccccdccdcccbdcbdbcbdccccbdbecccccdcccdccdcbcbddcbbdcdcdacccdcbccdcdcdbbcbbccbdcccddcccccccdcdcabccccdbcdccccccdcdcccccccccccbcbbcbcccbcbbccdbccdccdcdedcccccccdbcbcccdcbdcccbccccccccccccccccccccbccccccccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccdcccccccccccccccccccccccccccccbccccccccccccccccccccccccccccccccccccccccccccbccccccccccccccccccccccccccccccccccccccbcccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccdccccccccdbcccccccccccccccccccccccccccccbcccccbccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccdccccccccccccccccdcccccdcccccccccccccccdcccdcccccccdccdccccdccccccccccccccccccccdccdccccccdcccccccccccccccdccccccdccccdcccccccccdccccccccdccdcdccccccccccccccccccccccdcccccccccccdccdccdccccdccccccdccccdccccccccdccccccccccccccbccccfaake^fmdY_bigbb]ciXaZfjkghfagiTp\_bd^dfj`efafc[b^dd__ie^[b_g\ahcaWalZWejfef_jccVbf^bf[ifhhemhiih__hcZsjddV]_cU_dbkcekggdega]efjceff`h_k`[gYkcbhiYad\]gb`_dgibeeg_Wb`]^Zf_f_cc]bca[d_^lgdhhgbmh]`haab`fb`gdeechbpf`fbWfnbabe]gif_behZniTte\Zhhdehhe^bciehtceo__bbgcca`ababcc_dfkfgg_abcca_bbfed\ehf`cah`fdb`\aeeggcedecaddadcccc`ief`he`fa^cbg`cedfdafcb_hdbfdbcdfjdcgef`cdcfcbadd_bdbbbaefdebecbbddedcafafhcibfcccc`e`jeaeeddgfbbdedfecb`ed`ecabc^af_fdccbebcebdeceeif__gccce_`cd`ccbdhcaaggffZbbcdd_bdecc\bcebacn`i`bbfc_g`faccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbccbcddaccccaceccbbccbbbbcdbccddcdbcbbccdcecdbccbdcccddccecbcbdccbcddcdccbcccbcdddbeccdcccdcbddcdbdbcbccccddcddcccbcccaddddcdccdcdcccccccccccdcdcbdcddcddcebedccdcddcdcdccddcccbcbcbcccbdccbdcddccbbccdcccccbcceccbdccccdcdccecddccbccbcbcbcbdcdccbdecbcccccbcccc`bfRagc]c]x[e^le__mj_Wj]^e^lfrjqk[mddd]_^ndXqcZiccd[W`al_YKiqUf\eZ^c^`kj[]lsgn`^k_Vlcge_YYdajjdfbkb`emprg`wschLXnlt^_[Zf_dedaeaUjc]]akhWgjYzQYY]:\Xjcabe~Lf\k`flbhenZjYbcT]a^\^keahYlhae_gaid_\bY`bbbh\\c]_nnp`[^_^ub^m[b_aeii]bhg^oahbTm`d\fXZg\NkX]kr[dhkWidWbbcccbcccacbcccbbccbccccbcdcdcbcbcbcbdccbcbbccccccdcccbccccbcbbbcccbbcccccccccecccbcccccccbccbccbccbcccbccbcdccbcccccccbcbdbbccccdbccccccbcccccbbbcccbccddcddbccccbcdcccccccccccbcbcccbccccdcccbccabccccccbcccbbcccccccdbbcbccdbcbcccbccccccbdccbbbccccccccccccc\fd^b`h_mjfnei`^Yfak`cagl]]^_igug_bgdc]m\dQa[ebbdaX`\^k`fqaf]Zff`j`f_]o`cld^aZbZc_Vifdbh]ed[hccogpe_^ddl^hk]fZfki]deojf]Zajlflfjci^_[fZYlb`dj[paebc]knbmR`fb_f\diW_gXgkeb_mZgZcj`ghc^be`hjVe[ZZbjhpg[b][itie^fna`blcYZpefu`\fj`iRfhU_ecgh_hmgia\h\gfaijj__h`gfiakb`^]ag[gbed[[hcubbqd[bcg]a^cZ`kaW_iriheaj\eh^bfe^j[dVbTe`Z]fXdgbhiobeg[^de_`a`daa_]VdcddehgZ[dlkVYYem_`cceqa^egce[j_eikkoVhbkcfdb``^hg`dj_caa]^^]oa`j_f\dd\^dg`pca^U_h`Ub_gbdeaXZfe^gfef][_ce`h_^e\ZYc``dhd_edaXlbc_bkhbXikaeifedegeoZfbfWi`Zb]cbagZnh_`dafiim^mjaW]]a^Sab_p\]adca[i`fh[]hbkY`[^ho`gdhehe`pg]j\gkqf]jpggca_ec_rhfeaohjfemfb\ib^a]g^ccmfc]^aei`k\d\hjcYchbYfbaef]bibd_b`_`Xga_ihcjWrc`]cdhk`b`\afvg_baqmhcdfi^j\_gffaW[^`eVUaZm`Vncabdch_^jc`lYmWa^^af^idVbjhjZ]fbkeghYjW]f\f_mb``X_Z_gjjiejfr^gY\Z[YVnb^d`kh`__bebbbd_bcaebchdbfcbc_ehbdnefdh`_ebaaa`egd`jck`bege]faf_ccag`_ee`cbebec_ae^_hgabch]`^cbbaacecedggeacdedabbg`eaeeef`bd`bdefdhhb^a`\adkccfi`ddfbc`d^d\gd^^bh`_b^bhadfbafcdbdcdcfda`cdaaecdhba_edfd_b`bf`e_`b_ah`c^gfghafgcdf_baf`cfcgaccibgfhiabfdaefbadecbdcea^jbe`efdibececc^ebhcbjebbdad_df`becdebcad`dfdagebbhbbea_eccaaabg_baef]ca_a_bhd_^bcfdced^iecbeabdbb`dfcfehgbbabafbbeifddkkbhf`dedf`\`gagfhedga_af`\^afdda_b__``[d^cebceaf`badggde`geadgcdeeeicccecbad]`gfggbdebebbbcbed]cdebaddbafba]gc`fb_ge\j_`aaagedafaiccg_bb^e_eccccccdcccccbcccccccbdccccccccccbcbccdccccbcbccccbcccccccccccccdcdcccccbccccdcccccccccccccccccccccccccccccccccccdccbcccccbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccdccccccccccccccccccccccdcbcccccccccccccccccccddcccccccccdccccccdcbccccfjmfge][jjabVZeej]e\fl`Zaq^\ilio\eY^fe\akM``crdgchccehglkiqffn`pha`ddaUljaaj[dcifXxeg_e`ojfhea`c`bik]bZi`fcdcgeQ`[blnW_b[hoi_]efgb]_ccnk^am\Zfkend`ghnemVlgec]ja^__bUUfZ`eic^d[aei]ga`c[cdgjTdk`aYdr`eWilP[cba``fbkb]_[Zja`dcdY]`bebdfi\`V__ga_^hgll[igabij\^_habedccdcecccacdeeecddbdadebdeecdedccecdebbbdcfbecfdebeecdceecbbcdgcebdcdebcacceeccecbecdeacddacddaccdebccdfccbdcebdcedeadcfbbdcdeccaeccbcdeabcbcddbcddcbdccddbcacbbceaccdcdegdddcdefdbbfdcbdadbecacbdcdccbbccbcedeebdeddddcccdcdcfcaacbcccdaccbceebcecdcccebfdcdak_dWnmV_Zddgf]e`Z^Vke^jh]d`jhadhhj^brgV[_aV_`_dh`]Zkm`ilh`cgh^Vpa\[sqXje]gkfZeXZd`d_\ibbSajieWei`ghaZZ]hYb\ydKkheR[]i_bkc__ge`\kafZdU^eaNfo`Xbifesj^bjgk_]mbkhhYh`mb\de_ds^]g]db]KW[j`ldji^]]\idgWjc]TqehvgegodT``Rh_iqfeomeYm[dbb^l_m]UiZebrgaliqcVi~aeaUc_`Y`mddcdecccecdffcbccbcbabbddddcdcdfecddedceccecfadedcfadbbccbedfeadbadacedccbfcecccddedcccccbbebacddceccaccbdadedbfcdbdceaebcedbddccbafcddebddacabcbfdcdddcgb`dbbbecedbddceccaceabcfcaadbddeeccecbbccaebedfcbcbdcccdc`cccedbcbbbegddaeceebebdcbddedfcbdadeebccbbccal[e\[`r]coakbb`hiP`baf_h]^jqdobg]ecijWdw_lhcdf]q[^Yb]^`agi^c__je[mgmc]c\c`^Ydf[ecb^agh_[^c\lc_]an_qfLgg]enli\]e^cXbOcY[b]ihegf]`gfhVZ]cT_[kWbmleZdZoUcdfffjf^[i^i]affcehg`fcn_eegZ^ev{\Uio^j^_gcqe\fXbra[o`ahebgicbfrVeUai`_Yjafaf_jbi`ogggWWLdj`moaga[jdanbcb[kdedcdccbaccdecacccdbcdddccbcdecdcbabdcdddcddcdcfceccddcbcdbedcbbccbcdccdcdddaecdcccccecdbcccbccddbdddcdccccbbddcbecccccdecdbccddbbcdacedeccdccddbddddaedcbcbdcbdbdcdecddbecbcdcbbbdbdcbacccdbecdcdddddedccdcccbcebccdedcbbcbdbdcdadbeccdddgddcdccccccdbbcdbeccdcfgfd`in\heZfqb`i_U^gU]eie\oebbpcdh_djbYuofsdfi`fUalVWjkgfleblaekb_dd`e[kc_fd^`e[\]]hie[dk_gp^cfhgi^h^_fc\amhl__^_hflm\ZcYhaeafiiRdic`ucd]ie`\nY]cOiq_ec[mdsdkZ\`dU^cgl_^gatddXg_e^cahp\df^Wj_aQ^YeRkaajgdWhYpaee^dY_Z^dcj]`^bZ_lbm[Zbie\gka][ak`[uf_pdc^iqnc_shkfciejeb_iZ^_Yqeibjhc^dea][Qedfa[`ceic`q_f`]c]^_mbi^kedfY`_\wfc[[fZ\ag\gWjfeebkSagjlkde_Zdhcdi_]egje]deg^^_f\Ni_be]iRb\fdajje`]cdaXgcd]\ibW_eWXb_o_lcecgsmfg_^alZbpcblde\c]fYe`vj^jmbScfgoaeackk^i^fe^_ngh`_akl\d`_[[igdcx]bVsacbfi]^\ml]Vf^iadjckob_bfchhih^^ga`cdfbddbfcebdccdfcdabeedccbdcebccbbebbdbddbbcccebcdcc`daabbdbaeccdcedccaececedcbbdccbccfddebdddfbcddbabcddbcdbcdcccabedddcabcdcccdddecfbddbcececbdbcddddbecccebccccbcaccebaaebbccdceddbbcedabccdcdbcccchcacdbdcbdb`ccadf_acdbf``decddbccbcedcdddcebddbedbccdedcacbcbcddcdbccccbddcbcdddcccdbccdbbdcdccdcdccdbddddbcdcccccccccdccbacccccdbcddccccbdccdcccccddcbceddccdcddccdccccccccccdddccdcccdccdccdcccdccdccbcecdcbccbccccdacddccccddccccdcdceccdcbcccdccccdddbcdbcdcdebccccccccbcebcccdcdbccdcbcddbccccdbcccdccddcccdcdcdccbcwjio^b\ana`Saf^iVgc]`jceccd_fcbdo`W_[TlYl_kh\Xj`j\j_a[gceegeil_]_X\`kdgca_fcda_^Yhejkejb_cYggfce_`^afg`_fd\aasbfel`f]c_ld`fU\[iXeUagceelaffaadhbeacpc\\\Zc_^UjfifX_ebeafggfq^l]knfl`bc[iagcbfgb_khldjmeb`YZWb\b`olZXbk\Wgc`kg]a]iYd`heh^^dlfcdfg^m\l_bW[ceicd^Z]_edbbggaegdb`eabbec_edbfddcace_d`fbbdbeccfgebdccbffbe``djde_e_cd`abccfeadefdeccdbe``bff`bdfedbifdacbcibbgcdbecdaaf`ddc\bab`bc^aebhabadacadde`eba``ddcac`_efahfadaacceggaeeagdja^bfb^afdea_dfhfdbaghcgedf``cfa`ab`a_`eadef`e^difbbbcebbb`ed_be`defdedcfffeeddc`efcbddccdcdcccbcdcdbcddccbdcdccccbcdbddbbcbecccdccdccdccccbacbcbdcadedccccbcdcecbcdcdddccbacbcdccccdbbcbddbcdccccbecbccbdcccccbcdcdddccaccdcbdccebccbbcbccbccbccccccdcdcdbdbbccdccdcccccdcdbcdecbccccacdcccdccccdcccdcdcddcddcbccbdcdddbbdbcebbbcdcceddcccbdccdccdd`gdia`je_bth]VgfakYbc[iWagu`_oXc^lhf_hfch[_dgjefbZ_^mlooac]ffblcal^Xechdgbdb`cbh]_fgk^`^`[bdmf\_]che`oYRjVv\^^\Y_cYU`^dhcikg^jed_lfe^fjfebdjbaX__bbhVicyc^a`[``gjYeg][dilc^ggpafkfhbn`]`gpXd`daqfXYad\d[hg`aejaj`gdj^`Zf`_eZ_di`jhb]fduecf]dbcadgTd]Zjdcgga]d]_dbfbcfcaacda`ccbcbegabbdabbddedaccacdbecbecbgbcdabfcdbabafcbbbca`bbcdbc^dbccaebbccbdcdcefeefaaedd_decccecbdeadcedebdec`dfabdcec`dbdebdcdccdddc`c`db`cbbddbabdccbfdbdddceafbddebaccdba`ceeddcedbecbadabd_bccfccceddeddcdadaa`efccccdgbcbbbb`cbcdbabbcacacbdcc`ceecccabcbbabccdcccbcdbbbbcbccdcccacbcbcbdcbbebdcbcacdbcccccbdcbaabbbbcdabdccdcbccdbcabccddcbbbbbaddbcbccc`ccbccbccbdcccbcbbbbccdaabacdccccccbbdbabccc`b`ccecbbcccacbccbcaccdceecdcbbcbbbcdbcbcb`bcabcdcdaddadbccdcaccbbbdbcdbbbdbcbcdcbcbc`bbcccbbcbaebccbcbdbcbabC``ugb]Toc`hNmhSz`bNWcfZir]b^nfXWdgcbhjec]adjdOihqp]TWjf_[mDc`qnakla[eLhfUVgfogah]`cblbFhe]\k^fdodQeoc`cfhZbijdje[vfjjleb\biW[jl^aba\memce[akdjeejVdclcajh`bflUecca_\_chekccifebkn]Zfl`jhY`^jfirjd`gi_a]rYcbaif]dk^bbe`o`cleUYkda\oZhhWU`cdced`a[dmc^\_f`ecZemfc^Z`ejf[M\[fa[QWVham_[ckUl\n^fYd_g`ad\iX]keh^[kgjYcb]hZWQddkc[ic`^h[]i^]`]i[jilfccWahiZgcif^bsXej\dajX]rqhbj]ddagllcjfa^^u\]ae]b_heqtceafe_ahSbofc^gZ[jeWl^pi]l^ohgch^qld][pTZphZeU`hYjdie_v[g_l\hap_\HcibSe^^qik]eZeZXrb`_]hfejjniW_n\dZfmmfjjbidx^bfbjp`h]dVW`edU[`m_\u[XaVqkcY]_agd^mlqpcQ^_on`mmdVdjZ^ka`mg\ecZ`Vgk`^lLdibehdpcdMfd^\m^[`]``ag`]]qhUZPdX^SekZZ^d^`jfe]`gZ[g_\ckg`nch[\]qelamjcYTdoigi[f^kgmdfdp]diiqk_chX_kgfcnmVcWv[uY^^_`bcT\c\idfd\g^`jkjcYae`b_i\j_iaZalg`ae^Wcd]bbd_clkdkeik^^^^qeif_eighcif\gXeodah_aeT]go\dfijbe^jXlac_cseddjhk`ceg[b`da_hjc_^gjj^geae_e^bbigiTd_onugf_iaicce`hf\bfbj_gYjlgfcT`f`]n^[hed_ddfgaf]^ijfbWXc``c\eZbSnhhi_\Ze^adfdcdh^i^`eaWadnmicb^kbg`^vdighXjbmklccbcbci]h]cebg`elhrh[aib_`k`X_fge\chikcm_a`dmbf_c\gYdb[`]dakfiXh^g_hbi`Webddgbf_^b\hkcfg^ekchb`ahgg]hgYmg_bcc`gg]f[^gffhf`nhhkjflajchebkjhefb^e]d]gmid_Z]eca^jXaenfdagdidiba]if`_kd__[_ae_ae^i]gnj]m_``][_bRgfa`m^d]iiX^d\a`jdbk]eYau_efckcgad^fdcb_ecehgaccebgVdO`hbdcbfoh_ckh^cjdqc`cZ_fbeai`geb_b`Zb\de`hYWjdfh`Y_d`jadce`]^nc_[noe^epe]kf\ajba^[`Zm[_ebf^c`dd_^ga`ebckeihabcjkada]`b_`jccm_geehng_aidieaeggn[k^[hfe_ac`jhcYt`cagbff_g_\dbbgdTkjii^Ybcb^_fgkZcfe^_c`Zh`eMiefYj_Xaejbj^f_\bciae^^c`dbad_c_ZZb^`la^XafcaZhgbajbej_\bia_caid_b_]ajaeWeekdSYhbdct]n^kl^bha`^gmfdan_\bd\e_ed[c_k`Wfb_fdbafeeb^\dWcbecfi`feeek``fdfcce]ggjZcbfhi^cdcdafopdef^Year`dYcqh`hhpaa]d`\ci[g^^Z^Padgd^bU`ghfbb[`[fbcb`dk`cco[fb`_`]eYka_d^gddUgaf_kpbhheoafgba`_afb\gaidegc\pfj^Wg_bdbjXa]V`edYX^ctbiacYehb\nigeg^c`bbg[jb_ehecf__]`ddf]cikddiX_foladla]eg_d^a\^_dgdahbjanjeak`d^hgd\__cjfbeacaaahaheb`e_]k`cck_`cgj_aaeccaeddbaeec`cbcbbebbdgfbaddgbeabgbabcbddfecedfddfa`aceddgcddcceaaddcccaddgdbecd`dfd`decfdbbfe`bded`afbbccbdcgdde`ffdeb`bdcdadceeddbfcaddda``dgcbcabcdbgaecaddceaacacbd`cejeegcbbddcfbcfcd`c_bbdgccccadbfdcccdcfbdafdediadbdbledcedeeccedeceeef^fcacdebagcccebccccccccccccccbcccdccccccccbcccccccccccccccccccccccddccccccccccccbcdccccccbcbcbcccccbccccccccccccccddccccccccbcdccccddbccdccccccccddcccccccbcccdcccccccdbccccccccccdccddccdccccccccccccdccccccccccdccccbcdcccccccdcbccccccccccccccccccccddcccccdccbccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccccccbccccbcdcccccdccbcccbccbcccccccccccccccccdcccccbccccccccdccbccccccccccccccccccccdcdcccccccccccccccccccccccccccbcccccccccccccccccdcccccccccccdccccccccccccccccccccccdcccccccccccbccdcdccccccccccbccccccccccdccccccccccccccdcdccccccdecfbdbcdcabedeaadcbabdccccdbbedcdacccdcdcdeccdbcbcedccecbccddfb`dcebddbdecbceacdbddbcdbaddbecdbcccdffd`dceaceabdcbedccdddaddceaebbbdcccaeccedddec`bbddfbdcebbcbcdccddadedefccccbbbddbdcccecccfdeddecdccbcccccabbdecbccdeddccdfcadccaccdacdceddcccccabbbccfedcddc_dbec`dgfa_jchlhe_dfcdbbcdbahdf`ie]hcldgafcdgT`cgibc]hbmc`ef]cg`agafdg^fjk]anghk^aad`j]b[`_e`^j^c`h]bb`bldf\c_hdagc|d`a^^delcdlibce`cafnkig^ej^`]_b^`kXdkhbb^b`cefcehjafmeai`abcYg`dcehad[]Xifa]cch[eaf_cYd`dlj\bh[bm`b]a^`]c_lifkbebc^Z``ch_bgchhbbfee_heefbmkbcch`]fSZfd[_eUefZcbefn?\bt^dWbck`bX]dagr[`e[dg^jbbhn`cdb`g`bgch`gl`nj[ee_Vb_Ul`^^^YddhZdgfe_heid_]kh\hem`ffhaiiYfj[`bbim^`gc]^[cfjcked`i`]hdZjW_[calekcaa`a]j]lgjcpaqaitbe[f_hilic[fh_a]ogoah^daY]oeqd]ahkbabm[d\qhc]]kb^akf__\c]eb`dlchVg]cb_\fagb`defe]`ebkbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccagcahegc[g_^cd`dX[^a[cgdeeQag^`hgehggc`efa]e`]fdcdaac^`fac`baffe]a`_accbcbc]bhb\bga`fejiac`bbf]i]_jgcbedfijfgbdacbcjcc``^b_dihQhgdbf^ge^abbcfjgeZbacbh_db`e_ba_adhgef\^cbdebcab`g`idhce^ahhbh]ad`bbdc]he`cjgdfn`hcdjigb^dcfhhjma``a_d]`fda`i^acffh^fh_eg\aae^ghibcaccfdabdccc`cbddbdcaddcbbbdaabcbccdbbefddceccbcdceccbdbcccbfeccdccbcddcbcdcbbdadcdeaececcbbc`bbddbbaddddfcdbcaebbccdfbedcdddacceedadaaddcddedeccb`dbad`becccebcdbbadbcccdfddccaccbbbbbcccbcbceabdbcaaecbdccbcdafaedaddccedbdccdccdccccdcececbbdbbbda`debccdddedbcbcbcbdcdcdbcdeecbdbdcc`bbccbaccbddcdccdccbddbeccdccdbbddfacbacdcccccbbdbcccbdcbcbcbddac`ebcabcdccdbccdccaaccddcccccdcdccbcbdbabbcdccbcccdbccedbbcdbceabdcccbcbdbcdccdcccbbdbddbcebdbcdccccccbdcddddbcbdebcceccbbcccdbcfdbabcdcebcdcbcbcccdaddbcdccdadaddddbbbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcbabcdccccbdccacbc`dcecacacbadbabdbccbadbbabbcbbbcedceeaccdddadbdcdcbbbbddbaceecdcdddcdbb`dcebddbdbbabcbdbbccbcbadbceccdccbebbdfdbbbcbcaccdbdcecdbbgbcgdbecbbcabdadabccbfdbcdaccdcbcadcbddabcecccbcecbccdabdddbdaacaccbbabdbcccccccbfcdbbbecebcdadccaadcecccaddcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdadbddbdcccecdccdcbadaebccccdcccdcbbbccceccccccbcccecbbebdcedbdcacccdcddbcbacbccccbbddcccddcbccbbdcbccdbcdefbdbcdbdcbddbcccdcdcdddceecccddcdcccbaccdcdcfbcbdcccddcccccecdbdccbbebbacbdcccccdcdcccdccccbcbdcdcbcccabecbeccebbccbcbccabcbcbbabbcdcdbcddebcdbdcbbcbad]eacc[cafcccacedeccbf`fcdebdbcabdaceddcb`f\gd^`h`^ceac`bhcaccc^cacc_bb`gebegc\ebegabfec`ade`ciba_dcc^bcaadddh_bfaeeaaefZcah__^adaedcehbd^c_`c`cdaceaedgcce\a_ae`bccd``lbaidccegag_a_debddbbedbcb_b_eabaiedcdcaabfg`caca_bdeedeefc_gdc^bccfdcbecaecaeafccceacbfkfekde]hcldfi_^YcchcYde`igda^ikg]]d`ebhd`e_ffdfa`Ya`f]ld`cg^]ebi`gZ`lc[heehaFfkb_a]gdad]`]hjbc_bdg\fckjhj[^eiefdefagdcjh`befgheYe]afb\jd_hcib^bl]_cdX[dbjeh_fcn`m[e^_abjgaa^dcgb`jc^]c`f^Z`cbXemgeb`cgjcba`a]ba^b`faddhcc`_d_dlib]gakc[hhae_ccdad`d^fkc`edhbjg^ccccdcccbcccccccccbccccbccccccccccccccccccccbccccccccccccccdcccccbcccccccccbcccbcccccccccccccccccccccccccccccccdccccdbccccccccccccccccccccccccccdcccbcccbccccccccdcccccccccccccdccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccccccccccccccccccccccccccccbccccccccccccccccccbccccccccccccccccccccbcccccccccccccccccccccccccccccccbcccbccccbcbcccccccccccccbccccccccccccccccbccdcccccccccbccccbccccbcccccccccccccccccccccccccccccccccccbccccccccdccccbccccccccccccccbcccccccccccccccccccccbccccccccccccccccccccbcccccccccccccccccccccccccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccccbccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccbccccccccccccccccdcccccdcccccccccdcbcdccbccdccccbbcbcccbccccccddcccccccccccdccdbbdbcdccccccccccccccccccbcccccccbccccccccccccdcccccdccccccdccdccccdbccccdcccbbccbcccccccccbcccccccccccdcdcccccccccccccccccccccccbcccccccccdcccccccdccbcccbccccccbccccccdcdccccccccccccccbccdcccccdcccccccbccdbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc`dcb_dgYdbi_c`engbYWZ\``mZ^`bge\ghdk^dlh]e]QUidcd_ekj^a_e_a[bkbped``\eoecfkf`c[Yifd\icnk]`bnegjc[_aaaScb_gahgba\g\c`bocl`efcg[c_]dbjecei\jfh[ecle`bbd]hj`ag_gii^[bjcfbca^blcfh\X`ahefcekZ_e^j_kN[d[aY]eagdYj]p_feaae`\cbYe_n_be^e`[bj]ddd^ZX]jihf\ahcdfmdfc]dp^eccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbccccccccccccccccccccccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccbbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbccbccccccbcccccccccccccccccccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccaabfacdc`ddbc`accebadbdddaccbadddaccae``bccdadbccbe_bbde_aedcdfddfccbbdd`cccfdcaccadadecebbaabbabebdd`cdec^dagccaccdccccacabdccb`cc`cbbbecadfeccdcbc``dc_cfbddcgccbdcca_cdddccccfacdbfbad`b`bbcceabbcbadebdaedfde`cddbfdcabacbcc`ebacaaaebdeeacc_cdcfdacdbcbebdecccccccccccccccccccccccccbcccccccccccccccccbbbccccccccccccccccccdccccccccccbccccccccccccccccccccbccccbccccccccccccccccdcccccccccccccccccccbccccccccbccccccccbcccccccbccccccccccccccccccccccccccbccccccccccccccccccccccccccccccccccccccccccbccccccccccccccccccccccccccbcccccccccccccccccccccccccbccccccccccccbcccccbccccccbcccccccccccccccccccccccccccccccccccbcccccccccccccccccccccccccccccccccccccccbccccbcccccccccccccccccccccccccbccccccccccccbccccccccccccccccccccccccccccccccccccccccccbccccccbccccccccccbcccccdcccccccccccidg]iEdh`Srcei_]m`hda\kecfeflc`abec]Yicmdigcfd\a\`d_`hgfd^caec]kaZd\bifbeegeb\c]lj`db`il]ebkjZbgha\ba[eb^eN[ei\c]f]ajgYebdaaf`k`V_li`Y`mn^j^^odnjdnachema[f`loh\bZcdigkadok_cfYc\__b]d_bi_e_deb^_k_ac[kek`^`\d`figabfaia^ac^Y^b\i]aace`[]dif_d`nW\gafhf^hde\faab_mjkWd\koklck[dmVefkf[`rrd^cpac^UqWcW]e\ggi_jl\aflYdmchcebndcaefcadbcm]haehYZl`Y`lhe_Zi`dcab[ni_gio\a_ihcgibcgdaa[_`]fccj]\cl[mjjd]`afhj]\hbgi_al_bbiaidf\fah\fk9iiUg[][f\f`bc`_ghdef\\b`hdgliejc^^]^cX^YcIieejhfdac`cbg`cidbCdgadckej^WjbeYddagdjdbc_li`cj\ihf[cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccclQ\e_fcch`bdf_\hXh]e`mc`dgdadeb]j^^khc`gdjfbedkfaeicg]cfdcbjbdeahiahgckf`gd_bgahb^gael[_iZd_dM`]_eficci^egicd_`d]g`hcjbcfgd_ak_ca^b`eek^bf^``eg^Pdja]c\Aa_a`_dggecgd]backea_bah^bhld`dccahhg^fff`dfd^^befld\`ccUbfU\_m_`i_f_knchh[_cgccec^^f]`dr`^gcgd_]]agddgehccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbghd_ag\\dciogclWfe^bed^il`fk_]_alY`f`gchOdRdgVf\Vebhd^f_ecZY_f[`dV]ikUhWbacbp_dfdVUglfadccgcoh\l`rdmbnifkifcf`afagcccndhfai^ba`g^ihj^^j_\cmicj^fdcod[``aeai`gjdU_dq[bXYldfZ^`dc\bglecfl^d]feb`_hkebZhqbdpcf_bbdkbefma`hc^ifbkfdd_d[ame]fbTaYjfQocbgbjbbk_Ylgb]bbghgahYgae`eaeebd_XZgb^\ncagNa^_c_hftbjps[cbckhjda^Vc^gchhde`n\^_\`ogccaghYc_[hmhafflkahacYffcOdgaedmhcbdek[hedd^ffck_bfcX`cmje[bcad[_g[n_eedchhmheehce_dhbdabc`p`]h`h`b\^ha_dge^m]dgXcgabccRgUbcdkiicd\sekZ`cd]ageehgd`fhc_qqgdf^a^adc_flgbec`Z_fa_codeb_if[__eRbZe^bgg_`Zdkie^e^bc\]bWjah_hfa[_bdgbg\g[\dXbeede_fc^^ehbahfafhad[`ifj`fXgcdh]im\j\ceedg`ee`ek_g`f``jbnhdhZbh^biddidd]k]__ZiZh`edd_cc_VdiaX\rh`cagejm_iga_fibjfecgccbc\eYWc\bfkkegfjZf`djbdggkoj^fb^d`a]cfn`hcadbfpbgc`aheh^kakfc[aZkcjjd`]hgicgdccbWbgjeae`S_d[cccccccccccccccbcccbcccccccccccbccccccccccccbcccccccccccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbccccccccccccccccccccccccccccccdcccccccccccccccccccccccccbcccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccdcccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccd^Xhdq`eaV_dk^[`agi\mlcbbchbhY`_gdebaib`ad``]]esf[bjhl_ag\fgbh^^idb]ib^iafhmffhfkhejccbmjbiao[_Wgidc]]baa\eaj`abcfgS\Ye``ba\]e_U[ajf`deebg\a`_]^cc_hdZ[dga`idbhUf_]`dhfneeZSc[joY]fcbd^g^g`_cfffg_c_hdlZi`kkce`c_haag`cf^\eaebd^^\`^dbiWck[ahwb_`fZh\\Y]e^bkbn`Xfbbn[_ctglPahfdaafecb^ejlfb]efib``od`fVcenlbmeafdidig^ccdZkh`_h^c^abcL]nfZ`i\_[`[`jhjgPhlnfb^ja_aeodg]`f^mdfdVRhkfagaZboPig`X`]macbfcnaTc_jd`h`[]aadW`lWa`^b^fpli`e_g]Vc\egb`d`f]XXeef_focecklf`_bc^`j[aa^nk]naacbcgij`ahclad[ld\Z``fUdebcbfmZfumiaedgaj\eabf\faZdXkeiieb]p`iWeemlX>X^dZjaSa]^]_oT^cje\^cmedXd^kakb`dmej^acibd\kd\lg`adfxd_W[fdil]`[cfwfch\o\k`mSbc_]`ZxXkd`ndd_gXhhdillZi`biUcZ_jfmbeab^cmdk_mmqgchq`gfceg]bjhW`meii[k`lge`dg^dfd\aagabh_c^m\le\`ih[bb^_lcgmd_d_ahf_Yj^Ufg]`c_jbeiUe`^ep^belfgcXe]`beeigg[kh\fmkdm_Ocejmc`^jc_\[fk[nd`hl^\^dcQaZlgcgbgib[^gcfkicfXei`bb`^beZZbca\gbeThhnc_c^]fPjh_gdic_gbgemilbVegmcgheeldb]^^eXe``a\cYfkk[]o\bbd`P]eebbb_a`fc^[idceg[Tdabd_afrk[hiicdld_gbac]a]`i^o[ffc]`aiiZg_g`d^e\clt`[cj[][c_]hggdedejg]bdS^\_edba_bdfhacnW]n\fk`fWjaddkocadcfi_dc_d`h`dgfcadb]eabacabbacbh`aeeadbbb`ddgfg`f^bbdbacdaefddebdd`eaa_ee]eabbadbdf`cbfefabee^ccggdda^e^ddbb`gaagcbfbhcbbbcdfaa`b^becda`eagab`eh``gbdeegcdebbcbadaabbcdc]d_bcbgddachecbab``_dbgdeadeaaa`dcdaecdb`bfc`dfedacecbadac``dcfc`bcdbdaadgcibgebdec`abdccccccccccccdccccdccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccdccbcccccccbccccccccccccccccccccccccccccccccccccccccccccdcdccccccccccccccccccccccccccccccccccbcccccccccccccccccccccccccbccccdcccccccdcccbccccccccadcbcbbcbbccaccbcbbcbbdcbbcbbaccbcbcbcabcbbbbccbcabbccabcccbcbbbcbbbccccccbba`bbccbabcccccdbccbbccbcdbbcccdabbbacacbcbdbcccbcccabcbbdbcccbbdcabccccbcbbcfbbdbbcbbcbcccbbbbcdccbcbbbcbcbbcbbcbcbbcbbbccbccbbccabbbcbcccbcacccbcbccccccbdabccbdbbbbccadaccbcccbbcdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccgcYeZdff[iV`uhWg^cbgn\^dmc_bii]gjTfacmadWjjmaa`eg^gdk_`gae\c\hfc^`ffSRgcUfa\`mb_dja\fjabjYf]^dg^WWcgbme_lgohhYeoekfenhdZffXmdga_efa_b\ajafa[edZfagakecc\Za^aYhenccohk^`kdY_cc]af^i_bbg^^bk_e^_^VZekfa`g]aceZihcip_^c]j_Sb`n\]ggZdgbcoke\[g[nffagse```_]^mcdn]h\gfhfecx`eohg[debd\h`labeed^[be^^mf_cficbdichmdbamee]`mf_^fg`g^_idiZdb`fcimb^ead\ee]nibVqcgfb`ac]eclaXgabefbeec_dbcele^_c]ib`fgcbga\g\]imadce^\_m`hkgad]Y\jh[ccZib_gbkke`mia`^dc_bh_bff\[f_hcjfdajc_gb`ZjaTcageZj`bgUc]id_fka`d`gifjkbdkdfg\h\f_aaatZdha_c^[a`mjigccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdaj\leLkggj[ag^mgdjhfdhWqdciXiac_i\im\pdio`bqhacbZ^^e`d`^dm^cc_]b[ajlb]cfc_kaa^ad`^ibflhfkgflkqdiicf_^aY[nab\bhaHic_m_agjUh[d_p\ccaj[cjaU^ec\na`pbfggnglcamicdlTe_c^el_ddWkbjdX`ck`ecm`gblf`b_Y]aj\iWhiYafZ^eb`h^ih[_Zb_g_c`giGc]daj]caUac`\fb_Xaifdghch^fa\`b[[ccccccccccccccccccbbcccccccccccbcccccccbbccccbccccbccbbccbccccbcccccccccccccccccccbcccccbbbccccccccccccccccccccdccccccdcccbcccccbcccccccccbcbcccccccccccccccccccccccbccccccccccccccccccccccbccccccccbcccccccccbcccccccccccbcccbcccccccccccbbccccbccccccccccccccccccccccccccccccccccccccccbbccccccccccccccccccccccccccbcccccccccccccbbccccccccccccccccccccccccbcccccccccccccccccdccccccccccccccbbcccccccccccccccccccbccccccdccccccccccccccccccccccccccccccccbccccccccccccccccccccccccccbccccccccccccbccccccccccccccccccccccccccccfmg]`jXghcX]cmhn^k_ei`_]h^f`Y`gaZ]_aqYl\]fbm`cbW\X]eagZ^l]b]_^ogaaicVk]h_g`fXbgndnVd_chch^n`ami\dl[Yoin^ge`i^ccdnab_hbfhcbli[p^ZfZ^^\je]^hYcf_d`dijd\ccZ[Z^j_hcji]Wdddbba]_]`acias]^ecsg[\\^hbgjabbmfifefggUa^cd`^ejkZ`ci_n]ae__egdreYeghafn^dfZcmp`ed[aab^dpfbgcbcbccccccccccdccdbcccccccccccccccccdcccccccccccccbccdcccccccccccccdcccccccccdccccccccccccccccdcccccccccccccccccccbdccddcccccccccccccccccccccccccccccccccccccccccccccccccddcccccccccdccccccccccccccccccccccccccdcccccccccccccdccccccccbcdccccccdccdccccccccccccdcccccccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccccccccccccccccccccccccccccccccccccccccccdccccccccccccccccccccccccccccccccccccccccccccccccccccbcccccccccccccccccccccccccccbcccccccccccccccccccccccccccbcccccccccccdccccccccccccccccccccccdacama^f]l[[bjcd^hie\W^b`ia``eim_kYZdedWjae`ngabbfb^iic`b_Vg[bhaj^aZWbjcd^aagen```k_gheZc`iifdl\\ccc_k[Vic`\nbX]hZe_bhp\`big`nk]jb_`lkadab\ak``c`cg[bg`Sgjbcggc^eea_fjmaeie`hlbemagbdfgdh^cc`ihgebid]hlfbYg_eih^[ia]^ljkfcb[afg`ebj^f^^g]`YbgpecUZbrg`eda_kbl_c^`hjaibdmbbfnYaejbfdk^fqf^\YccccijVk]elj`ekdd_djZ`cd_nmgdZbYghlbd`f]kfcpf]g]\]_djYa`]im\Zhdc`ebpdxbcfe_cdi_bm_f^kah_gdg``Y`U^i^dgdcV\gXibnk\\_fa`cghck\]dbe`]_c^icfe[^cW`ZXTap^cbgo^_Zfagcac^\eZcecdX_]^d^hfm[bajU`^s^jYd^hTabdfoge^`hf^eeb\jlfjed`b`pf`^`]i]_d]\fa]^cdm_[acfd\hcla\ZgXle]^\aYbffcbV\`ZpXjcfdcg\dcY\`_gdccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdpVmhfbabnfibljhd\c`[e\bbebc[fdcmab[e]^_c_a`ffbi`iZdgk`b_l^`bkc`bdcae_dehm^b]d]fibkaT`cbjfjbiebmYdpg_hbjXdm^fgb]dag[mbedVewge_Zdgeabhd]_Segi`c[YjZcacb^js_g`e\c^_dfacjja_ZgeL_cc`ccbebchSc^heb`]de^bd]a`Ndag]_]f]iai^`geheabf`j`dT_`mmgfkbe_]fe`bhkgr_ecfb]iYedjcccccccccccccccccccbccccccccccccccccccccccccccccccccbccccccccccccdcccccccccccccccccccccccccccccccbccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccbccccccccccccccccccccbcccccccccccccccccccccccccccccccccccccccccccbccccccccccccd_dabgljgcd_^eVhf`g`a[X]h[bVjk`bja]g]hccp[]\b^dYbsi]j_abcdaebeiZX_i]qihede^_fan`ibtae`cidk^b\ZgdgZ[`kZ_hc_\^nm`[jjaudbabZ`d^ZVddf]ai``iedbZf_f]e`naei[cePc^]`_k_adk`bf_qbbjfgg`e_cffabcibdea\e^ccj_fcb\^]^dk`cYhdd]Ycid\ce\jtmZ^b`[bdc`Z`Z_Xceihebaj\o`icjd_Ue\ZZY`]ig]abOc]gcgj^e]m`]e[f_eheae`fih_l^fehb`^atgc_^ZWbh^bed\Yei\dhbq]dmjim__fbYefmhfcbcabW^`b\d`cakecYVshcacjgb\hdeack]djkam_egbbQ`ck`]```[lheg`jhcnhd_bbfZjbafc_aqajgZb[kne_]Xacb`cc`dk^dRackb`d_ecgebegj`a`]fbhcefafhef`_mejncqfj`bh`adoeaWbffhaffbkfgeR\]b`adeccdcccbcccbcccdccccccbcccdcbcccbccdccccccccdccdcdccccbccccccbebcdbcccdcbcccccdbbcccccccbbccbcccccccdecceccbbcbcbcccccddccbbcccbbcccddbccdccbcbbcdccbbccccbdccccccccccdcddbcccdcdccccdcddbcdccccccccccbdccccccdcdcdcbcbdcdcbdcdcbccccbbcbcdbbbdcdccddcbcbcdbbcccc_eb]Vyifb^^jaegamdeflcdbhXah]okY\iafhbZ`f_ld`fe`m_aflegen`[he[WZc[]_^deoZbacjYY]fllncfal[]cg\aiYd]if^bialamdfcde_db]kf^jefV]ki^hacTTg\jdfk`c``aal[feaigdibffjZMngi^cdi`X_gZegZtj`p[fdbdb[b]aijhc^_fjgg`eo_`^`me[l_`hdejh_k^_a_bkfegriVhcodafih^hoccWl^eaa]ejf][f㨓lvPœ{{Rcbwy@wQ`tnpqm+y_NgvZ^ Q\>w{|ss]gٸY[tbsʕ[N{RhT%<}AJr}㰋xogp{"{nyZqpjpvy8ІzywsuA6*C191-1GCPF}I$,E(@?(,2@:,?9.5F7(JIZ%h)7ܭB?J(X2{.*64,$(,ATq4/=NS"\eEL5D'%4&@J?JJI *7 A:+P'+@@?R-I(,2GMX(;24] +u';B 8 A)Q+?a[6-&+"NdN%U5kX? 37!T1?$=9/:&M9=6C,D'3+:9W+0.T4J8m=QC&;-0Q>53: +4,AjCs1@>6C;Ck|p]Kj`fUM}@jjtL|upgJuv|Bj||_(RUKgzBt_v}lrlkoX6}w`z|V^IbHynTPWNusGk^{Mjd9vmiv~mCBzxypIwWe6ZmhtW^izvjWVEeDcoY:hwmo]ǭHY_~6vn_knsƼıÿʹƳøƼ¹¯Ÿ²dzЫʽŖʸͽɹŸիīʮѕųwÞ˼Рù²ʚ̨ʀȭçĴʲŷ¦кƻ¸ïɾȪưý̹˿ĿúƬñ¸ʺŶɽÇǾѺ͹µòʳøŨɳйȰǷųÙû¶yñŻƹì˻²ôȼį­ļƺտˮºƠ͵Ѥ³͹ħϲŮ»ƬŪŴǭǭȲƩŦ˼µϦĭŰåÖƴɰȨŸĺ~Ǵа­ʭ´ЪǿȪ¯̵͢ȻĦϮǻDzú̞Ź͹ѶԳđIJŨӪļɸĝǹƳȺªƻŴҸóúŽǽűʅùǫŦҩƳɩģñƺ˴˭Ժ͝Ȧï¥̷ĩ÷ľȺɩ½ƢĖǵůûȼĴûڨǼª°ίֺǷʪȾ°‹˽ªŢ¨ɨ¾çĴ˙ǺŠͦ˹úǯ˧ȽãļƾøΪŽ˼̴Ţģãǡù\ȧͱľäƻΡźƴüΧøŭîãçĭʰɺǵ²ʦĺʥʳ´ĬȭʗŵÝɼæȘŮʹsŤǨɴʨŶʳïò¢̻ÛͻΥèʥƼĵǺخƾƢøµʥïƾҰ˸ʶĹ˕ɴ}ĩŸ—ͳѳƼýɶƵŲʰåǩ˽ęϤ¨ȭų¼үʭҴį́ͨ׼żĶ¶ĩŝŷʱEϲ§ɲģ֯īƻïŭӨóĽůƺ˹ţ°ɶͫƺťȹġ˭Ť̴̯xʶçǮÿ¸Ұþĺ­½ɲˮiĪ´ƻ»æŶ¾Ļjʰʱ¯ǵĦӫƴķ±ʧǨƽϻŽűл˦ŸķǷī˪ȵüҴǶøЦϸ˲ǿƼ϶UÙģź¡DZлĮǖһթǯǩϟĨ¦ҴįǬƶ¬µųȾĿøůǩǷĵȫǣŹĿ˼ϧì¸ПĹóѬȑǺϻȯíñɳòͬȽӵ¾˨þ·ά̻ͭҪӤǬ±Ƽ̬̫÷ÿƙ̡̹ơȸƒžĮ͛Ү˶ǭ˦͸°̳Ѹǻշǿʷþ̹ƻòǴˤƻåïĬĴĴųȲбìõüȵʹŬĿ¢¯›ŵǎʲƼ}Ҵͷ¡«¬üƪü¨žɽŶüø¶ƧĻïʪ³vğҳȷ®Դ³ͷùƶѹԬǰƫȱŪɰʻԻ̏Ǹ§Йɶϱֲƽ̵̢ЦɥʹͰƬеȸǷвŦƩѬݳ¸ŰŘ˝ոлݺ¨ʭپʲ¨կ͵ȴճʭ®ȭİʹǸ׻ɶĢɵº˫̺ƫļƢżúǾ¨˻ƴù̲ɻ˺ůž¬³ʭ³˾ǻǶê®ͧªŸǟü̪·þťźIJȭȰ֩;ȿĹɯʳij½¥ʴر®ø¾¸ͰŴúŹұ1ξĠ̠ƼǮϮķǛǷƾ­ô¹ƳĺȳŶĴ´êƵûĶǭ­δʹ¼ƹ̤ФʭéĕæʱƤ;ʾijʮƻ׮˸˿ī¼ճƼɸƶüþýȿȮ˹űëģò¼²˹ųźå·İŸѦǾɲݲˡԸŽЧŠ̾ūʪԮġǨҨөŭŵƺ÷IJԤƮĮοȵӯпɸښ̿ͲԲƧΤʶڡάƻ٘ЭױͽĵؿñǷɬįƳУιľƺٷϴĶô¡ñƫǸŽ̝ƶȸȕǻȣï̼ͧƺý¨ĿŚëùͨϴʦǿǺ»ƽɝ¾ȿưϳʭïРôͮĩĴ¸ìƫͮŹj±£ǧ̬ƯΨըʩž´̞¸ɸɳ½Žȵ˷ƫǯíůɪø˾ʧ/̦ʶȯ³è±©٧ūǡñʫҾɻƾŵ¶δ¶²ݦ̬øŲŴϽմżþûųȿмάĬǥ̵ĤצŸơºιϷö°ŵû’¹Ǻó®Ⱦʯī²ijęȭŬʱķıąĿʼƩǦʮ̸8Ŷĺ½ŵ³ǯί¹ŴƳΡɳʺθ˷ķƲĩűǾžʵʮʳƬçǮħ½ûҿìƸϧǨ͸ñɘ­ĺïҲĤǵʿ¾ľƯpƱˣ̕ɸȰ»ŰǨ¹ŭƣ“ƹɻúʦ»ȻŸ·¼ȪȞ³é$þɰƺ¶ťȷ˸œǶϏºƮͯʠͰʰϿīѻººųʴɰ̦˺ܮûɷǺǬş¢Өʦ˼нƢ̮⾿˲ӖˬҰѸ‚±¿кί¶ǽȹǹſdz͹Ϳ¬ıȶ¶Ǫͥëʷ½õŵŨźȫ~ӊȳʭ̨ϧэìšƦƲıД¶Ͽǹё͸®îȫͶȱIJųķĸɺĭǺô²ɳþΦçͲдʝ%ͬdzЭϼμž˼˿ʫʽȫٲ4ʨͤϺȘѧµĝ¨ɟ˷˺ͺ˛½ːί̻ƫɻ˷Ÿ˿;ӽDzǺʸưƩϥºѷ٭̳ǿ̫ܲͱӌſϓͮŔΫҷͨƐǫϥȴͮȴӰԨdzɰΩ˪ͯ۹ø¢ʷʶƯȸɸ͵àɹźƗ»´ɨĹ¹ķ+şŸܯŞʰ϶̶›ʗïƹ̺ŭ«̻˫ͧαȷΝ͝¥ĸ·ŶĪɷöƭêĿèΤŷǻvǘýťֶȰǾðȸƷźͼ̵ѽũé̸Į˷Գ³̹ΧƹǷϴƯ͟ʺé̢Įƫķɰ¸­Ǽź´˹ʬ°̭ŲܺȧúƺĶŸȼ̾úªȻĵŞŸ̩Ÿͭ¬džûWñÞ°Ǯƿ³¼ȫîĵûüͲòȬ߯ýôͽǺаͼ³ȦúɿʳЯƧǶӜŶ̶ǝ÷ŮƿĽƝèˤƬ»ǽūÞʛªŠůƽϭóĒĿƻ¹ǷƿĕͰƴȰūĶǖɲ̮ҷƷĸɩȶõһķƭšƵ˴Ȍ÷éîѺµ´ř¸Ɵنƽ̼Úóҿǽþк¼é×ɰǼԯį÷ȭ͵Ʋиέÿ̱dz³˷DZ®˸ʹ°ò´žοḲΨѠȦɱҬə¹ĿĸҰ˲ţħ¹˸ԪŲʩ;Ɯ«ж΢èóѴľȶ̥ƽɲƽ¸ͻ÷٧þã̽ѼմͿǷߴϼ˷ßϯĥįȽŦǟűŬªͶֳͯæȥê̼˥͵¿ήƵ´ŮİéʱȺ˻ɵ̱Š˥÷յ˼ƢˀڹƸг˻ӳïv̱ŸĵŶ¾Ȥȷ´ɹƲзūžù̴ʺƮбƴɸżɷȮȾɴ˸ɦĿîǭܞ´ŵșǯǴùҽ´÷ŭ֪˨żçɦȟɽǪǹ©ϳʸ¨ƯźΘñ|ȨŹ׸ʽخ̬²½̳úåͬʺ˨¶ȤÿƴѺȯʸ¹¾ӯʱƩеכĸ̶γ˯ʸºĦԫի̷ʮэƹϯƢ͵ʵ³ɨƫ¶°ĬЦñʽı޶dzjùǛˮìϼׯͫũìëȨİǴɺȤĥĶͧŷƬƳµƷ˺ɠ»˪ųͽЩԪůۺm¾Ŭ͵¡ƈµ«¥ųÞȢǾƼĜóҲþȰżijĴDZ÷şŹĺηɬ߯ëǸ٤óȴ˰Ħʠɼìɣќ̧ȱƵƚǽ˱ʱóêwȖŽϽʼũþɣøȥ̸Bڞȹšñՙĭ˾ǠƫɬϧijͻƯųϳȮǵü¼ǽǶȷ̲ͺŧĵ̿Ĭӿʾ÷˷ɬĦ׳ɠàƤ%ŨͲֳ˿űȺơȴ̝ĴžӸĹįɴʸɴǴ&իǹ¯ƩЯľɾŹŘǫƧ֦Ⱦ˧¤Ğаºպúʰ²ìƿŵȼ©ŽµɲȩƵǾɣźͦƳơȸȾǽ½±α¸ªɽȾħǻººǤŷŲľʰůǠůԫȣŹ߳̽ɸ˻ͼǸ̦ԥż̯ǦϫȵؼŲԵҮԲ߿ʱʿǦʹʯ̤Ƣȹڼӯ¨ϰĵӬӭޯʬȹȸȲǾ±ѷͱЫӳDzǤӨǮ϶þũ·˚óǿŬ͸Ƨưöķź˷ŧùßͨǼѻǷƹµ´ķҝµνDZíıyȲùʚáμ±ƌó÷ÝɸƼεȨ¹êнջ̺ƪƺǴ̹ԵʰпȽʬ˫ǿηɳǧǷ̸ı¿ϰɥ͸Ǧ®Ö·˨ͻ±ʖŸɹŝճɩѹĤïǸϯԽטžȲͿ̴ưų̨ѹżܰͶ͐˭ŠĮϫӹñȡ̫ŝΰòƭϰɿſǺɯĬƿƼͿ¶ѫΡѯǦҵºʥĭٸȾ©ƴʹé˯ѹеи޴пϭҷðحԮĿǶŰ㵶ýǴйˮְɬǯܺϿ¯ìϡµȵ˲û̮՝Ĺ׸¯ʹ˩ԿܬƽĨĦǻ̸޶¹ƿñگ²ƯȺľͥ͹ȲǵŒưŹϹξذҺ»İşОǯͼŴѻȮĢƿʲַ̪Ƶη³ɥí̫ͳçɥþȭü´żǰɵ̡ºzθ³ɿĹڦë¨DzƵįݸȷDzʱθ٢֤ţȵ¯ѽij¡Ǿòªȭǰأ͹Щŵɹ˽ɺżϹͯǾȼǸɳʺįijŴ̰Ýε÷ʳ̸۳ư٭иɮȵïɹ±ðʯαǠҺ՛ĺǯüƿȾЯñòׯ˟¬µʷͷ̽Өǵ¸š»¨óʺůʯչ´Ƶʞ~̵ɾŻƸեʹ㹮ӽם϶ͲƺžΜäüƹɬıºȴЯȬĩԵƩ̱ǞŨʱĹ۷ʴaöğò˰㻭ǬƵļǡҝŶĩߞŖȫԭǼĻ~ʠǽ̱¸úͬ´¶ʺúç͑κý̳ţ÷˞–НʶŰǶ®ƭĶķ®©ưfʮŵųʿǹŭʿ²²˷ìͫŻýϫķţĥù²ƹƭǴ½­ʵªūxȗŲɶŽĵûºŽƷijˬ°þòͳɨı˱ȮƪļðǥµǛ´̕ʿܼįÝѵмǛ©IJdz̽ȶӿγĿDzԨǪƬìǫijåƿ÷ijƺʿèľzùƜî¼Ƽĺ«ŴğżƞĸƴβKɷ̲˺İ˗¼¸ƼÛijɬԭūɝĦʦĽôIJ¦ॿ¾DZ±˻ƹϨͲŲʡվDZҰȽ²øŷҫ̲ʤ٭ˣȬƵΩŲĵɗǾŵΰӳ̨ƞ˵ɵɷ³ΨƯ¿ŬƝĦӳϲǤƹ¾ʼºêıȤʩëĹĥլκĵŨñ˺׿øMŷӦʭͽưɼưΫԴùǸȫŻɵôɴ÷ȷįȪ½ŔӞŠḷֹ́ɲúơȣȸĿڦŲȣ˾Ȟ—°õœƧʺʸɸ´͸ϭȻɾƾƛŲĨƬ¨ƻɲƫäȱtŵͫóȳǯǷГȲϿŋȼŸĮĶDzǺɽƼѵ÷ƺ¶ļDZ§ê(ƵùˮýƻçɿȷԸпþпƷɾȪŮúǸıŭƲҮǚǶŵĹɴƻʮ©ʞŚȭĠɾѽ¹̔ȷߺ¾Ʀ̹ɲøĹа̸ŶɯƯғėƺͻǴƱüʸùýԳƳ¾͘vζ¤òʭӼõҳʪ¼Ϛñ̷\ūϣ̥̤ŨʯǼſŷóƸ͙ǺѾʨȤȾŹƨǵ˴ѝªαƷq½ıͱūĦǷĭ̹Ǽ¦Ľʝ˽ݯúǸĔýƲķ¾ˋŸƱºƖ¦ĭϭµĪķɹþ˻ǺǗΓƙƥΚŵõε̱ҹõ̯ƹçïïºƲԞʺԳÿùźȥȨƧðɱĨñŻ˹»Ǹÿ˵üκûí©òʻǵîø͟ƷҺƟΫŶĻ̹ŽʪͿɯͽɽˢͷ˳óʳƶȩ׸űǷԼ̯Ҫò̯쥺ɱƹ¨͵¸˭ðdzϸγſ·ßǣ˼nôʪ¸ƷûǣƩţʶùôͪżţƠǭƷɷ¹ȥŮïɾ͵¼øì½­ēǨīƩƦȤȫŦ׬µɬħȭ˺ǯǬȾűǸ½ȧǺƮ«ʳƜśÕƮȤĽǮպƻоȯĩ¾ƭĝ¢ĵ˙ŻȖĵ¨ʾȯџԿͷźDZò¾ǫâʱŶ±ı̹ɸ͸̥ɚ岭ʲܹ̩ŪªͺǴ̰ŴðɬšƵůͬҟǷ®Ÿůõ˸Қƶ̪ѸɾŤưͽý˯èĒųƶ¿Łúɭɹ˙ƿǠ±̮ɻ׻ęIJٹ~úѦ©¬ƴ̭ǰŮǩɿʤnƲřʴ·ϫ˺ƮѤčğĹĶɣȲDzϿ÷óķ˱͸ʵƺ·ȰƮɳĿ±͋ŵʳ¨dzɼ̮ƴºɭŰϫͱĨǼȹ¬ɽƷȤǵ˻ƏêƿŜǺƝ˰ƦƿĩɯƻƴĮ¿ǽƯȮŷǪ̈ĪظʹǝĮƴȨʹǻʹԽžͪƶ½ߴ˳Ȱó˷ˡϜˢǪıĪξƲºDZ̷˨ɸ¨üſȻ¯ŸðùëIJҹκǨʾŽúƼ`óت˩ȯįȺ¡Ⱦůŕ˵Ǿ§ļƿĴгȝ˪άõķðʶǵŤɟűƴگ!šϰĸ¶̚IJǰá͠ѳ»÷æзȺǽѬƴӹϻϷͷѳºѲṲ̵̊Ʒ϶ìȫɹʽºĴ˸¿œĬòŲͬɲƸǐśȜ̾ɾɫŵɽɯǷ¬ï˺ÿ̻ϼѯ³бɨŸı%׫ߩ塴ƾõèħ̨ˢѹØƮƛķ“ɴȿ¥­¸ɷţ¯«صļˣɬԬǶǽëܮϲٛ͡Ù©ΦŮ϶»˹ҲɹȴƯĿնʮ·¼´ƽʫ͟ڶ˿þ˿é´ȵ²ȪeǽȲŴƢ¡ӲůDzϜŮöȫò¥ʒðŬ̢̜ãǴ¶ĴũóͩĶƤķƼįήˤmάųį²Ʋĺӹʪ·ųƾͫżŵ÷żŻ͹ūǴy±óϾƻʳǪĩο̨սԶŴūȷģĭúùųï˱ŵʹ˸¤ƫƽ¶Ȯýż¾űİĶʦαűŻɸ˰ȯѷ˺º¬нğʩĘΰ̠¾ŨµøĵƻɺҷȹۚřêƷĺøǸô½ƵɼȲ®žp±Ź°ǍȪšƲdz¦ƜС}Ƨ̱ɦij²µ˭ƭŻĺôǹșǻìþóϰ೵dzǿƶÆ̧НűǕ ֦ȔúʢȹĹȲΞ³ɬżĭĶʳ̶˵űۧѿùμ͵®ƯɿӿùĸĜ²äƺ˪Ƽůүðǫ¼İٶʧʙ֚Ľ¤ʰȹ×Ĭ³Ĵſ±¥¹ĻŧʧǺǻ̰ȯÖö̳κǼ²ɼ˽ͺĵŵ¿ŅƧƸûƪƺ˾ƬIJ±ĭƿʸýõƵ̾ǾźͲɾɼϫŖ͡ϳ̂å­ğʫķĴǬî£ĸž˳ȶƷϕݻǮǹǵ˼Ƭȣɚͺǡȩծ׬ΰ˼ЯƨϚýȹǦ«ʾîƱĹԪúлµ̶ɲϱҺȵǧƦĴɔĽzƯ»ϴɽ̹´ʞ˶ĈƲȨĦ·dzŲǾʣğž̨ƢDZȴū¿òѪӵɴɪͯƷŲ¾ɨ˷üßƷɬ÷ǡʾķȽƾĺƟŴڴŷǧƴãѼŰοǷα±͖ʴ ƭ׾ϧôΣĝǘȯɰmʹǽйnϻêʸYɮʳɒ¨ҲÝſ¶ȫęƿѵ½ȹǻȦ̮¶»òŻǽĢľڱɟƱʥƻšĹɯԪǰֱƩøε¶ͶʷǾ͹ǺŻIJծѬ˰ҾÿԬȮoζĞԴ̜ƪãéͨʤʾŹɿ¬ͭЮȾ¦Ʊɹ̭ȹȤȰİ´ƲɢŵȮijūåŴͼ®Ѿʻ̰دԸ|ų±ĻͰݰ⫼æýŬɯūѲκǰͫȭ̵ʶ½ȺȫĽβŽϽĭεպͮϢز˷̮˧ʵŸͷǫҵҿˮĿˢ۫dzƮ˸³ѷҤçúħѫŷƬªάֱȹӿ¬ˮİ˫ȼδ¼ƾâěѹɸǯŗμн§ʝ⩸~¤Ʊ¤ĭĬƜ̸Μí;ȝӪʪĹªȲ¬ĸȯȺ¬Ļ¦ɵĹŵƴ£ɹ¸ȷ¥üťǧЧø˜ȧ¹ʸpǴдåƲĥϦdzīĕƀͽȺɵúϻɸ֥˵ĊҝȪʟȼƦ̾ʫľödzâi£èɛȻʰ՞ƪIJ÷˸ǫƲκвᱯײëЮ°ɰǣгũմț IJиȮŨĶ̿ʟʥ״״ƯȸǶ˵ٮɹijǵǷϷþʭɲϳ̙֯վƪĬź¾͸¹̩ĭȽ¼ƽϳźϿ۸Ъij͢Ƶĵɾ̖ϳÿ̵ʷK¥ĺǩЙŝǹŸƹʽƾɫ ħǛǺIJ˯Đ̽ĭ·áõæŰŹºij̲´ΖɳȽøʼҲЦ¯ٲɷӭýĴȹƺ¸ĽİΨǿƹ¥йѸİ̱»ȳպ ŸµųĦƼëŹȥòƲŬžǰɶ÷ɫǬ˽ĝ뾻ðǷˡȾȶ|ſ˷·©ʼɶ̶ɱ¬ѻCǮèɰҲ̴ɯƾ˱ϮļٸʷİȽƳ¸ųŸŦжǼƷŭ˹Ű¡ƶ¦ůİĸǵʿ›̹ƱȫӴ̹¼Ġ®ô³ų¹¾ȳúƮ°ι´̷ϱȴҶȳýǰ­о̮ÚŭĶåťʀʣû¨ųȭ˟úʻϻ¾źŢŭƸʯɢ®¥ɳǼТ͸˼¶ײ¡źž˳°ʯ¹ε˺ƫæøɼ׳ǎžǺí»ϴپƸƹ¹­ù˺ͥǒ͵ŭðŬóIJ½ŶȫƵž:˭ʳίĦ˼ɥțֿ»ȩįɫ˳Ǫȵ̻з®ǵд̤δ²ǺŷøİɺÉҮɻŭʬͰݰŷŬғնðͥȝȲƨűϴ׿Ϩúżĸȝʳ«¿Ʃ÷ä֬Ÿʩɵ˰ŤŘĵЦƱǹêǬȰϜȲͳѷ˩Ľƽ÷IΦşЬ˜¸ŵśŬιϹóƫ¢ǹƿƧʰ»ƱʲķȱɷˬpЗɱǤŽǷŴÿǶӯűò»ĩҺǹĻ٦͵վ˱͸ø̮ʾǫɭ­÷©¹ˬοýɾƸŴļǼƛ®ư·ñȷШʚضƜĤDzϬκ֣Ц͸ʰϹɱϪʹ§ʱ͢˲šîǪ̧ųžŲįēŲǴijƷ˰µöǤÿ°¯ҽųةƹٚɸ̾λ¶̷ŬƯկƵ«̨ЭśǸ“ȱ§ƽַ֦ʷ¾Чӻ»ůµɴǯŲŢͻٵ˵ȿͭҷ¬DZțضЫï±ƻ⟲ưøİǬ̭ǶϹŨźʱ͸ƼêڼԹ»¾½º̶ijĨ®ֱŻį¾ĹǩĹƼĶGɦɲҺƦɧŬ÷ӯʩùô¿ũřʞ̭ƾƲ«®жûôȣ¬Ķ¯ɽô°źϷæǧ¹ħ³̏ɰû”ʴβǩèëŵȶƼĺòį̼ضŷǯ˨ƳɷʠƩǩɶ¨ijƣóòͪĘɣƬ·ø˻w¹İĠĭĕȫÞ©ŭ¹Ŭ±ɜհȭǴɮȸŰ²ȴɵɨů“ƣжijŀđĿÿҤɨ׹ĢǸŨƾµƩĶĻɪϹʨøƷ˷һŴ˶¹ƾԱӰӰȣɠŷƸɨ`ùþǴõ¸³ĹţļŴͳŢưĺ´дͰĨÿΥƼȵð¿§κƽáØʬŲèȘ»cĚиϧɸĮ̷ΰɪ¿Ť̹ƹűýȢִɳĜ˱˻ï½ӴżƩŭȲ̲ƳºޯϿָƳţĭƵѰҵХȶƤ̺ǥƼʺٸƹçȸᮾǢǣ÷ɹķòǺزñ܆ҲóíĴŷƜɸ˻ŹƲïƽˑǰåĹƵƼǞƼ;ĢęDzŵƿʰ|Ǡǩ·ɲ´Ƽ֭εǹƹϴ®ƺźȲ¹̬ûŶέżзĽпƽ¯ȠλNjğĺ߹ȷ©ðɧUǷڹƸ¼ǽѱŮìƠŻ·´ӧĨŰŬ˵ªɣٿ³ïǻòȞ՝é¾ǰƨ˓˶DZϤğ1ʾĤî¯÷ɷǰ˿ôȪ´Ԧզůͨıɷ¸Ѱ¾¦DzǺ̲ɖġçųġҺƶîǚâкöֿʿŲÖÿպĻ˵תԳǛƪĴɼվĸз֜˨õΪĬԺ¼ȲѢ˿Ǭλȵʦ1šü̴մǼ˺8Ǽ®ľǼJϫҬҷ¢ŝɣīü̴ôòؤšɰʭпͭƩ´ôżаϫһ̶ͽʳֳȿĪƻɰľïȼõǬƾ̾ŠǦǢþƺʸ̥Ԯ˽ĸɷΧŸʬ˪ʱʸưΪħМˬԤ̂ͣ¦ǺøўȥįĪǯǶýɷƵ·ʧèáʲDZĻůȯú̸½ ̦½̼ý»˻ΰͲµº¨̧̦´ǸдóڶگζΨŲлͰBǮɲȓʨ¥ʾӳȯڛŪƼô¾ğȸ̭ųʯ¶ïƱåDzĵɷǺǺȮ̿èɸ˪ýƩśĥȫ˩¾­Ƭʽ{ŽΡӵȮú¦λþƬŹűƲƙͷɩͳȴ¿ӳšɳϻʽö̿ĥǭʲȫƟöɼȵ·ׯɿɱžǴˢõƸĻķźİñɴʱȽ«úƻӶ´ɿǷѕǦ(˾ǚɥķԵزҺƸƿɜִǹǵľ±˪׈ɛճ޳ѤõƴĻĭø⡿ħõ{¼ɑҲò˿ҬݽʴóɩӸĬӶõïпǹºþ궨ŰĽƵ͵ȶǨɥͿοºïױث׾Įӿ̻ư·ѾϸϽϺ׻ŜմųdzεղͺŷΥ̸ȹɽڥ˘ɮʸӨڰͶơ̦÷ʟ˼Ƴѯ㼭ḭ̈ɧŠԳѱͽح²׬ò۰ԼʮлԻ֮įƴɭIJ̽ΰʰȨƻּȥȷʹȨ̧ܬФϽǬüʬЩ׽ƪǨڹخȻøľܽŸʵΰ߭侾ֱ;ϰԮʼ̥ƥ¶˝òdzøϬݬ·żеĸȻȜɻª˵Ǯ߯ŴٸêȬǹŭǢȽ̮ЛحثͨƧެǻɴǺӼǻѺƵ¶˳өɽÜ׿̯ĞӿҾ ̲Ͷఽ̳ǒЪʦ϶Ӥóòľ஽ӴǴԯιȷĤĨӰƻŦħžŽȲĻëƳźܷ;Ǽ³ֽǺøȭɧƱǼ̶ʴÚƨĴϺѰϮ֬ƴҦýǰv˳̋ȻȳâʹŷǬ¢³ǾûɼɝЬյֿŲίµŲ˺ǫծˢ·δĿɱɼǫ¥˩­ąWùôǺƱ§Ȧϰǭé̸ֳϬſƻìѫùɾ¥ĩѰĭ͙Ө°Ķò”ß̙Ǹϼ˾wľǽŤ˫پƩ­̬͸ļȮ¡ǪָưDZʬƞ°ͣȾȣͻ±̪̿ѮƱȱʬƼұ¸³ҪũİȻŵĽɬƺβƦħʹŷUãəƷʪĵ˰ũðʬƻí¶ʮʼñƮȾǢʵƛŮƣê˺IJåƮϪαȤƧɟƭ´̴Ⱥ}˩˻ͽйνΨȷdzɹʵųɴƴŰɺȶĸž±ȧʭâ̹ũǾɫi²ؾɽŹ­·ؿϾƵŴƴDz«£ŻƽγƷƵŦŹƹĸƿ˫ͦȾ̥Įŷƹ´ζƱ˶ɿƱ_ʥ̼Ⱦȝ¾ijŞƾíǹó»ɶðűžѴŭʷzʻõҠɹåŢͩβŶȱ̤Ʒ±ĹεϨƮüؤݹʞЪӧ˲DZʟìϙɷòúǯЮʪžĸſú¾Ɲ̺ưѶҢƬƼϺԪǷȵϛǼǥȬ¹ʭƼɳõ¥hẕĥƾǵ֢Нɥ·ʩĮŪȳʤȴǧʺĨƭǛܱnj}ƷǹƱƴȊ|ؿ޾żR×Ūǣñ¹ʵ˸ǚɩҼǯ͸îɮûðȣúīȵκįé·~Ķ™İö²ͫɺŮϺĦɯȵЫɾթļȾҰĥοȾȷñƮʰƶ©˳ƵʬĶyˑɧʲҪDz²׮ęDZģڷøŸwðɪǹȵɺպªôȯŷѲϢijЮſӾʸưøŬܻ¹˧ʵĵż©沶ݴһ˰ȫ“ýզǬԭĺԨǼºųʧƨūՠȱǫŭƳļȭºŮذٰڱ̱ƵɲøɾѴɺδɲȼзѯʠخү̲ͲͳȰ˧ƻͯնԶǿల̭ʮОʿ̫ϫ̻ñɽDzêí¹½˵ƾѫƳǵͿxͯͪþŲúкҺěðñŋáҲĽֺɶǭƮyٻɾɜðήʸķֺ͝ĹŲ٬ÿǹαɵ̯˯ìɠ°óҰʥ̫ڿ¦ϱð;äŴɱϤ˶ðԯȣֺȾϺĔʩнٽɰϟŲûëжƸܲջ¦ç͸̫ˬþҮִзĽźçӷհөÿڶѽƵȓŻöİâē̲ͷ±ɼʦǷΟȧöǡŶøÔȿʸĤªȱíºԵȺǢѹũҭİîѭж̙ϯȪƪŴǹϨҢʞąʳۭ˦ƨװþϰӼDZijнķ˸ȷƭ֨ÿʨŨ¯Ƽâĺ̰Ȯɰǵʴβ˽ϝǴ٬ʿɺ˴ľ̼ȴǿʺпƣ˻¦éǮӧϷ;ĭļ¨կºԎĴͱȲƭڦ¸ĴǻӶ̺ëŭҠȶ̿ŸʰϪ˫ٰ̩ijǹœ«ȳïʉ̿IJ϶ƫèǫ§°oƨɿºūƨȰķɴưʼǺžȴȻдѴīٛћDzȡͭ՛ȣˣȳȹɲ˥ɳëá̱ջºгɿ̪ĿݽȥĿմȴαԪεɲʮݦųéßνܜɾζ˻ַѳñ®ϷˮƬūɺѨĴڮĵɽIJԳȭٱIJײǺíŧ۲ѵ˴ٯɹğǹɬªĻòιƵĶĸǺƯ·ͷDZǹ̹ƲdzԻŵ¹{Įɮĵ­úǵ}¸š˻ľkϴ̻¦Щ˿įļȱͮḳ̻̌Ԯ˫ɸ˰ºƧ̫ȽϮȪʰœɶͰšɰԳȞƺýɿ£ŧѵêķĉȸêĺľķȷ۸ũŶªȹʹɳ±ɜ{ԺġʏƹſŤȾѾûӺôٜŧӯû˱ࣶΒ°ȫƳɩ͕؟´Ҳ²Ǿ۹øĹöιͶְ̡ԸʱӺþǺδ¸մñ˜²ӳĭ¶ȪʫŮŻǵ±²ö̭Ýū̵ŵǼϰgʮź§ͨƢбţϯҭæ̦˥yƳũ¯ţĬǴŠijê̱ɸèĿЫųŘǭͺôЬ̰̏õƲ̮Ŀѱǵʿů²ĠʮҲַʇĵЈʌʨʷ‘ϯѧ¨İǾ¦ǵàŲǬŪòįϻ¬¶͠Ʒҙ½ϵïɳü˲IJʪŨμ¯ʠĻɷŬɮƵȦĦϮŸÙоɞ¸ֶОƶŵϲ̸yk՞˰³ƸѺģϤȸɨĮ˺ƺ̰˯Şɿ°·ɵǯͽøйɳǽ±ȨȮƺĻŭǹ͸ºŬĽųĸƗɩ{ɢƜɥDZŪĸŭǹʾœėɾ˴ӭųȹ̸ǰĺƽƨɶưǯ̸ƮʨƮĵŭêӦįѫɭĽÞëǰ¿̵ϼ˹ѷıëĹ˶Ƚ°ɶ̮ΧĻʰ̶æΚӨåƥȽȪƈŞбɰŜ˰ļ÷î˨ıµz̴ʫĻƽDz÷ïƬʘ¯ý¿dzȣ¯ƿȹŹȯű̱ɷɽ÷̮ƽų÷Ĭ{ĸşŲ͡ĝɺǧƹȷ¤ĮǽƳöĶ̰”ǝſȼЯķþƪ­ĺخĿäβ´ϥˣʸƢſȯʾ»Ű´ǭůƳѰ̨çƫƫíſƏ·³¶Ⱦƹ®ū—ũȸɻ̯ʲdӹȳ˸ĶØȱţƼĮʘƹʦʰ˯Īҵ´ɨϾʚţӬÿˮýƶΨƸʡȶĶëѿ©ģȿŹ÷˷ƾŻŭηɧŵȡŶǪνδմȦóʿʭӷƹǪ׷ĵӞɿδðҫ˩̙¿ʻǴô㵹ֲҲýƿ͵ĸڶɽپ֪̱ƽӻȱ¶ǩ±ѷŰƩʸɪϮͿòȦƾɩIJԺӺзɺǶʼıǴľ¿˵ûɭϷƴϗŭ̥͞ŭɱėЦȺȽźúì·ê÷ěƾģث«ϳͮö¼ǻ˶бˌн̥նšƽƼǥ´ɸǺÿƵôʺȮžgĽϱȱǩƱÿ¹ҊêŨʬ٭ǶŲʻȨʓìãŶŝ̶ɯǶŧ˨竢ӿŵ¸ĺšҳƹdzõ¾Ǯµ¯Ħn¯ɨüŸ¹ź¾˸ʹɟŚ͵˒²ͪШɮͶʅ׮ɸȣưϛʣ§ļĽ•ˠƩĨяʯƴȼпϱźĻѬɪİĪҭȯִjȧŹõ̲͹Ƹ͕Ӹ¿ťƯ¶ƾƻǘ˿˼оì̲ùʢjõÿذŒijƻȜȫ°̧üŸǿȷƾ­ðȿȵƧʸ´ŻǹŶǪĴ¬¥ƵļxƵż£īϧɩͣƻʳtȰ»ǮέԻĸͯŻƿӯͰ°̿үîҪͨβκƲ̻ɛ̷ɲƮöΡȳĠ¥ĸ¯βŰŸ°īȲܦ͵ȹ̬çϫެȷ۷ŻͳΪƞͪǬӧú¿İֻŵѷÒƶʸþÒĶ̵µ˸ʹIJϱŸҺ®ù˧ϦǬȪͧǿŴű­ʲµƷïȥǸ·ԮµµİڽįƹýսΨΨպƹܩݼïӧķɨŽų³ϯòʼִ̳ۨͮ˵̯ΩЬǷƸ̶ðηзƤľȬүͱ²ӻȮ˴»ǨŵǷͦȰɷ£ĵǬ˱ź˩ı®n˰Ĕϸʮ̡­ѬĶǤ¬ƴ̸àģ̖ƹÿǥǨɠʬ­ʬ¸ĵŷձս̶ƹԽ¨ŘĶʭճÚIJϩ³ؤɦː«Ýè·ǶɷœͫԠ´϶ɪǛϧ¡Ӗɬ̽ɸüĴīũ̺ǸɳĨɾĦЯ柵ɲѿƾǻƛαîɦ̾ġĽȪȾøݶÞı檯®ƿƬĭIJݳڮŰěıþͷűǻʥ÷̣éȬңĸ©¨жëϮæ͵½ƳƋɲʱį[ºūĦ¡wøŲɬʞɲšͲü¾½ɾǡŬλóȪǣĭӪǶɧȹƐɰվݩȿ¿ѺûŹƬڷ˞į˱ȳƯýơģïǓO̿Ǿȯȭʭлǽϡ̰ƥșͶ˰³ĭȡýš˪̠¯έŹʾįŲͺɣīij÷´̶èϿͰƴɲ̶ŭѭÖưȼƼĨݦͨǖƴλշ̲©ƪǠĜ÷ïڽ¹ų²ͶŸàȢíѸþƣŀ׿űç̭ú˪ßʨ™׽Ȭrͬİ­ͱ˝ɰʸžƽɞĴ³Ĵïþͭ…ŨȰŶ~˹ֳùƺ̹ηðǭʳճµխʻ­ŽƸϡõʵĮϷȩֹϝưpեŷո»ˬչºӪȨγ˫ýΙԲȽŠĭĵüÜøƷĵȶŬʸɹŦſûʴĬɭT°Ы­ñ˩úȼ˹嵻Ʒп̓ȵ|Ʊ[ͱŶɬٶųƾñļɹһϵŵªúʶ˒º̬Ǻ²ΦνýȼͲȦŲøҳǷܫƸ±ǽ©åȻƾ·ƵûíůůǸģ͡˕ƭέDzƹȳŶȾƭ̵·îԬ״׻ɴªƦȿȗOɭƸȰöķĴ÷Ϸ˱ʳĶŷʮͺ͹ѦǖӶ˴ªۦƷóͭһƾɬȱƸȰƸŭϮƼ˸´жƱ˲ɪԥĪûμزЯǯ֗Ŷ|˺Ҷ˻öŪızɌәȶóǹɺԽµͱȣĽĸƺºõÙ½¼Ʈ¢˵ľĻƮ͹ʡŸƮĨʲЦ°Ȭɽܫŭ¶ªïϒEǞõƬëѲȩĵĵȯŹєÿĪƶƓνƿªШ÷ҞζĴǕȣǬƲȰȣ}ɫpſǶŴk²ʳͺľѷŠ;Ƭ¿Ѷǹƴ­ǵĥƉ̰ї潲ѼԳŞϽŊƿʡǾлճF¢ɹв͵ɫѽ¾纭ķʵθɾǵЛ٬˴¼Û}͹ŵ¶ƶìźDzõĴľòó˹·ɰdz̵īʟ̐·Ęǻǰħθͽü­ˬº˿ô°ƹʳзȰìٸĭ ؽƴIJ԰¿¨·ɸǾƷεЮŷưוիȱ˷סϾЩ¹Ȫȭȩ©ѥӳͩDzıͭǹʲ²Ƿǿ½ʾúƲ˵õȤóɩNjÿƸǭˊȹêŮȹƭΐʽȶƯʲƭǾëʰ´Ϯɼ̻ɖ}ļŵ¨űɼ²ԞįĬºˠħ˹­˽ĵǶİƲƢ£¦ŮƧëĤȼ֧ҵĨʸɭ˯˰ªźȾȹѻó·ѶεêͩƻǾƳǝ̣˺ª̲ɽ̪˸~ո›µįëɮ˱ϭƾķȻʴɩʷ˴ǻǸƩкȼIJĸºóŵҵʷ޺ǫծǫ̤̩ʢ.Ű­αűŶȰԻ¡ƱҴѪɭѩʱ´˭˾Ŀļŗû±խɫ;եçеͰ¥˗ͼȯʾĶ̫ȶƱĶDz˽ͯ˺ܩзŽ˩ަҾץ¦ϼƧ­٭ӱ¹ǶܽūôƥŴǫˬ­·½ŹͲòżóǵĸƸ̲ȰQɱİrïزϧéʨĬα͹ĖûȻ̘ɧռ׸ʸɅƯոׯǺñڬϹı֯Ģdzˣs™ʭױܾŷäʶɧĝȹʫ¹ζŠϲ¾ŽʬóͲ￰²ʺ¯¯ºìúĴíƝĴŬRҵ͕ǰƯǣĭƫͽʵï»ϻ̲̾IJȻĻĿͺʽʺ͘ò̵̰̺͵Ϲȶ˿›׶«dzҬ²žĮĽrѱʷιİɬǩêɯˡͷüئȶʜˮıʽƤøŰѵȥ˸δŲ¾ɩǜò˳·¿ך˪ɣŻžȻԶΰdz«¤ѯézΦƺòƹŸæȲ²ŮǩϽßŬȱwŻIJû¸̡«âûʺ̳¥ƿ·ǤƼôĶʬʸǢŻûܴĸɱo·êحîּƺǴİξк˸ț۱IJܦǶö͚ӲƕŤʩ¨ͯгƭɗ¥ů¬ݯ޸§ҵ͞ŴӫôƾyƛcѸҾϱѰǬʬײ̥¾ǰÛɼέIJ³Ƚĵñ˷öŸ¬ͼƼƭúӴ˫» īƧȻδǪǯŪ̦٦̫̩ŤĬƺļƔý»Ųſ³êǶåŵ˴ƬŨƸ¨ĩʴǻ̽˳ѱſ˭¤ǹsԶ«ŭѺºüʯäıƧͮ²ȴնͤƽ±ʡŹİ ӮũͰŪº˭µͬ¬ĠҴĵů˶̧ҴƩɷǮDZDZͲ¾ưæǾ̿ƣŽȨźŰѴĮtúśȲɟûuŷļ۳ĿɽźǫdzǬİʮĿɬ²ϰūĹt‚ǵøӿ¹̰¥š˴qųĦĴʳ̥ϧƿƺüīЩˬεȸ´ļȉʧʴΞͭ͞ŹӢɒ̷νı®ͲĘƥܷϗҾĿ¯ǞϽȤȭѮ֘ؠũʹ˰ͿҤ̸ȾħӲǷȫɢżˡļժ®ƻȦ¶ƿª;̹ԻĿƾ¿͹αŸɿ̹ʵıǸűƺĪͶýƴŴǴżŭ˧‹ż˸Ͱʢ£¾Ʋ³ʲÿִúȟȷžƓȻˡʺמƼßȾԽțǮӪζõοɩƬîƷŷѝì¸ȲغЩųЭϿձɨĿھϾйװڷɰ˶̸µdzȬèͨ۶ɯ̷Ƽ̻ƥ˽ŵʴĽ̳ʰɴɵĿøȽ̼̻͸ߨεȶŲ⳾ҭíϽũƎʲӰвұóٴíļɽþͱϾŦɷǝĸɹľ϶¼ƝéԿȝIJ˸Ƿȝ¹îȜͪθǝĽʹĦĽzɵƸôŠȴ½²˹ĴԾţǫнƸʹŪǵε˼ưɲðʡǹ̨Ωþȵûĵħƺţȷʶ̶ɥĦťįƥɭ̷Ṵ̆½ˮȻʨѫ̜ѻƱǺë۬ѹ¯ʬ°¾IJ֬ʴɷħѸʿîѫſ¡Ĭ˧ɶɨֳijШͭԸ˙׭ȅаʫźĺݰΟáƽ޳ʱֵȫƤɮŮ¹ǰοӵ˷Ǽɭ̭î¯ŰͻŶöʹî©ʬȯǥˮŜȸ̲ծ´ɳʽĪĤ¶¿͠Ǩ˺¼٩Ʊŵʶͮΰƹ¯»ƱλǶîժ£ƴ½³ð˥ְʮƸùŪůõҷƩǭɮϴѶì&Ҫ}˯̾ª禽ǽƶ¼ΰ¶ƶÿǵǷūɲѺ°¥ȸ³ƪи˷òʸŵŶҪ–ïȸɭȮ«êŵŲŬ¤Ÿȹķɺ˧ȩð˵Ĩҩöȿ»ȰͦʶîƬĬųԹȥĵͲһӷ`ŊɳȸͤɼʋѹĸåǢؼĥª§ĺŨƫɩҪαƯĥȼʦָ̻̱ƻʯ©ɨ̯ӸƽºԵϸϹ³ͲIJ̺Ƚԩѵé۱úĿȴҽθȺмʰɸ¶ɹ¬z딫ϣǶ~Ȼ̪ʲʥŭҒǨ5|ܯ гHʡ{njҫ̯wIJɗ\\]ZG8^b'fefBLelFc/K}+\kSZQnM8/Bos3n7DYtviAe4eSa}uxkSŎ7kUl8>ى\D:An:E@F> J`Af6{kJEQMc.'WopNFSax?2?MAX;Rtc@5YIj}qleKanV]]xtt\zSUyP~gsvnkpSaT\xtszzo}k}|}dpcXmrp\qwvgsVs}rub]up^h^ioi_tkzvotmwldnxg{ey}{k}zi}clj}~~p~ckrktdaxavnvmoqzryz~tsh}Xefuis}stv^ktp_nx}~ypcstfvtzs~xrh~iop|[jhxZick|{|efm^gz_Vh\v^mvf[HyZM`{wn|zKynr]vgp~EwvvYvGsbjq}ylbuGc\|oby{~prfstgqpuu}}_Ԑkl{NI|}lt{|jigSo_vvlbttukqomjxum~fzyf}hu}urruUgs~gtregt]V`uwnzbrgtgfetyBx{oa|y]{vc|fsyc{hocjztlu}qWinuxvoim{e}yrruwst`x|Y|~}[yq|kzikXt]kzw\}oYlc|w_^XrqRiduo`ujbM{{xxetzXpwa}w~e}zjm|sSuxvgff~^{ocqtthrW|e~zjqillvjvnThmqxZ]xwjZiQ[yfbq~jvqly`xbvXk[|{c|{oafzr~{E}}{`oh{oTtwYekeYn}zhjZtmytdxTZ~u~{h}}y~gyydemwp|urthenwskuf|xiyy}mowyxywyqyupVz]nq}b^_W\rryg|tsyyj}okw_vnlo^Imvjgy}|w}}h{ytQriz}oxgv{z|kvrkxpmuuy|hg}v|zpzlvrm^qxtxidtfhuc}ovod[lcfwblxqxvzgwLolvzk~x{|xp}|p}}}brchmoyj{zqtqz}sinrezv{peOx{oy]aS{oaYjOag}dPeYovooezygVTp|dl_bdyj]}Yja^l]ry|[Nxnwvtr_Xs{{iUmmwr~{zXoQBUvfUwMsm@{zlmU_pA}~khczBzxexRxlwr{upuwXjzvos^mnkwxiYsui~mpvxlNy{v{jocql|u_w}tGfpmN{ha^xc\|zwsWf|ev]yqe{qa~bRhcsyhWvvQnqTkiSqma~]\uJ{\wq|thud{_Suyn|sh||mrƔhk+~~>ywYxgnys{wu{hxf{lp{}pu`h[{Zap2ymzMojXxEpjjbnIvgPwjpsgal\irrwhcsk\}weo}cr[hvwrWyu]~rlyxyzwHzzxj`nwxxynNi|a~x\s|fpywsqQxiilllfypqY||{|yyjyXktfztkkxaZGLuii}qmdv~||Hq{f^cftolmSxAhxpXv^vGsukk]CzxNwz{[|[^q~tfoYq[zdetQtafvsvshtsuu_xp_bsp^wfycx]u|zvrg]pkuzNttzkrt}svp|j|sypirzx|fexq}grz{uu}|}vfv{l|z[tmyclglUqit`soss~~ey{m^ztvywG{kmOmZwqveqiyxmi~qpbn[WmNrjhcy}\xgm_dfdv|zwuqz^}vs{SIrFa}P~r|_ruyhCxi|qqe~prh~f|xcalg|yxisxljpKhKiL@xfEspvzmsq`sToTz{pylro|~q~tuovo{dlwvzny|}}p}q`ag^p|uog{zp[zYk_}wdUtUml~nkvx}|UhdqRu~^lCchiqtly{zX^i{lbxoqSz|^uipdfczg|mtHwvurlrzkg_k{wqwqwfwjjsp~}l}s~J|kjjkDmnpwt\iyrnm~lz{ro~wkyo{xn[gqjmzqZy_r`kpl`[YvXe_r{kov<~|OnzMjzvb{w`ai}{NxZy~Hzd~]udg^bwtn|}bxqy}eY~QW}uzhqz]~boregepXrxwtseovgb|}RZbwLdcQk|oue}}s{_l}d~`yx|eyx`hr{toUZs_j^|szoX||msw}nuyMlzWZxsmKwj|q}fqu|yuxky}yzr}XT_lnyznjJxYsjq}]ztOejYmcp`~|~\qp^{oslgg|unIpu}rkufv}Opumzbbmwupk~jsV^Ygq|eVRcslkybbuKqmr_`rseTp|pvjzuu}PsqxirWaupxcsohztkgmn}~Oy{}tpjT{x}emov}lnviwdv_j|nkhoZ~\Uyq|ZWwmmy|~}c{]pV{xqsRyrwS`ltRcasqbovtkfnkQ`tmaxzwqxpuY\|ze{xMnqwlwXuutk_rl~{wgnyzqu|\G\jme{t|yzo}brmtrxjHSnvrtrulxsz{zxujoR|zmv}wrp=Unuy}ncQ}aunJw`Xwky}~mulalhp~x}~v~[Jxhf`wi~flxtEw{Bwyy@vtgpzh`ZUohkiziYXeyxq{ishwfsuemnWx|aXs}xxkxp|u_`rowlzyUwzpmY|Penf|Y{mts|i`kyn~xwfrvbjudqQhV~|mpzjlq{tir{m~>ekvkyr}{`\d~~zvrq|sf|lw|gmh{}qMWnnxmsqhKa|spbksjnqsxmxFtvgyq7yylay|mqkeswnqx^cmiTw~o[b{`f~{wsypowqcvp|wrVzVd{}r|}gx_}Wr{ojr_syhmrmnqgpuUsjn{[wxZu~ow]qm`umnkgaoz\fqyoyst{z{hf}afo}zb~b|]bmzer[l[sz^lIlq}l|s{~ezo|uE]ypisr^tvzvesh_|ssw}V{Ճzlqqmqwym{rr|{r^xuuvvtnra]Z~iiz}wipgh}l}Wu{wkveoiolvztr|^}kk~tkg}|lrx}ut}WkTx_ybs|zV|vu{W}}wziuj^pj|ifwjxln]>@z^e}lps;vcy{ZqVq,i\`OZpZwm`px7bfXa|lbY\d=Uu=py^`CqxjfizRuvnytku}uw]ojok{^]~wzzsxc_yf}qsnx~\g`kusmtu}wgQztlxcSyBs]yq}pEotZn^ȎvywgjUd}c`{o`tuyslflqzmn~ralx_}yFYQq{cpnduvxzy|lyUv/iyLvq_fowl{]mvwxq{|Hvtdvq^l_zSUewRRsT?vo^}~mfzwwhsdSss`Ruz|YapuwufM~_bzVxtvfwgQx]un~izj~|vmmlWRfridwxC~oUq[{EznkA_}^xvq{~zuO{VZXDi}U_{}jZmWzfDovdnxaqddgrsttqXd{~OVwIXzy]u[~|{{wfj5xbnxz|wzoqMinyfk|qbYAdSqkwphLuu-q|V]stCxtaWqoCxHYp~Rp|hkxPkopSwi_m{}kx`grdm]nyEpboN~ospyZnlo_Uv^Yhnoez]JdaXb^ZvbZ|{rcp{c}w{{|]wqs}{uhrozo{_{nv`z}~iu_{w|vfpzwxms|{}ko{klzzbr_prwmon_v[s~Oumutzquwod{nngSvAkw{8hhfyzz`fcevmouow}ggishGuxwzZctv|x\oxgZd|rda_|[vkgiplool|_kdQysrzygxzV|tOjghainrzqrwZ|zpvvbM~rzZ~daY|{|rrpt_U]tt}Wk{r__fxjey_nkwzqstlo}svo}Zwuz}[tmb{}vru{j|KzDzbes]umKmq{eXYvrRaVkvj~vZyRgopb{UOcT`{e[uc{{rxypn]cK~Nj_NoQwnuXsv`]V}r=cd^}s{{cg_jptXWgFdcgbtZafqpzizwuNgvRhnfb^ihdnr~|w}sxz|yagfUrszUgbvgbr^Ygs}kXahNfxp~pioZy}uys]zhqf>pytwdccl{`n~Ctp_[K_XsizezkcU`c}u}Hipkno^WXSTizrxuwbZkpgǍwXwzv{sy~J`yK`stlnQvgzouSnYsYo|vblqcw}|nvsrZhΆǁXb{hQla|}k~ϔe|Xp~pi{Lcs\wVwQip^ixdjkdfxwp\t\Cx~gp|ejmpc}gre\L}xzdegJukurLfl]Snmxkyvbfuro}t{jDST×k\?Nnbp^X2hpPXmh`pzoklzyg}|{{`rvrTbc|u{\_YX~mygxhtrim\m}듭n^hvdh_rbZ8tYf|topmgw^W[PssoOT}[=pyepzXhs{sh}qxdg`l{wrVgqtl`~Tn~]rswWoLqswcmyojPkhT[kRXssqlul/[ziemneYWccg[nP{|e`lR{}Y}hzc¶wy{_}zhepcaoMwxrrt|ihysv^t`Up\iht{NwjXyw|fg{hiTbv[pizaA{`hmfqIDs_]v`OJwzŠywdiAr~duwm_rghyM8eZ^oGL`zywgp}LetyOUpefjpN~s|x_ckHtmvrhyGnXKpwvu}Sgcizs\ehrpCt`h{wnxQ`sEV}xnmGl`Xmm[y~y{w~vwsf]gwW_ZI|uvwx^]Veaf}owrgt??`Wxfkq4eywZhuit~zysjēuuiusvwxdk\nd`SpwyYZsSniz|LTu^sPvg|u{klvprb|Sov}cxbzphsigms_tqXeRpT}b||vfo_t[]x^romzenl}Xx}xhle|vkyzUkxrmu{|lWzkij_VjwK{v~bexebst~ahx|Wayfu~ZyI{V~|ozhLxrukpmdWcMzhUhWqN{kdshWM[tcRfdkfl_^h}re|~jvpmhz{ynyha|kwuW]tkvogFvhirzczbXlmɡ_zpQpsUW^Y{UYqxny|rsem[8:C_jsfxzxwgXoWJXn}l]ozwU}u]zznrnnbAjIAAM|gxvP~^zkgayzv^theiUcrc\tX}dWptmlrw҇h|luLl]vqxI~|kggqjpicxc~tFvkiwl^^OVeyMsS|cyWWUgaQv~cPk9YlTrŏIDuYJ?ʼl|χXu5mwks}czjXÃftcV{yGL2ac2.Ugfh}Tr:~XYx{q|QzkssAMzXDe0i`vdah|p^cbzgfxpw|ouSofo^~~qZW[nUtxtnRlq_yÈkOTWy]r{~Vt~vgkgjYusePupLekeRcgTw@ibsk{`oVZKederdzmT\}y~vQYvkZ{{~goxspctq`f[y`lvzrxtpygzl}soYQqc|{srKwptjatbxjPvW}Yxwl}Id[x}mwexiYcxrhylVn[oZporov}r]tix}spz|upvtysxxv}yqlyotXofyaS|jOYhpWicwiZNܕQх]Myfny]hUuVrf\ysslm^Yc_XP|ygZfKrezhmE_~tCxUN~]|KXvybfZJix_DqZHbfkrDlxœ_jl_d`z}p)gk{o}vzI_hvͥhlKc{tPfe]]r]}[qkSebosN^k[nbY]jrfTyudUoQdfq^V];eWs}cHhtv|j{[udyekc/WfwwsdxYb{~\{ākypgPyYQvlWYLZ'io&Q}>ZmyCl/qc`k|o_ZXFju{4jqVN_vg[IztMKtdlgclq}uU}ofqRu}id\^pff|uk{pep^avGpyzloZZln~xkyHqu~rq^`Ouxw_ȈUwKijUjcvjwmx}y~U̧vyi}]ZpmN~sEa~YokEytjov~uewYwmTkztZTprb~tnxwV|xsri~rqntm\ynhd}sSsTQtpRu{nmyrr|i|tqkEy|vyLTlOivP?ur{pN:WOƀ}`lu{3oiphf9tihKY@ÏKSwafR4fqukQhNujmhVmlVƏ~}lp[}~XzXse`}p{oxtlseVwXRgbon^mr{ymjwnzdiPgrjps@}ydan܌udS[_Xaw}Zh]o{`nvuZs{eyC}h`]zg_ezl_fEzo=ebqauKm|vexue-P~iKxtwzaM_iqmdz|{yfa`RU~Ana8dzW\~ehkֆmw{hX¨Sucx~pkmoymZ}mz}{q]nwyo}tynN~o`pp|8Ex|Bfyr|ultoQyuzlKkaxnSrjsgWqntc~~w\zaKcavvzqje?|prpotlfnpbn|xYnub[V~lLJGbo|guvzIPicnzjcmU-j\JY?fkyShmrWbYr}dRzmzu^kwwpfqUvRjg˵C\\RcٛTuM@[Xog~t(o~7fksfqv~hwye{~\Kxvy|j{rΏy~y]z{i}nhtur@hLb~sbuPrmfw~li1lQjxG|n]T~>tz||wUwyPK?{xs_[rb~{dxf|~xÃe\tyzy}njrS{dZp``V~zo}lt]vgxds`gp~oagpkvizr.~[z[oxytxuĥrw}rFszfi}kzP[mSZ|VgZxsVx|ij|@kUĶsqh~Y:zrOT[{hoexmpc|SW}OPewc|RmrN}mhol[wV]Z[aljmyxby~yS9prhtvSyXx_}xi{Z[6n^}CgttxcVvԋuc}`lXOumuY_Ps|h_g](`l_qy~@yat`JrmGmƅwtb\q}nYlUx`rmKznlxk_Z}\OzwFkuh{]~@CdMkDVHoDU\HkzRjqwK8~zxqUrx|pi|hLhhv|bc`m}mslv[vf}vgZ[otH`ihSyDLxfnhJTPUz}N{}sVe|el_ZlqfxbtMmujxGxzqls\YWmNMacvwY]mܘU~pXW~Χb[4/d{zuXMͶPlpeo[IzuugsW}nnWIÔq`Vx}nKlkwja|{?+P>}HYvRnwb`|oaؚzeAqTYΎpA?twz[Fqi|SzvrzwqYߏCYsc4oL[}zXrb{tG|b>rq7kgsA]tfX8vƃVepvɝqyW\dgAtd˘OC\hcr8Ftqtcvo[1hUt|HPcZavSnsvm#zfiej\|jhwbyqsLsc6uiVV]aQŐHI~{ògtgds|^`_]x|EjWLdzk_wW`xYkzzkPeFNnNpdK _irpji[Ro{n7MPkrQtngli@xpsex^TmUqkbkjdžKW]cqrgvsfgr}yv~nvt}phy|xigrqg~CtkYdxa{}|qi~paYkt|[vsbSetp}eoc|[vqYL~uL|{sbgl|b}mo|Yh~[th~Ts~gxZnsqze\kmHf|oT`jLeFoZvlhzllvw{tty|[kp]sZa1`ls^]aSykS9>VQvi{Ҡ_p[c{^]mzVx~oZ[FUhWzik[[damnedRIeAvRvSxrcc^bD~}~~u['Raxn~r[NroUupeQ@vjxpefq~oՆq]tqoX~tqz_{{ubzme\}lfh[u4VtZg_q`~rW}Z_l;~xFulm[i~w`jpokW}V_=jilgraГ>tzl}S8vlyWqvQSJsYTpcjHrsY9uKjF[]yodekbsgYro{P`\nc\mmǨPҙE_i|Zh:fWkol7uyxlbfVw`~fqwyoOH7asCaa^urVfkohfg^dNojagbTfz}}XsYIidgzvkxg{lpmmu~nvvhkaRjh~poqvYtthqf}^veoh{aDzTyQE\M6\U}bi\k_|pVf{/mgvW'Udl_reya]nj`ZZcOdJAsl|ggtxPjlolo]\Iz~dMl.OXeXvYkȀr:~ORYlpnnmx|AsxާqTbr]bmhIXnU~WXl2@uMpI_}zxoqtzWVzV]N{ZaPnsbMq{pHZ]WuRScowXiUWfnqq|w5lp6lhLmvvWnz^jAoLxw\K{{uIWQpjb?3Vnzaltgl|{vHzsuU^{sphy{l7ti{myixslft~yTGnW~YehlyFdyQz +rnycm\is}sچzX]zN|obl{Yljix{P`P^f_mkvbxbDafěxvovVlqf)odjPK~jmpb/m\`jaevp}k[X[|vu_mvCaisf`mMepfoöwm^Kr|yS{uƨw|s[|n}wt}YgyxؙmNosŠIJXi{KChfuO}g^dgqZ}œׯmVbUuz)Xo}LjgvwniOu@x_}MlVqDkpGQoYYOX[vxsS~FdzVqGnbgcvx=h_TQhd|r.qxfti}uhk{c>`DA~Q{bm}m}Ktmsaw{Muxmcw}wiZ{nYrXipdOztvkpgvCV|^Uyq|upgPu@e`zc}gbn`oifp`A}vaw׉{lYewmclikpDY~=c?~ys_{rnxyShxEhpލ\~QSTNxf_[A_cskydbiuOUWwLu{_WQYyNH_pacmkHbq[pqbhaK`}}l[jc<|QNfq{x\1vliV{MpSvzJWj`xXSrNb/ta|XU9t7ejNH}a|gxg񌀇ylRzU{gqP>lxwXmk[wwN~j;wylmvbz|{KNq[w^srFP|orv^tzuzxHg`dtdArvq|VNQf|rƄ[}m`̞h[uvhzZ}rSH]q\VZzm~W{xndIvIpbdw8}[Zm[JTrtZOy{iw7OgtdxY`khmtgdvqsb{d_~z[j{og|vxrt`ocfUezfjvs}tnvVktcxvy{ppt|s~qwupfmp~9qqsr_fkNjZkjYMtMxy_}ys`uOwYNgX=m/r[l9kFpgljg\h|yhsLr<7}E;Z\4lbY\t~yp|xh|Q{ex{F}fu|7mMxTlxqo~}cj_>r|{cpMrX]Osuw|}|rИox+q`yoIzzd|wIck}e}k]f|\nno{`u`uYyvy^tlEzT|{h]qNgi{ՋQozijmQe}uMIg~SSX~vewFjC>G}vs^Ѓ~^}nL}É'wiej[ĢuKbZesYdhcatjxxTgrDFtRn{ctt[ypp^yXaPc{jroav\uzCcVxbd~m1yn}c`qwϑPEcRs}yyt|ĉ;xa@luH^N3{mVZG}akukXKv͂/[Foxnh|?JS;viS[Vpxe_rWzg~D=e~]|VpWbyo[K~}VhBYzlWbUH~cvYTNo|zp{|{`L{txS{ˏhxbOonAndxy\QMof~khPuhnrx_RhP`~w]~>l@2~Zϓt^vwT{mqyq@uRuo_Y^bnJ7WFR];XORr|jЁXQq^rRrvOu~oNE]mGq^ynXsyZXd{Zsɋ|_e]hTĪfcZh]h\lU|go\whyheR}tsIuRAgxDŽmvfhtVψdUMehnlXh}ugnKX]yEjOurzV1U]dkbkpfkudsNyamXƃq`lJyr~r~waGzwcyuHoyJo\oz^w=r~VQ~Aºm^CogxwtÙePtdLi8mnd}qQ*tߗYdYopXK_fqsUEuTDnXwppИ{c^Whkevq=E=j8q_ɡqqlQSr̓xGt0iAx{FuybfspY@Gj>Y_cD\IJmc|@vmpS{p;?g\=qY|ckaȎ[nrzvRcu||`O8tpЈQQȗcQSVc|tBIv[xYS~͡yPnS[e[}{AŐ;Gy{fwkOmVS[Qj}mc`lnjwohXiegjm|lcud\k`|yU`kvLX\bfaVrtoWMvmSmypFuby[qӈ{Tvhk̻~]vKy}[~\gvTfrqFotNvolQ]cgzsyIghVwows\yVRyorw[e~nEzmdxufo{UgphS^H}o~ixu]Kw_X[jz|tqxx}ar{ijpc~iyycoVwxuRc^wwtcqrOsb_g6]X~sidSW[`T=kYvS(vvVsmriqecTqwp~~/MLYEqxg^~|w[sodo~uZzb~qxV;GW_dthjcoj_p_}{\kw]~OFInzr"o*cjYdkscy5qQp}yqmrp^`e}u}[@wLhW~r6yvjktsT?{qdc\Ew]XhQOn_z[qϭz{v\y^q\`ysqm[s[jgcQ{Y}o5qba]vVlbq|~Y~|mxx~o|~{\[nU_r\leCWj[kWXKhI|fTz~]f^yh j}SwKbxm~QQOQk`x+~uk{xfcyTY_}o\fyy[zE{SjMxgqjrJ7xhQi.ZOUm8iP}cnsJ~Yn}Vyhgd^b`cm}eviƑ|qp|smTuOjnrtom[gelwUuqi[qbb~s~pvƔ}wqxqlqDd^`q{u}U{]|bzklqrloeu_mquOrwkH^hnobGa{nhhli|S>~{aP{bmatUnvcg[~anXrhzAlmTRM{hjTiaPwȯp|lccVionŠktltW^}b^z{l_n~eX[v|qslXAv[\jASyp{CJtnO\gTxayj[|vRkHmOrk8.1щfN~\sl[W[EfZYgtug*aozwkālpX@69`ltX^amvbqaqUcgxt\szqSEgyv`Fvnay_aTVOFVR}XhhZ]ֈeR_Yjs@is|hӏ}_ʙ}jmXzxUnvjvnskuq[WogcWrpz=t~tdvtc=dc}wg>q}pJW]mUUjwh~lund]s}|Zsxpme_z`UebPfQMvru_x^ueW\IjhnPXOiHfiy[cTM|[5ld^rfkhrl0ki{hx{nNyFkYWoYdx?mZov0CLx|KGnZjbqW{X~>bnvYZlSϜ{o~O^n[uxNGyz0oJtx~ig_TlcRʜhZdv|y}П`p~tasTzj{ogďBfzwzv6Zq~dawoheyd,sBk|yR|z[Q;kmiQouVib~a_^RVA{vjck||lek{Tmp_||g~kl_qrx{jBGh`_pwpwY_e|oDRxxժbs?naw,{W]dzuxf;srVQAdaJnGrUtjmZ~C?xlqqrrjn]vq}gfWgwqzlXv?k|zS5JLVzIyzIhorwuwcg}\TdtMinWqj{yHP_YvOYtgH`~fvkpxtbu;Vxy\HsvYTmusJ@[|x`מcafn]q_qrsxoiQocqkbWIrVhvM_}yWolLQx}nzjbcqno2[fSt~c}^vyKfjslppmgpPj4op`y~M]YrmϏcmS3ƟSaswrVnp\7utVrvdnfl{WR]_eocrU_eihmpv?wbzm8SYNn}(Io}MfPsbjuVtwm_v1>q~|tdv{\ysqRvgyxYC?q~Jdn`STfkY8\wmc}}v@QYsfaS|{C֑lLzeBpghrU]QzYbfboccgXv~_w}zjif}Uvhrefhgl|G]d\fbEg7]yx\ygulZuvF}r^KiaUdkruqkrqT{rWgІ}ppliYZbqmR^jtlN^[pNdu~gdMhbrk_Gktu4~z^2hr{;k\LHv?ZHaOyK\scczXk|cfZor|rД~pao,mj}wn`3A^aNiSv`aǬ{oJumto4mbgYSq+-P'znszuolVhoiqUk{LuOAqh`wvUdlgGpw\i|nϗxm_O[z|uqlXjZK~zۏyM{th`uvXrmSeawmzv\Y~Gh\omuar~ik|em}knlYYfrfuqvxg~tyv}Yvc9{nqtplXvRqwd}c`wrz~|YmpP@pCLqqq~{uYC||cSszyMZwwv]x{fctNiƌzmsnnPUm`Caa{jjR5XkNb)nk`Y}nÏ[ȢLrbZV|nNs`b]YspmlZUdHlwo]x^jrn[i{Wx7`^oMBɕq}yzewkqrqjqZErsfoljcuvr|O`vzOrxcm}wx{Rz^\nztmCjfyWgvrrwtBxVzo0jr\tmxTvtoSeiyeiOe~cCx_bUFu[BuiyOTrvv{ĆtGz]g{peG^twtn~Zcunkc]>oHy]gm}vWs|lkdCf{Ott]t`~vPxD|VrybjDb[Imq}v*iolv{^blQhov~x^3Df{UqaOg^qZfG~jdsuwkQwidQ~SxnpqxiKunll~Wv:Xgm{IZzk|u|}hZqlxno{oJmKiėh\zo|_vIb[JwqURjorF~M|Wpgdk~'qiux|liOYdouNeyPvym~uv]VjyzLOqvjV^JcTvjOtf{ssuPp~~Wbm]qrY{[|rkn[]\plgLoyW{@Rwbs]tJjjqj@W{l\mhcSrqnYVrev{hqSyRxoXx9okwB~|d_xxiuwke~hmMizpE|jx\l|v~zeRqK}gi_qBpGfh~X}Wv{Muzzzrwy|~y|tv~zn|~wn{{~|pjnxpyp|hwr|}{\{}nnv}yz{|{|uuzx}}}yi~{v|}r{u|yy|dS}vx{}z}f|{v}yt}uslzz|`tz}s|pz|{}~}lzlw}{~}x{{n}~|txn{wx}~}|}xvz}}xz|zk{ugyu|}x|yn|z|w~y~f{~~{v~nxsx{}z|nz~{{z|y~xt}{vvt|}~~z{u{~v~z~}y|yv|jzvq~uuwysW}}~~}yztzvxz}|z~x}vw}|cxy~}qx~wy}wqs~szr{|{y}~zz}o|v{}}{~~{ypz|y~}|z}|z|xy{yz}j{y}||fzy_{yz}zq~|yw}|x{vru~}~{uqt}wx|urr}vx|vw~}iz|xz}u}\rzwzyxzwmtn{z|y~urvzwrk|{}l{|}z{q{}r|rd~fswt~xw{zyxtu|wy|x|zqfl~||n~~~xwu|w}|{zyutvp}x}yri}yqrvdpe}{}my~}x}vyqyyst~|{sv}{v~}}v||tzrtu{z~xu}a}vrxu{~~~|z}}~~}~~nzyu}iywv~wH\z|u}vv~rzn}t|tsoyzzw~n~|~zx~xi~|s||vwwpxot|mz~lj||~t|{~{surzwzw~q|m||}tyz{zv}|znqwyr{rw|{x||zwyuy|fdh}{{~x~yyymxuw}rutjyy_ymtuu{z|x}|{{{~Y{}xz~}z{Ywt}bwvxsxwyn|uWz|~{i}uux~up|tkuw~w~_{xkyqtpv|zz}|z}xyyx||lyw~q{|x~x{t~}oy|~y}|{|x~~|q~lzw{tiy}~~w{{}z~{v{zj|xi~wui~}{~~zyxu{~|zz}zx}yn|~}|}sux|hx{}}tju|uw{{wzyv~uw~u}qy|y{~}ysxi|v}~{|~}}vt{z}xxvt}zwby~wy{owv|}zzumrx|p~~}~zz}{z{{uy{kz}}syxsvzuy}{~zzv{xyxwtz~~~zw~{vx}vvytzy}v|{twzv{txzzx|y{wvsz|~{w~xr|{xry}{uy{tty~|}zx~zsoy}v}|t|xx}|{zxi}}zk{~py~zwuz~s{~U{zg{p}w}jwr{|y|zukmpu}~ux~y~qx{{x|cx^~vy}}wvqtk|~{{~}{v{ro~t}u}~tz~zmzrlklyy}jsm{{}|{pzzq|}yugv|z|~w|||{ym}x~uyvu~v{}{~|xz}~{x}x~~}wuos~u}{wxuj}xhrpw~yw|~}~x}}yy}~fws{|~n~|rj}y~z{z|znvxtszmu|u}~}{~{{rzxvzrx~~~}{}vzz{tu}yl{s{}vz{}}|[x~q~|{juxywyx\{{|{lzjzxv|{tyj~sryl{|vyspw}~z}p{}}ls}zxxv}z{z~~}|vv}}}x{~h~z}{y|ov~zg_n~~{~zrsmzt{|x|zz}}y}z}|z}t{rx}||}s{m|~{}~{z}|y}p{}|v}zz}}wt}v{zz~vvvq|vukm}}vw|{v{||yxz}wzyy}~lz}}w}yzrw{s|zyn}~xwy~t~k||w{}tyvx}yx}uu}wwwqvt}i~~~~tx}|zzyvw~zx|{ppxyz|zx{w~o{zzun{xy}v|x~zw{rwz~sw}{{rxy{ouv~~}zt~}zxvu|tzyzo}{m|q~vx~~}~xh~~n~tw{x}}~xz{}wvzu}oz~vuu{~o~yqr{u|~xxyz~r}zx~yy~}uy~~zxu|uu{|r}|~}z|~~xuxyv{|xwvs}v{{z~{i~|osyi|wqzuz|tu}}}yy|qz~uv}qyq}~y{s~ywyx}ln|rw{w}zu~||~}|yg{|w}|wov{{l{|zxr~qt}}x}{}txz{{z~}x~qy{w|x~~w|vwyt}kh{uw~sw|w~y|~x{|y{zu|~~}{w{}}ysx{|~~{p{{zi|j}x}qwp|y}ls~xyz}yzo|s{xspvx~}|yvtv|~||rn|oy~}v}|v}s|z{}w}y{xvrvw~|p|yx}}u~jwy}yz{|q}vx{w|~~ywz{ylt|z~yr{{o|xwy~~zr|q~tyzz~~z~xz{wyqj}~k~~}~zww~x~tw|}x{{{mpuuvxy}~ny~ty|ivyx~|}}wyy|v}~}|zws~~s{vk}xuxz||wyvMv|iyyjxn{zwz}mupy}vO~g}|yz{i{z`z}|l{}x}}{n}o}{ww{|swrs}r}h{zzu~w|{{vw}}}vy~}uy|{zwyxxtkyxsytoctwx|z{w}y}~|}|~x~vwvw{x}xqw~z|z~zzYzy{wz}{}|~l}tx~vv}{C|r}wzztonkx}{{vs|y}w~yr~~k|xy|}}yy{zuy~~yuz~}{y~ytrzo~}zws~zkxwx{~vwy|wv{v~{{w|sqz|{uwrx~{}uzy~zyuqv|}el}p~zw{}wy{{wr}}|~x{}y}nuyrtr{l|{zy~zwM~~}v}xzwtqrw~~sx}~i|ovovmufwxv}l~uw{~{yryty|tw|rp}jxj}nr|}}r~||wy~q~suuzyxw}tx|~|{}yo~q|v{qw}{nu|lzxxz}za{q|p{y{vlzww}skr|}z|mql~~{vvx{zrx~z}uz|xu{ezz|w{w|}|kg{{zztyrk~zwy{ky|{vvu{zvyf|}v\|n}}t|w|zu|z{w{wvy{y}|t{zxpx|qm|z}||{y}yu{xvlkez|}zyzyzw||w}|yp|}|ux}P~py\qyjz{vu{{wzzur{y~xcq{rzwv{xY|xusryn|swUwftx`xw|}{}ntztx{u|}ly|ynq{yeyw~zuvy{ylz`|xxxu{zt|w~~yxx~|zz{tzq||{u~vuwsypm~{yxwwwut}~{}zmwq~}ztr~y{}x~x}qyun~wm}uz|vy~y~r~~yxztvs{tpzwqyrv{~sxxz{h}wy~w|tv{r|k|x}z{x|u~qvy~|vy{tygy}{~{~ru}ux|sywoox|y|}{|{uz|Xyzyyxb}z}yzyvxy~w~~vz~zu}ywsxx{uszw~{ry}}rs~r{~||{~||~|~~vyv}zyzv{mq||l|ixwvtyzzt}{~m{u|w~z}{zyr|||{yvyn{y|wn{stsm~w{xyzz}}v~pzzw~wpt||}|}uw|zxw||~x|xu^ywt||z}yxuotjp|ups}{q~~l~s|n}|~}lvdv~~}~z}wk}v}}yx~r~}{zvtrv~z}~usxsy{zr~zm|~{vgty~}r|wy|i~o~}}s|wnvx|{~~}ykz|xxuztpzor|w{}yt{s~u|umy~}xzzz}~wyxsp}|z{u~~~{qv}urvu{nxt|{sr{{{~j~zw}wzxsv{{m}uoyzv|zwozl}zms~}|sw{|{yoxxswx}z{y}|qj~|v~zr}wx|xyt|~{{}{rf||~}rnus|uss|{~}|}z}v|lwputr|tytr|zxzy{wk~zrj{z|k~v~wvsqm~~vz|uy}zx|}|yxlw|~w|}~t|x{z|hszv\zzireyvq}wwz~xk~~~tz~w|yjt|rtwz|w}xnz}{y~voxrzuyz~pyg|yxrjx~z~~{lq{|{y~|tzyz|xopx{~nu{|{vuzv~m~|oz|}|zt~vy~ny}|z~~x{yyw}|gwvy~v}||x}ui~~vxr{~||sm}~uv}|{y{s|ix|~{yw}{}r{~{v|~|wz{{{}ux}}uqxxzqyq|z|{pxp}wxkq~mzr|xw|}}wy|ysz{xc{x{v~z~y|it~~{yxzy|u{wqw~~xz}{zwzmxz{}wk}zxx}~}{yvw}{~yz~y}v||x|{~q||}~t~||y{{pww{{~umx~txy{y|s|v~y}~\xrw{x}h}xt|x}|~uqz{|}y{~yqktw}u{x{{|nwrwy}xyty|||z}lzy{nu~xw{tuyzvsn|upz{}w{z\~|msy~zUyyx}ysy}y~{zm}~tuyuy|youyv|v~w{t|]~rr{r{o{ru}xqy{yqsvyuv{}{zzz|xo}~z~ztqyz}y\}me|~vizyv}l|sv|y}rw~}iz}z}zw{}|otx~{qx{swx}uy~}~z{|~}}|kysory~w{|}{{|ux{t|xt|{g}}}~x~|}z~}w~vty}~zvy}yyzx|~{nz|yuy}qmx~r|}xszz}{|u{}}~z{xp{xz}t|}~|{}t}|vu|~}{t~~~|jy|yyz|~}y|xx||~r|y|}v~yzj}wuw~y}y|y~~txtbv|vt~y}xgp~|~|{wy||}}|}ytxyyv|}|wy|~~w|~}~}|}}rrzysu~xuw|on{i{tq}{{|zo~~tz}{}sw}zyv{uzx}|}~{v}{}|v}spy}u}~s}pmsiu|{nvzwzyty{z|rh|~v|}~~~sn|urznyhrvvpzzx}wyxwz}vtxz{wx|{zyxvvxwmps~|vywwjzwxszu{xxy{wxqf}|st||z{x||wqw{n|tly|y}~{zw}}u}vg~z}{s~|nzxy}z~xx{tx|w|qs}{~1q}yq|u|}xr{~|ksf~yy~}o{{w{sqny}x~rvtz~|{wx~qmssvuy{xz}qv~~~}zyy}vtp~xzywx}a{u|tx~~t{uy}~s|wr~zvpzz|w|{xw{~v}wh|r~}y~|y~v~o|wvnrzp|{u{~qxz}l|tjv{}v}z}{fywzx}{~~us|w|o}w{qs{}{|zv}x~w{xfrww~w{~vlo}t}~~yxyt{z|zt}}Upyh~a}{|}{~wz{l{v{d{~|utnx~}|y{{z}v|}xo|~y}iwryz}}{~wyyuy~~v|izz|~zyzz{}zz}m{zy}|~}i|{w|{{ppaxxt{{u}}qzsyUt~vvq{wux{z~~{yzo~wmoz~x{~o||}sy~r}lztspyzs||t}tx}y}}z|||xz|hx|zy}u|y||~x|wn|p~~}yy{|z~}}}rr~}zy|u|}nz|yt~}xzw}w{yvz~{~e}~t|vxxax~|{{y}}{{~uvj{~{|l|z}{~S}y~}}|{~{}u|ysqwz}yv|rzf|{{~r{yw|{o|ssuqyqx|cuou|x~q{zuyz|zyt^u|~s}oxyr}{m{xz~s{pvvzv|xyu~eyxyjx~||svmxtv{s|}Y~|}{x{xmr|yt~jx|{}q~ef~X{v|x~wo}y}}~jrxyz{kx|wg|x~{||sx}{s~o}}z[t|uup{sq|g~}o}xz~izvxsxwtuwzzz|ssqxw~z{w_puy~}}u|c|v{tuzwy~yt{py{~yfizhxs{ov{{{xs|sptmu~{twyxx|z|zwy{}tozxbvyu{nthuy{Umlyzeuqe}srvy{~y|||xy|xz{|~|sy|u}uwlqtu~|uzz}uevw}{||~vyrw}rxowz}s|i{u|xzp}tbzy}uu~qwju|}{z}~{~mx}thn|{ynytp~~ot|ns{z}yvwzrx|stz}x|wnw|tw|vz}yg{~y~wn~~pmv||fkz}x}~yzrvk~~~vq}m{uu~t~uiuynyzq}{i~ut{z{{v~v}|}susx}{ttqx{~x|||oytss}{z|{hvy}wyx}{lxy~r{||qs{u~y~wu}~_}|vz|ouywsv{{~{}zzwyymjzvy~}qvxw}|w~jzxvtyzvx}wt}vxsyu~q|q}v|x}ruzxqvs~m{}wxtvwyq~}nvm|vyw||v{}yzhsz~xr~vy|~z{}~{yv}}wxtxq|xypz{{v~yvws~ytv}|uy{}xz{zwbw}}t~}||~~moyz{{s|xvyjzvq|q}wy|w{s}z~zztqx~z~wpzxuzyhqxy{{w}vxxw|qxzx}uxg|~|{z{|{t|u}tzp~w{zzx}xvpxuxpvwn{~}h{tx}z{z}}}wr|qxwyxz|u~wvw~mzxk|{wwyy~|wwnov}y~~|~zh~qxp}w|mwzks{p||~{mz{~s|uzm~|yx{{xr|||y~wwt~|iz|{|rv|y~{~y||g{vy}}{q}{y}|wz{~yrm{p{{{|zy{tw{{~ty|zvpiu~fv}tfiy}zu~zt{tov||xxwy}||~p~rvs}}{qzt{v~x|~y}pv{vvyzww{{wxr}|kz|yrzxu|lz|}}}mm{||}xqyyszxwwnn~u~|pzv~{nze~~vxxvxoz|zi~bu~~|zw}~xwt}zyzvxys~u|ifyzttv{}{z}r~yt}uz}t~~nyvnmwoo}x{w~|~ys~t~{qvyy~xvzz|wz}~xm{yawzxt{{|uzqr{|xv||yzyznzs|ozyyw~y~z}x}zwv{zzyp{xxgvstpyu~yx{{~rwy|x{tatpyy{v{s~tyyrYz}xyx~q~xsx|r{}}v{ry`t}azhzw{upkq~yuq{~t|wlx~~}k{zolux|y{}|s~p{w{{~~lzks~x|~|}}|}z|||}{su~wszqr}z~}wvuty}|}wyivt~~}|}{|zyptmxp{t}||qy}{w~|s}{|hl}uz{uzu~|z|s~s}wy}yv|t{w|}}~~j|w~~sxr|{yr~{xw~w{z~{~~wv|zx{}{p{y}}{{|st~w}a~n{{x}{tr~zj}{yz|u}~v|syrzwzyr}x{IU{~zz{{~y|}|zxqtysg}|}vu~~{z|tszs|syzw~~n|t~~p~tz~s~{r}tgyo~|~u~|~mr}yws|~~u|{up{oi}~}y|ny}q}}}xrz{~~~v~~|nuVu~{|z{r{tu|z{zwrx~ev|wx{~rz}y~~~{y~ywvn{x~|rz~w{xt~{}q|z}||zryzzz~}}|z}{zuuz{z}{zv~zsn}pyyly~|~|~}z~}}}|~{sw|r}~||x~~wo{~rhyrt~~~{{x}xwxzw}x}yx}rzw~o{|{x{w|}xzwzw|y}~z}|vz}w|}}zv~~utv~}|{}yx{~y~{{w{zvzr~{wyx~t}}||zy|u}y~~w{{}op}v~}z{yw|v}~||~zyw}z{yv|}}}tx~{yyt{tzw~py~y}~|zs}}yvu{{|y}}xv~z~|~|h}zy{~{s{x|w|}}zv~p{vzx~}{~}uwz{~xyy}u}||s~z~xv|x}xvxu|kjvp}~r|}wz}yx}{~u{|v}y}||r|~xzr||{{tq{{|zuyysx|vr|}}}y|}r}ztx|y}}{v~k~}ch~}~xvyzrt~v{z|}{~x}|t}vvvxxxw||~r{{{z}z~z||}y|~~~y}{q||z|uyxt{|zx|}|s}w||w{~yv}mtr{v~||~f{{xr}uxo{z}z{xpu~hv|}y|x{x}}x|qx}zzy}}uyn}~qx~yk|yzzw|p~}{{u{|zlz}~yyxxz|wy~~|tz}{~yxv}z{vp|wy{pzlytgzn}z}}k{z|zq{vutzyw~zwyyh{zy~s{g}}vxox{||xzhzx}qvwzx~}{x|zo}wox{c~||}}r~{x~~z{}{|u}u~txd|{s}y|}|zm{_{{qy|~~yul~{~~}v~y}rs|vl}v|wtry|j}~|}sy|{x~}j|j|etx}v}}v~u~n|~hq{}{y{xxv|zw}m|rwu{~{}hz{myp}wn~s||vyotxzw{v}zxx{t{}z}||r}c}}|~||qwy}{{wrs|{||b~|}y{~xx}~r{n{z|l{wr~}zx}t~ydtwp}{pp~}{}~zyxy~q}|u|~}yrzytk}~~}{x{ozu}|qk}~xy}{|z}vw|tss~{|zoz~}xy|}}gx~|m{}|wpyoqoywy}zx~u~sxt~gu{vyrqzxw}u}~{vx|hn|syt}}{w~~~{{{}|y{y~|}wy~xk~xxx}n}|{}z~~|~z}x{wvv}{~||wy|R~y~~~wz|nw{v||s}q|~~s~xsz~sz~}y}~y|}{|nzznv|dq~}|{{r{|qxx~{y{}w|r}wzu}vps}|{xpe|~~}uym|{u{~y|{vj~w{~}~z~}my{n}~{j{{zwn~~ysxz|{|gt~z}q||zn}x|m|qjuxm|{e~bv||}t|{y|z~~wwcwi~x|{{{}}|x|ajjx}v|}{}w}|o~|z||}p{x|x|}~{~{|||yirx|z{{~uv{yy~osgp|hwuz~l}{|z}|s~~z{uz~uzvxwy}|~{xu{yz{{}szy}m|{ysxx|~ryp|y~}xqwyx~w{}u{pvwv}lzxsooqzu{}~{~x}{uz{pw|~wuvzyr}rzzzv~~n}xe~wv||pwtv{t{k{xuqkxxpxzv~~x~|ultovuwpx}|zzuv|zwvxr~vo|ywt|[zmx|o{zy|||}|x}hyy}}y|zu|v{yx}fpjhqv~~{w{nk{tg}|nvu}xzi~}~zlzy}ryum}||vu}~o}{wvstq}w}ld}z|q{u{zsswt~tzxrvyfyv{zzud{{|}z|v}y|v{piwzztx~wzz}}p}|h{rky|x{u{~duj~tx{{||{{}x}tz|w}Qzs~r}|v}~}u{{~zmy}txzysqxwysvqt{yz}~vzw}q{}}tq}wxvpn|}|szyw~zrzy{nzzwwp||vvxxy|wn{z{x|xz}z|}}|~wptquums}ztm|ww|zqyt}xyu{}qw{|}w{rpzquu{zyz{}~yu}yhx{y}}y~z~z~}{{vtwwzzw}|}}u}|{zwz{zz{}yvsuuwx}}{czy~{|yztyxu}r{||wuxy|q|}vvqwt~l{syvwxtwrxzy|t{}|wunyuw{u{y{{zx{q~zvw~|~sstz~xzvj}pzvzr}w|u{w|~w{m|nprytzyi{z~}x}zi~vv|{~|}y~wx}x{so{y~|{uyut{|z~y|tzs{|q{|v~y~~uuys~}so{|xozwu}xpvs|{qyy}uz}{{{{~v|r||u|zfwyyxtwsxn~wxr{yp|zv~tum||{~||z}rx}wpz{}v|~|{{xuwoz{~uV{~}|ty{||l|jyy~|x|t~~s{|~|z~}~v|z{t~m{xw]}|{zvyey~j}}zvqpxmzs{ysrw{}~xw}}vus}u~gsox|m{}~{uz|{st||ys}}xsivvu~zt~wztwvvvuyn|{yzzt{}pw|}~wmu~~t|{~|pxvsp||zv}wy~vuz}swsqjyw}r}}{ur~vu~}mwwqy}d{rzv|zrzy|x~ylsz{{z~vr{|xwz|vv{r{t}n|kv{{y|~~yr}|{u{~i}{sqxy|z{t{v~||w}|os{~{|wyx}yz~|}{t}|{{|v{}}zywsqx~{x~|zv~tt|v~s{zqnuy|vx{yy|y}wtuw~{xzy~}z||xw}~~{w~lvx~w}~{~|y|~z{|}zxzrz~utz|y|{~||~}~wy~u}v~y}|z{iq{x|t{~sm}~v{~||}u|yzw}ox}{yxzn{zw|zy{r~|tjugvw{zx{zwwv|xr~y{}wy~{mwvrt~s~z}z|{w}xy}||}zy{u~qxx|yv|yr}t{vy}xw~x}w~q||~{wv{stxv~}}{}v|~z~{x~|~|xy}rwx}o}{u{yvz|{z|w~}zv~yw}wy}{yyy|z}vxs}~{y~y||sy{v|{w|{zz~~wvu~{vyyky~|q|~}wx|tywyw}zw}|t{}|xz|pzx|w{{xz~}ux~zzyytzxxxxzt{yvx}svyz}o||y|}|wyypvx}z~rvz{x{w{w}x||}|~~{y{yw|zy}||{}}|{zyy~ut|t{zv{u~tyyxx{zxw|nv|uwnu|zwt{wz{}}}wyyzwx{lu|v}|{vy}v}~z~v~v~zz{y|wy|rz|s{r~yxrxx}r~{qwtuvzr}z|~t{b|upzz}qxsi~s|xuizv||mt{{|ru~wq{{~zt|rm{v}|tr~}x~}}}qz~~}d}gpv|q}cz{ixvs~yuxymyvsw}y}r|pqyxz}{zxy}|uzu}v{~~}zzy}y}`z}vuyu|}uzo{{zr|{r_~Lt{{xlx~|tu{yg~{y}zxsot{}}vwyvtwyx|vwou||y|xy}}{|~ms|{wusy}yvtx}}uonyd~~~~y}{{lw|yz~~su~w|}{}osgrgzu[ms}urox]oqt}wx{sqwx~yywrwu~s~yyyzzzt}j}}Gx|~|wrz{p{u|{|wz~~~|yz~vx~xzm}{|z{yvyuw{qyw|}|x~z||nxyw~us{zun|umwxvx|w|rtwzz|wu|zqwu~zdmrwvtv{|y|}}wxuw}n{~}zr{tuovrxz}ziy|}~}xv|yw{yw{{|yv{}ysz{zwzzww{t|zsw{{{}t}qV||zz{zr{xutuh}~yzw}v~|yz~zw|nuz{q|||w~x{pootz|{t~u~vn{xvzytpy}yx|wx{|w}}}~||~{~wqzw{rxiw~rlvzyq|zpxvy|s~|my|}oyxzyw~}o}{|wy|lx~v~uyr}||z|r~g{w~|z~vr|zvz~|v~}vy^~{{rwxsxzw~~{~ww}|~~pw~ovwxp}|znv}~}~}|}|lv{|qy{z~}rkuo~r~||}}zw}ttx{z~}~||}|zzy~kv{{}xl|~uwuyzwzv|tt}|nyxe~tsny{}}~ltw}z}z|s}|z{~vkym~}zzwtx|s|p{}b|}{|}y|}|fsz|}}e}y~zc|x{}ywz|y}w}{{zryz~zxwuswu}w}qi}wt}pu{|{x|s}w{s|kx{{|{|v||zz|{|x|z~v|tzv|~zu}~~m}txx~{vz~yezkvsybzv~y~x|}}|xzzylzy}wp}}z}ys|}z}}|{|~}p}z}z|zy{vt~|||~{}x|}zx|wvs|x{vrmknzyzzx~|y~or}}mwv|}wwzyzzx|vug||wx}|~wx||~~xxs}rq~yp{w}~t|~{~s}{~}x{x~z~z~}}t~y|}uyx|{x~{|sz}uvq|~yz|u{s~}px|{x}|~{s||~qmt|xw|vy~zyzss}kssz|w~iz{|u{|xq~y|wrt}{v~~}j}{xzp{wh~otdxtq~ozkwxz}y{whm~d}y{}z{utn{u{vutuuwxw~{x{~v|}~r}|{~}m|}{}sz|vxvxyvzyzzwvuv{}}~y|sp~w~|u{tvj|v~{}wwyw}~xmt{~z}}}~ys{s{|yxy}rvs~}{mw~w~f~uty}{x}zz}`|~zxwtizzr}~||y}{pyv}qvx|m{~}{zu|y{}z|vo{}k~}q~{~o}{}}v~{w}s}{Zzo{~xyt}z~zz}y|zryz|{uz}k}|x{tfr}z}||a}~~z|uy|~{}|h{|yzux{s{xw~}}|~}~|wz|}w}|{w|}zsv}|o|}{{opvw}y~z||~y|k}uy||{~~yyox{wx~~u~wzsozv{|n~vx{}v|x{tbw}q~}|{n}{v{h}x}{{}~|u}|~z|kut}v|}|}{}|{|o{tyzf|xvh|tx{yqc^}~y~xx|r}||}~wz{z{|zn}}}~~y{{{wzx{w~|}~m|~qq~{r{^}~{~q}s{zx{zyq}zvw{yzyr~x}y}x|usxsyywtlx}}|zw|{ysw}|{{{r{s{r~tuq|~}{{|xzx{~t}p{y~|z|}|~p~zyyy{z~t{wwrx}z}{yj~y}y|{{}|{wz|}h}}yw{||yyozs{x|{r}~x|s|}~~|}}}vw}~xzslrwryv~z~{}ug{yvx~z}}xj~yrxt~xytx}wu`{y{yx|}yyv{tyv{y~v}~x{xwsut~{|qss}w}{zj}wxs|~xwy|z}z|psxz}|||vyy{xyw{}}~}~}x}nz{|w|pyz|ny~y{{zvv~v}nu|t~}~y}{{z}yzzzawy{ty~y|szx~zu}~{zuw|x~vzpxet~|zy|}zxzq{v~zy~}~ywswu}|v|~wx|pt~rzw}{v}u~{~v|zvtzzx||q}~{{|{rzqum~|xo~yuo}xz}~|ww|}xop{vvu|{v|j|w~}vou~zr~}s~m~pt|xuwwy}r`t~{s~|~turv~t}w}~s}qr|zyvx}|up|wgx}{~ztzyx~o|o}e{}{{|z{|ru~z\yr|p{s}y{{x~t~z}xipx|~zoyun|`s}}zq}x{qzqfywu|}~|~q~uw{zx|{}|yv|xy|y~u|nse~y|tuvy~}}~}}|qw}|yr~~xzz~v||xyzvy}zt}}||wWx}w{zt~sxw~~{tx|x{|my|{pouz|yy~t}t}v}yszu{{~yx}x~yx}}~xtw|}kr{{{t~yyx}ypyz||xxvy~uyzy}y{y{yuzy~z}xr|||z{v}~|}xvv~zt}|~y~~}||}~ym{usxxwyy|y|m|~vx~~}zswy~|{y}wrz~|z~}}t|~vw|y}|~v{}zxzv{~xuwuqz~ww{|wv{z~x|{~z{{yvx}x||sy|zvz{y|rxp{}|x}us}{z}~|}~|{|~p}}}x~z~|{xy|owzuux{{}u{wuzuu}zyyzz{~y}w|z}~tzzr||x|wth|s~}{zkvyxs}}zzp~xy~yzu{}{{{z}q}|}~{xzy{qwz}~yyv}ywrwy}rx|{}w{tov~|zw|zvyu{pn{z}|xxz}ywz}yyusw~||tv}z{}ruuyvv}~{z{z}v~|tu}}yw|{zzzt}~}v{|t||x||{s{|x|}vyzx|y~vn{z~|~o~|r~wyx}w~zs}~{n}}}}|a|}z{y{|yu~}wuqz~gx|~~z{|{wyzs}|z}t}v}vwzw{y~|znp|xzuxyk|{{zy|z{z}vw}w~w{{|z}w~{|zxw}zw|}|wz|}k}z||{yt{{}z}y~yw~w}qxx}~zswt}}}~~y{yy~x{x~vyzts~tz}}|kw|z~rwz~z{|gy}}}{x{~{yzyzuwvo{u}~}r~v|oy|xv{x|vwqvptw{~}}zuli}msn|b~zzs{~|{we^yxx~|{}}g~xmv~uz}y}|z||r{yx~z~}}z~ht|}sszvwt}iz{qzxxx||wvuu~}~wywvv{rj~yzu}zv~yv}ny|v{vj|{~{z~~wt}}ty{|u}zz|v}ll|vy{xwwr|{|~~wyyf}hy}{~t}gw}zzt|}}}tvyh{}{yj~~wwzwv~l~{|x|r}z~r~wvy{s||||V{k}|}{zjzx~}rf{}{v}~xr^xw|{xtwv~~}{wxo{w}x~y~yu~|tz}zt|{psx}z{p|zv{~kzy~{w~~uxt|||u{t~y}t{uz}trzzv{|zy|z~z}}xzz~|u]{sy~s}u||xvzy~}|y~s|zyyyzh{|f~yzzu~}}xz~}wyv}y{yy{~~zu~tzmxu{yvy}x|}z~}~zyx~}xx||xnz~rr~z}|v~~y}|{zyy{x{ww{o}w{w|}u{{ww~}u|p|||x{v~z|~}}}~|}||}x{z}~~|zyx}~wr}}yqs~y|~yzywrz~w{x}}|}}}z}|{u|{~}yuz{{{}wx~~qwszqxyp~u{xx}w}~~z|y}xq||y{u|w{~y|v|z|s{}x{||xsyws{|zu|y{wsboyw}yvzzy{}~}ypu||~r{r{pr|xoyz{y{{vx{{}y}qx|s~}||~yovvr{uvxzzvvxwo|~w}uz~uz}~~ltyzwz|ryyyyx`tz|{yuy~x{{y|}tw|{v~w{|yy}u}y~n~eyzs{Utzy~w|pz|s~w{o|zyw{suqh}}yzxytvyn}x|s~~yywzx|z}t|z{{z{z~vym}~}voyyvz}y~z~poz~~{x|~}x{rz~urz}{uo}y~s{{|~}{~r~|y}y~st}|sywwz{}vww~xyw|u}{{ze~{~~}|ux}{rl{}{uw~zwp{~~|s~|z|m|}hwwz}vvrqu}z~y|y|yzoyxy|~y|yzxw{z]}xt}{v{|{q{sz}yvt{~{wzqys{z}{~uv}z|t}{vu}|~zqduu|uszqqxzyuq}nxzyzszq|~r{|pr{u{yyur{qruzz|x{z}|fw|}y}w{xzrs{tz{tx~~s~}x|wrsw{x{xxtgyxyty~~kpw~z{}s~x{w~zuuzyuzyo|yyuvhyq|ly~{~|ykxy~}|j|oo~{wtsvvv|n~rrY{x}|zrvuxn|yq{xp{~hzu|~}ywz}vk}v|}uww{vy~x}vq|p~yp}Ytv|}{}~pjxp~syt{}wytsw|xz{kono~}n~y}|}}u~{tzxxvxux}qtxw}yrxy~yxp~wtuqtyz|u{z{t{yvx|tmuzx||vx{}ov{v}||{jv{}v}x|y}}yzxmp{vuu|zm~nnx{zx|}~wy~~r~~r~q{x{r{lvy|u}z{yv}vq~|}w}{|}wv||q}~snur{znn|snq{{~y}uw~}|t~~lx{{pqxy[zp~|tv}x~}v_v~}yow~t{y||xyzw~zwz|vvYl|vr~{_|sz{{zz{qz~|}}zz|z{w|||u{v}wvz|zw||t{t~{{~}qz}|~ytyoww~{v{}uv[~mz~{||tx}~~r|zj}xw|oxuww|{wtUwzvz~~pzx~g{x{]lx~zyl|x~|xolyq|gy~z|}{~y|{~}}sx~qw~in|x{~qv|w~{xw}~|wzkwxvzy{x}~z{z~}zyp|wtv}vsrxxq{~lo}}wu|j{ntz|~|vx|xyx||uxsu{{~|}||z}nxx~cu|y|u~~x~q{vzc~vxs}zw}woy|v}Ywy}}}r}jwpr{s}|}~q}xx~r~l{|}hyi}yy~ot{y~}zv}xx}~||}wzywr}}~uz}}}}}e}{zmu{t}j~|}xv~}is||zvmxwv~r|}w|x|~~gz}xuzxzz|qwy|}z|y{~|y{xy~py|{|ry}{{|}t}fyues|{|y}t{tvlz}z}wvvvzvzn~z~}|~}yzi}z{p~~zx|yv|}{}wwz{s}|}wnzwuyux}}z}j~hx}|jt~}}{xx~}w}{swxr|}ndz|~|~v||{}{u{~x}y}|z|v^~|x}{q||~|~z|s~|t{k}~x|z|zw{}{}}|s}y}wqu{qwvv{zzv}|{j|}~yx|yv}v{}n{~tz~rz~}y{lz~u}|z{zz{zy|{}~|}{}|ty{oue}xt|lzmr{~~}~hn~|y~wg~~~{s~{pwu|y|}zz||uunt||}}~z|az|z|uzr{|{{}{~}}yx~yzx{|l}lyv{||ps}ru~}y}r~{nyy}vv}{||u}xvy{xoz|x~|l~o}{}}|{m~|}{w{t}{}|v~w}{}|x|yxvd~~wx~{}wtw|~}ra{utulo|{zxx~y{~{{{}~i}}vz{x}n}x}{~x~jk{bn|}t~c|z}|~~{uut}j|~~~~x}fk~~|q~|xtc}h}}|}y}}nvjX{u{tu|pu{{ry~y}~~qwx~}~u}}yzrp{|w{t|~ux~~v}pwz~}|f}}}{z}|s}l|soiv}vvyvxv}v~u}|v{~y|n|{piuyt{}wgxx{z|}wn|}yz{}qxv`}w|}}}~pr}y|||y|r}v~ntvxx|k}x}}vr|uwxz{{~{z}}hz{}{|r}{q|st~y~}|vszvwvp}||{wsxsz~u}z}{b{x]szzn}}~lz~|nx~ojh{~sy|}f{tozx||zv|{v}z{{}|{xq~t|wowzsrwtv{v_~y}woy}~}{v}kwZmu{m|kx{|zv|~zkuwt{v{{ot~n}x||ymwz|yw~r{kvt|v~{{{vyv~~yxzxm|zf|{ww~}~z~y|tiq|q|x{|vwxyu}jwu~|u}~}xsyr~tl{s}yyzzqxwvy~|}y}}v|kw|r}qt|uto{{urrx~z}yz|yXv|wkx}|yvy}}|}~xzzzs}~xuuytysxz{xymhv{v|rzxz|wjzzz~vpxrzxuxz|m}xtxwsns|~}|vx{~|~x|zu{~sp{lz~}}xzwyutu|wr{|uu}rycwlrzxnsxv|t|v|tvp~~}xwsw}w}`~twq|z{}tx|~zzx~uxvu{{~pwpvzzo~~~y~{}yw|{o~}p~~{|~x}~~z}~}~wyytytyoz~|o}z|j{{{|xu~~{z|tu~}z}{}~qy|||x{xz|qvzwxwtxr||x~|}x|{}|~z~vu~}}i{|tt}}|{~|q~||~}w~zvw~x{~~tqq|sz~xz|~~~{~}~xzqh}t}|u|}yv|j~}yvw}rxzz}x}~~zu{~z~|rz{u|wwz|x~sitvz{{vqy{|}ud~||~}yxjvq}{rf}}s~|~jy|ov|zsyp{~~|~zx|pyytw}x|vyzme{|~oww}s{s}~v}uqyzytyz~}~z~np~xu~|{|{{zy}}~}t}x|}x|{zx~~}~~~fp}{yd|u{zo{v|x~}}lz~}www~q|}x}~z~~|w{|}s|x|zzo||bvvyzw}|sz{yyr{vz{y~}z~tsjz~|~~yx|ww}ov|{p}qzyytx{u}}pyw|~|znk{zx}z~py{}}n~||{{|{zpy}{~|w}|zl~w{v|~{{vszzvts|zx}}}zv|vx}yoryxos}Xv}|}xp|y|xww}xwy{{}z}y|y|r}p~~{w|~t}z~yvyzy|}xiyzsr{~||{}xy{||{{l{z~|||zw|x|}{}u{{yzur|t~~~zq~q|{~||vvtvxxx{x||zwi{{||{yw~|mx|}sv}d{z{zs|~vw}|{{z{yz}p|~{t||~yvf{~{zv{yrzf{~z~y||wzprhv|xp|t|zot|nr|uqrr}z{z{em~o|zyuzxtuyjh|x~gpnr{rv|l}yqtkw{nz~zn~hv}xn||znZ}vlv~|svf]|d{z}vvxm~z}zz}|buvw~uv|}p||}{}oxx}{|x{k|zwwmm~uv}vzloevs|~|z{|y}ptwypn}{y|oy~|w{zwwux|xyp{wyv{zuzgyx}}{r}yu{s}unuu|s~ssuzzznzx~}ru||}n}}rzznsz{{us{~~|p~oxs~wt|zrsly{zw}vW{q}}wq}|~dyxvxxxzpq~vo|r}xjt~||~{wxv{zsy~|~x|{~w~mf|rwwvn{}yx|~z{yx}w{{|ut{x~{r|o~|ut|{i{}|xw{s~~pru~tt}kxh}~|yx~|y~vszx}|~zvy~{x~zrrr{{|}v}}|nzx}z{~|}y~z|||{|{ss}~un|{tw}qq}vz}wt{}|~}}zvz{|{w}v~uz{x{}}~e}}~tv}}tz}zy~yxz|`|}~|~{}w}|xxy{t|}xz~{{|czx~x~w|t|}}||yyqyo~}}uv{{wt}}y~}~lv|vx~}{ky|{|yx|~{||~v~x{pwv|z~z||zyz{qyp~ytp}zv||}|yzytx~~rqz{v}r}yok{y~ztj~yy|~vsw~zz|wzz{~}{|{~z{so~{t}~m}tyzwf}~zx{ntsp}z{tuqy|z{|p}v{}z{x~yw{sutyp}puuqvxq}wnnrp|zxy~|oyu{}~yyw{sz~y{{yz|x{z~o~k{|~v{d|y~~~wx|vlvy}}jyu|yzzs||}xyzt~|qu|rvpz~yw{y{xvxxzwxvtrzdxtfx|tv|zz}|~zvxo{k~w{|u}nzvsz}s}h~ql{onx|twtwj\}w}zxy}su}|yt{n~{y~p}pwzzry~xu~}|n{vxvs~|z~zvzpn|~y}wv|~yx{uzzpxw}ztyzu}|~pr{}rw}k}|kz}typxovq~}}zwqr|s~u|v}yyuz{vrtrlzl~h|}xlwry|vwn~}xfy|~zw{ry{z}ppq|~~uyvo}~|y|~{xkyzvy}~u{uzvvy{~vzds~}y}s~tw~{txt~~|{o|~rzsyj~{}yp|}~}ytoxtzm}k}s}t}s}}yyqxp~w{t~}|}lxww{rb{}z{znq~{xwt{zty~w}~}{f~}yxtxy~|u~qs{}}}~}vt|qu}|v}zzx|~zvUt~t~xsz{{|~x}zz~vkx}|vv{xjo~}v{wzywysy|xvw]v|{zzumz|~gq|}||}~{|uyy{|{wsu~rxyywts~{|y||~}yu~w}yyz~q}~z{xr}}xzt{vysyzx~}zs{}zxk~wxuvsy\~y{wwvxz|u{~uuv[ysl|~|y}}|z}w|~f}}}dj}y~}~c~tsys~s}|wvtiryo{u|~~}}wyw{y~xv{xp~t|uv~w~zvw~x|zzss{^zr{y~|wwh{~z~udie~}{suq|~zxu}x{yzq{{v}|r}yz}{uo}}yjv|}nuk||p|~}zi~r|owu|yxp|~wy}|tt}l}tz|zv|my|r{~wjhl~qv|xx|yx~~~~|yr~ow~{{}|xu|{uxq}rxr|xv}}zjx}vw|~}}~ugt{xx~||v{v{p{xuxvytxx}vzouxsrvyv{z|uhm~|i}dywq~|zry}vz~yyyjz}~kux~rz}|s}|zy|}hz{{~gypuJvwnz~{s|{h{o}~|zz}tz|}}~{~~wtxxxw}uw~t{}}rm}hf~~}}}~y~|}nr_t~{}yy}|wz|hzTpqw}|yz{~yw~zOsv~~x}}ooz{iyxcx|~~xzmy~xt}~wm~zv|yy}~z|q{v^x~|}~|}}}~~tz}mywxpv{{x}xu||zuzuju~zx|~}ul}~~x|~d|{osqf~}{{z}|}~zys|{qzuybxmz{|~~{ux{yk]{rw|~o}n|}fsryuy||y|xwpy~{w~y{~vqy~{|sz~qo}xvz}ys~{z~}yl~|~zu}mkz~~}}y{|x}}s~}k~~k|zcz{zyx{}xu{uy}{}}x{qx~rwxz}yyczyz}D}s|}}}yxz{ug|vyv|n|m~}vswz{rs}|}p~~wg|rFcwvstt}{|z~x}izxzttz|xw||ww}ywstsvs|zyxuzx}zs}}t|mwwwu~vyxszuwy|x|}xwwvz]rnxz|u|x`zvz|~uytq{wz}vw|vq|rtqn~~|p|~zq|y{{z}p}{z}w{dx~z}wzxyys~z~Svzxss~wdzw||bvz}}b{u|ywq||y}xz}}~}{xhn~{|{}`kvo{t|yy{wl[sv~|y~y{}~zs~g|ox~{fv}}tsutx{{t}|}wfz|}~}Ezvyyu|}~|~~}~sz~zykszx}||{~i~~|vyfwh}om}|`ws~yvo{pynpra~{ul}jzgw|n}{||zuuvrxmswvvrx|higpxspv||z}y|}{z|twtsnsuyz|~~Mu|~u{wonvxrt}yr}s]wyip~j^xu~~equzwz}_xqxCywzq||]~}zdxz~ex}\vn|toyoyxy\wo}`tqom|ntk{xx|}py{}t|w~lz{m~ozt|my}rzw{{|}{u~Tt}~ytwzt`{ut}n~z|{uvqvjzsfru{ztpmvx{qvh}yqjxts}}n~uaryzstdrywywwqp_v|y}wruv|~jnkxwf|ra|diZpu{x}owulr|}`{j|u}\p||y}~}Ssz^~yzjlh~|e{z||n|lv}~xu|~z}f~z}z~}}y}e{ov}~y~wv}t||t{g{|z{~}{~}yxx{tyt|x|yp{~~km|vq|{d~}rve{{vpk}x|v~u~}{}jn~{t~~s}~k~u~xzxsq{|w}wq~qh|qyvx{t~twx|h~}z{|yv|}zzp{~hz~|}v{w}ryq~v|{}yZ~|ls~v}`y}}~~x}yj||wy~{xz}wx}bm||}}{w}t{e|h{o{{|}{~^}zev{zvjxs}l{}|s{~~\n~|yyq|}~z~z}Z~zu|g~{krxv||||uivyzu~zo~|~{s|}|p{}{|yz{||~|w}|~}hqz|yvu~~vzpytz{yx{pzzyuwvt~}wv|z|tzw}vmwpu~vxyuvo|}{|w|x~y|y{vx|x|{yz{wr|wzxrzv|||zxxtx|thyzutzzzl~|yzwyuwyz|ypv{ywy}zqx|}{qx{}}uw~|}|{q|juji~}p|wurps~ywwvnu{xuuz}t|}{zg|yxzxg}}wws|{yvuxq}{nt_~~huytmiwyyu|{v{}t}zx~~~{|lkxlvs{xzyy{psztt|xzwov{|~|wyoqrt{txy}xx{|w}yz~{quy||z|w~~zz}n}{rxwyyn|z{l}||xwvryp~tvvuv}{nuzyy{zxqsvtzyz{u~~wf~uwqzqks}yttqu||zww}|wput~{pyyuv`uz~ywu|q}dvx|J}r{}~s|z|z~vt|k{|vx{{p}t{wqwr~x~znx}yrxrjzy|}~ytz~q|roxz{q|}~ut}~vzo{}||}}~~y{yq}}~|wx}krw|wt{}wy~z{}w{y{zn~wxyyxy~|ez{o|{{~~|yw~|vwj}~vpx|xqvxz~{{w~|w|}~x~}up~{y~}||xs}~|qxzlsxwxzyzz|pz}xz}x|}ry{xzzj|y~{vs~|x{|yw|mx|y|zxyy}y{yv{{w|zyt}o~t~u~{{szyxx}~ywws||zzw}szwxw|yqy{|}|~{wz}}v|w}~qz~z~}uz|b~y~hr{y{xw|z}|rv}{zlu||yx}xQ}y||wt{reyzvy|xzyxwr{|{~||h{l~|yzzzw|}pz~wy{}Oy|ys~{|~z|wsyr{~vw}~}u}~womy~}xv{{{~~or~muw|yu~yz|wz{y}~tu}}~w{ow}nx{}y~skt~{}wrsz|zv~||{|b{|}yv{fs~{nxuet|}}}{~x~ru~~y~wr{}iww}~r}|v|~|v}{{v}}}|v~{kq}}|qz|z~vzi~s~z~}w|~}}{xv{|{||~}}{|tyxl}}~xz}x~z~{{t~~z}~|{{}x}}z}|||x}sqb~t{twx}|yw~xuv~vyj|s|~}}y|ul|vvxrvzs|y~{}~{~}lw~xvxzjkv|}h{y}|rxz{f}f{n~x}}zwq}|{~yz~e{uw{utt{{i}|}t~x{|x||}s~zyx|x|z~vvyywnzr~x~{}}twx`y}}}~|}~|~]t~x}n{~|yy{~|v{u{}{xpt}x{{}{}j}|yuem{qw~~}}vy~{||}|v~xsyxz~}~tz}~wvio}x|~{}o}}}v}~}gvyh|uvwtuzsaq~zw~z{{{t}x}zwx{~si~tyxp{{|y}{}{z~~{{}ymwztz}}|{ztyp}ht|}}~}o|y}zy}xsu{{vzurzrz|vng|{}t~xo`iy|{~z|yx}u{}twv}z{sux~xxwy}cxsl~y|{w~|}~|rxwz~w|n|a|x}s|yzyvs{z|xv{qx}z~xmtu|vvwssy~yr||zyz|z|~xurvu}x}ziv}wvzrszry~||{|{|vk}~{u}~st}}{~|{w~~n|}}|~p||~|~}uzwxt~w|up|uyv}|tmmtuy}{ywz}|rzyuwwy|m~zz|x{|{s{|}x~y~p||cxstw||yqu|x{xiz}yur}zyr}uw|zs|{}x||wywwyt}~ytz}w}sx~{~qxr}z||{mvxw|{w~|s{{~x}y~zu}xyrwr|voyxuvywqz~~{ttr~|~y|vwx~|||www~|r|z}sz}}zwsn}~s}yphx{{xyqv}|}s{x|zxzww}|s|vsz~tz{|m~}y~y}vvu}~~vzy|xx|wz}~~}q|yv{}yymy~zzo~}z}r{x~xwt{w{}~rqt{t}x~}|~wuy~|{~|}suyt|~vuzy{xqwz{z{te{{qzyw}}un}~w|w|vswxhyw~zty|{hx|l~u||t~~t||s~}z}|ktu}xyyyv}o|}|s}{y~uyz{zz}~|||x}xy}~|~|~iz{~{~xvy}{|~}{~}q~}yp{xxzwt{y{w~}zzwz}xyz}|z{}{~}y~vv|}q{}|}z{~}z{zz}y}x~~c|xx~x}vzxvw}{~q}|z{zvwr{z|{zu}z{~|z{|yqvtx{{~yw}uw|uy{hzvr~~|y||}}{}{xz{xryw~zx|~w~wx}|}}}{y}~yo~{|}z|y}ysv}w}{r{{u}w}z~}zzr|~{|yv|z~tzpw~{r}~{}o{~x~|~tu~}}}~t{zz{xzxy}|}}~wzzz}{z}|}x|{y}{|vwtz~w{~~zzuz}}|x|z}~y|v|||~uz}~z|~~}zzyoz}{fqvzw~v}}|xr{v{~}~}{z{{}}z~~zyz|z|t{xiz~msztz||y|yy~uw{|wx}{|n}~x|~z}y~~v}~}}z}|~vy{{z{xy~qzs{{}~|~{xx}xz|~y~x{y{wtx{||||}~|}x}zz{{}}}~||ww}}u|{zwy~z}yuv}|zz}||t}||wkmq~zz|||kyz||}v}|zy|~t|wu{|{~{o|z{|}szq~{ty{}}}t}}{z{vpx~z{wzy}ry|~|w{|vww~||~|mx{w~p|w|}|~x|}usrww}~yz{ul~{{vs}|zytqysy||}~~|y~~y}~|{}tty|yzy|xyz~}w|yzvu}v~vvyyx{{|}{}s{zv{~z~u}|z}sxz}|{t|{vx{|y{zu{w|z|{z}||wu}ny{no|y{{}}|t|{~||}}{|z~v{~}pvqy|}~{{}{}y~~{}|vrsxy~}o~z{zsy|~|znz{y|zzs|nzyz}t~vq}}{|yzhw}mzymu}x{z{~z{}|x}~~|~h|v{y|wx}uw|y|y}y{zs~vz}{w|~{~}{y||~{}z~zwy~}~||sttzz|w{yu}zm{wx~^~s{{|}~}||{ps|jsz~|y{zxv}{q|xyz|ppzz|}svyz}w}~tvy}|}}zwi{{z{{}x}unxxxxwuyvx~u{y|z}{{xkx{z||xnwu|}~~z~yw}}xzz{{}~z}txw|~z~}z~~~y}{~{{{u~o}y|}}y{s|zwm|}|v|uvjy}yq|}{{~~~}vn|{{{{r~{x~{}x~xxnzz|z~|zz{{{}wvop||xy}~yu~x{ztw{{{|zvr~upwrw{}{{suy~{~~|~}}woz}y|uzz}}y}qs~}n}|z}y{yzv{|tt~~y}yx~{~~v}|x~yzu}|ux~{v}|zyx}t|z~{y{xv}s|punt|zo~z~~y{r~|y{{}txvn~}~~|z}~|}}{}~n{~}|yz{{jwzupy{}~~v}~|pw{{}t~zw~r{{}vv~}yrvvx{}z|{~z{iy}uuysuyqu{|}{|x|~}u}{{}w|~tz}||{|yx{v||zv~{yy~wzvt{t|z|y~j~w{sw~u|ux~|{}s{y~{z{sw~}x~{wyu~w{w~~{z{tx|y}~{~zx|t~zurxmq{{qv~{~~{w}x{x||xv{w|v|}q~}z|w{}||{zxw|dxyv~x}~{z|t{{~uwu}t|zfpzwz{}{~{z}wr}rx}s{~x~{yy{}v}v{q~tyr|}s{|z~{}~|yysp}}zz}}w{n|}y~~lw|}yt_}~v{tv{vv{x~q{vy}x|zqywvvqv||srwr{~{x_xtxe~||y]t~{qy{}zwy}sus~xz{y~zx{zy|v{{|}ly}~}z|vv|wq{ou~}|v||q{y{tw|w~z|z{|~~vu{}{y~v|rz||syzyypyj}wxy{s||~wy{~}t{fx|qrp}x|d}xxz~~pwxz|}yunz}pr~~}{wzxn}qq~|xr~lvwzqtwry}wrtwwv|r}{y}~zt}~y|{|{e{u~||tv{~zw~utnylzvsvmvw{tp}|r|z|xuxzm~~rkz{xz~{mzy{{pwzxyzz~yxx~v|~utovzyl|v}|z~zuzul}{~}}{~x{y}{}yr}xqy}yu{xn{}t~p{|t{{t}y{v|}y~z{|{u{~Xy~ty~y|rrzv{}tzr~|}nxi~~x}|{wxn{~p~u|~{v|}|}~]~{}}ju~y|||}|w{_~yyqy||~wqyv}}|{zwx{x|mx|~u~{xymrw}yw|{xx}|zw}q|v{r{y~|{~~|xzy|~y{z{vzus|ttx|~}o|}}|r{{|~umsy}mzwx~ry{{nyws|v~|z~wu~y~~zxy{{rxo|{t}}y|}~z|t{{u~}{ytoyvy~|~r~uyvztz{y|zx}{m|wyx{{yxvv|~~}rxwz|x}swzwl|kt}|~{u{}~i}~}yy{~}u}wv|y|w}}}}|~iywxzstzv|}x}x~zxqt}||~zw|x|{z}tyz{zy~m|yxvz}{}z~vxxz{z}wtv||zx}z~y||u|xx~}v~~q~}vy}zqwuz}{t}t{~|t{~zy{r{x~x{r|~yz~}}u}ts}|~~yt~|~wz}w}}vywy~}}y}|s|t|s}y}~{}{}|t~x}ppyx}}{~~{|rzv|{tw|ut~u}u~|s~}~z}qzktxyz~xu{xx~}~{zvwt|uyq}~xy~w~{|wzuy}y{z{{z~{~||w|vvy||zm~~~qtxmy{|tptx}}}xvyx{m}{w~x||{~|{ysyyz|}x}uzs~z|{uzt|}ht}F^|yz~}|xz}|js}vm}}y~}vu~x|{sbymu}ww~xxsu~z{vy~{|~~||o~vvyy}|{~s}zr{}x~|rrz{{~}z{ryx{|}zx|}~~t|l~~y}{wvo~s~}~m{v}zq}wx~wy|}qw||~~v~zz~x}x~}{x{x{}~}q|z|{zvy{}{{uzy|}}|~tw~s}|i~~wx|yyyy{x{}{~yq|^u}z|~{td{{}{s}|}{}{|vz||z{yzz}lv{zvy~s{^|~x~yzlv{|}xxz{wz~~vzzx{v|op}|tvy{zx}rx|}x~y~x|s}{|{zty|x|py{~~}~zvz|}{~|zzn|rzzs{}||{z|yz}zzzu}}{}{y||x~yx|}w}|}|}xy}w~~}xy|{}|}~vzsswyu{yww~xn|~tvz|{{{w}{z}}zo~xr{}n~|}{}~y|}}xwh}{}||}~}z|{ywwxzzz}t}x~~}ytz~|~{|z{q~{t{x{||ywz|}w{y{}w{|}|}~{~x}vv}zz{w|y}st|y}vx{~u~~{yw}~||~{v~~}{v~}kz}||{x}}s|sy{wyy~wu{|uz|}w||zw}r}w{~{|~yy}w|zy}~oruu||wsx|zwz}x|}}}vzwxxywsky|{|sw~{g{|wxzwwx}~}y{~wzzxww~s}~|||}{zy{}u|yzxyt~{ytz|}iy|nx}cy}}|v}~zyp}xnrz{mw~~|mfkw^|{tj{t}}es{{y|{p}{xw}pwzw{yv[{wywwm~{tx}{~syxx~vu~|z~}ljxzx{}ru{|~sn|xruxxs|~z{ss{yry|{}{sypyzy{{|z{}xy{zlw}oz{suuvzzax~~|w~uw}zmpuz}|pzrz|~w~w}v{|x}u~{z|yy}|t~yuyw~lx~n{|~[tx|bvys|nz}~|s||tw|vw~xw~~kzsx{{u{y}zw~}|qrxqot{}|z~tupu|{u}n{x}~wvn~{du||zw}vxuz~vpspmtyozttz|~uwzs}{~{mq{wxqe}z~~zxucy{{|{{{ttt{u{||v}w|~z}}{mxy}~zsyt}v}z|vz~~y|}~}~zyrm|~~~{|{{~}|yzv~y~x||tr{|zwz}wz{{q{|w{yxtiu~oqy{t~xxs{~x}s||tyw{~z|v{{yzy}zu|z}yzy}}u}wwy~||vuzv~z}}~z}|z{}|{z~py|{}y{}w{|yz{zz~{zv~|y~|zo~wuuyv~|~z~{o|z{~}w|t|wvz}ys|z||u|}ru|{~}}}{{wk{}v|{x|{{kz}{~z||rzy|v~ww}{kz}u}{}x|xszx}~}~{|v}~}p~yv}}|y}}yr}|z}uw}|xz~xzw|y{t~{mvzss~}t|}}k~zzr}{y{}y|sx{pxmw~}l||}ysp}||pr~~~|~}{ys~y~fxw|~{x~x}z~t|{~wv}zzxukwv}xy|wxu}~~}s{}wx}w{u~zr}yw||{~}~tz{p|w}{||~zzyy}x~~yv}~|u}}}}xys}zt{}zw{{y{}|}y}t}x~}~x}z|wy~xy{v~}|{z|~pk{~{}xuw~}ztw}|~~x{xw~z}xszu{}}zxvvxvxg{y{w{|wz||z{~lzzz|{~~|i}}|~x~}||}~su||{}r~{wn{zx}|{{p|mx|{y|~|}|{~}{{~p~}l|}}zt{wz}{{{pyzsxu}}|w{~|{}}thm|m~z|v~z}xx~vv{v}sy{vo~{{s|r{xwy{}n}pl~{yywyu}u|xuzz~wq}{wxvzzyyx|vw}l{~wv~y|x}vwz{|x~{w}qyzwyyvy~d|}|u~op}vu}}~ysjux~}}yxh}zyy~w{z|}u~|}z}|oyy}}s}y|uuuzr}{m|yqr}}{{tx~s|q~{~{g|xzvkxu{i|}uyy|x}z}{{}|vv~z||gzovw}~}{w|wwt||{vxx{u|~r{}zw|lr}z]|}z~}~svstz||y}uryx|l}w}|w|y[}w{lz|xywlvy~z{~~wg{|n|vl|v~u{wz~xx|wp|w}w}z|{r~yoy||}|~yur|n{yu}~fzozuv{|yswx~}wxzl~ywt{v|yuty}mu{u~}xxzx}~{z}zz}}||yyw{qy|}z}|z{xzvxZxy{n>t^u|x|x}{y~{r{z|~|x}~v~|y}v{}w||~wpx~zxn{truy[zv}|w}~{xx|z{~|xy~}~{xy}r|h{zwz}~t|zu}r~{{wz}}z{|~wxz}|yyy{{}x}}puy}{v|t~zxr}}{I~|ww{~|{|}yn}x~{}qyv{owywt~zt~}~p|t~vu{Zxs{}iq~x~v}qzxeyqo|s{}|uu{v{z{yv|uvt~qm}]siuYxqxw|zwor}}}s}sywu}}yzxzyawz|}|z~~t~wyycsny{rgwz~r}{{rw|zvs|l|zuwcstx|~y{{v}||||yy~}zwz~~~|y~x}~y}}}}yvwu~[||w}|yzs}y~wpnxl~~~~xx{uxzh~z|~}}|~~~}p}sy{||~usw{}zx{}zx}zr}{w~z{zv}yx~z{kus}v}z~z}~~y}uw}z|u{||{{v|y|~}~}x|}qynt~zy~w}zzoy~~z}{~{yztzx}|yry}~{}}z}}~z|u}y{{{}{|}}x{y}||y~~|zy{~twwz}x}}{k}{}zv~|}y~|x||}}xsv{quz{}t~wy{yt|{}{yz}wzv~~utw|}{yz|ux|}wy}z~{z}~}vw|zv}}yw~}{}|v{t|yy{s{|~x~}zw|rotyyuwxw~ytt|}x{zy~{~zx|~}u}xx{yz}~~~~~|v{xc{{tw{}~{}}~pz{xxxo|~}|~|{pq}{u{w|~y}{w~{|z|{phv|}zws||{~xpuuzzs||{{xyu~z|{n{z~~x{}zz{|rvy}~~{{~|yyvwwr|~{yj||{yw}vx|~|{z{{~wz~s{|v{}tyuz{w{{{xvz|j{x|~x~~yuuxy{|t~xozz}}y~uz|v|q{{|y|xv}r|q{|}ym~zz{kwwj}{~tyyzxyr|~u~ky~x~qvswmx}}|nx{zruv~{mztk}xy~zsrv~|w}}y~{}t~s}{}~lrvn||y|xzy~z|}~}zx||u}zz~z|xsyx~{yu|}v|z{}}{y|||~|tds|y}{zw}v|zz}myvxuzrx}utdy{q~ppt{~_w}q}my~~o~vx}O~~~|sr|ry|}v{zz~y}p~}|~~ky~|vzz}xw{y~{yxo{yt{wsv}w|~xzy_{ux}{y}{wh~||}p|}|qt|yyr~|}zx{\|dv~yn~|uo~}~Z}v~~i~|rd~}y|s}|pz}~y~sy{`yz|w|z|o|s{~xwz|uyyr}{y|s|w{{wzwyz}vyi|{ss|~W}}fzy}u}wzwy|s|{}vzsx|Rrrxw}~|}~z_tzp~{r}xw|uxv}z}l{yv{q}ix|{iho~wywuo{{~v~~xzyzz}~x|x{xy~yx{{|}|zy|~swr{z{jl{wy}}||}~~}s{uw}{t{zwrp}}}|wk}|{ut}}|~|gwvsx|}z{x~xw{{~~tq}}{~}}y{~|~}{w~{~|x}}}o}j~z~ttow~sz}xy|}z|tu}~}}uxn}tx{}}}~yw~{voy||}~~~|{zz|vw}{}xyxw}}s{{rxyy~xzzz~}o{y}}{}~qz|os{~{y|zr~{{x|v{{|~}zyvsz}yx~{zx~}z{rzyx{~y|~}~yy|u|z~~|}z||v{xf{stzys}~z}y|w}|}}~|~{z{zt|rx|z|v||ov}||zwi|w|wy}}v}}r}}|v{uq{~~wx}v}}{{}xzz||||evy~|o|y}ox~{z|ys~w~~{wtnvmx|z{}~}}}z{{|~wzz|xzsu{{~wy|~~x{x|w|{z|}sy~yu|h}}wxt{xzyy|vs{}{{zz|~ys|}~{}{{v{w}|{}y{zyu{|w|~~{z|}}|z|rtvv~~{||~xz}~{{zzwviwuz|u~vx~ty~{~~|~qu{y|}ovz~vwyy|x}~y|xz{}zvv}|{v{y~}t{zsxy}~|}y~j||{t~u}yz{{{y{y|zz|yyz}}}~z~zsz}}}~~zy}wy|v}{z{~}xyvzr|~~z{u}}}tz~zw|}s{{xwx~szxy}|y|}}~}~{}ztv{}y~y~|{vxpw}~zz~zz}t~zq{~t|u{|}y{}|z|}zy|}k|xtwvzs}sw~v~{ft{}u|t|vuzox~w}tt~{ktvzzzy|qyttlpun|tz}{z~y{~}sustr~}yt~y{~|}nyxx{lsx}~~{s}w|utyvx~{y~xytm~kux}r{z|}{uzz{uryq~z~uwo~~p|{t||~{yxz{t{yuzw|ohx|v}u}tfw~vlost|z}y}uczx}ywt}}qvzxsw}zw|zwwxs{}w|{~p{|~xfz|}|}{x{s~{v|zvw}wx{w{z{xrxy~~uzm~z~x~|~}qvvwzyv||muvz}nw|zzzv~u~ut~~j}{uyozy|xy~xt{m|yz~swvuv{~|wz{}tt||xrz{wqvwyt|\w}x~w{{u|~}yx{|z{~||{}}w~|||yz~{s|qy{{}tuxxtx}q}~v{x~}~y~||{|s}z}{|w}tzw~x{wtzz}}||i||{|zwy|zv~xz~~x{u|{wxz}|n||}z|~{x||r|~~~{~x{{}x}ypm{~}{}}}wpw|v{{}}pz|~~~|wy~|~zy~xz{z}|yz~}}sv|xyt~wrs{}~{pu|}zrt|~{mm|w}rz{vi|ux~zzx{|zxx{~zx~o|{{~yz|yzszxx{u~vwx{~{zy|}{ywy{{|{wzz{{x~{~w}~~y{xsyyyzzx}z|{t{vo}}|srw|vt{s}~{z~{}y|z|i|}x||rwx}yq~v~{wrv{y}myn~t}gtu~q{{w~zu~uz|u}{~x|x|wywz}|~{r~nyswy}{q}}{wzzzzxyw{qt{}}|zt~[xstzu}~z~{|zjw||}yyzyy}zt{tzywy~x|~}u~}yy{z|vv|xyzy~i|w{|~}~u~zu}{}~}um|{|yq}w}{z{yxyes}y~~zwe{~|}{|~{{~u|p}x~}}g|y~|s|p~|wz~yz~{}s{z|}qt~ystzy}v|v|||}|{~~|r}{v}}l|x||~w~~ys~y~yw~rtyyz{t{zzzyz|}|x|~`zzwuuxzzs~{y}v}~x~vz|}|xyw}{}w{|}y~s{~}{}{zwx{~o~w}{yp~{xv~w|{y{ts}u~|tv||{~~|x||}yx~zxzzy}yx}~zszzyu~|wzp|}z|{vx|u|~|}|t{x|ymy}|xv{yy|zv~yx||}xzsv}}}}zz|oyz|yxv~||{z{}{}zz~|z{zm}{x}y|w|x{jwzurv|zx|w~{|t{q{zx~yzt{}|k~n|w{{||{xtz~|}{{pt~zp{z~s{}~z|x~~mx}s}v{pu~yyz}}zqo}|v{|z}~yyy~{zy|zvr|h~}wxs~ys{x}|vm{{~v~}z~}vyy~}|mxyyu~||~}~|vy{}z{|{qz{ru~zx{~~~zz{|{oy~s}wx{v|x}x|zyyxk~yg{km{{{~~{ul}t}vrxr|~z{xz}zxzsx~|u||}|}}}y||suyz|{rwy|zw|}{}{~~r{wk~}{~q}}}y}y~wp}{~vxo}y}xz}|tyzt~dy{ru{xt}w{h}{{{u}}z~|u}~y|||z}}{{{}{|xtzz~|{|tw}|w||ut|wyq||}zJw~us}uz}~}zs|ygzuw|}y|hy{zzvg~~vwv}u}|y}t{bpzwt|{}xq|wwp}d~k}~{yn}z}~|~v{x{|z}zzyko}d|w}znuv}vx|x|~}y~~{zwu~yx|y|ury{{x|z|tvxy~z|~w}x{v|rz{r~x~}yt~t}{|{|vywx~~t~uz{||}m}xwv~z|{|e{|wzi~}txnUum~vs}{]z|~o~{yx~sx~{w|z|yv{n~~yv|ux{trzwyr}zt{~}u|x|~v||{x|xw~vuv{{n}{w~yiyyzp}~||x{{tv}fx~~~_}zz|~qw|~|zu~w}{xx|ut}t{|w~nvv~x~q|qx{ztzs|}x}}yqz~~z}z~x{xx~}|}|wt|v}y}w}||Hy}x~~x~y|vng|{jyspwv|~rx|~UxZu~}~s|{ynztt}wvi}|z||~{~zvu~x~|zr{zuwdzw{ujuzyzywv{suy{xwxzvxzu~{|y|vzz}s{vo|ttb~|{y~doy}~xt|zwx{|xz~w^{xla{n|z{qu}s[y{|s~|}sr{~}~oy}t}yt{{|zwz~}v~uz{vg}w}}}~}x~|suzqsm}~|~k{|vd|||}}x~qy|yY}z}|~}}x{mr}zw{y~uo|y}{zn{zlu|}|zsvwzz{{~oonxwz|sw~yynt|x|{}z}~}~r{}{y|}{|}~s||||}xzw{~zyn|ouu{}|~z|y}}|}~~zunx|yr||wsx}{ux|~{}{{{|yyy}m{v{}z{tz{tuz|bxzt}||z}o}}z|{{wtz~yzzx~rwwxl|u{~|y}}uunyy|xy}{vv~}|zz{zpsvv~~|~wy~v~}x~}|vxz}yrw}~{|w|orwtywwxw}{~|yyp|y}y~u|z~|}}j|yy}jw|~y}xw~ztt`}}}x~c}y}uk~|y}u{}~zw}xykzy|}xz~|~~xntx~}~}~ztssmdt{o||}~}}u}{oy}~wwu{z|q|p|}awx}{w}{}xv}s}n~}s{x||~~zz}}}~xryx}y~{r~zz}ywz||~|}{}{~~zzvp}tx|{hzx}}q|pyo|~sry|y~{zz|}~}{m}}oyu|wmw{z{t|}{y{{}ty~|x}n}{lwyz|}xy~zrj{u{y~}xn~{~{zw}~z}rppz}zi~}zwrk}}ztv~z{~|xg{}|z~~vy{tq{xtz{rk}|}xyy{ryzz|iw|sy|worry|}v{}}r|pzw~z}z{lv}~x}~pw}~~~||syux~zzxz}w}~|mwv{~v~|{{y~zzz~{w~uq}~uxo~t{~wyzu~z~z~}zyv}{x~xw}srytz|y~||zjz{vs~|{~||w{}|stv~yrx}zz}u{}sr~zs{psvxry}{|x|z~~}~uy~yr{svz~|}|{y{yu~~}zws|~~z~|{}|xx{|y|yuv{~}}xy|uu|vz}~q||xx}{}{~wxwz{{}~u}w}zq~yzw~x}~{x~s{z||}uty}}z}{|yuzyr}yyw{y|sv{x}ut}~y|w|}vwxvoxwyz}{{yzx|z{~xszuy~z||wz|x{tw}|z}}{z|z||zyu{m{~}|zz~}y~||y{~|wwt}}x~~}|r}~{{{~|}~}r}~{yx}|y~~~{xry|wlzyy}}zz|ywzrt{}}tw~xu{s{x|y|x~x{}~~s|y{rs|wxyt|z{~ys~u}z{{}{wy~}~xs~sz}v}vwyuzzuxuu{x}{u|wxvxx~zxw{~oxozrz{z}r~}vz~~~xo}}~x{{yz~xx{|z||u||u~|{{w{||szzy~|u}w|u|{|yu{u{oxuxw}|}}{{|~zyy}z|t~|}y}l||v|}|uzx|xo|~}|zx{z}~|uy~vvwz~|{u{||sy~rxwx~}y~|}|ryzzyz{{{w{wy|{}wwx{|yuxz~z{~wywzvt~qyv|z}vsx~wyxx~tuyz~z{w}{w}~xzzzrw|}ww|vtw|{uv{xl~z~}zzt{{uz{ysy}~xs}nzz}xz~uy||}zst|{|~~z~{ykzut}||u|{yw}x||||z~|s}su{|z|zvz{vyrs}~s{f}w~}}~xw|v}w~~{{|{z|x||{}|f{w~yw|y~z|z}|y|z~z~{y}xzw{}|}l{y}{z~v|jv|y|}{vnu}u~{{{v~z|}z{u}s|xyz{zvjx~~v{|{xz{s{y}wvrtvx|z{~{|~|pi}~{}}|z}||~{y|}~}|vwX~y{z|ztx~~v~|qay~y{|qyr}|}}yx{~}{p}}y}z|{yzyxxs|}}|t|xwwtu}|}|}}y}z}||~z}wq}~wsvz{uu|}~x}v~yxcst~q|{}}{}{~zq{z|u{vy{~|~|w|{wz~|pyr|}~~~t~x}y|}w}{|sw~}k}{yytu{rv}{szyz{|~v{|yvwpu}{||~{qyy||tx}pyy}u~{|}{y}y}}y}yxg|zx{~wy|~~uwvx|uyxpz~~ohv||vz~~|mz|oyws~~~p~~wp|}t{{z|uwu}u}xy|}v|w{{~wx|{|ww}y||weuw{{~vz}ux|~xyozzyy{~}zv|~xr}~wx}}{z~~y~s{u~|zwzvq~w~{zr~yqqyg}q|z~uz~oyvvzxy~wyt}t}uyqsv|}z}{|||yzyt|xz|xw~tzry~}vy}yz}yyz~r}|qy{w{t}~{uvp}xzxwuyu~zt||zu{z{owxzqyxwwy{ww|yw}tx|t}}zzzqw~vyzxtryv|xz|wy{{x{}|v{}~{u~tt~z{}x{z{~vyzur|t|tvt|{qv|o~~~|zy~{jxz|oolw|vyzw~~v|ry~~x{}zt{a}uzywr{wxs|~~{{{p}xy}yy}s{uyr~}r~vzwx{y}oyvr~q|{zu~{|xyn}vy}yw|p||xtsq{xz~}ryu}wn~z|vxyxylz|xzz{uz}~yvuz}xzzvyxx}z}zwvf~zrs||u~z|}{~x~uw}z{{{~}}~~}z{z{o{wz}zyw|m|{u|ptwxu~w{}u|z}|ww~syrzuwuz{s~v{yzr~u}x{x~~y{xvzp|~y~|x}r|}y|{u{~{{wz~~z{~|x||{{zzzqkz~~|~{||yrz{{}~yy|}x||xz}}lxu}x}{~~zyw{zw}|Wz|~~~~}}}xzy}|wr{|}~z}}vzz}v~{k~|~||wx~}~|~~~}}xowzzz|zyw||~}}~~~}zyzyt{y{}{xz||s~w|u{{}zuv|{{wve~|{x~}swv|s~yzz|v{{}u||s}}~~}~~w~xy{|}~o|zz}|g{~|v{rvhzyw|z||y|{rs||w{w~u|xxvro{~{~|~vv|z{~}sv{}{||~~v~~v}|w~i{|{~{xzx~yzzz{zq~~||n|hk{zq|{zyw}}}||yq}|t~mxu}|}{r|w|qyuyx~{w}}|}im{x{y{{}x|y~||}||}~{fw{z}xzz~~j|{~{}tz{|n}v~j~}y{tx}}pyu}}~||v|wu~}~v|~{{{vR|~y}~{}}}|q}~iwx{}}}o}{yx{~n}|||~y}m}xz~y~s}{~~|{x{zn~|}zx}{yx~{vv~z{}|xw|z||v|t|}|x~{~xst{px||{f}}|w~}zug~zx||yxd{|zx}~tz||{qs~y}wy~p~yvxv}zx}y}|x{|z}|qz|{|kvwvypuym}qx~~v|~qz{vyyyywz}}t}{{zw~{}{xs~~~{{z}~y|{w{w}{}~{|vu|yzyzu{y~xy||}zz~|yqx}uzd|z}~{}{}z|{z}v}||w{z{y}xy|z|{su~zv||zsv~z{sz}zc}}xxuy{tr}z|xuv}{}}ww~|}zyt|||}|{{}zytty{}z~z||w|}ozsw{}x~{~vt{}s~||ztz{~y~y}}v~y~~xy~t}y~yx||}yvq}xvtzZ~ourxy~w|w~~{rvy|qx~|w|{ym}}z~zywyy|x|}vwv}~|zz|z}|xzxl}z}{u{ps}y~}vxh}|yv|y~|zy{{~~yu||{~z{|o|}v~{yctvx}pyzv}ypq}{}~y||}szv|r{~qzo{~y}||~~}}x~vsz}ryy{{u{{{|s~s|}u|~zi}~|~~lsx}tx~}{y}~t|{y{}ux}uvyytb|u|{{}}z~|zvs}{|}z~z|||~qv~~{{}mz~|~{~~t~tovxt{z{o|k{|wx|~|zz}y|v~wvx~~ww}yo~y~i{ovt{ys~quy|xy~}z}v{}yz~{jtx~~}~~wou~|x}}{{w{zz|lvtyy|{z|zx~}yv{p|yurw{~}pr}y}wly||~x}{wwrwv{Sy{vz~u}ysxy|{uy}|}}yw{vsvz}xyy~s{~{{~{Ry~{{x|{|y~yz}{z}pxtvm|t~zxww{yzv{xz{}zxkyszx}yp~}}xun~|}zjx{M{z~||{}w~su~z~u}|}z{vyz|xyprsy{xw}xk{zsx}y{{xzx}~}ztvu|~yxyv|uyxt~w|yvz}{|{|yzon~{|w~~}s|{y|zxyysnwtxzyzury}p~||zrz|zwy|u|{ww~~x|nzzwowz}|u}z}}wwxs~zxuwzgv}vr}xvw}}{~~xx}~x|}nxxw}}~yyuy}{n|tuy~u}}zz|v~wp|v{~jr}|w}s{~{~|{z~txsi}tx|{zxt{~w~~|{||w|{mv|xz}xu~u{m}v~wzz~x~{{z{}zpt}}}y~w|uuy}L|su~~~~wv~yxpq|n}ryxr}{}xxszxby}yxpwzm}||uu{zw{~{|||zx~|{|{}}{v}~i{{}y}||wlpoyxyyw~wz}{|{uyx||wxy}~}|p}~~yutu}m}}~m~ztzw~}{}~}to|{}~rxx~||{zt}{w{uy|}w{}ztt{wx{uv|}w|mq{yoz|x}~x~xy}yz}~}x~}}}|z}}|}{|{yzz}sxxu}{{|~||~xrw~r~w|{z}~|r{~mw|{~y|w~xv~}|o|~ox|{}}|~xy|}}~z|v{zyr|{}|{uxv{vzyux{}{|uvo|~{|}{}||nwvw}|~}}zzx||vzi~|x{yw|}||~u{|m|s|yzw~x|o|{}w~~|~{r|zt{{sy{~t}x{ux~}}z{}}nuw}~{az||vx}r|~y~~~tvs|}}}uv||zwo~}~v|{}}x}~}z|t}}}t{n}n}qzz~yz|~yw~vxosr|y}~zzs|}{ztxz~~vvzztbzu}|z}}|y|}~iy}}trt}{y~|x|wy}{}{y||{~~u{zyy{~}{|ty~~uxy|{wu}|z~sx{xwt}~~|y}}wvx{{|}z~w{yz{~vr}w{||zuxrx~~t|~v{~{pzx{}uz{j|s~xuz{}q|}~~xx}~{~~z}}}}{w|~ty}}zu|{z}}|~s~sz{i|ryy|h{}}zq{|}|}~~yq{{ux}||||{xz}|}}~|~y}z}z|xx~uvpw~~x}r~z~y|xw{z~zyo{xw~w{v|xz{~}|{|xqvw|yy{vty{{|}rv}|vx}|wy~~x|}vzur~x}qp{}|tyv{g}~x}}v|}}~}xr}u|wu~yyzxvzx}~qvy~{|uxz}z{y~y}x|~~t|}|~uxmr{yvyszw{y~}zxxvz~~l|syw}{vzy|n~wz}|~u}|s}}}rvr}zyzyyun{y~}~}}|xxxvx~||qxw{uo}w|x{}ww|xxv}x|ytz{w|tvy{|y~w|xuyz{}wz||zrx}~{}~y|p}~~y}}~|~|yy}{{}q~~{~|pxz{{}xrp{~~|w{w}w|{{}x}~xx~}px~{ywszy~qsnts~}y|x}y}yys{}wyxwsytzz|s|z}xz~|y}zvqtpvwtyj{y{|uk~}}qzz~wszwzZzywzzyw}jz~|x|szvy|{}~{~~~{~xbzyz{yy~~|v||{{|}z~~|~yy|{z}zz}{t{xz|z{}y{~x|~xzz}|}{~z|~wtz|zvy{~~k{~|}~~}|vuyyxxz~z}rlyr}xyf~t{~{}~|~{|xz}}xz}|z{~{p}}isyz|s{~|v||uz}s}}~|~|{}q|sz}{xvw}{xx|yw{zyhx{~~y}z}}}y~vnrjuv{|w{~z|w}{}~y}}zz{zw|mys~yz|z}|||ux~l~{~t~{z|}smx}yv|}x~zozz|||vywr}{{x}wywtw}y}{~{z~yx{|w~}k}~z~{}{~qysn{~{g~v}|pyjy}zz}}|z~|{}}wzv|oz}{t}|{}~uxx}{x~||r{}yzxv~~ww{|}q||y|||svs~y|{~~zzzph|o}}y~|y~||}{ww|v|{~{zzuux|ty{twt}wy|}{~_{z}|lv~|pzs|}|s~xxt~~}n}{}~~q~t}}|z}sv{vw}|~}}y}{{nzt|||}s~~|}z}nv~~}v|rqryx~yz||v{}~{{~y}z{}qwyrzq|~}~|{x||}|z~zsozy|xv{|}z|~~xz~|}}}pzqx~z~~s}}}|}inf~yzx|~}y~}x}~{|~zw}~wy}~v|}~y{wy{ywvy|||{v~|{{y|kuy{y}yy}|we~q~zw}v~~|~~}q||~yz~~~~qp{{t|}}w~wu{wty}vvvyz{qvz{|{{|y|}~z~}wvyzw{||r~tbmv}z{|{{{~{{~wz{w||x}x}}su|xzvxy|o}}|mt~|y}{|y|~w}|{y~}s}~z}|}zm{|}y|xstxyyz{w|xx|}}{~}vwy{y{|}~z~svx{w|v|zvo{~vx|{zqzxxz}~s~v~|z}}ysx}|}~uz{{}{}}w}{wxv|}vz~~}{{}{}fwr|~}v{ttuy|~u{}~}{|yzyy~x~~~}vukw~{}yx}|mwzqz}{zy{x}~}zwzu~|~~w|v}{z|zrwjxx~xy{vfx}wz|zx}zz}vq}z~v|v|z}n|yx}zz|qz|~~|z|u~x}sx|}}{}tv|t|}zwu{x~t|zs}z||}vvk{~y|{t}~s{{txgyhy}xu~|zlvw~~~q}zzx|~pyy{w{ly}s|rpvy{|o{|vwy}vv}{r}{~xr|zm|pyx{w~x}s|{ywwoywt|~z{||yx~|y{|vt~x~{|{v||y{~{uussy~rzr{os{{j}|v~z||zz{w~u|y}|u}yzv|~x}wz{|w|~vs}}tzyu~x|rw}yw~vv}ut|x||ysvx|os{{x|~{{~~xr{x}|evp{vt}zt|u}tnstw}w|}}||tz|r~~u|zpxupy|~|vz}{|~~tut}{x~~|t|}}zxws~twv}q|{{|~{t~t~yz~v}sy~x{z}yu~yw{{ty}ptz}y}~~}~~w}||}z~v~|}~s}|{ux|z|y|}wu~x{px{{yx~y~w~~p|{}n~v||u~||y{{~}|}vym|~|~~~|rv{z{~s{{{}~xw~}~{{|y}{y~s}y|~t{{x}|yy{t||uxv{~}{wwty}{wx{}zuyzvvu|yzx|x{}zx{||yzu|y~~wuy}rwyz~zvyvyw{{|z|u{w{}~|xy~z}{|x|y}}|~{|{wrywx{{z{rx~~|v{yvzx|vu~w||{{x|z~||vy}sxy~w~~{|zzx{y}z{xx}|w{}~o}uyu~|{yo||w~{yz~~z~yw~y}ytzv{xwu|qw~{uzyzz}}~z{{}{{xu|}|}||{xx|asby|~~v~}p{}{z{uxzvoz|}y}r{k~s}||y|z}z~wy{xxvw}r~swx{{l~~z~z{xut~}}yuyyv}z}r~{|z}zty~~|{~u}rv}uwsynywrx{}uv}ys~t~|}t|pu{||w|}vv}vr{zzxoxw{}~y|uy}z{|ty}x}u~|{{kwzw|y|~w{~tz||~xv}zq}vty|z~u}w}{}{yxv}zt{|||wnww{t~{xy~{w}zx}|}xw|~vxryvu~s{{zrzi~yz}{is}|z}y}}{wz}z}~|{yg|}{ys~vtz~{ty~yv|}}xzx|y~{}v}{~xzzzz~w|v}}~{{{w~z}~|swxzsy~xlj^~x}s{v{yuz}z~}tz|zy{|y}y~xrzux}q~xr~st~}}{ovz~{z~}yup~|~~~~y}~}~p|ztwz}}yly{~w~wz|{y}vyz||wz{~uxxwy}xzz~z{tuz~mywuy}~{uw{}~|z~||l}u}~|qz~y~~}zzz~}~w|y~}}lu}z|~yty{v|g{~z}~t{{~~wz}~~vv}tp~~|wu||~x}t{f|t|owv|~}qr|uv~|{~ww~qrp{|xu}~}y{}sz{yxlwt|~}w{w}x|~}x{zvt~y|zyyu}}y~t|m~|nz{|||z|ur~us{}z}|{|z}yvi|||}{~~y{x{x~v}~x}v}~~vwq{}s||m}{{z~|zwz}|txuy~zyzz{~s}}uxu|zx{y}ww{{y~wiu}yw}~}~|{x~{zzy|~yy}w}z{~||y~~~|wu~z~xzy|~|{{||||vw{|w|xqu}{r||zz~~{yyxt}q~||{yv}~}{yoq{v{~}~||}~~ztxtu}z{}y}~|}}z|zx~wzux|zq||w~}|zz|zwxn|~|~w~v{~z||r|zz{n~}uyzztv}vyy~}|z~w}~|{xw~rt|wu|~~{wt~h{{|u}xp}~}yw}xs~~|z}v|tvz{x{|uz}suq~yv}yzywxyw~~vzzs~~z|zwu{vz{zsytyy~}|vy{zzzz{zzy}yv|x}x}{}~xz~vy{}wz{~|nz}uqvxnlx{}}~}~~l|~yxtst|wvz~y~wz|{|{z}~|xy}oxt{r|xryxyc~}{zxujxyx|}u|tyyyt|~}t~{pu{{x}nxw~|v~ozs}~}zxrv}~t}zxqzw}v~x~~xyx}s{owz{y}yp~|~r~zx{xnw|r~~}}zr}y|{zywp~wzqm|}}wz|{xw|u|{w|{p|}{u{txpr{xcz|y{h{~|x}s{}vzx~}wyyfzvy~t~|y{r~}w}uzz|v~q~}q|~tl~~zyx|v}|||{}{}~x{q|{||}|{v{ww}{~|z|t~xq}}us}}|zztzpz|z~|z}}z~zu}t~|n~urvz|}{xxo}zyxx{~l}}}|{u|wyx|g~~zzr}kxz~}zn|}~}yr~~v~w|nyp~{v|}xz}~xx}qzxrx}|w}}|v|q}|{xyzw}{x|z}p~|}xzuvqri~{{{|y~w}{|zp}}v{{}zuuu{}~wvu{z}||z|~|}~o~xyq|y|~~}{s}zqv{z||{ryu}o}v~|xuq{s}~|}}~w~x~|hzy|z~~|{wz{xt{vzz||z|{oy{{{u{vx~|xyy~|v}}vwuzvx}zuynx|ty}}|}}|~{wo~vz{x}}}y|twz}zrxztzk~|x}qw|{~|~zy}{|}zy}ztr}z|~|vzx|u{{s|v}|~v~y~~~{x|t|m~}x|||~}z~{w~pzxzz~}y}wv}tw~|t}{{rzv}{||zz{y{|||x{x{zlzzun{}x{z}y~{wy|{w~}}}zyvwo{{}hw{uyzy~{~||}z|i}{y|{|rw~zx~sy~x~~ztx|{v{{x~xwz{z{yxoyxv|}wx|}||}}t|~~tzv|{}~wy}zw|z|{~}~z~}|}uz}x}|yzy|z{w|w}~z~|w{w}{}|}{z}|z}yv{~}rz~|}}}~{t|~y}xwz}xtx~||{z}z~~yx{}w|z{}v||{|qq}w}wr|}z|s}{}v}}yzwz}|y~z|xvu}ywvuz|zr}z|yyzrtspfs}~y|m}}y~{wlwwx}{vr{~{||qu}~}}}}xz}}ys|y~xv|~xy{}~|w{}|z~|z~|wzuFz|xz~}txwvy|yxrtyz~yz|}z{tzztzw|~}{~z~zt|xy}ym|~z{uu~~w}{{}zy||txy~{z{y~}ztv{~yw~w}xrx|u~x}}}h|~|~|}ezxuwzwwl}|z|{zr}||}|}j~}tvuyk|{wxw{|q}}y|}q~x|xv}}~~u{v|}{t|xwyv|y}{{qr|~~v|{wz|y}y}tx}{t}|x|{zy}~{z~~}{{w|pq}x{v{{l}uzu|}}l~{ts~wzw|~{}{r{~u~|{r{||}{~mv~}vnx~}z~}ww~rx{~}}}s{{mx}}x|uxzvzz{|x|}||uz~||}x{z||~z~~}{wuy{k}zywzz|}}y~zzx~|p~w~~yw}{z{o|zs{yzxzm{l{~v{drw}w}s{s}uuvvuqyy}syz|yy~~yuw|ou~x}|x|zyyt|x~yz{xyxr~w{|wtqww}}}{z{|suzq~s|~xzyy|zwz}pw{lxsr}||pyw{z~~zq{y~yoy|{r{vs|z}uv|s}w||z|xx{vt{x}y~~s~}vu|{y|tt{{~qxxyt|wyd|vmwwzuxq|~vypx{t}}~p{{~z{~p~|uy{s}{~|wtvw~t|y~u{vz~}}}}u|qw|z~uxtuztvz{|yq~~{rvt}|{~||{~}vzv{yyy~uupv{}y{z~{~y}|y|}}~m}zyz{|u}v{|}xyy|~~w~wq|vy|u|xnxzxzx|v{t~y~puoz{{~|{xq}{x}}|}}|m}~wzx~t|}xz}u}}{xz~~zyu{xv{}ux||}~{|w~vzyz}yyt~w|z~p{z{~|zzxxsuz~x}}}zzumy|q|{|~}xzzsxwy|uz|z~{~vx|w|{|~v~}~r}{|~z}qvvqxz}}||}~z~}~~x~v{t}xwy{qvy{z}~{}m}z}y{|jx~}z}}zs}}{}}z~~zz{{twk{{~{{}qyz}zruy}w{{{x}w{|z|v{{vz|z~vw~}y~~}}vz{xvtwr|~zt~~~x|z~svwzxz}|y}yyt~~y{||xyu|wwx~zu~}{s~}y|}|~{{ztv|v}||}u~w}|wxy|{r}{{|z~~~}{zy~|p|wxz~xz~yxx{z~z|{{wywz{~~xu~z|ww}v|~|{|~{j}~~}|}zz|zxu{xur{~ztzz|~xx~y}~~yw~{|nh|v|z{v{wtv}{wq}}z|~~{{mxtr}}xwx}t{x|zy||txvzzotwztutxww{{~zp}xv|z}~ytt{~zy}yvz~}}rzu~y~{tzvzxy{t~y~}w}zv|{uxz{zxs||z}v}{{}x{z~yut{yx~uw|z|zuz}~}wxy~ox~|y~wv{p~v|z|hzry|}}wr}|z|u~yxs|wzzy~wt~q}syw|ww}|{i|y|yxpu}x~qtu|tz}}{}|t~y}xx}}yx|}|}z~{vyrzu|}wp{u|zu~u~z}rw~m{xq}y~yyw}xswntvvvvp~v}|rynyyk|}}~~~v|xt~z~s~z~xu|{}yu|yw{zxyzw~~{kzxy}|zm~~ysv{xzwz~tx||}y~~~yyyy|{z|}|{{{~~|z~d{{|~x{zpswt}zsyy{{qt~{~||x|w}{{vlwu}~|uvwzxtxttqtw~|}{vx}z{}vz|svv|zu{qywy}~ru|w|~s}vuvvlw~wt|ww}uwtyx}u{|v|y|vwyr~jvz}|ty}uw{|v}vzyywpsx}{z{}}u||x||}{r}|ypxu{w|xzyr|~vpzzs||wx~||z|v{}{v{{x}om~rz~{{}m}y}uwvx~{}y}|km}{}|uxy{~s{v~}||xwz{zzx~}wq|x|}wy{|uyyx|~pvw~{t|u~}z|w~}yw~r{ts}y{u}s|u~}m||~{wqgyzwzznyw~}wzqw{xt|zq{{yyso}svw}}xx~p~k~}u}w~zx}wxu||jzxrutzuzwsyx|tw{zwyr|x|ywx}{w}~}v{vrw{o|}xs}|zt}{to||~vzvwy{|{pw~uoswx~utvnzw|y}yv{|zqxyzsn}}}yz|{tbs{w{~wx}vziy}|uw|}~|zuvv}wuw}ws~~~}|yt|}|ty~x}}t~~xvuyuz}}lv|mtzy{zt|yszzxuz}{i~w}|p{ztw}yn{yz}yqx|zXycy}~t~{zltr}~uwv|}|rtw{z{}~{{~y|v|{~}~ysxzyj|v~qatshvuxw{||}v|qx|ztpszvc|yz}qz{zv|~zzy|{vwx{{stl}z}uw|{m}~z~lqxrqoy}{|s~{n~~xv{}}vywv|rwjy}t}wx~sxrj|x}~~vyzz}{w{{|yrwk}o}uyxzzx}~n~|nyzm~zwryx{}wu|~y}yrjwtytvmxy~x}~}|qn~yz}w}n|rqz}w{w||vw}}r|{{p|z{}ww}y{~q}sv}}~||jt~xyxvw|{}yy{zxz{}||x|{u}x}}uyxz|u|u{{y|{z{osy}vyz~ot|u{|f}}u|z}rzrw{}wz{yz}~qt}uyz}~z{~mx|w{|v{v|~~x|z|~yz|ztz{{}ss~wy|txv~~zyr}x~x|qj}zk|yvsv||~yy}y|~x}}s|}~~}uy{|x~x{|}|w}~{ywb~}x~uq{}x}{}}{z{yz{}xnwz{~txu~{v}{}}||}|n{zu~tyy}yyy{~v~lx|v||~|z~r{x|syzz}}{}nzzv{y{zyzak{z}~~yv~x}|wxvx~}wz}y~|xsou~tsy|tw{tsh}w~xz{z|ynxye|wtzr{{|~wu{yzz{x}z}~{{}w~yzv~}|||z|yyu}||z}wxfzuy|zxt}~z{{}|xz|z|y~}}}yyxw~}}kvzv{~~z~tyzw}z{dz{w|~~~y|||xu|v~vz~s{w}z||{{~r~~||{s|zyy}u{~yxv}~}x}yo|~}y}yv~w|}}}j{}~z|vz{{}xsz~{~~|}y{qww~|}t{}}{xv{Uwyz}}zruz{yy}{}xpvx}wx}}z{~}x}|yyr}~wt~}{~v{zxwtzz~ux{qdy|tz|x{{y}~|s~zrwy}x}}wy|[||tzx}u{p|mx}yzvo{}{v{y~~{|x{\~|~{}vxvtv}~yxyrz{~}}zzpwqjze|xzv}~|up}o}w{}|x~{u|wqx{wm~q~w~|{zpwx}w{{xu}srn}|{~}yz~}rxoxzz|{|uv|~xz}~xxs|}{z{p{{}mty~t~o{vz~{ct~o{zyy|y|}uv{izxt|rry|{x}z}{~|ly|qyuykwz{szx{~}~}}zWqz~zxl{~y|w|z~]o~zpztR{|rz~mxssxx|~{{u{}|y~~xyy|~~s~x}|rz}~w}qw|xy||~~zvx{z|{xy~qy~~srv}vw}|yvvz~z|~}wk~}yy|{y}r{|zsv}~|}ow}z{{~uzv~{rzyu|qz}~r{}xz~sx~t|yxz}rzw|{}|}z{z~|yy~whzzuuzx~}w~xw|}}}wu~y}xxt|t~wyv}wvz~w}|wnsxz|pxz}{}z|}||u}z~{tx|}{~yvo}u|yyxt~{u~}xx{}~{{s{z~zjt|{t}~zw~zwy|my|yu~{xwzy~uv~|wxpy}yot}|u}x}u~}{~|yu}{}}z{}x~zt~{~|txqzvx~{}tztwzu}y|v{yvqo~z|y~|w~x{w}~zz|{w||}~t~|y}}|~zzb~}~wrx|y{yyy~~rz{uu|~xzzw}{yt{{z{{q{wsrv}|{}}}~zyv|{}}xzxw~|{}~z{}|r~y{xw{uq|o}zxyzw{{qx||mqy{|x{|}|x~}~~}{}y|zy~xy{|wr~~vw}{zysp|mz}~z{|}ywrvsw~y|yu{x{}{|tq{w}y|y}|~v~{r|t}z~|~xx~|~{}y{z~w|m|x{zso|}v{{}}}{}vzzvz{|vwq}{~|}|~zo~|x|}{{x~zyurtwuy~|z~z}{x|ivx{{x{}v{q}~||}z~xv}xtp}}{{x|{{{{wwyz{znx|}p~|~}|z{yzwwsyx~}~}||zz|s|z{v|}m~vp|}|~|v}~yitzv~|~{~}||t~zv~z|wwzrz~~}~{z|vuzwxz{{t}xuz}{zzzsw|}y~}~xzyu~ts||qs~}{}w}ys{wwz|zw{x}}x{||t|x{zs~uy}|||svs}x{~||{vt~v}~u{{vwy~{|~yxtyz||y~|wz|~t~xz|{{}~szxs|~~vq~y|xrzxw|~z~~~}y|~|~tz}{x|z~z||z{{}~ux{x{zou}{v}w~|{~|w|xz}ww}z}}}w~uyz}|~|otzzv}|z|zvto||~r}x|s~z{yvw~sus{xwzy}yvyv{z}v}~uk{}y}umwzx}~~q{|}zv}w{|wyyq|w}~w}|||~}~{xvv~r~~|z}wx~yxs}~vzut~ax|~{x{x{w|x|sxx}rvwa~{wv{n{~y{x{t}y~{v|x~|}}wy~|}uyz~{yttzxuw|zw}xuvyuu}ruzy{~xu{yx{}|zzw}|{|z{}}zzwz~vz|{zxw{x~o~~zxm}|w~t|}|}{zy}z|{~x~}~ve{|woyv~tz}~~~u~y~}wx{w||tvo}{}yytx|}wx{|x}~|zxvur~}sw~wr|t|rx~{zx{|}uyv|zzyxyy||~|puwyty}vvy{~{wx{~|}{}xypv~y~r~osttv}~r{p{}ynvz~wz|{z}gzzyw}{}vzxts~xvx{}{v{{y|yz{_x|vru~x~z||z|vz{~|~~}~}|prpww{y|wu|{{{|z}~xwuy}{s|yzqyz{txuw|r}w|yx~p{y{q{p}{v}|{tw|xwyquyvy~v{xwzntzw{q~~y|{~wywz}}}vx|}vy~l~vuqv{{xw{{zwt~rz}}~zxzx|zy|wyu|wx{pvnvttrp}yop~}zyzzx{}w~~~~w|}{u}{joyvy{|}wunyzxxz|zwnzry~~}~zz~}}z}}y}yw{y|vuy~~}nu{_xxu}yv|~rfz{uxsr}zz~~zu~t}y|~r|d~q~kz~wv}o|y||zxyo|v{ww}}~w|z~}x{~|}w{x~yxv|up|~vz~w}vxwrv|vvov~|{x~zyw|syu}v}swxisz}it||\y|yz|}}y}i~yz{lvz~}v}xrxrtor~~z}{vzz{ywz~vzqy|}}t|xwZ{{xu}x{{xvtz~}}|ous}s{}}}zztwyutxt||z|gx{zuwzztw}x|t|~||yvyqssro}v{ortavf|z|z|}y}y||zy|x~wwyyvrw{{l{{z}{my{zu}vls{|s~}xx{~{m}z}}v{|{r}xy~mzrvy}|vus|s}~|qw|yum~szux|zox}{xvtz||}||s}xssyxu{xkyj~uy|yu|vzpx}gjuyx|izvxn\}}~r{zzuw~yr{{x}uu|s{xruwzsoty|{zzybz}e~{~w|q~ruv{l}v|~zr|xzruzh{~omquerz}{|z{w}~{|ms~{xy]}z}wpruqmm}vvo}{x~yizizruy}|y~{xmst~}vz{wyyuuy{r|}o|}~x~{wv|z{p~zox{v~z}u|zwvlsuuzy|{}}~x|}}y~yywp~xzupx{{zv~yhvu{||x~zzu~~|~|~~}s}y}{vwwz~i|zzt}x|yvz{z{|vzqjysx}|}yx}|}oyv}~t~y~s~xxv|}}r~~}s{u}nxy{un~{|ztju}{ws|p}{||{zzyv{{ry}y{r{{}zpxw|~{}~wy|rsxtxrt{zx|r|~|{rzwyu{|g~}zszu|z~vzww|{{~}o~x|}vwzys|||}r~qww~}{z~oq}|wz~zxyy|rx{|r~}~{yu~}~{|ttss}~zzhx}w|~|~ssqxztsyswvyyz}{|xy~~|{y}xqr{~}}n~p|~z}j~x}r~z~}z||yyx|~y{~}z|~~y}|}|~|v|j{~}zur}z{|x|y|}zx}x~{{zvx|{xe~}{|xz~{~~txu{yx}yyx|u{{vu{yt}vxyy|v{~z~y~wzk|||zw{wz~}s}x}{|}~~{{u|}x}~w}z{q~y||v~yz{xwu|}xiz{v{y}}y{~|{||wv|uy|vxzw~w{|{~}vtv|}~w}{|q{~wvso|t|}|u}|y|wzzgx|}||y}~~wr~w}y{{y}yo}oxy}nzvyw}zzxs}}~zwz{}~{xz}z~~pw~}}y~~p}~t|zus~xwzxv~gutz||w~}|vuuxy{y}x~z{v{~}||}{xxo|zy|yz}tw~}zy}|~oxey}v}y{|}zw}wyx}{~|}vrzxzxv~|u~t{tvu~y|~~x{{{}y{s}{v{{}|vy{|~n~w|prx{|}q}{yy|w|vy||}|yx{}{uuz~xq{~tyw|szr{~r~ezz{v{s|}~}vwpzyz|{~z~|{u{{vv{{z{n~}}xxz{xvx{}ow{~xxzs|wnx{{sz|}v}ts~z{|}z{yv~|~zrzzzz}~{w~y}s|{zr~xyw~w~{z~zzzz~~trrx|}~f~}~}{{}~{|o}uy|{z~fx||}{p|{yw{z{s{~z|zuxtm}t{~wut}}z{}}qux{txy}uw{{}}ptx{|xxzvw{ykx{~zy~{y|z}w{tzzwp|}yt~~x}zxw|{~|}|vw|yv|yzuv~}~~x{{|x|{yyzz{|~yu~~pr|uzz|yuzo|u{{|~}|~y||~~x~}}}~~{|~xy{{vxyvytyyrvmt~{ww}{v{}{|v~~~v~wwswx}w~q{~}|~|y{vw}~x|w}w~yzxz~|~zw}vx~xv}y|{k|v}~}zwi~x}~}wxx{{}{yz|}u|{}s~~~wz|{}}~z|vy|}|yzzz|z}~|~}wszz~py{y~y}~rrz|{zj}|yz{{z~}{w}}py~v||~|~}xs~{mz{~~|~vu|~qy|p~q|xy~~u||r}t|sz{u{~~|~}|z~tz~{|s|||s~x{{z}~}~~~zuzy{xxmy~y|{|{p~~wv\z}tu~w}|~~{qs}~t|x|~qvz~}|{vu|{|}|v{y}t~~|vw~||~yvu}x}}yzlxtr}{}z|{y{q|}zz||{}ctwz~t~zr}z{~~~}z{z}x{~}}}ryz}~||}j|~}|wxw{{~~~n{|r~y|}|}}s~o}}u{{|x}~~~{{}{{zmsvt{yzv|v{~}|x|c~u|n}{|}~~x~t{{}}j}x|}{{z{sfu~z{}~{}snve|x|z~z{vw}p~ll}|y|y{u{v{~u|y}y}zzuv|}~}{}x~zty~zv}|{|{|zyw}|s}wy~~~y|x{~yw~~|{~ty{xv}~yv~}~|~xz~~~wv}pj}w{xwysuv{vzvy||{~{zz||x{w}~|v{}}nz}s}us|y~{wy~zzvpwz}{~x~{~yx|~t||}jv}zu}}~|sz{}zy~qxnw}{v{swuwzy}my~swyx}vw{x}~{~yvw{|{~}~||~|w~qs}|}ywu}}y|~zs{s|{{}}||~{zs}gzzwt|z{{ko{y|sw~w{}{v{o}|{~x~v~y~|{~}y}{~|zzuo{mry~|{|zyt{ywj}}{}}~|~u}~ovzu{quv~xx{~u|l{gyzy{~}~sz}~~sy}xu}l|tu}{yx|q~}|}x}vzzq|{{u~vz|x~xx|ot}xyw}u|xyytyvh||{{y}{{{zv{{|~zu}tz}xz}{|v|z~v|u}}x{~}{{zyywzyv}}z}{{{z~}|t}}~~{zz|}yqy|{v~|zzzz~z~pv~z{|~w}|wx~}w|x}txy{v|s|zx~~z~u~{~}|~}|{z|{x~~{|}}|{~rztv}{s}}|||{xu{wz}}|zzq|~{{vyzw}{{{|x}}{vn}{~|wzz~nw~|q{zw}|yw{}~z|~s{zx{}r}|~}{xz}w~z{xwz|~{~yx~vyv}u|x~ow{z}sz{{~{xw{yxyzy~ywtz{}|t|wz~sx}vx{xw|z{}xwtyuu{{}{w{}{z{xt~zu|sx~u}~z~}svxn{x~yw{|}|}|~}z|q}}q|o||ut~x|v|}{|zu~qu}zy{o{{zu{v~}txvy{}}u|{{yqw|{~x}~yst|}z{z}z{~|s~|{xrx{~|v}zw}xw}x{}uy~~t{{v~~t~vyy}zuy}t|yy|}xus{yw|}|z~~stx|}{vw}zuz}}}yy~w~{qz~u~tw~}{~}w~t|~x}rwy{u~|}xl~|}{w||~{yzuv}{vz{|ztxyqw~zvx}}{wv~}xw~|x~}wqoy~}}}}}y|xxt|||{~|}u{|zu{{yyj{zt}xxx~zzx{{~w}}uu|~rt}zym~|z{~{w}z{u~~iovw|w}}yyw|~|{{nyz|wrp{||zzx{~svrt~}t|||{s|i{w||{syyz{zzux{}y}|~w{~wszy|yr}|~nxy~}{s}p^zyvwfz~|s{u{zx~|z{zvv{w|z}yr}wm~~svyxtl}~~wzwzky}xy{v}szy~fuq~{fy}|qzr}~{}yy|tq~|upzvwqm~u}}}yz{~|}go{y}s{~{}f|}sz|y}w}|bvwugpuqy}{l~f}}{xzrmm~xwovaMw~rzzpxz|p~x}vtr~{}|r}|x}w|}sx{z}q|ry[g|vz{x{r}~q~u{xo{{yw|}h~}~nv~}zxuy{y{|t|y}u|{xz{~lvzxz}y{~zuwqu}qw|t~zfsqz}xrv{pyN~uk|yvunslkuwwx{wy{{{~w{|w|k|{~hs{wty|zw~qzv}vy~~}{yz}zy|~~tzyuy}wzz|y{|t~x~t~{z|r{s}}z{u{{~x|y|}}rpprx|zy~~zqyw{v||zz||~r~z~{|us|zzzsvwy~|ou~~vywx||v|}}}zizvzxyxy}zvursvx~|}wm}zz|~mrxx~~v{uzxk~tz{}t}}rw~vzl}zzxr{ys|~}{z{z}zzx~{{x{~~}}~z}xyxv|t{r{xyx~z{yz}sixxttU|p{vt~vsezz}zzu}{xl{~~~tzgzz~}}|jzxzzx{|x|~|z}~~~yy}xxvrvo{vr}zuz|~|}zxy}zzu~tnyz}yy}ywyxzzv}zvpz|y~~uxt}y~zx~{~{otp{y|~|syvx|tzs|~n{{|t{vxu}ny}zxxyv|~}~}qzw~~|yz~ytt{z}x{}|{Nkx}sx~xzp}w~}uyx}}f~x~nz{|t{u~|u{iq~p}st}qs}n}w|s{|zzy|ys}}yq{v|}qwtw{zz}xrzq{xhwzxusxy|{xve{z~wv|y{}|wy{k|uy}||p{n}bq~yvw}yyqszc~|||wutvn|{y}~wt||ln~~~vvvypr}|v}~t~|z||xyy{|}{}y|rzx~|}ws|zi{z|{{|zxk{}yw~jwy~wt~z~}{z{{y{}t~xoyj|w~tex{x|}u}}}r|}k|uzx~vo|xz~y{{~~|rx|{xyw}}{yzuy{s|{}s{|{~quqpz~s{}}|||uy}h~}yzt~uy{w{yv|}w}}qw{tz}~|}~y|zzwxw}}su~uzw}}zv~zg{zt{}z|{m|z|}{|~{zkfy~{y}~~~w}|s{~z}{}{w{ynx}~w}t~|{r{x{yy}}}|zw}|~tv|n{{~}zw||jw~|xw~~{{{xxz[q||yt}|w}z}~}}wpmz|{}zzu|||zptv|~|}||z{szi}z{{}xz~}ti||ty~}{s|y}pw}||{{{yy}y}ztwpz|yxz|tzn}||t}v~|w{||~{xxsz}w~oqxyws}qy|zs}yz~{|{x{ov~j}y}~rh}z|}y}zx}mx~kyn|y~wyq~}s{|wtvt|ws|{}uw{~suw~}x}jqy{|z|~rwqy}wzx{~|qtt}{|~xtv}xr|xvmw|x{{r~ux{{wvtx{hw|t{{vn}j|{{}n~tn|w{zvw~~x~qouw{wn}~r}~q^z||wy}|~}uykrig}yqizxvs|xxrxuzoqmyzrmy|q~yz{|lo|tzvx{wwuzxjzutvx~r{|vyz{}xvy|zx|y}oyy{hs|wq{yhu{m{tvvqx~{~kwe~y~uztzk}||ttytnt}xvis}}dz}s~x|~|{|}t}yw|}xwxr{\zycryx}z|tyyx{}|}_v}uqy{tt~||~{{y~xcnuyyuyy~}zyws||{z~~}}}}ixuuwztzv|}{y~|u|{}rwz|v|vyyz{{~t}}l}~||x~wupsvw|}{|v}}{z|{}z{}z~r~xuxyy}}y|wrzwzwvy~~}xw|ytyvsz|jr~|~{{tx{}}{v|t}{}}u}|a|yyw{u}~|qr{t|}r~u~z|w~z|b|{~z{y{{rvv|xzr|n{i||wqvz{wyys}|t~z{t~~~]~t~{z~~w|{{~y}~y{x}y}w|zzp~}v{z{l~|tl|{~}yy~z|z~}qu}vx~}uy~w}{{uu{zvs{zw~u{ww}}}|k~n{}||{zzsu|~z{yrr~xyxuyynuwyytwrzwYvz}y}zltbzxy}v|~wz||ylyt}vs}t||}rk}x|vsvx~pr~t{x}n{}{kp|j~xz}ywxwwjwt|~ym}pw{iqzu}~x|vyyox|wxxfzyz|yupw{}v{v|tyr|t~}o}}}tqr{z{}|~s}}pzyvu|o{k{izu|}m|zsz~p|x{|tu~zyq~}}kyxwy|tusy}}zs{wpuwuzz|ys|||z~zosx}r}u{|{wjvyr~rfv}ys{|~z}|yulzvy|{|~{p~}qxf}}{xpzyw|{sy|vt~ou|{|o{|~~xw|{}xT{u~b|zu{t|u}p~{x{}yvwxoy~~|zn{s}|}uys|t|{s~zyyxu~|w~x||zuyQud|{zzk~|z{zX{{}p}r{r~}z}wz}y|wv|}z~pzw~yyty|}vx~vuxywyxz{xr}{~x|~}~}z}zzv~}zt||~}{s|w~|z~}y|y}|xutzw{u~~}|}ey}~uy~r}sqy}}|zs|p~|y|{}|xz~a|yy{~rw{}}y|~w{y}{{{z|~|yt}~x~{tuy{z{}vy~z}y}y}}w|w~|t{u|}zx~}z{r}}z~z|~u}v|z}vyy||yv~|x~{v{xwwz}zz{z||}{}v~w{{~{{u}~z~xuvzxu|yu{u~{|wlryy~ty}{oyp}{~}uz{v|}zszyy}|zx|v|x{k{vyyzwx}~}w}l|y}v}zy|z{{{x{}s}|v|{yi}|{|}o{~xr||wz{}~u~xr}u|z}ypsux}y}~{x{qyyy|yxr{~z{|{yw}}}{{vtwq~usvxzuu|yss~|l|{{tyw}{z}~yv}sz|s}zvx|txs|l~x{zqzz}~u{zorlym{~{~|yszr|uzyyvjrvwvysw}zq||s|z[}ryxwu{}b}{~ozy{|z}{t{x~z|~yz~{|zz{{{oz{u{m~wuyuu|{~~v}|ww{ow~~w{zzw|}yz}{}}yszzp}{yyymtw|vuy}yuyxzx|usv~wtt}y}wy{{mv~ywuztqu}tvvv}~stso}hw[rv~zw|Znvtxv|o|y}uf|x~vsv}f~vq}pywz|{zx|~{xypxzx~}yzy~z}|uz{|~}}stwr~zuzqwvyvu}}zumx{}|}{y}~mvx}w{}{ur~zuyxx}}zx{}xzt|}}z|~zxuvxy}}yzn~|}}~vx}p~~{s|zu}~ym}}|}zt{{zv|{yu}z{z~{~}sz}|yts|~}}~k~ppvx~zw}||t}yw~~||z|zqt|}y}vqww~uy{z~yys}qx{xuxmnywxsuxzxxwzur{zyvq|y|}zz{uz{~|{}w}yyz||t}x}{}z~vzxzy{{x|yzwnzxywsv}}{|}|x|tx|stzt|xz~|}z{~{~wzx~|y~|uzs|x}||y~|{u}yzx|zwvl~l}y}r|}uu~|w}w}~vqy|{{xzm|}nzvxn~w~z{{yx~|}t{yz~|sx|}pwxz{{|w}|yq|x|x}y{|~u{~|tz{t|zm}jw~~~p{~uyrs|to}|~z{{y|vz|y~{~}y}~~s|wt}{{wwzyzv~~~y{pw|x~s|~yyyi{}y}x~v|yqxzmryv}{|}~}zxo~z~~~y|uvywyv~}z~~wz}yynxxy~~w}||x~xw{~}s~|yo}vzw}u|wy~z~~~q~|}v~zy{w{z{y{|m||v|zz|~xxy~x{|u~}w|x{x|vwz~}}l|~w~xw|{{rz~xw{py}vv~}}v}tx|{qz{j|ozptuw{|}w}|ruyzty|zxt~~w}~}t|{y~{xwwx|rx{|ym}|{{~spu{w}z~[{v~~uwvy}vqxxw}{r~z{{u}~{|{uy|yz|ls~{x|i{~~tJ|~z{~{|w\zxq~{}{\xux~{yzots~zy||{{txz}}ynvkwu{}~~{~y{~}{og~q~~uzyh~w{w{ysx~{{tyy~vrzov|two}}{xtzum|||~x}q~}w{}y|{||y}}yzn}{sw{u?~x}yxw|{rw[pvwrvy|w}z{w~u}}w|zb~z}yx~|}}{w||gvzvx|wwsug}|w|wl}|yr}x{z~|~wx}w|xjww|yD||zzty{w{{{|zzq{n}t~z|z~v~|yu~|yxr~|~u~wuz|xyu}{{r|~xv|x{z{|{yz|~}vvt{rux{{vw{}v}}}v|}wtz{sx~y|kt}~uz}|w{|qyvz|xzx}u}z||~{}}v~zz}|{yuqz{~wxmwuxwv{vxx~}uwvz|v|y~{{v|y|~l}~}~{xuty{~qu{xr}yrop~}pyz}{v|q{|x{zt}u|{~t~zv~||sv~}}y|{{x|u~}vvz{}|~t}y|}x~zv}o{{y|vyyy~|~y|zxz{}y~|twu}zu~r~|z|tv|tyyy|}{}w|{rzrzyx}{p}}}}}oi~~|o{||wwzv}s}}r{}u|x}{w}o}o{{s~xz}ox{|{{xz|z~z}{g|{wo~n|w~wy}tw}r~xnww~z{yt|rx}|yy}{|wm|opn}}zrys}ysuzqzn{}`|~zuv|swnnoy~syry||}x{y{{lx{v|zq|v}{su|uq}w~u~|t}}|~y||||}u||t~{}on}~pw{xgyy~wxv|ozu~wv{{}yty~h~~~{y}|}|v{z{|yytx~ox~wy|y}z{~vvy}}wo~w`{{y|y~xxz}x|{z{|}pyzz{~{t|~{~yuu~xzi{rzzyw}quz{uvsy|xt~uxvr~}}yz|t~zvyz}u}y{xyzz}{zwuwzsus|yb~w|{{zzy~{jj||z|wt|z|~}t~ktyzrv}luzzyq||~tr}}|~w~r|{|m|to|twqqT}sru{u{zszvtzxvnvsw|y{||ry||uxq~{|{wuzv{zyw{ysy}}v~yvy{z{~~|}tw{uy{vs|vx{|~w~{r|y}|q||{o||xqvz|{}{{{wywzzx~{{}}}z|r}}y~{vz|rypxt~v}{yy}yy|}}zss|yt~z|uv}~vtzwxxl~z|{|~}y}upy~ywty}~x}wzr{xyvz{|x~{~z{}|zuwv|w|{uvstuz|~z}x|z{z{plu}yvwx{p|}~}|{}~{wu{{}q~y|w~k{vzyy~zz~nxxzop{zw|rw|}x}wx{}{w|{|~y~y|x{}}zz~z||oy~wv|}~~{~zz}y~p|}{{}~sy{{|yx}}u|~~zu}y|}~}||w}{y{vqz|x{tsszw|{~|w~f|vwz|~yz|{w|w|y{w|xxttypeyy}{|x|y}ix{|||y{yf{{|xy{|xt~|z}}u|~|}_w|{|z}~vrl~}~zv}yx~}}v}y|}m~w||{||z|}}|v}u{y|yzyty|l~{k}~~~||yr}x|ywz~qw{fszz~~wy{f|x}y~~zwz{uv|{xz}}~yn}rszo{|}z|}z|x|{}w~{~{|~}l}{yz|~}~tu|}|x{z~{qy~wxzj|{vx}{y}{||~}{{ut|}z{{}}}}|~zy~zquwy~~{|t}|}}p~~{ywq~z~|z{wx{}{~|yz}uw~x}}w{y~syz}{~|~oz~xyx||v}~{wvu}{zyn{zy|y~yt}||~vw~}~{|z{}{{}{vs~{~usz||w}y|z||}{x|uw~w~u}|vrr{{xyyvy{xxzzyzry}|ys}~y}v~}{|xy}yxqz|q~}|w}}x{}xwy|zu}pu|{vx{||ztru{}yvu~zko{v~yt{~wvs||ryqy}yl~|{y~w|y{y|}w|}z~}}yuxt}~~v{y}yn|yzz|~yxwr~}|tvu|z~}u{}w|vqz~z}wzurw}w}~|~z|zyrx~zxy{qs~w{|y}{vzz}q|xzzv|zz|zsx~~h}y}}|}~uv|xzttx|}}|yz|z~x|x{wx~zrs{wwxxx{uw}|{r}wyou{zw~|w{}~vsw|}xzt~|z}}}tyzw}yvywvzz{zm{s~umz}{xu|z{rty}x}|vy}}xz{{{|y}z}zy{w||z~|y}z}{~}k{x{gzxy~w|r|l|{u}ty~|x}vy~||vzxxtz{xrvwyrzvswyr~~|yo|tx|p~q|}i~xsuyvv{z{z{{x{|}|yu{}ywzk}t|}~u{{wuu~|j{~yw~y}tt{tk|qrw|{{zzxnrnvr{}lux{~{}|p{otw{|{zx~vxtu{{}w}zls|wow}}{wu{|p~w{~||uyuyu{~{tzx||}x}{ws~|||u|xx~{|w}n~yw}~qx~|xvut~|r~zyw|~{ut}rysr~|}|x~}yu|{tz|tztkoy}}y{~xzz|zyy|ts~}}y{|w~}vsz|{~uyq}{t}y~vozw|~|x{z~rzy}zypzz|wx}i`{~~|{x~vtrx~|zu}}uz|zz{u|}}oz}~|}wr{}|}}wtqwroxynuyutmzv{v~{~xz|nr||uy{xowzzymztz}~z{~~y~||w~|~{~}wyy}vuyy~~~z}u}u~~r~tzuxyvw{}~yn{yv~ywy|xoy}}ns{sw~o}z~yz||xo}v}||{~yzx~~rtwn}yy{{z~wr{x}~}x}}}otyy{|vwv{zy{~ypywwy}mw}~z{|vm}h|y{||tv|yx}vzxyzs~}zy}vz}xuvz~ozzxm|zwy}xrtw~z|m}|vxx}{|yy|y{yyx{|zyvryxv{t~qt~xrspn|zyxwyytqz{t|}x~znzso}yzwu~z{|v{zzy{~{z{}zw~z{z|~x~w||{s{stsu~~tz~{}vz{~v~{~||}xzv}|z{uy}{q~wzux|yy~p~|xyy}p{~xw~wwzu~~zp~xwxy}tx~uvz|~}yzt{xy{~{~y|y||~}xy{w~{xy{y}uysx|ru|}u|~v|wup~}~|}zxy}{vx|}xzzy}{poz|}{x}xvnz||u~{}xtz|yst}v~tx{w}zwt{{zz|wj{u~~z}zz}x}w|bu~yv|wyvb|sxyywyxyuv|et{||z{}yx}|||yz{~z{wwk~}to~yvuuyzy|~x{znyzyz|zxu|~z~r{u~|{}zwxz{~~vy{{tz|nzn}x}pyzyv}w{w~}~w|z~ygz~y}pzyw|{{q{yvv~~zx~y|ex|v|~nyw`Zqwr~||ut~wy|}~ppxf~s{tk{|y{q~uu~n|vy{kzt|uo{vtyw{}}}ywvv{lyszzum{||y}}{x|zp~||||b|{|ovvxit|z|ui||pev|{}ky~}w|l}vwk{|v|u{{jtx~~wuzv}|wyz}z{z~}|vw{ir||jzuy|qtmkvxzu{szt|hznr}~|yrezxxzwv||~~}wyyv}}ow~q|szty{|a~p}pvzy|}yuyxx~uxzzrq{qv|~|{ty~~}w}wz~~qy{}[ls}|x~~xkw~rzxtmyt|h}}}vi}x||}{~}y}}y{{w~}~~~v}xz~z~yz}}xwwt{qzwws}rxx}~}r{{|w}q{t{u{pyw~x~x~||{||}x~y~~{||v|w}ww}~ztx{}yx~wz|tuy}|{{~y}wu~zz}{zzz{p}|w}~y~zzw|~{|o}}{{z}x~~zwz}}{|ytvs|q{~z~{v~s}{|y~u{wzh{|}yv|y~|~}yu}xyyzvx|zztxxy}|~}y|z|zzp~zs|}s~{pu~u}|zx}wj~|}xwz{nyx~}|{y}{{xypu~~yx|l}qs{z~u{~|v{y~}ww}zzs|ytqty}{vz|}t|y|z{wwx}~x~|yw}yq}}q{~{{vwzyy{|}|{|x{wy|~o|~|{t~zt|p~}xtye}z{{|}|{|p|rk~{u|y}y||xw{|y~{yy{}xz|u|}t}{wz}z~{}{yu~yzz~~wy{zy{ys|zv~|xw}{|t|xv{t}}{l~{{|wwzzsznzw{|~yru}zy|{}xy{v~vw{}|~}|}~zyt~wzzz{|||x~~ssz{|}|{zx{qz}w|}r|z||~||{{|tvw}y|z{vi{}}}~v{x{zwuu{w|{~}}z}{z{{}wv}xzyw~v}{}}~~}xw{}q|uzzz}{|}}w}vu{v}{s~wyyxr~{yjxx~x}}zt}u~~|ws}yxw~z|{~}}zq}}~syyy{{}vy~zux~x}yw}{|}xf~u}|}sxxWpj{s~xx|qzyr|uquo{Yq}w~v|wvy~nyqx|ykyx~s{}{sp~zl~z\}wyt}r~zyz|wr}|v|sP}}{zknv{Qyx{wyr~nx~{|z}iz~ht{ywuv~{}~r}zzyyyzxsoxz{{}o{z{|w|}xu~mzzm}zxq}{b|v|xvzwpx|~~zux}{bw}`ww~vWw|~r}{yp|xw~}wq{ztvv}}zysCrxe~~}_|yyzfzv{||zl}w|q}yrtfu~z~}z}sx{xwz{uZr|}un~qzvly}|we|y~mpq}}yrv|ywnhyors{Yy~t~yjnwwuv{y}~}r}rz{wvyf|fgqyqpuwgyszo}}w|{zy~~ywqy~~{sx}}|}z~~vz~y|}}wx||}{qy~{xp~{}m~}~{~{~{~zy|yf{}y~}y}~z~rw{|~}}t{}o{|}|tp}v{yyu{{~}w}pyl{u~}yzy}u}}w}wr|w|}|~||bu{{|~{~y{{~|zu~{z~|}|or~|t{yt{|x~w|~}~~y{~z{y{||s}uq{~m}}yy|{x{}x||zuxw~xzu{z}{wn}swk}z{{|pxvww}{}||~t{~|{~~|zxtw}z}xzx|p~u~x}kv|}{}rv{t{}twy|t}y~u}|szov}tz{xzx|}|{|~z~u}y{y{~vy~||{}{w|{ur}zwx|xxz~|}}{||t~n{yvzx{{|yy{|syx}}zx}}wzu|w}v}|s|yu}vwxy|wuvr|~vx{y}ryxutuwr|~{~{x~xy|}sxz}{zx}~u}}}|{yw{s~{zyzxw|s~y~j{v~}|~{||z}|y}z}xzxyx{~{}q||zw{~}}x~xy}~}~|}~z|{r}t}t~yx|~yu}{y}}z{yrn}z{|~~y}lx{~~|||zzs|x{~}}{|{{{x|z{|z~{n{{}z{{yx~ss}x||zu|}y|szy~}~wuyy{zwz~yxWvyq{~{~w{{}xtxz~|wrzy{zr}y{uw{|y~wy|{|yzu}}}}wz{vt|{x{||w~y||wx|}|s|}}x~w|{|~|xu|}zy|s~{}s~~u|}oyzw}xz~uz~||v~~l{y~}~p}zz}zy}||y~~{}u}~v|rk{~~~|}{|w~{lzz~zzw}~w~|}y{}xz}}|wy|x~|{~~oyq|~v|}zutq~}|||s}zu|u}}}zu{{j{}ruz{~w|r~~|z}|mw{~}z}~vvpx~||{qzzw}yv}v}|sy{r}pqh|x}|}||w|{~|txy|o~zu}{}{|}~u~wvz{|}owf~|}|wv~povyt}zqw{uz~}|xj||}t~}~w~|u~r|~u|}xwwy~r}z~x~~xv{|{}x~syus}}xzuxpk}u|~~wyysw~sqyy~w||{w~xv}xxkvx||}v}yw~}}|{~~|y}u}uw|yxu{{x~ixywpvyw|~|rywxvzxzzzkv}|v}y|mht~y~wu{ot}qo|~~wx|zmu{uzzoytvw|{z}s{~y||~z~w}z|yp|~~ys~wv{w{wxyz{p~x}{wsux{~|z|otz{y|kvvr|u~}}{s|~{yv{t|x~}||{yv{hwx~}|~{}yyyv{{}n}p{zvo}xw||x~~~rzxu~xzw~z}}{z~s{}vvx{{~|z~z}|}yriq}|ort}z{v~z}z}zuzn}vrx{~~|~|{zyy{lw~wxou~qu||yznvx}|yyy~v{uk|~{wyt~{|zkv}vurpy{y{}z}yezt~zg{}}o~}~x~||~}wxz|x|~}}ux}xvwo{s}~~~|||||uxqr~y|{xwpz|x}qvu}{|~u}y|~}}~{~nx~|~z|z~{v{vl~{}|z}o}wy{z|~~x{||~z{yuzyx~~|v|~{s|{{xw~u|w}~}|x}x~{{~z}sy}y}p}{x}z~|wyx|s{wwz}w{s}{uz~yyzyzzy{~{vz|~|vw{|~iz}~z~z{||wszx{~|}xn~|{}}yxz|wzx{zt}yx|~|}xl~{mt}}|y|qzy}|xwzr{v{w}xy|{~q~|~p~swwi|ys|y}}k{}x~w}~|z~{~}oj}|x}{v}{{~v|}|~}zv~~y|{zu}x~{vwuzv{zsuwsutxun{{{|b{~swyw~{}{x|w~{x~w~pz{w||n}zr}{{{}}|}}}{}s|p}}yzyzrtzz{|v~wzm}{nu|}l~|v|~|~}yy{yu{{u|~}zxxwx{~}v{{x}wt|{yq~{~{{|y|z{tyzvy~z|~~x|p}}}uuz{}x}}}}~||z}t~w}|||~}yyy{{v}zy{}|n~z{vumyx~yq}t~z~v{yxlryu|yxuv|}vwx{p~zyws~|{vv|zx~q|zq}wzx{zp|w}{txx{nu}~|yw}s|}~zzvxqrxwx}}vqz~nt}}xyw|zxy|}uz~u}sx{{{zzy~|wyysp}{x~z|nuyuwz{|y|z|}{~~{}z}zwy}{|~vyrp~{y}|{p}|}z{zzyw~|~}y{~|zo|y|xypyvy}}wwzw{~{~~vz{yv~{~|z{{{x~x|ytxw~v~~x{y|z}xyw}}}|}}gs{w{zusu~}~{{~{v{}x|u~s{z{|}y{~y{xyyx~{y{}{|vl{z|x}y|ps~xpz{xz{zz{{wr{x{}}v}{yztq|}||v{xyz{vy~|z{y{sz{|{yy~{{vw}vzt}x}u~|wx|sz{~~wzp~y}{}||z|x{~}~yxw|{p{}~{|kx|}t}|~x}|z}w|{y{v{|z~z}~ytxw|xu{ws}}o|rvyzii{z~o~{~{i~|}x~zrw{{{|}~}u|yw|{zz}y|yy~x|~|v~|~uz~{{{}xri|uzty~}~z||v}o|rx{xwvw}~}~|{m~}u|y{~m||rzz{t|zw|~zxz{||}zy}w|{|zw}}|y{}w|}}}wx{}}}}~uoq|}x~}~w~}uwyturzww|zz}xu~zrzfz{zuwz|y}||}s~||~x{|u~~|~z{zx~u~{|{{~hzbya}h{uy{}znvwqp}}x}~t}sxw}~twvs{v~uux{dvw}{z|w|z~tr~ymvs{}ytyyy{v|yex{wz~}ywi~}yzu~t{b{|m|tx~|v|y|z{wto~||w|}wy{||`ex{||w{~y~|{qvyP}ys||}||}ozzxrs|}yx}y|~s~xwwx}w|v~k}{~}|yv}m~~}wx|{uz~|~~~~zj~xxs}|{w~~|y~l|~zz}|n~{u~cz}}z}rvu||}}||t}u~yy~k}y}vsz~}|y|}yxx~~z{~|}|vtv|~}}}}}yyzq|sk{{}k}}uw}q}t|{~wx}{zy|s}{vxsvv|~o}r|}|zyw{{y|~~sy|lxvxz~{zyzz|z|~}|w~}}q~~|w{}~v|{xw}}|z}j~o}u~r~zyo}zz|j}v}~{xx|yuxxy}~~}p{{zkvzvz|xkq|~}}{}~|z}}}~vy~~uqwju{|n}~}q~~|~vx}||~s|t}{|x|y|}~~{|{tz{}{}|wryw}xowvz~~wyz|~qq~k|y|t{sy~|}{{zzg}~{z~~zq~|s~~~~w~x||xz{{|{|}jknu||}tyl~||xo~vtzzu~y{||muzz~|}{~v~~~tz}{|~z}|ur|z|||{}t|p}qsrt~w|~y~u|z}zsxgztyr}zx~~~{m~v{|~w}{wuy}}y}{|vy~y{y}y~|{x|z}}|~}xz}wx~~~z~x~z~y~}x~s}{~~|qw||sz|suxvww}y|mu|{|s~w{y{y~v|zyvv~y|v|yxuyzv{pzw||oo|{ps|}~zx}z}|}ux|~x}x{{vyz~z~|{}u|}}~|||}{y}{t{~y|||qz~}y|{|~y~u}ovvt{}w~r{}yo~|y|~}y~z|~{|~u~~~wyw{|yz\ezyx{~y{y|}~rw||~{v}|y}vtut}|{|mt|}{|z}vw~}xw~{~{{}{z~zzv}|xvz}x|w~u||mo|~z|}}zt|{wxxxylu|y}|mwyww~y~~s{ux~}ozxuyyzyow}|yywzzvsyztw{}{~{{yq}~tzwwsr|vz{z}xs|zv||\}}|zxxvwvz||{|~||s~~zr}tq}t{~|t}~x}{}yy}w~}v}{{}{xtnvuxpz}}ozz}|w~t}xr|wqy~{~|w~x~~ty||{}t~~}|~y{~|yur}~ku|ty}xyst{yywwx}}r~s}{v{zv{~~xw}~t}}vzx{{ux}wq{~}p~}{{oyzp|{x}|}~{}q~u~{{|tyqvuxv|~sxv}rz}|v|}~z|}|~zy|{y|zy|yw{|suyx~{xzx{}}~|z{u{v~~zzvt||sz|y}z}{~zvt}zyqy}xz|}s{vw~zryvzvy|{w{~yu}w{w}z||mx}v{|y{}}~{w}z|vy}zz}u}tv~}j}t~{tz{u}{}}yr{x|~z{~w~xqv{z{z~{t~|~~u~zsx{x|z~{zu~vu~{x}zz|}z{{|w{~yum|h~pv}wyz{x|uzx{|yuwz|zzvou{wyz~t}}}z|{|y}x{{vy~p}}vy~~}y|y}||w~wzpo}~z{|zq}wux|~u{v}~izw}zyxw~z~|zylqz|xsvvz{{|z|uzt~wm}~}~vqm~~~x}~v~}}~iz}||}u|o}]t|{w|{z}{}x||~yzo{z|}z~ww}zxz}yz{{{yyyxv{|r{swsx|vz|vt}~wuwvtu|~{ro|x}v|r~x{z~}wuu|~{xyt{{{|~{}{u|||}zu}~vex~q{||||r||tz~xvpzxr}}r}s|z}x}y{{~}~|~s{nxzpxvysu}u{z|~v~yzvt}|uzu||w~~tt}y~x|ww~{vs}zrzyzkz~x~m|{|xwy{wx{z{xzlx||tyq{{z|}z~}}z~uwxzwyt|yr}qz}xzywmyuyyy}}{x}}{x}}{~}x}|}yr{z{~y}x{{zx{ttx~|x|w|}{|zo}mg~|~z|vxn{~{|t}xy{y}v{{xxxz~||}yyzsvs{~xz}y~|}z}f|~v{t|z|}|~}ty{}t{}{x}z{wu~{txzz~~y~y}~~ywk{yzw}}z~}|z~~|zzruz|pux}xt~}zz||r~x|vuyx{x|||}~~xzt}~q|wz}|~y}bxt}zy~|{~zzy|yvyr|}}|z~z}~v}s{~yzyt}~yoy{}y~~sxmyz{zzi|{y|w{unx{{p}{}zryy|{urzxyuszsut|{zyvzy|s}~~|t}|yzw|yxuyz}zzs~z~|}w||sp}zy}{}}}|}|{pzz||}x}y}gs}}uyt~o|~{yw~ysz|t{uuws~}xy{pytj~tz|y}zwz}w|{x~tw}|r|{zxw||zyv|w}zzx|ws|t~w}vx~z}w~xy{}{wvw|t}wy|j|zvzzsv{|y}}}txzrxy|trx~z}y~s{{{|{~px{w|z~pl~|tzysyyu|}{sw{~{z~~~z|}x|w}r{u~wz~y}wyszuyyywyuyz}x~znzur|qp}w|vz~|z|s}uqv{yu~txy~twvpuyv|}~su}{|~~zyyzy}{yyxv|zw}||u~}{y|{~}{~||{}{}z~w|v}~~zz}z~|~yxy~}|}|}y|~~~{y}~{zz}|}x}}{|wuz~|z{z}w~|~{~z~x|}{z~}}}~}u}{|~|~|zxzo||z{w~~}{}x}|{y|{z|}|z}|~{~zy||}z}}r{~{w}t~|}}~{~x{|yz~}|wz|~{zz~}}w}}{z|wz|y~|v|~}}|||wz|}{zvv}}w||{z|v}{||}|{z{~}}}}}}}}|s|y{{|||~}~~y{{}tx{~}zx}~w{~|~{}{}~}||}wzw|{~{yy|z{}}|wx}~yx|z}{z~u~joo|t}x}qy||z}yms|v~r}ly~~}}rr{z~{wupzwwoqw}zvuvqjv}kzj~ot|vv|x|gs|uw~~gzwwx~pqsgvy{zw{vv{y{yk|yuwrw~x~b{i~wxz|ob~}vyvvwmtvx{v}wzozxww~uypzynqz{p}quwt}~s}shupu|yyxK~x|wu~nrdt|xv{y}puzux}w{q}hy{xunttwwz~{zzztzhy{|~|xnsyizpn}}|v~v}{{|qve|kidy|zy{o|q]z||nxzjzy~xvwz`rkrv{dlzo}uvw}Qxztzu{y~f{z}}o~}z]z|iqrsxzhuyrsnlwxwzqvkw~px{|}{~u~}wot~]}{|rt|zhwjzttM}z}}{}y|{|z~skvy{}wwvz{ms}}x{{z~}|{z~oz}}|{u~uym}vyw~y}t}~yy~|{x|}x}zz}y}{}{w}q|{~xwz~zxqz||p~~}~vyv}}w|{|szy|{|xlxy}t{w~vx}z}~{|x{wwy||z~zz~||uwz}~v~||~{|{|{~t}vms{y~~x}yx{}izz~z}pm}{ztw|yw~~zyym~z}~qz{z~|}u||{}qwyw}{~v{}|~}|y{~~uuz|}y}uy|}wvwxwr}zxxy{y|~~|~}w|zyuyx~~||}yv{}}{y|x~}}}|{q~zyy}|{z~xyu{{~}t}|y{}|}~xx~}yz|{ww}|{~|}zq}~y|x~{uh~xtjy~~{|}~Ko}wmmxucltt}|jzq|}l}{{z~m{rz{{vuszyyu{zzxsvqvwo|||ow{nwvyp}iz}nuzT^ukyfy|~W}vzmyor~qy|}uuzo~w}yi}~~|uqtwcvyv}ttqml{qx}|_wynukx}xyws}||z|x{xtur{z}t}Wruz~wxsusy{uux}}z~}|t||vuqkqsyzvpius{w|yk~rqz|{twudkl}syq}z`{j{r~uh}}tu~zzvvzzzmz|~|{|sus{y~~xx{vwp~or}tu|{s|xz~{ziz~|{t{sy}w|ntw~vf|s{z}{^z|zsxxuxvpxu|}|wmx{~}h}{p|l{lnUw~}|y}{s{ywzzs~v{|zz}}s|rq}sxq~}z|z}z{{vwzw~vy}{|wfw~}v{{}uxq|uxyy}z{{ttzz}t~y|{~vw|{v~~~wxtzt~zz}}|u}r}xw|{|{y|uzztwy|}~~~|}x{{r|v{symr{|qs{s{~vw||q}h{{j|uww}z}{z|r}}}r}{m}}y|{`~~|}zy~xz}y{u{uqz|~}xvzzyzp}|x~vrz~uu}{}z{|or{{}zytzuy}u}vv~|szu|u~||s}p{|~xyxwzw|z{{|trsyozwx~}z~z|~|{zoxwu}z~|z{s{|yvvy|srz}u|s{x}t~{um}y}{}~yzn}m~{yu~z~x~~y{|n~{y|z|x|{{vx||w{{q{|zuz}|x}zz{tl}}}|yvtrz~szy~}z~}|zxr||wxw{}~}~oy~zzr~k}|xrdwqz~xz}wxz{uwz{w}|s}|yx~o~{x}wtyw{o~z~}{|{{y~zmzxxs{w|qh~}||~xox~q|}|wjy{~}|{suvr~yvv|~{}x~{sft~}|y|p~x}p|{zz~ztv|p|}z|~||~x|rs}z|}yyz||z|xz{yz~|zy|}W~vy|z||ryyz{wzrw}z|`wrx}|{{x{y{~u|u{yozu}yuw}{zs|{zt|}~zvvy~zx~}zzz}|sx|xy{{|zz|~x~{xz}|zwx~|u~~}{}vz~}}{||xx|xt|ryyz}~~{z{~{}m{{x}~zuz~|m}~wn}w{u~yy}z}}{w|~y|p~|pz}}|w|z{w}xtm~v~~{}vy{zx|w}yzz|z}z{z|}xr~yxry|~y~}tup|}|~{{}vz}xu{{{z|~}~}w~|z~{|{}{~}x}z}|z~}x}}{z|z{vs~}}{~{~ox~yy~|vz||}~zxxrzyz|}|z|q~|~{|yxy}t~z{~w{~~xvzzsy~v{|kv~{t{{z~vy~}}ysv~{|x{}|~}{{y{x|~w~~||sz}~~|{nxwtx|~sx~~}r}|wx{~{yw|{y}zk|r~w|~zw~z~|u}~|}z|~x|~}{v{z{|~{|vv}z|{y|~{{x}{y}|wh|~zuv|~{x{}zz}vvxyrz~yz}||{x|{|}}y~z~}zr|ww~zo{ruz}w}}x|t{v|~vy|~|yw{w|}}k}y~~|~z}zwxuq~yuy~~|}|xz{~z~zuz|{iv}|z}}x|}|x|q}}{s~}}z~{{ywy~v|w{wx}{zvt{}~v~~~{{yqqu~wqv}}u|{}|~}wywzwx|{y|}{z~q|~}|}|{}|~y|}}u}z|}}yu}}uyw~|~}|}|~y~zo|wz{{}{o{w{}y~}vw|vy{|uy|{~yrzuy~yy~z}o||~s{s|x~wyz{r}}}{y~{v}{~~~qy{v|ryyq|~~pzwz~t|wxss{yl~x}xz{{sm|}{~}y}}p|z~zx}zu{tnu~|k{{xu{w}q|z{{w}}y||yuzxx}}r~qwtqr|{n}v~{{{yys{|{v|v|}z~{s|xx~wzy}z{}~y}~}|}vw{y}yoy{|}y}uxwu|u|yyzzv{my~|{|w|~xz}vz|tyk~kwv|w~}uy~yvwtvz{s|}~|x~x}xt}xuxz|r~z}zy|vtw}|ww|qx{}}h~xx~|}xz|z}|~}w~}{~wpywyj{w|vrzouy~}ys|rxyz}z{{tpvu|{z}~~z~y{}~zzzpw}||{zw~}ruyt{trwuwrx~yzzws~z}|z|z{uym}|wwzv~}|wi}qs~{}yxy}{z|w}}{|tswtqtxu||y~wsn{{|srz~}|||}zx}m~vx|~}|}z|}}vy}y}|zv\~xk}|wq}~uzw}y~zuyvs{pyvx~us}~{{z~ew}z{}u~ydy|sux|~~z|{}}}yvuz~{}~{}~~{vw{|mwp{qv|}b|z|~|vy~zxvqxyyx~}o{}tb~|}{ywuu~}z{yz{p}~|z~{y{|}u}w~zrr}|~~}}|~~~}y~{wyowz{x|{|y~zyw|}}{{~v~}~}y{wq}p|zz|ws}y~~xvv|xzpy|t|sz|~{z|~~}|{u{qv|||xwjxufs||vyv~yv~~}pyzzxyqv~|}|}~|zyw{yu{z}nwwc{s{~q}{|{v}~x}{{wy{~~}p}~|}}xz|{}~u|y}}}xvrz}u|{v~~z~t}}xxst}}v~~s}}xvzszz|z{~s|t{yn}~~w|x{}z{vzy|{w~|xwzy~x~{z~}~vz}}{yzz~~zy~y}y~v~~yx{}}uy}wuov{z}{w}u~wszxx}{yu{zvk}{|}{}}tw|vv}}~{||ur~~u{wx~szvwy~|zyy}x}}xwx|}xx{{uzr~y~w}{zy}|~z~usu~x|~{ox}v}p{{}xp{xtzzv{z|cv}q{~|{|yuztw|}|zv}y~xx~u{}xz|}v{wyy{v|{yz|z{~}y{l}vtyyy{xwwvyz||{|u|vz}v~{z}{o~~v}{zrx|y{tuy|syyn~o}zwz~{~}||v{{mw}s}{y{~~}}y}~wwzq~~|y~}|w{zxz}uvx}y}|}|ngyz~|}~}{}y{~vx}{|{||{|}uyy~{|{~|kzyy{ww~z}v{~x}ty{z}y{|y~{{}~vn~x|w}{{w}}twty{{}~}|}|{}xx{rqyw}z|e}x~w}}zz}~|~|zx~|}|q{txltyx{y|}yv~~s}y|z}{z|{{kxzqw~|}{{}~~zyzyz{y|}z{u{|xz~~{}zy}w{y|q}~}~~zuzzju{{{}ztwz|{{}}}}zxyj~|~{|~|}z{|{t|yoz~}~t}{st|m{z|z}zy|{z|uz{tuw|~{w{{x{zrx~vwwrtxyo~||{z~~}zyx{~v}x~~}ywuyxx~z}y}m~t}usZ~}q{~}zdv}t{y}}uyzv\~ys}z|}uuw}~~py{~{{z}y}wx{|~{}v~{zyw~~xvn{ww}}v}z}}z~{~rx~xxt|w}yzy~|x~wxz~}}}u||yp}y~zu}~zwt|w~y{ww}f{}x|y|zu|xz}zp|yx|z{ix{wwvu~{s{~ut}|u|}~y|y|{{u|}v}}}zk}~z~xw|{put{|{~|}~w~x{y}|z}~y||}{||~}y~~u}~rw}}usx~p|v{v{}|{}zw|}sz{uyw|v|{ww}x|z}{ww}{v}{y{{~zx}|}~zz}}mxz|v{z|~z~v||wxv}x~koxt}||ywu{uv}x|py{z~t}yy}z{{z}{{zy{zr~y~z~~y||w|}y}}~p~zs~vr}~xtv|w~xxo{tz{|}x|wz{o|gu|uy}y~zx}}}}{y|x|wz}xy{zw}}|{x~~uy{z}}x}ut|~y~w}|{z{|z}~yy~}xnu|r~|z~||x{|~{xw}p}~{tuz~~}{y~~umt{{}||{xx{zp}|~|y|{{ys{z}}xxx{q{xx{~wv~ysx{x~t}{uwu}~|t}}zxv~}w}{}|yrmpx|yzy}zv~szz}}zv}w~~}s^t|j{q~}p{~}z~ww~|yyz|w|gwwm~uyzvos}yvzyr{|ryx~wutwy{}zpzrvzvxu|~~ww{xy|~sszy{yzc||ztx}xylf{yx}xx{~|}yG|x|}w}i|zmu{wy}{o}{|~~}fzf}o~|ny}y|ewrxm}wytz}wKyzzw}v}xu~~~u|w~~{}|zoy}t{z|~{{u}uv|}x~|{|}{{}z|x}y~y{}ywr|m}z{`uny{}wxtu~xtt{{x}s|{~{z|v{ry{~}}~wx~{u|}y~~|y|v}yyx|uqs}zwzg|}g~y{~|xy{z}~wvz~|y~}|wx|v||}vsqyrt|~~t}|~~|yvw{{|{{x}w|~vtut~x|zrxp|z|~{}xy{w}z}yzry~x}trr|~zv~m{|xwu|~y}u|y|x|}{}y{zpy|yyv~s}q|u}}uyz|z{t|y~zwrzyv}~vy}vx}u|{vz{{|~||}qusf}qm~y~|w}|s|}{xx|hzztzw{u~xy}z||}~~l~u|z~t|wwk{yx~~zz{~u}vy}zw|xux|~y~zq|vx{~|ypwu{u}||{~wucqyv|z}wzz{y}~w~~txvqo|}x{|~w~|z}~}zyt~x~z}~~w|~{vws}|y}ygzqyyq|}jt~z{z}{wzu~||z{}z~~}~w||{|su~tuv~{{||||z~|~v|~w}w{vyy|z~}||y~}{|~{t{wk{~}}wzxy~}v~}ws}|}ytw||z{zz}~}}}x{{}~zz{u|w{vy{{~wz}z~~~qv}vstxy|z~|zz|~|v|x{u|vywrzz}|{zxx{~v}}z}x}uo{{}}|z}~pu{z|zzzpwy}~v~{w~~{z|w~m{~|zzxw~|zzzzz}~~{}upx||{yywr}}v|~}w}~x{{ysuvzvz{}}~tt~u}u|}x|~vuw~{y|z~z}t}|vz{ztxwyzvyx|wz|{|||}}xxyznx}~}{~yzyxpt{|xyu~w}{v|uy~s{zzy}yv}}{xt}zy~{w~yvz~s|t|ys|wr~wz~{wzw|~}{wyvvyzu{|ye|||}|}}{|}p{{{x~yzv{z{|{s||}|}}zxy~zvzx{}x{}fvqu}}|vyz|{{~y~uzl{{yyy{{xy|xw~~|svx|{qy~y|wv{syq{hqsy}w}}|}y}|}r~y}{|x{||uzz{w|qps{{~y{||}}yy}vyzyz{{u~|}x}t}}zz|y{|qxw~}}xyouz{~ty{~ty}zz}vy|vzx{{{}z|yt||}u|v{vv}}xysv~}y}y{xt|y}{uy|x~u|~|~vy}yr~vpu~x{u}~yz}}v~}y|}zyt{{||u}|{x~}~{yxt|yw~|w~z}v|}~z~{p~tk{|q}}{{{w{}|xus||{n|||m|y|wv~tq|}uyzt|st~{|~{vm{}x}zzts{y|}||txxzu~x|y{tu}{{w|s||{|}}||~~s~|~}}zx|{wu}xz{{y}|tx|~}{p}v~|z~xz~~u{yzxw}y~u{{jwpy~p~y|xz}~~~nsu{y{}y|}|w^s{n}||yyv}{}{~{vzu}y}z{|~~|wt|x~sut|}w|v}z}{{y}nyxwz~w|zxw|szuy~|}{y|z|~zryyrtvn~z|uzvz{yx{}~{}~z{{}{j|z|~}y~|{zv{uyosy{q~}{{~wwzy}}zzx|w|xv|vzt{}~~~ptwz|}~w|xoyzms~~x}z||yv}z}yp|}~x{}~}vx{u|u{y~{u|z}yx|pxyz}{|}r{~t~x{{}yzvwwx~|{ww~}{}z}{|z||vvz}||xs|}|vz{t~~~{}trpxtyy}{vy|xrx|{|w}{z}v}|wwu|xyzx|wxts~~}|v}x}~n}zyu}xv~yrzxy~xzx~|{un||wuyx}yw{yvzz}}zzn{{zs|~yxzw||w|zxx|xvyyyyy{zu{~|w~zzy}l||vu|}}xt}yxb|~xw~}||h~{yx{}~y~}w~}|ty{wtxxrwvu|tx}~||vv|{p}~~|{}z|xz{}{xy||~}zzypy~xuxv}~vw|x}z{~zjv{}~vmy~}y}}x~{||z~x|~xz}|~~{y|{s|~}}w~~~||}xqtp}|x||~r~|w~|~{q~w{|w}{ww}zs{{{}{~{rg}}~}}{qw{~u}|x|~vyz|uzxxzv|}|ytz|~w{py~|z|uzx}}}}z}~zyy{}||u{{~}{}|~z}~|xz~z~y~{~z}y{~wzw~u|}zp~u}t~yu}xtvw|y~v{u}|z~yw|{{{{{pyyuz|~w{z||{{}~}w~z||~}vty{~~{puy}wzp|~z~}}{{~s}{}}vz}z~x{}~v{{~}|r~|x~yvxzezy{{~}zy}}~w|}~xx{w{{v{}{{}w}{ywzxz}}{{p}|wxsyquz~~ry||{{w}wyw}xyzxy}z|~vzszr|~~wy{zzz|ztx{wy{}xyz{}y{r~zw~x|zpt{x}{~uvwy~yug|ox}tz{tww~za~}{|}~}{~ww|wuzhv{||s}{zyyp|~ps{wiq~|~}}{x{uxs~~~~}|{z|xuw{kw|xy{w{W~v}t{xz}{~uw}}v~svr~|r|}q}s}}~}zu|xx~x}vrq}{~~}z|yw{}zvzu}~tw{z}x|{~|y~y~y~}zw{yt{v}xr|}|~zy{~t~z}}r{yy{yhq{rt{mwwnz|x}{h{{xx~v{|zvys}|~}wx}{{tuuszyjwhzz|}{nxqxr~|yz{~{wks{}||zu{y|~q}tw|p|u{r}wu{yz}}zzx~v}z|xv}yzzy{{w}}y{~{||}|z}z{}~{w~}um~||~s~zx~x{x|}sz~}Yz}{sz{ox}x{{tx~yyy|{n{ty|w~~|ymq|y~px||{yy}|~|}}g~yyz{{vzv}y}|{~~vz}xu~~{r}{xw}~|}xyzy|~s{v{~~~|xzy}z{|{|}o}|{u{~}|z{}z}~v{~sz~y|qwz{z|~}~}|xy}|t{xz|qwsyx{yzzw~x{{zyxwzw|~~y{~{~{zz}|zxz{~z|}wu{~w{z|y{{{nq~|u~~zxwu{nw|pu{zvx}|}}||}{y~~w}~|_}~rz}~z}t~v}z|~r}|}~uv~~}z}|}wxxy{|r||~}}wu~xw}zz|}{rwy}uzt~s{|o|~~z~{{k}}y|ty~{|z{|u~{yzw}{w}z}g}|xq|~y{syz}|w~{}}v|~yz~|~s}}|~~}wz}x{sv{}~~xv~{y|{{h{xvx~|rxw}w~Y}}tu|uy|u}~}}t{~w{x|}|kv|}~{||{}|{~|zy|}ywu{zs|{|{z~|{qx~|}{}uu~||u~|~~y}}}{}z{zx}zvz~}rxz||}t~zs}{y~xpw~xtuzt|s}zxw~z|~{|}y{u{nwvtn{|{}~|}qyp}|v}~{{z}|}rlw}~|wvvl|za||u{zv~}}r}{qywv~x~j}zwUv|mz}puvt~{o|~swypszz~yxv~psxey{}zlor{{Ztw|~}ws}tcztyuwu{|{uwzwvwwvunp{|z~z{}yσr|wst}{z}z~}}uz{~o_||ykngv|}]zotym~iudp~w}~xlt}sut|ktaw~wpxw`sun~znvt|xr{|yew|x{t|~~m{{~}vzw~}t|||y|gqmw~{nzys|xwr}v|}|~w}xmi}znp|xtocwytf{sm~|~Uy~}yk}wz|}}yyzX|uz~~||q}zmjxz{~{uz}tw{}y|j||uzwxo{{]xzxwbtzn{zr{v}zyxzs}~tw~~}}}n|wp{|}w}v|vh}xj}}tw~{u~yt}~t}v}{}{yzt|}y|vv}uuwvks{~}uz|zy{|}yt}zux|~~qzu}~}n{zy|}xuyu||u{{yxxx}}{yv{~yx~wx}v~u|{~~~~|{|t~}zx|~|u|{ywhx}n{|xx~t{v|t{}~x{{onx|s{tvt}zz}y{{xrmu~{y{rzy~xy{{x~r{v|{~z|tu{z{yw{~wzvyuz~~{|r|{~{wx}y|~}~{}~w|~{x}v|s~~z}~ny{}x|yywwy~uxxz{kp|xxlusyz{pt}~su{}~~{|~gw~|x~}tz{~{w}m~v~ow}ws|w{{yvopw{{]x]vxv|yyy{{zwyy|~~|z}~{|syx|~u{w~xzsx{s~xz~|}zz|t~wy|}zy|vxu|z}l{u}|y}~pyw}}{}w}|}}||ur}u{yw}x~}pz|vw|{k{|tsw}~}|{{x{x~x}}|{py{n|||zxz~yw}}|w~vmv}y~~x{xyyp|u~{v{zy{qxpx{|z|}}}wuw|}~s|||yxz|~|~`u}{}g~z~yn}tn{swqzy}{v|rx~~{p|zvzg}v|im||ua~w~vz~||{{}t}{zzys|}|}xz{{tw~zu|}vu~~}z{~sz{w{~vx|~{|u}}{}|~wz}{z|oz|}|~ytlyuwgwY{~}s}{ywx}tkyz|t||zyy~vzv{~y{vtpp{f~~~{}z||y~}zu|~ss}{~|~hxwwyn{~{}|x||v~pz}z||v~xx|}|}}w|y{q|qmq{xrt~~~wx}|r{~v|x{y|szjyy}|s~syysdvy}|n~|wx}~vzvv{wwtxz~|wy}tvx~|}j||u|t|tuzvvy|}zgv|S|vyr}yzwjt}{{n~sz~rx~{nzwtzp}{zu}r|o{z|{l~xwnpvzz{{x~yo]~ytxywxkpwr|ywqztwn|w~wz{z{z}yrwz|q~rvtq{}t~}iwr~ysw{v}w{mutw~|~{|{{xyg~t{}tzv~vwKwxyw~yz|uvq}}}tw}yzs~uzy|[ukx}pmyn}~{{z|z|}qs{s}}vzpyyz~~z|yw{~vzz|~|x}}}~zzxz|~~o|zq|~yw|{zx~z|wy~|}}x~{w{~zx~|s|y~|zx|x~|}wy}~tzk|x~xxyxxt||~urvv~xy~{wlx~y|z~}xwyxvtvy|~z|wzytx}z|z~h~}{|yyzu|}wzxx|uwpurk{|yzx~~}uzy|rr~y|z~zvz~vwxvzx~zw{vyy}y|xyyutxqzv|~{}~~~z{svq}w~xyvvw}xz~wx~x{~sw~~yz}zy{zw|{lz{wtz|q{|}vxzxy~~|zzxwvvv~ss|jsv|~ztyxwzzyz~}zyfxvysyy}|~z~x{z|}y}v{|xt|syk}sz}~|}}rq|yuy}}{vn~z|~~}x}}{~}z}|~}zy}{}y~rxxv}vy~|x|yxx|w{~yu~}w|h~mx~s~t}|}x~}{|~sd~|tz|{}~y|y|y{zzu}~|yxzz{{tv|x}zzq}||{r~{}u|yyl|}{zy}~vzsz|~|}||||y~{~{{x{{z|u|}}ywuqx}z~|{{t|}y~~||~~y|z}|p~u|qu{{|||vpx~|~~|~zwp{~w~xp}{}{~|xxz||o}txz}s~vx~x|{~{~~zpo~}zx{~{u|z{~h}|}~{}~up~~z{x{zvqu|v}k{z{fp|t|~zx{zyp~yt|p{msk}w}zz|||}|y|pw~yx|vz~}|yu|yyy}z~{|{{i~syy|zyqszv~zs|{z{{}y~|wx~~{|}}y{zbv{~wu|||uzix~wx{vpz}~|smy~xv|}~|{w}{~{ziuovz}x|}{ys{z{tov}|j{~ztlxzyy{{w|||{~rvzz}~}ssnzzyuv||k|zqyz}z~}|~y}opy|z||||r~y|j|e}~}fzsouuyx~zt|~s}zk}xpx{|z|}yj~zvsu|~~x{||yxduz~x}t}s|y{~}|y~~u}_vyz{}y}|mzw|}{u|z{~{}wxmvvxwzvv{|uqwos|~|z{y{|~|}}nuv}{~wx~r~t}{~xv~}z}xy|{zg{}w}|{|px|{zq~{}z{{vwq|swmr~zr|}|zy}r}xnv{{x}}yu}wo|yx~k{}w{q{xw{q|q~x~||~gzq}~l|z}}y|[zyruyzyt{x|yu}xt~q~~x~{{xv{|x}vx{yx~w}|yxyw}||{x{~~}}z}~}w~~}{jw~~|z|~}}}{u~z}z{}y{t{~tpzz}}}|vq|~{zx{{zyu}y~|~n~}xq~zk~v}v|~|{}zx{~u|{|~zz|x}swxw|{ty~y}|~gzzyu~}x|~uo~|}zzx}}ul|v~~~|x|}vw}~}r}yy~v{}z~{nwzyzzx{}z~{|y}xy~w||{}qzz}~|z}r~q}xxzv}|y{{|zwy}{zzkx}~zx|yn{~~x|wy}{|}~ww|u||~s}|~~l}qms~t|w{|_{~~k~|~{rjzw~|}n}~~xz{}pxw{}uyzwx|~yz{kmidu{rt{wzyuzv|wz{zwvv}}ngxyvv{}~yj|z|}xyp|}~ozozw}xnyz}~zn|qs~~~zw}r{pt~}~xutu~~u{{{}}j}w|tt|{~x}|}x|oyw{{{~}{w|}ls}{yttpux~{v}uxpxowzxy{vcvs|x}}rzrjy|{xvx}xux|ts~v{zy~r}|kwr}|~ysz{vmzy|zzpx}s}vzo|||z{xpsyxyu}|v~un{x{{uva{}u|~xq{n~{|tq}y}{^uyx{{~ws}vpr~~qstnr`{}}m|o{ux~syso|zx{ox~v|xuqyxv|zxt{yvt||cq}z{~qtl}}~|o}{|y~}vv}|xx}{|w{yqpy{w{~s||yx_~}{xf~zy}{}z|dvzn~t||xvu~tzz|~xq{{}x~~|sz~}}{||~xsw{rzz~x}ryy|~z~ym}}|vz}|z{xt~zz{{}~~}}k|x~~}}xx~{}{}npy{z~t{{xl|x|~}y}}|~{{~xr{yv{|{~x}|z{{w~{|z}vx}zxztvt|z}~~~}z{zjzm~tl}~{n}~mzx|}~s{z}|xxp}w|rp|u{}~|{rz~hq~~w|u}u{|zv}}r|v|{||v}~t{y{ym{{zf{yv~~}w}yys{qr~q~z}y~||qp{{t}pwxzp}}v{|n|~q~vv|{z{|wrsxz|ym||y~{qz{xvw|~{w{~wzwuy|z|v}xz}x~x}yyxy}z{|~~|z|yy~s|q{}|x}q|{z}}y|zyy}~ssuutzyxy{zztqy|y|u{|w}h}{{~tx|yy}{uzyr~{|}~}zr|~t{~r}vt{{~xvmz{xv}s}~}wt~nvzyy|z}zz|sw~w{yz~tw}y|wx}|w}z~xx~|xx{|~xvz|}zj{x}z{}yy||}}{xzy|u~}|ynq~{z}{~}|syww}}us~u{}}~vxw~~~~yztq|r}~|vyu|{~}~y|z}zv~x}|z|z{v|vx~z~t|~|}}|yhv}w|z|~~}yv~{zx}vyp}mms~~{p}~x{zyxw|{{xz~v{}y}yyzrqowgzyzzz|ytu}|~~yzv~{zu}ywy}kyv|j|sx}{y}y}~x}l~uu~wzyux~}s~|_u~}wz~y{}q{vyzy~u}vx|~~}~}m}{v~yz}w{|qwvzw}}}ts~~~qrz{z}xhmyuzwzw~{}{|z}p~xvmq}{~}~~}yrx|{~~t|uigx}v{y{|~rx|~ryp}~z~tn{S~{t|~|zxt|xxzp}{xwyq|}z|z}pvr}zxz{|~xz~rzzw}y}ys~}rp~wtpozp|nsvjpzuyt{z{rv{vw~{wfxoswy|zzx|x||}y}{v}|}vzu|v~~y~}h}ysr{y~zvt|z~~|{z|~v~z}zyy{u|~xx[u}{~{y}yu}x~u}{}|t{|{vzzn{}ywvyrx~~xyzx}||}~~{z~{yy|}~nxtt|~}~}}~~}}~z{uy||||{x{u|szv~}|yy~x|yx{wvn{yz~{~}y{~~~~zu~xu~u|xwye}yw{zx}~}wz{v~s~|p~~yy~xz}w}y}{sy~y|~x||y~x{}~ztysz~}xzyxwy{~z~z}|~x|{{|{}q{v~zyxv~sy~z}zvz{|~w{rp|~qtz{y|~ru|{{{zzz{~|v~wr||~||}zt{{zzx}}z{r~z{~nx{w}tx}{~z}z~{s|ty~}j|w}~y|~{|~}p}w|wz|{}{zs}~vty}vz}vxwwuz}|~|~}|u~|zyzm{z|ny}v|yypywxxy~w||~w{|~z{sx|~y}~|us~qsx~yxv{~~{|}|~}t|y}wx~{}~|{y|xwvs~t}xyuzxy|zv{}yw{y|zq~{y~{|y{etxwz~swzzww~}s}|~zx}xzwx}~|v~z{{y~lwx}{|}~ytly}u|}y~}|}|}z~{~{}~{|}pv~sw||~y{}{yy~}smx~~xvu~u~xky|xuz}r}t~zxv~xz}}my}}sxmxrxy}ty{z~zq||z|opsq}x~~x|vszzzv|tv{}x~~x{yx~zyzt{|~zxt{zzszmd|q~zspu}}{|}|{k~}~oz{vg{zs|}sn~~yzvw}{|zt{{}~{{zztzp{zxz}~|p}wnzz{r}}||{}}}}v{{xv{~}}|~}{~yy~ywax{~y{z}|{{vhb{v~}~~pz~~|}tnu}{s||v~vap|{{~mys}|{}~w{vy}x}g{}ysv~tym~j}u|~u{qrxzx{}{yyz}{w|wzz|}xtz|x~~xcy{y~|fuur}n~zyx{|{yvrz}vfyk|{vlw{|~t}vy{z{tzw||wpz{{|yuyu~zxmjzx}zx{|uzyzrx}zyyzr}v|pwv|jo}wqvzwxwzty|{}w~}zvryvyuyr}}r|t~x~x~xupUy{Hoov|~m{f|~w}vsuwt|~||z{}s}ay~x~|z|wwzyuq|fs}}~|{zzv{us~p||x{s~P~zubtw~}ut{{|yyyw]{}z||zrtvx|}xsxytvxl}v{{r{z|}z}[{u{swz ~q~t|zh|sux}{x~x~~yw{{z}~}|uzz~y~us{u"wqsyusyy~y{p}}||yv{~{ztz|wnrrx}x|q{{x{ut~xxt|~w}{s}u{ww~Pz{xvszyvtvwz~w{syzt}vus{rs{~}}}t~p}Wupsyzlzx}zmvwxtp||{{yu|~~}x~wy{s{}y~|qzosw}t}|ryjw{sx~z|uzu{|{uxt|}yvwjfVv|x{xyw~w~xwq{p{{vwv}t~x}zzrxx~|{zwvws}}|w|tvwtz{zqszx|w}sm{uy|x~~}rx~z}xs|sy{py}~z|zzx~|zulv{|y|wxupvokw}nnsut~p~zuz~sxx{sr}~|yvzswmv{}t~qztwxvytytwy{~y{zt{|z~r|w|~zy}|{myssx~yz|t~~z~u}wa}|x}yo~sv{uurxzxovy~o~~z{pwz|qq}zZvxs|z~z|wtzu}zszz~|{y\}s}uv{s}x}~||}zx||z}x|{{y{xyrz|xxy}xpz|wz}}}y|r{zyz~~wrqy~s~u~}zty{}l}fxxy}y}{~w|}z|}ysx}k~q}~o~}}}}kw}uyznk|xx~ts}vwuvux|}v||~~zvw~ms~yyz{rt|qz}v}xuy|{||z}yu{w|uzzzv}rk\|z||~|}yzt{|q|xv}m{{~v}}y}ingzv~uu~{y~~|j}bqz{{~{|{y|}yyv~yuwvzw}y}vpwtuv~n|z||}vz}piz{{utw{|xwo{tz~{~xuywrt}}}yz|svsvx|yx~|xn}{{u}sz~~|v}z|{xy}wy{|xkzwtz~syqkyxy{{sw}x}}|yx~zzw{|z{|z{}{~{|zs|{t{~m{utZ{{u~|~~z|}x{~x~|{w|j}}}~y{~~}|y~u{zqxux{qzz|~{~rtx|z~|q|}zz~{t|t~vvuzr}}t~x}}u~{|~yymx|y{wuzw|qxz}|~uuow~y~{}ut|wy~wx{|s~z|}vyt|x}}||}{y}uxl|xt{}{zzyxw|}~~~~}~|xzw|qw~~||~y{z~u|}zuzw~~||nzzu{|xv~zz{wx~u{vuzxy{{q~}|qxy~{}z|uz{~||xv{}w}v{yo|u}{|~z}zqzyqw{}wzzt{vrz~y|y~z~{yv}|w}zz||xu}w|{zxnwu}x~}|{}yzx}{ywrzzxyx{xwwy~~prw{}{v|wzvxz~~znv|q|yvn~z|y~pyxt}|vz~tzww}uusn}vvy|y{s{}~x{|{z~|yw~}||t|zzqwtt}vv~vz|{{x~ypvwry{|{|~{x}x|}{{~yzz}}|}wz|}yxtz|yw|{~zz|r{vv}~qxz|wqz~|xx}ps}pt~xz|wz|y}umtjz{{y~y|}x{yuw~||{z|y|{v}}|~x{{m~{w|{~b}yxuzy|w{|{ox}}vxx||yv{u}zz|wun}}|}}uzzrnx~|z|z}{}||z}ru}|xzz{vyxl}w}}}y{z{w~|yur}z}{|r}zwu{{zx~w}vwt}tz}xss{yyvz{y{v|xvo~kvttl{v}v||{||uwv}{|||w{{p~z{z}rz}~uwvvxx}s{|p~}vvr|vxy{x~|ryp~|oyvv}qv{~r~y|}q|{|s~|~{||}y}}sxwk}oyx|q}~~~u{}~}~s~x|~~zy}}qsv|~||uy|~zv~vq}~yzxz}|~}p~}zx{~zpzxx{y~}}|}wx|}~t~~z}|wy}}x}y{}~xx}{yyvzv{y~~xr~{|y||zx|tv}yx{}y~{s{}yzxs~v|~vy|}wy~|y{|}sz}~~}|u|q|zj{}~y|{jzxm|}tv|oyzy{{|x}}y~}wx|{}}}wt}w{~uz{xyxy|muywv|{zx~wzwzr}pzwxy{~u~~wz~zyyw{zu||uz{lv|xzur~tzzz~n{vy~}xww|x{{{zv}u~ut|}|zzsyy|~|||~r|~}{zr{{ywozuz|s|v}wzwyz}|z~v|||{qt{v|w}u~y~x}qy|z}ntrzz{~}y}r}v|~z}yt}p}}|y~y{w~n{|}t~{z~x~|uxqz}y~|}|||~{}~v|z|}|{x}r{}}{{||t|~zz{|uwyoux~}w|u{x{yt|z}~zy||}z|z}|~~v|xyu{p|x|}}y}|u~z{zxrw|wmz~|~|~~yvz{yz{kqz}}w}~}ly|}~}~zxxq|}~v|}v}~owuy}zw|u|{y}njyn|xw{w~||~|{|~x||o~~}{t|}xqw}x{t}{w{{ww}{ozv{|wwx}zys}y}}{~vvss{|r}|{f|{]|{q}{y~}z|~o|v|n}zzvr{y{{u}y|y}tvyzwuk|zw|v}~~z}zqx}|t}}u}}z||zs}v~{{s|~}{||~{y}w{w}y{{tz{}ssz}ww{||~x{|{sq|{z|}}}x~}xv}y}q||{y|quj{}z~z}{~z}~zvx~xqx|v~|~|uvw{|vuwxx}{~yzvw{~~~{w}t}yzxyywvx}}~u||{tzzz}}~x|}o|kypyzzzzn^st~}ou}z|sw~}w{r~{|x}{vzx~xpr}zvz|~ypx}ktyyw~|}w||tw~y{oysy|t||s|}u}vt|t{vxtt|y}pu|~}}z~t~vvuxy{|~q{v}zwz}y~zt~y~t|w}xr{j|~s~yyr|}~{}~~|y~}|y|zzy}y}|yy|zlz{nv~ry|vr{r}{~}~|}zz{x~~v}|{y|s~}z~hx{u|wjty~|s{|}~~|~{wv|y}z{~{~wu|~{qzlzwwv{}|}|~su|xwzw}z|y}wj~t~y{}~z~}~p{|s|||~|wz}}tz}y~|pu}x}|~vxvv~tuvrr}}z||zy}q|}vtzb}ls{~|jq~z{}{t|w{uwsv}{t||{}}}|zt~wyv|s}}z{l~}|}~}{}~}zl~~{|}xy}}lw}}x}{y{zz}~oq~zw{{u{}o}{ty{~}|z|uz{{zywx}tztv~x{~w~~n~y~p~|y{y}{~{{qzz{zt|t|}z~|s}~}vwu}}yu{~z~p~ywx}~x|~|yx}|qzu||xx{z~||x|w}{|{~}xxz{vw}|}vt}x~z}y~o}}rt{w}x~{|~}~xusw}zu}}xvzmwz~|yzzz}}y{wx|sywzr{~x{lz~|~{y~~}zt~qy{}}u}}ys}~|}|}x||oz~|}|{zuy{q{~|z|~}xm~~{|}}}x~||}{z|||}n~|x{xx~ww}wwy{|||~||{|y~~{{y~|{x~om~|t|{~y}s~~}v{y~ywvzz~|{~p}}~y|{v{{x}vxz|~rrx}w~y~||{w|x{wu|{y{}z|}xzzuyy~t{}~{~~zxyxzv{|~{y}t~}}s}}}uzpw~z}~}{t{rtxs}yz}w~~{vu~|}xx{xq}w~zvxx}uy{x}|y}|t}v{{{l~{v|{yyx}tuy|qvy|x{}{yy~~w}~wy{yw|{w}uz~u{}{x|vz|u{~~uy}~{}~~w~nyu~r~u{y{}}|y|qz|~}u}}y~}z~~{}z{y{}{zsw}}v}{xruvnxwu~z{|yvy{|}yxx}|z}v{}v{s}lv}~zzxzx}{sxkp|zx|nyzowzyyuzx}}|rxq~wy{}y~x~~tx{}z}~z|}~zt}t{y|xz~{qyy{{|x|}ty|w~urxr|txy~~{r{}wz}~us~{wqu~}t~~}t|~~|~|}}wyv}yr}wnz||rpx}}v|w{|vz}{|{ttt{{o}~z{|w~{~{{}xzztv~}|}uvv|y|~}z~|wuuuq|xzux}x{svr~}urvp|x|~|||{xuyzr|q|s~~w{yuzyxq~~w~}~}k}u||m~u{|w~ztwwsv}{x|~{||sf}|m~}{v~s{xrwzqzz{y{~||}y}nusu}{u}{~zyxxyv|p~~|z{m|h~~r}xp}z~e{sv{}z}~yz`}xy}put}x|tw~~z~x}}xxtvqwwzzuz|}|xuz}~jss|yw~~x{y{x}|x|vy|zm}wx}~ylxt{s}}}~|vu~|}twtwpuwu}yowxyt`vy}|vyzuxqvzvvy|{z}}uw~}~xw|p{xhts|uus|vr}zttry~||yz}yxz~}q}|}|yruvzwpy~zwpus~}u|qryz{~|{zwtxo~y}yvuyor{|ytyzzw}zqy|~yy|vtxnw}vxzz}q~h{zszir}~w}}{vxzxyz{w{njx{{v}k~}|u|yy|v~vrq}~~ur{tz|{{|~vw|~~pzywn~~{yz~sv{v|}uqpzs~{}vzz~qxszs|zw{}v{t|}z{v{~yx|yunz~yqv|}w|qzuy}zz}~p{|}zhww|ntzx|nq}{~|u}~tzwsx}m|ty{jwnv{w}{rn~txu{txj{~wz~ns}xr~|wxkzznzo~p{wuwx}~xqu}}ox}|z|uy{tyt|pr{~vtyrwwyoqx}}}|zy|~y}|v}yuztu~f}t}vuz~~x~{{}|~z{y{y|wvzrmtsz~{v{|}y|}yy|{l~x~~y|u}|p~{xz}yzy~xw{~|~|{zs~q~vyzo}}twxt}|x|}{z~~~ztz~z}mu{}}yx{~wxt}||v{~{}}zz}roxy~~x|~|}~{t{y}qy}}zwy}y{u{yly~}zyn|qo{{|}~|o{}{w{}{~||{}|{yu{y|yw{~vpyz}~z{~u|zzzzp~u~q~|||}~zrx~{s}xy}zs{}sytwvs~z~{t|x}~|sz~~yxuuzwz~||{v~u}}|x|zxyz|}{w|x|zw~|~{w|x}wm~y}{{zx~|t{{{x|zwvsp{|wwxzy~~{wv{{v~{{~~}zv{y}}wz~}s}w}z}z}}~s}t}}k{vuz}uv~r~}||ytxq{~}y}zwz}vz{rmzzv{wmuup}}vtp}t|y||l{q|v|{ysxvt{x}|}uvzrwyyy}jz{|m}~~|z{||y{xsxqzwx{z~wvp}u|o}px~txzsz~|u}|svw~||}|xvuytz}z{y}{}|u|x}t{|xtu|}zr{|}{~}z~lnwxa{~xv{{|~zx{~tnvtyy|tvu|vyz~|svxzntsv}xyxzz|y~v{}|}uuzgj|}uyxxos~uqqtpy|~{xsvwww~x}{wgzq{zw~zr}w~o|w|}x}x~{x{t{yryzz~~s|||y|{{xn|}~}}{~}}|}vx}y|xzy}~{{|~~~zz~yx~z{{m~j|xs}y|z|}w}|{y|}xx}{{wz~}{y~|y~|~xyzxu|z{z{zswvzx~{{zvty|}y}y~{|{vww}}}{ttw{~{z}xx{{tx}{|{|w~|u~{y}~}~qsw~{vyzzx}{~~v{~wxzy{u|}{t|~u||{}z}}}y{}}w}{y|~}z}|}|}z{~yy~}w~x~z~|}|}~xx~zz|~{||w{}vz~}}t}|v|r~z{v~ys}{~}{tyw~ww~xy{}x{||}y|}y}v}|x}{w~yz~zy~wy~zzx}x~{{~t}~p~zv{~{z~}r~~z|yspt~zqyyjpp|wxsxy~nyq~us|sq{}{~zx}rp|vzr~[w9zuw{~tsz~uz}uz|~}}}x}|~z~wt}y||~|l|}m|{||xr~z|x~|w~|~z~}{}x{}~|n~uz|v{w{}~~|tz~v|wz}x|{{|}}|ozz{}vy}y}{}{~y~}p{~yuvt{~|||{vx{~xxw}{{{x~xyo~}{yx{}x}n}}lyy|{jsz~st}}v~|mz{{{|z|~~~|||zz||~y~~}|{|}y~yzy}{tr}y~}tw|w{}}zvw~~zzyxi~x{|}{||swxy||pv~}vz}y}z}x~zwppr}zsp|}u}wsy{x{w{|~|}{ujrxr|uwq}|x|~{|y~{||uz~ysx{}vvuy|y{|uj{yj~{{u~|{}t|u|vi}{|{v|}|}dp}~zw{y}}nslsztrq~~s~z~ny}{y}z}||ztrkr|}y{}uz}}||}xz}v|~y}ot}|~~}y}pt}}~p}|}~z{uy~r~y~|y|}vvx~z|tzz|w{y||{n||n|~x~ys}yv|yz{yu~{z}yzw}yzxnuyux}ty}yw}}{~~v~yuu~xzzo~zyqz|||}sszq{~}xzyxqk~yvyv~|z{{swrqzyz|p~vwy}z~xtw~zswz||~wwx{mzzwz~|x|~|{}|w~zx{xqzzy~y}~v~{~u}}~}}}ryx~x{{{yxxy|x}}v~z}wvxx|uw}tx|}y}z~w|~~}}|}u{v{xt|}[|uvz~yq}}}||}x{|woy}|~}{}|{{v|~y|}y|~{l}vu}~}~~y~~|z~|rz~{ro~ur~|{u|{vp|ywsv~||z{z|wy|}|}{|~|tx}|p{n{puvz{u}|}uyo}|~{~}{~wz}|z~{|qz~vvztyu{z~{z{y|y|yy~~||qy}|s{l~}|q}a{z{{{|y}v~~y{||{~~}|}y}}~~|}sz|{y}x|{|}|z~n|{r~}z}y|xxz}yt~~~{|}{z|{u}|{ry{x{ct|~x||~x}}x|uj|{q~yyv~}}w~wzy||vyuv}{|}{r}{}{~vo~xvx|u{x~{{tz{y}zsxzzx|yz{~|{yvvxs}rwv~~}|t|vxy}zz{`{ogty|}||st}w^zzw}yvn{}~|v{~t~}}u{~|z|s|}w~|tzyu~||}}ph}{~z|~p}vz{rwtz|zzwuzutq{z~}|}}|x}y{~xyuso{ww~zvwp{{y}~u{z}t{||vvy~}|~}p~z|vv~{}khy{~zvzwo{m{xxxtxtym~sxvwtxwrzxuypy|wy|||syuz}wy}u}~xtnz{|m~v{w{uz|p|~x}}}y||z}q~w~~tvus}xyyx|s|~xpy{x{{x~{~xxyr~o}uzz{ywet}v{{|xz~w{gxwu}}rsy{}v{}}~{|{x||{l{}tz}{vuz~|t{yplqt}tw|y|y}|xx{}||y{pyz{|zxpzzz{sy{{}{{wz{r||zzzvx|}}}y~~j{{s{w|~~~{~}pyxw~r{vyqupxxz~xvv}q{px|}yw}xiv{{}vv~e{y{jz|wrwv}xzz~sw{yxu{{||r}x{zpzzx~zzv||xkz|xy|~w}yyxy{|xzy{~~xnow~z~}~~~zz}}zzm}r~~ryxr{~xryuysypqwn|nvxxw||utrxsy{~}yw|vn~y~vxxx~pm{ht{~qrouvyx}|{{tzu~}vsu~|||x}uy|p{xzy}w}x~x}|z}wq~~vxozz}}x|wxyw~v|x}|z~w~z|lp}|t|~x}uyxzqw{zz|w~yw}{~}yy|wz{}yqy~|{}zw|{|r~u{wwuozw{~xu{zv{{{{}ytyu}w~~~|}|}}{}x{xvw|{v|z~x{u~{xz~qywx}z~zwk|}x|{yuydv}{z~x}~|~wr{xyszzzyz{~}v}vx~x|xs{xsr~qy{~p}w{|~z}zz_|~zu}|}~~rvwww|~|{zx~~xyr{xq{{{uy}vsp{x}y|~{tzy}}u{}{ytzzVw~}}~r|~{~uxyx}||txzt}yvz|~t{xu}u~xm~}p|xu}y~}~qv~|z{xy}}usvz{z{~|rzs{yx}yv|w~w|vx~y{|v|y~t{|zteu~q}~xt{x}vq}|{~wt|t{u}z{k~|m|{uwy{wu}zy~|x~iz|pu}{pwl}y|y}x}}{||wo~}w{}z|~{~x|{uy~}sll||z}|~}|}}xzzq~|||}{j~}zx~qk}v~yxx|~x|u{vp{{{}{~r~~|yz{zzy~}~x||x~}zz~oup~{||~ywzx|x|xzz}z|z|z||{}t}~uo}~u{|s}r|n|~}rp|{}|s{|wr}u~||x|wzt{xxzutkyz}}zyy}py~}v~u~uyyw~v~}vu|}n|yszz|y{|x}yx|~p{}{|}{~~wvyxs|{}}~{syvz{vwvj{|xtv}tz}{}xv{vtyz|ww}~~{r}~x||ryy|xz~u}~}m{vzyxuv}|{{x}|uzwwxuy|zyy{x|uzu}~uqkyq~|}v|{{b}x{~}kxv}~v{}{uw}xz|o|y}~}zxhx|j||u}w{w~p{}{}xw~{~l{v{s{~||zu}x~{pm~{{qq|{y}w}}{{vvr|~js}{ut|z~yv{wy|t~|{{{||xs|y}tww|y}}kz{sr{|z{z}}{u}w|xr}uqzz|~{m~}zw{~~w~x||z~{|{~w{}gu~}{{yzt|{tj|rm|z}v|q}x~~w|yx|sv}}|{x}~{zww}}vo~}~xyyo{yusvsv|w|zx|{vyu}}}{z~rw|{}~{x|{{o{{~}{~lut~{pkpq}uz~z{wxwxq~}}rx|wx{||x{~|f}~uu|~yt}r{~|~w~|_|zu}~~yy{{~z{}~||zz|~~v{svzvt|zy}|}zuz{y~w~y~y~yvqw~}|v~}{z~{{|~w}|~m~z{v{~{~v~}|{ztvw}}~}x{}y{~{w}|z}{{ts~{|z{~|y~~v|zyx}vfxz|||z|}|xuu}|wy_zv|||}zqz||y|z{x~}~p}w}~{oz|u}y}~~}|uxq{w}|uyxwxtyr~|}vx}v}~xwz|}z|u}{x{}}~q{~}}x}~~}}}mi||xyt{r}z}gy}}z}}}|qyzrv{|y{rz}|vz|}rq~q}~r~}z}}kvx}{|}|}|zw|{|tpvy}r{yyy{}~~~}u|}zt}z}y~y}txz}}}}ww}~~~~}~~~~s{z}}}|~|y~y|{ww~}w|}|v||zw|y{r{{yvt}y~znw}}v~x}u{x}{}~{~}oz}k}}{||~rq{{}|}y~|}||{y|z~}|{pt}au|~q{|||{~~}~q~{x|u||~|wrx~~r~zoy|t}~xv~{w~|p|}yz||}x}ty}zu|}z|~w~~ut}}~~q~xtvqu~~x|zy~z}|}w|~v~~u}{~p~}}|w|x}xuu~|}xx}zyxz|t~vw|w|z{v|y}vu|{oy~{xk|}|yuxyqq}{}uwwz{r{z|~}z|~~|yjz{{z~}z}p|us{ox}z||{w|^w|yw}}|sz{znuryw}yy~k~wo}yxu|lvwj~}szt|~xvzykxw}{w||~yyyvuusxqz~{{o~q~vtwz}y{{s|vwz|uu|y{yt|~{||yww~{z~|~}q}yzz{{|~{~ww|~u`~vrz~z}w~z|yv}y|x|sutv}z{vy{~n|{y|~zxz{e}v|zqx~{t}x~|yu~v}x~}|yo}yX}s~|vxyv{u~{~slw{|z{|pruzy~phwyp{tp}uwswwx{v|z}~{}ztq|z{}|ry||ywx|px~|y||{|xvt|txwtxott}w}yxy{yvowxy{vyuxzz}jyv{y|}}o}tk}m|zqxct~ws|z~i|odt|x{}|szqyzyny~}r{\zn~z}vpszou~yttqy~wtuvwuv|x}ow{w{xpanjYzy{us~Qx{zz|ouzociozyqvvy~~szUk}m}xupz|}Rn|njv_hplqxfovv~}u|ht|fg~}{{tu~{y{kd}~{zx{tq}ovy{p}z{l~zz~x}x|stzw|u~{qw{xfu}znlgntizb|qzy~}~u{to|wx}{wm{y~|u}~tq}u{}{v~hvw}|t|}qx|x~~tvrp|zk|iuu~D|j}duy|zugy}}}vz~{zqrtvq{s|otx~zVy}uz{y{|qzfywyt}x~z~zxr}|tz~o}v}~w{}~~w|{|{}zy~|ytvw}s|z{}}{|}zzv|{|~|}xw~~}zwt}|{|yw}|||}l}~{vouyw|o}}{yz~uw{xr{w{|}|{|{xy{xt{y|ts~yy||{}zw~wqxzwwtvw{~|zw~u}{q||}z|}sz~~uxxuvx{}p}wovt|uzvy~{umwz{x|{}|vv~o|y}}z|y~|~vyw||}zt}qt|}~~xz|v}y~xsquy{}~}zxx~wxx}}~{ws{}~|skzsrr~n{}z{}|~}}}{x~zzz}v~zvzt~wy|}}u~qv{{xz~{zyz}{u}~~~}~~}{x}wxu{{pyvz~{~{}{{zyzy}m|sxvo|}yztu{|~r}tx{y|}{uz~~ts{~xt}~|{}|zxz~}|wwy~{zt}s|y~}|xnfv{~}vy~z{}yz~nl|{zlyqy{}}z|}p}x~}z|t~~~wx~~}|}yryx{x|oz||zw}ztu~w|u||u~~yz{tzrzymeo{ys}{z~yq|z~|xs~{}|}|wvx{t|tywyz~l{{||}yxw~~}sz}uz{|~yrfzw||~~{ux||{ytw}yzw}|wq}~x}vzw||yr|{u|{zs|z}~{zwyzuu{zzxvwzm~{v~ztmyxut|~w{z~r|x{~x{yom||{|}~yyx~yy{u~s|r||{}||y|}xzy{~ewr}|p|xwtzun~||zx~v{x|g}{r~{{{|{~vzvsw{}ut{{l~}iy{{}|rr|zcjz_z~zq}~}ui|}~y}r~|w~y|y}{{~vny||y{y}{zy}}suz{v{|bo}}tzzcxu|yz}~|_{s|tu}}su|vr}|z{{~|r{}sp~~}|~}l|y~xzvb~xv|yq{~s}|~~|os~s{wy~{{~z~v}|~r{ykvz}y{znw~}~|~{|{|xy{y~yx|{zwz|q}uop{o}z{z~zo{~y~|}|{y}vyzvw{ww|yr{ztck~t~v}{q~txvu}}y~u{~xz{zu{}w}~v{}l{q{ty|us~p}}{{}|yfwvy{r|||zq{i|r~|wo~~~twoz}yu|}tz{}{v{wy||}x}|tx}yvr{}|y|}yvz~|uy|g|~}{}z}x~zzorz}}}x|z{t}~|}|w||ws}y|{zzy{~{}x{|ys}z~~z~wo|}yz}t}zu|q|~yyqz{|{~{v|yvz|wzuy~|t~q}z{|px}y~yw{yt~s}}}~p{|~y|y~s|}w|z|}}}ztsfut{{y{~q||tkz}{v}~~{yn~t|{~t}}qxyx~~~~~|}}~xy~{~zxx~}~vnu~~|{~s~kz|y~|{}y{|yy|}zyx~zyr}yxz|z{~{xzz}v~r~~~wv~y{|x}}~pz||r~{}q~z{yz}ouzyyt}{}~zz|r|||~}yzyx~{puj{{y{~ms~{{ys~v}w|p|xy~{}t||t||j}}~{xvss|g}~r~{~|t~yt}x}s}|zz}x~y|z{}|||~~zx}{|}~{~{~zk}w~t}}q}{yzx}www}~|zs|v|y~qx|~|{}z}|wz}}yxy|xywz||}|z~~|z|w{~v}~~p{w~{|x}~~}~~|}~}xz}s}{z{{v|x|~tr}|xx{|pyu~}|y||r{|o}{}{}}tz~~~x||}z~x|}t~zw}zrn{u|y}}z{w~wwyz~x}sz}unz~y~}}}|}pw~|z}qrwvu}|w~{z{}y~z}~||y}}{y{}{vjv{yvww}w{yxxvyu{t{}ww|u|w|{|y|{ywz~zswz{~x~uyw|}~x~}}y}~t~|}{|z~{~|a}{|}x}|l{|z|z||{|}ts{y~{xxt}}}zlz}}t|v}xuzyjxi|}~|~{u}w~}Yg|q~rs~ws{|{w{~|zz~q}~y|vzs|{{n{|hl{l}{|v}|qp}~{x|~u{}ny|x}vxxyyxw{}q{~}}jyy{ulzr{~{rxw||t|~`|vlwy{s|z}}}|s~x~}{~ezvewyug{yxqz|y~uwyvyy}oysy|t{wz}|x{~{v{|t|~~~p{kzw}|~wxwz{xz~s{~uyzwz|p}zym}y~xr|xz}n{vw|vsyzys{xmz|w}ytkwx}v~{y{|||{w{~z||p|{~}q~z}{z}}|zz~n|rz|xqw~{|u{wz}x}}~yy}{~v}|tv|sv~vv|~|~~w~vuy}o{z}{}{z}xzv|}}|~s~zzx~wv|~q}z}|~~rv{zly|zzsx|}}wy}r}}{~s|}|}x}{}|}z}~q~vt}o~|~}uz{s|~vy~x{t{~wo}y{p||v|{vy{pw~p|}}w}w}ix}{y|x|}kx~|zve{~}{|}y}~{uuw{tvo~yx~}~ku|{qzxwu{qyvy{}}{{~|}}|ysuv~x}~z{z}vw}~}|uz{~{w|}yy~tzw{up}~{zzy|}}yz}z~~||}m|r~|}f}uz}~ywy~wy{~}~|~~y}x|wy~~}vy{{~xz|yhy{}vy{w||w~{~{~~zzxx}~uz~|ur{yu{}u}~zx{|z~|}vy}xxv}{}}~}xzzyzz}r~{{|uz{z|}}~x}|zu~uw~wyzuy|{{}x}z|}z|{wxz~}~}}y{z|y}{}{z}y{hzuz|~yyv{y~{xt{z}}~}xzwds|}{zw}y{uz|||~z|rux{|||~~{x~t|xz}~}~xz|{}{|s{~ywzs|sz|v~{}}|k}wxvws{x{s~{u|}z{j~y{|xwt~z{}~v}w|zxsy}z{zvyz|x~x|wzwx}zt{swz}m{uz~|]tx{hv}w{{{ytwr|}x{||||xw|zx}zxz~|zrv~|xv{p}w|}}x~}v~xu~{qzzvwy~z||{~{y}y}~xxu|{zw~yw~{}|}yr|xq}v~}w{s}vsyx~|}z~|}}ww}v}uyzz||}~yr}u~xzzwyxvquwzmw}zo~}|rxw~xytz{yz|wy}w~}y|~uyz{{}q{v||zz~{zz|yxy}~nx|{}y|u}zy}||xzwzj}ywrs|uzz}|{wvywyyw|~|~|xzxsy{}ex}|{vzs{w}~~~xq|r~{v|}}x|{zv{{~}}xy~x|{~y}}~~{~vuysz{u`xvyu}zxw~zz}x}{{{~|vv~yy|uyy|{~}~uzwr~ky~{r~~t|~~~|}s{~rx}zy}}~o{u~{ou{||}|tx|{|~x~vyz{}v{~{{|~~{~z|y{v{rwyut||v~w}xww~~z}rwy~~}uz}u~~tz|wzzox||n|}s|zyrt}sw~vz~nw{y~{u{s{~{z{u~x}zuy{xzy~|z|t{vsy|}}uvx{oy{x~{~{y~x{~~twyz}|}us}x~|}|xryp}~vz|zzv||xwzyvt~wz{uvx|{~q|~ux~}}y~k~|{|yzwxvy{{ww|}xpw|y|vxvs~}s|z~|~uy}xqyr}o~pt~}yx|tvysxz|sr{ov|~{x{q~q||}~tz~}oz|zy}u{pw~x|}y{|zyyy}~~|{{y~wv{vw}p||rz}r{w{w|xuzu}{y}~w}z{{|}}}{{st~~~}}z~wzrysxxs{||xytm|}}~]yyrvvo}~{v{xyyyu{x|y{tqx~|}|zwvj~w||{}|}~}|{yuwu{zxx{~|xxvy}~yv|}{|{u~l}ys~y{|~|{yy}wzyz{~}~}k{{~|vy}}z~z|{dvkz~{{{}y}{~|{~~zrvtxtsz{~~}|lyx|~uwts{yxzw}y|{qu{{u{~iqu{y}~|wfttzu|x|u}p|~{vy{|{z|{}d|xx{zu~~y}y|y~h]}lv|~|z}~oy{{u}~~|~|}ozzwez}~~pqx~}zp{|o~}z|{|{sr~zxu}{tv}x~|}v~~{{~y||rwr{v{y}yzyyzw~~uy}~syzwyy{w{~}|~{|~z|xy|~zxz|ux}v|z}|{|v~z~x~~w}kwsqvvryv}lt{~{~|y|x||{zz||zw~wk{x}|qwy~wz~yv|{~qx|~v}}}y{qxyzz{w||z|z|x~|{}|}y}zx|~u}tx}~vxymy{fwz~v{~x|u||vuku}|m}~t~~}yyr}~xx|~{v{nz{}lmy}y{vyqv~{{|vvwxyupxyz~~z|z{~||~o|~x}tzt{y~}}}vu~s~{~{xv|{tztz{{{oyyuuwwz|~w{yx{{|}}u}|yy{zst{yxyyzsyzzw~y}p~|x||vv}v|w|{y~`zsv{~vrx}~z~~wyy}|wnzzzsw|z}{xxv~uy~}}o}|s~|}u{v{~|u{~~u|x~|v{zszy}}|{z{}}|t{{z|{x|xv|tux}jzw}||~}uwxw}jz{~}~}zp{v{vw~|{ywwz|swvvx|~|z~{}}wzn{x|v}y|{tyx}}}~{{x|rs}||wz|~zyxxx}z|~}{zw{w{{w{zz|{xd}vxvxmvuu{|x~|~}o|u}y}~{}x~~x|}}}uxr}y{w~xqxuxs|{{wwwz{y}{m}x|{~zu}v{u{{xyw|yy~s|}yzyjz|yqxz}|}z|v~~|t{y~z~yqvdvv}n~qw{yw{~x}}}xtq~{~{~r{y{|z{zw}yn}|}xy{}z}|sv|}}z~|}pxx|}vy{xyusy|y|}z}xy|{~x}vz{yu}{|xx~}xw{w{rzxxoxz|y}{z{{yztzz|u|wvqozq|z}wxzyz{{x||~x{vs~zyvxuxxz~}z{x|w|vg~w{ozyy{~zy~zy~xvzx}y|~w||~~||v{~|}un}}{|xy}zy}|zzxx|uxv~{|}~yrz|zy~~zzx}x~}uy~}zzzzv|~|you~vn}}~}q~o|~|~~xzy{}}^zy}o{rz}}rvz|||w~yzosuxw}xsw}{}ov|z|w|x|z|l{|gv}|}~yzhzq{{w{~|x|z|{y~u}}{~}kzupy}nsv|y~~b~up}z~|{vy~u}y~u|{kt{{}|y{}|~p~||y~y{~vy|{}}x}|}~|{}||w|zq}xyx{|~o|y|zw|n{vv~wy{}|v~~{z|znyrz{~t~vm|{z~w}}{wxvuyl{y||}x||}so}}{}t{~{~zz|w|{y~}r|x|yz{|}}|aw}o~yrv|x~o}{oyo}~}{vtyzt}}k}~yp}}|z{xwzy~y|zv|}yiz}zsz}|~x~~~}|yv{}yv|z{|x|s|x{|kik}z}zwzo|z}zx}x|w{{y|~y|y}{~{vxtr|t~w|zt{|}zx{y|y}~yw}vx~}|wvtz~~wpzzuw}q}x|xwxxu|~zy~yx{yyx|pq|w{}xvnyuzszs}~y~w}}s{pzzu{q}z{x}s|{|}~wxyo}w~s{ku}xztty}}~~ztvy}|{~ut~p|ux|z|x~z||{~{yznzrzq{~~x|sy}xzuy}{yy|~xr}xz~|~xw}v|~r{y~}xz|v|~xwvtz|w}}z}z}kx{z{z{zwz|{{~sz}}}{|~nxx}yzws{|w|}yrwyn|~|w}}s|{z{~x|~w}|}m}~zzymzxwzyul{{}sx}|w}|jxrx~sux{|q{}tz|hvqo~{q}vq~{twy~}w|x~vx}zy{zzz|z~yxz}|yx{xx}|||{~|u{y{yu|}z}{~}zz|{mzzzx|{}u{y~z{{~y~y{zp~{xyz~~}}zuv|wyvoz~w~v~~t}{~xys|{z~}x~{|~}{}}|wz}vyn}{zzwxxuvsn~~z}vy|tzvyu}||y|uy}wx~|tz{xv|wyqxv~}uw{~{u{qw|wju{q||yzfryryzy}w{v~|~|z||ruyw|q}|z~{q}xty|t~tz}}y|x|}~~}~}st{y~}}{v{x{uzwy{y}|y|my|zzrrm~xxz||t~yjl||~{~}}pstx{wuwwzzs}w}yh{uvz{u{|pwz}y{z}zw~z{y{y|mfm~tqzt}yzzx}}}yw|}{w{{|{yy|zz|~xuv}uy}|~{{~|}v{||xy}~}zyu{~x}v}|||iyj}v~}uqz~zzwt}~wxzz{|zuyz}}}yxkx{wz{wx{~w|}y{}}zw|o~vy||~j}~z|zzv{}}}}x{~u{n~z{xs|xu{p{z{z}{x|}~z}|}|txcvs{}x|~x}~x}}}x~yu}n}v}{~tywy{s|}zxw||y~||}y~|x}{v|wxzt{xztx{wut{~zw~|tr|y~{{}v|g{yz|y}vy}wvy{v~}~{ru~r}s{vxxu~xyo~}|zrytuy}~y~~}|vmxzvvt~xwr|vvsvyq{xusw|{zq|r~{}a~z{|ys|sy|{vt|zvzurz}{|}yxtxz}rq}w}swq~}p{s||r}~ryvww}lx{}}zyyx{{zvqxz~{qu~{|xy{s|v}x~zw`vn||uvyzx{xgxw~wpqw~z||v|xxrp}~}q{{{y|vq~zyw{~}}{w{||o}yv|qyz{{~|~vzz~wy~r{z~xy~|mqow}x}bo{}trv~vt}u~zvw~}txyxw|{}xaz}l~|}}}w}{{z|{xzm|v}s|{{v{vzy~y}{zkl~~`q]yu{x}vuu~v~q{}}xkyx}}}uaxsrwzzo}zgtw{~zsttww|{ywwz|nyW{|wu~{}{wzu}z}}vy}~}{~~{w~x|y}uz~xyr|~trsows||~s~{wx~ztxy||y~z~rtyz}w}y||}yyp~{wsvx{}z{}uqz{~}wt|}yw}v~sw}{yq}zv{xyqu}{~mx|vr~y}u~xv|uw{}|v}wszi~{{||}s~o{|}q{{tzxzqwtsy{t~|l~yzpyywxqmpxw{}u{yy|vw~v{|zv{wz{z}z{xwux{z{~n}|~{yw|{{}u}y{xv|z}w~~~p{|z|~{y{ysvzsztiyz|~|yx}x}|mw|x{|y}{ywuxvwz{y~rx}zxywv}}rvw|{u}y~{tzzv||k~ttomxy}~rz{zz|{{urx|z}z{tv|y|xyu{x|szwy}}v}{~kzyzyztm|yi~z~{}~xv}{}~y}y~~zyzy}r{w|v|~p}tw~~{v{vtxyzz{z{{wow}~xju{{|ztrmvzp}}z~z|}{~vtxx|~z}}n}{zu|~~u{{q~zzkz{}{xux|krvz}|}{~w~}v~~w~~yw|x|~||~xy|xv{{wzjxs{~zt{{~{~~k}}}|tyzwxs|yz~yzrtx||yysu~z~vyty|yvruww~zzx}|}z{yo|z{zxxv}tz~nt}||~}}|wv||}{w~|vo{~xutj||||tx}}x|vy~}x~y|}}|w{z~p~yvz{wtx~~v{tvx~yx}g|}~q~}}y~}pu}x~{}vx~~|{|~}zwx{|~ts}ry}vjzt{wu}o||~p}br|ps{yz{u{y~{v|u~pw}{z|wy{up{~~{|y~|x}w{~|~x|tu|zu{}y~uvzzz}zy}~~}{yxxy{pw~vzz}t}|z~w|v|z}|{z~r|{x}~w~wqpxy|zzy{~tx}~xwz~~z|tmq{w}|}~x~~y}u{~w}~~}{||xy{}~||u~x||w|wy}||}{zixt~}xzz~xww~}{{vuyxvsy}{v~vqxv{yy~~|tw{~xz||}~n||xxw|t~~x}wy{}z|xytr{}~two{qt}|xtu{yu{|~|w|~zv|t|z~yy}zn{|s}}uu|pxvwz{}xl|~xy}uvu~wx{zy}my{|zwyxvw}{z{|yx}{}z|v}vwxxh}rw|zy~}}uxwx~|{z}}{~vfwypt{{qxzv~ry~zq||y~yuy}w}}}z~|tl|}z}z|{xt{y|}zy{z}|qq~~}uzo~{ik}yq|{z|t}x|~~z~{mm|rvp~zyww~y|w{}{v~wvto}~su|{uyozx|uyy|~o}{wz|{v~{o|yy}|wz}y}xxx}~s|tz|{|uuyuyxy}v}|~yx~uv]~e||y}r~xyw}uvuw{x{{~w|~|y~x|zt||z}zxyvzrvv{|yz~||zuw}qqxvx|z}nzx}x~}~zz|~|yxvy{y{yzzyz|}~|}ov~wyv~xt}~mzv}xvu{}~~||xyyt}|w~~ty|~z|{|}~{}{~}{vysz|~|yoz{{}zz}}yy}~z{p~vz|x||yl}{sy}~ww}~~~n|yzkvtu|}{u|nt{zz{z}||t}xv~t~w|y{|t{y|{v{{~|y~|{|y~~}{t}|vtwzy{t{pyvv}~x|t}|y~z|~vzx|zzr{xy~~~w|{~z}s~p}ww}|up~v}|v|{~{{zy}r|zzju~wvv{wx|~n{{y}{y|z~sy{|trus~{vuws{vW|{|y{|}~~yvyz{xwzy|z}yl|o|pu|}|zs|zt~}xzy}y}vyw{t{yh}qv|xyzx{wruvw}~v{}{x}~y||}|{u~x{uu~vy|}wv~|{y{uzy~zyvvz{w}suw|xv{zyuy}{z~x}rzo}}x}}|~z{{|x}y|xyo~zz~{}suytv~|{}t}|z}{pirzs|vx{x{z}|xwz~~w}{ts}x|}||}xy}{|{yssv|w|}}|{}|r}vvrtm}{y}~x|z{zrz|ww~{w}|zrl{v}|y~xoz~u||q{w|quxzzzw}y{x}zzlt}z~{|o{unn}|w}{}w~}x|}vz{{}~Ysx}k|e}}x~}~v~~qx{~j}|~owt}y~|yxz|y{||}{}~qw~}zy~{{}vzyu~x|}}{p}x|}yz}y||p{}x~}}~p}}l~yl}`~}|z{|q~}}q~n~Ux{nxq{zz}x{z||y~{~{ty}tzym{ty{y{|}s|~}t~{x{|~xzqvsrvs}u}~w~}{pz~yx{{}|}~y}|zky}~|tv}}~ox|t{u|}{}{z}|x|uyz~z}~w{v{}y|t}u|~yy|uz|{ze~y{{h~|}{~z}|mm|x}{l}x|z[~}||}~|wt~u~x{}wu{|}vzxvpz{ty|}~~zy{}wxown|{yrosxzwyz}{z~ul{wy}vyvz{|{ywz}|}~uyr}svu{zzzu~yyz~|}~}ywzvwvwvrv}{ux~zzuy{mnz|{}~}wv`v}xq~iz}tx}~ty~zowt~w~z~ytwu}|}|{u~yy{}}{zxozm|{w~{zwx}~zzywy{}xowxyyrxvvvq{ywmr||t|s|uzz}uvyv|{m{}xzn}vru{{tzx|u}|ny~jouzt}vo~yw}zzypz}h{|}zqv}{vrn}~uxvxuz{}z~yptw}z~v~xs}t~frsz~}o}i|tsqxzvvvx~z|}zww{zm{zwz{{oyy|~pt~zuw}{yy|xy}vi|yy{jwzz|~ztyst~l}}ownt|tz~wy|t~wvswlpr|xwxpvqyjmss}r|~~z~u~|wtzucs{u||lsu{q}tuz|}t}pt|x{}yytr~{}w}{|vo{y{zxrty~z~ujxq{}|}oyrwyu~|zo}w{t|zqszww}||ux}~y}}t|ws{sr{yrz`s}~t{vy~_y|v~zxu{x|}q}Zvupm|qsux~~r{x~|{~yyul}u{|ytxu|squvwxrwxwpyz}u}wmy~sv~pl{u}r}yp~s~xzxjy}wnq|}x|q~sy~vvsw}~~wnx}xy}uz}vz}u{~w|}}~~zw|wx~{|y|zxyv}xu{~zy|v|w~z||{{xx~|{txi~~}}yz~|t{~~ru{~z}z~tx}y~||uzv}~vc|wyzdy{~y}fvkz}}zz}x|x}z~}ux~}}z}y|z~~xyy{~w|{||}wwdtxwz}|~wwvv|xr}qszuzz~~sqy~}v~~yk{~~~~lpnu{v}~xys|zzs~t|tvtxt}{|||yyt~|~rxwypq{~w|tgy}{y~}{}{r{s~xzww|xw|}|}q|}zu}{nt~x}}~~|y~wq~~xwjyx{yz~rvuz|}}|uv}~}vu|{qyp|~}w~u{|w|{{~}wvw{}vsu{zx{~zt~}yuzpzhvxx{z|~z{v{u{x}~}|~x||{~}{y|y|sw{~xwuuyw{~so{{xy~}q}|~u}}x~~u{yx}x{}siv{{|}z~||{z|}w{}}{yw|z~}zv|u~x~y|}nz{ww{~z}z}svxuv{{tyurzr|vx}}}~|y~x|zw{x||~|{|zx|yw}|x~yy{y{|v}|||xzzz~|yz|u}xy|x~u~y}r|}q|}x{|ut|yv~x|}~p{}y}w}nzxt~|uvxyw}~y}}}~{yw}{ozxwzy~ry{{|w}|}tx}z{wzzys}ty|v{|quov{x~}}z|~wz|yq}rzu|uz}xwvqxsy|{v}trw{lgywtxu|~|yx}|~y|tw|{v{}x{ysp{}|y}zz||zwr|~}v{v{xvw}}w}}yu|wyjwo~yy|xw{iy~z{}}}}~r~z{}wo~k|}~yu{xzzt}}i{||~}zxzz{~|rxxzxxyy{t}uz{~~}x~{}|w{{s~|}}z{|{x|{xz~wx~{}yfz{z}z{yvx~zy}s~||{{~{v}zzz{tzu|t~~~~y|Y]z}s|zx}|x~qx}tx~z}|zz||~xwyuxq|}{xt}|~q|u~w||s|w|s}}|}zz|x}}~w~x~v~~wq{pn{|uv~}w|yy~{z{|~y}~r~}xxh|{x}vwuxs}{tsvwz|u|}zuy|}}z~}~xsyz}w{z{}zw~{vx|ww{}~}y~|oqvx}}~xuy{rz{y}x|wz}u{vp|{q}{y||s{x|~|~yzv{z|xy}}~zulxuswwz}x~}xz~y}w||}xyjpy~bw}v|{qz}|z{w|~}{t|~|{{zu~|}{|z||y}{qxxzpy{t}zy|}~|x}wp~o{x|||y|zx{}}c{p|~~wx{}}uy||zy~}zp}yx}w{xsw}~}y|~|}{{}[~i|{q|~yx|~{{}|~z~s~y|v{d}w{{}}|zsxxy|vzz}|{~}z}yqu}u|r{zxzw|wxu~yw|v{z|{~y{m~~y~~~}{yzwpus{{x{}z}yywv{{x^zrv~{yy}u{{ytt~tu}|yr~|zvw{y}}|{y}|{z|u~x|~{}z}zwzp~{}ko~{|{|~|{v}|{z|~|w}|x~v|}zx{{u||y~x}zw|}}|~{~{y}wy~}s|z}x||x~z|y~|}}zx|{|}}z|~~sv|r}u~}{s~m{~wr|yxt}}~}zzy|y}u{~]v~}x|vz|v~}{y{}~v|zxyz{w~~|s|xs|}y}~{||}{tu{x||{}x{sz~w{v~}}|}{|}|{tvz{{|uzk}{ubxv|yq{z{qyx{z}zy{|ywzwu|{~xz|vz~||zx~x}~}{z|}y}|yw~{xxx~}|zv~}x~{pxzg~}{||y}}y~z}||yy}wy|ww{l{}w}{~{u~~qz}{y~{vr~}{||y}wpyqty~|y{~~||q~z|{v|}}{x}wuz}}~xt{s|qwz}y}|{~n|~{sp~~vzzww|zt}y|~zsx}~~yvs{}u|x|}o}|~}~|~vv{y{xx~zz|w~|y|{|~~~~m{|||q{~y}xytttz~xm{}{|y{|}w|rv}{s|~y~s}}|~|ixz{zzxs}{z|z|zz}u~xosz||zrx|}vpx{|~}~{|zwz{}{sqwz}|z{~r{ryyp~{{~s{~{|}|{sx|r~{~xzw}yurz~{}y|zx|xzu}uy~zyz|}xxz~{~}{zv|krz{z|{}z|}|z}w~}y{{y~{t~|t~zy|r{z~q~}||yz}z{u~v|z~z~~zyv~{|dx}z}zy~r~yvzzzt}zsw}}{~z}|}qu|{}s~tt~j{t}|yt~wp{yz|z}xw|{~~ryw|}|tytuus~}}}zol}{|}}{yyv|}|~x{|}~{vo{~wv|}}~~~|~p{{oy|x~sw||usn|}}vw}}~{kx}yqy}w}{~y{}|~~y|stut~o}}{m|qqy}}s{|~}}}~zwntpz~yx}}{{xpy~nv}~}}~|t|}v|{~z~~}|v|~{t~}~||~{rt{zuzs}~|}|~vxuwzr|u}lxx}x}t|v|xv|r|~}z}yxwwv~z{{}~z{u~z~~su}xsw{}w|}wuvr~wyy{txiunys~~{q}vpyykt~t{}x|{zz}yr~z}wt|v~qx|{q{}x~|u}w}s~s|}y|upwlq|z~~wul|qzzvi}zz~}x{r~yxotjxxyy}q||swvwy}qdqppr||{{}[}p{}uszyy|x~sxw}{zr{xoorwrp~~~w}xqjwwj}}ystj{ow}m{xww|t}m{|}sp}z|zsryvy}xuo~}uwir~y|~gr~}tww~z{m~q~~tz|g}wxzu}{|km}}}wv~yyzy{z~y|~{|yo|w}v{sw~|cw~u}wxr~uo{y}sips}nzw|yv`yxn~z}~y~~x8trw|tuzuuvt|rur|vw{|}rwryvu]|zp}}zywzyuvsqy{|unt{vz||~xyux}tz{|yzz~s~|{rvwy{}s}xoz{|yx~}wwyx|~~rsvz}~}~}|s|vw~~zx}w~}|ywvz}i}}tts~svx~zyt|ty~}|{{~}oy~}mw}|~{uw}y~}|zy~xruz{u~w}|zw~v{~|~zuxyz~{s~}xuu|zz{xxzz|}}z~{|pv}{syvi}{{uvyry|yo}|yu}xzw|y}uyvxz|x~y}yr}|||{x|z|}v~x}|{}{sy~z|}{v}~{yzn}~}~}|zq{Q|wz{}ry}ovx|}u~~|{}~jww~wbzy|zztx~vvzx}y~{}xurzyzy{wm|{{z~ywuv{}zxz{z|vvxz~|}y~|~{k{sz{}uy~z|qyvxv~wwys~uowzw}x|{vvy}y~p}smze||~yrr~{yz}vx~{z{rv{ztv~s{z|ty~w~zx}}s|z|rzwyy|~}z}w~x}~s{~wzvx}~{y{vwymwy{|r|xv}}|}zs{{{sy~|yr|}v}}wvpyuvnu}|wyx}}zuu~w|styz|t{}v{vy|z{y|vty||}v}t}t{zwxrvy}zzpy}spyyyvvu}o|~uv||~t~uyzy}|w{t{w}|zy|xl|zwuy|{z}}p}}~vz|y}vw|zwyz}v|yr}u~y||qtxxrz|~vysw{s|r}}|vultvzlw|yv}~{s|||z~zy}~rvvzxw}|}~zv|xx~w~|{~wyx|}u|u}z{~z}{{wu}syxs}z}~x}vwy~}t|xsw~}~{~{}zzz~z}}yvzzp}|}y|~uz{~|{~w|uyw~vr}|xryuzxp||w{|v}~|r|u{{wu||t}y~x|zv}y|xwzzzxz~~|z|y{}|}}|w|||}trz|||~~v{|{|{v{|}{}r||zz~}~}{||zt~~|~|zuwz|tt~|{qvqxyv{qxz}~vyxu~~w}uz}r~unuz|u}|yt||ys~~}v|swyzyv}xz}{|ys|~{w}{}yu|}x}yzgwz~||yz{}z|tz{s}zttx}zszvtzx|~z}y|zz}|x{vy~l{{z}~t|qv||~|}|{pw}|||x}x{x{u}x|zzzzmu{u~}~~~vv~yr~~zx~zzz~}|}|z}{~u{|oz~}z|}}{}t~u{x}~x{{wzxwzwz{~~xzzu|}~y{{w{{x{vv{|uy|vy}}wzz|yw~oyz|}w}{y~|v{y~~|{vvv{zw}x}s|vz}z}xxzvoy}z~~s}|~zzx~xv~yz}u~xu|ztv}jvryy}|xz|~{}y|}}{uv|{v~z}y{}}|}xxw~xx{{{ss{|r|~yy}wx{x}{vzty{{z~zvt{}||}wyyy|zw{|m||xroxyyty~q}yz}{xew|~~}yzyu|yyyv~yr}w~~wz{|~xx{t|y{~~w}u|z~}u~q}zy}x|}|~yxru}ytxzy}pxx}}{~||z|t{}}~}{zy{{~nz|t}w~~z{~v}{~}|t}wyvsyz||jv|||sxywrw~{n}~vy~}|z{uwwst{|{oy}ywrz~}{}x}{sn~uzz|{u|xlz{z}zy|hy{||||{{tn}vwp}x|r}|{}ws~yi}|txzyzyzuxuw~lx~}x|~}xyzssuz}~}|z~tos|rx{y|qvzt{|wyzu}{~}zyyxxy{n{nw~u{{}}x~z||yuyys}{tyvyv{zy|{v|y~zo|wst~}~ywxw}zzxzn|~{szyxxwx~x|usu}t{|zvhp|y}wtym~|yqt}w}ww{x}y|wxp}~yx}zzz~t|z}tzx{z{r~{z{v|~ww{~vz~}tr}|{||zz~zu}{y~{}|~kwts~tz}m{~}wzz|zu}xq|z}{wx}}osxvyy{xyyr}~{xy~yxyw{z|yzxryv}~h{r|y{{szy}y~|~ytyzvotz|}xlzzrzw}wy}m|s}p{z}w~{}v}}xyzqxz~q{|}{v|w{}~{}x{y}xvt~t}v~}{z|u~zy|x~{}}w|{w{z}w~|v{~}v{zxz~{~t~~us~y}}}~}}~{}fz|~wu}|v{~v~rtn|x~{}~{|z||x~y|||z{~||qz{|{}zxx{z}}w|}zts{~zzs{|~|{hwypx}t}~ve|~z}{yww|}xvx~~~||zz}zvw|~s}}}}u{xyy~|jrwy|||r}|~}|fz~{z}|yx|{|u|{|ztz|x|zvszx|zxizw}~wz~}zz|w}y~~{|}kx}{~~|q{|~z|yz|}}z{x|~yxx}x}wz~|w}{y}}v{w|yjv|v}x{j}y|yw|s{z|{vzx{o||zu|zywyv~~|y~|z|zt~~u||{~}vw}{}z}~x~vty|sxuwz}{v{~rsly}||{v|x~zxwz|{z{y}{}|t{vywlw}||~xy~{}{|~}rt{|tz|}z||x{y}||zz~qxktt}v~||}~xuwz}s||w|v{x~x}{vz|xz}~z{}wwyv|}xz}z{y}}|r|pystq{w|w{s~uyx}|||{u}}y}tuz|~{}{z|}~|rvv~}r||wqzzp|y|pt~n|{{{ywk|z{}|xywpru|ywvxzw~}{vy~~}z~{{}rzr~~{zy|yy{wqy~~xyz}|zy~u|~y~||}u}uu}{vzxv{{ytxsq{x}}}z{{wzwzz{zu~{y|{z}{~zv{z}xqtw}}}z~y}x}dzz}}u|n{}yt}}}}||t~uzszov|{}mw{}{}~y}y{~}v||{y}}|xztu|v|{wy|{|}|zx~uztqzu~}~}x}{|{|}z|z}|}y~~~t~zpr{x|}ix|}~azxu|u}}|~}v~}|}xyz}|~v{~vw~{}}~{w}yy{wx}~}}}v{||~~~}}v{~m}~y{~|}}~|~{~zyy||}o}{|w|x}|z}xw~}}~}}~|zzzxsv{}t}~|w{~y|}|z|tws||}{n}x|u~m~}}yz{}|w~}~yzrx{|}~||}{x}r}p}~xoxz}vvi}x}}|{tz|v~~|||xz|z{~u~|z{~z}uy~}ywvzzr~y}y}~h|z}}u{}~~u}d~x}oy{}|z~y{~y{~sqy~v{}{sx{~zzxy~y|~zzxrx}ws{v~|}yr~q|z~~t{}{}xwwq~~ytos}trv}~|{~{v~|{xvxy|qyw||}t}vz~~z}v~{x{v|{z|}}}vu}v~~zp}}|}~z{~}yvy{v|z~}|ztw}zvxu~z~{}t{r|{{y|{|{|q~yy~||wvwryy{zz}y{x~xx|{{k|z}}~}z}}{ri}||{vt{ryyu{uuzw{{}vy|yq}uwz|zvq~v|}|zwx{o}{~wxz|~ywz{}r{}zzvoE{y~u{v}vs}z{yz}~}}|}x|u{w||~{{{wzz{{z|yxy~{}|zyzmv~}z}y{oivw~x}wt~{}xrq~v||yy{|swvv|}~|}}}z}usy~|y|~w||s}ns~{y{}~}v}~~wv}z}}zx~z{u|xy}yx|~u}}u}~rvywz}t|{w|u|y}x{zx{u}~z|yx{x~{z{yz~}yu{x~~|o|uz~vy||}~x{~z|}v~|tt{|vwxzm{|z}nzz{t}~w}hznz{yvttzvoo~v~y{y~uxv~~}|}}{|x~s~uv}}}{{{v}|x{zlz|s~yx}z{wv|s~`{|~|z|zywl~}}~lo{w~|xz}~}y}~}}zer~~}|{q}otjn|zy~|{ykn}}xw|~y}~w}zxx{|}|~}y{}||v{|zx|x}sw|u{x}|{ut}w}~txuv{zs~y|yyz}x||~y|z~|v|o|{}Y~y}{}v|y{x|}z|~~{{~z}{x~x|yy|s~wx~m|t|}{}ztu{y}wy}|~}~~{{x{~zlmw|wxu~||u|~|m|}yzw~~|{x}|z||yw~tu{tzu{~}v{}{||z~z~~y|xw{x~}{{|~z|}y~||lzw~u|z{yy{{|xx|z~}~|{uw}y}||}{}{~}~t~vxx~zw}r~w{}}}}{|q}vww}~v{}y~|x|{|z||zw}s}zt|}yy~zz{}y}{|}kys~w~|y|}|vzyyupozww{x|}z~~~{zz|l{y}}qy{yxruz{uw~z}y~}~{{zrvs|{z}{|~|{}t|z||u}~~}vx~n~o{||twyx|~zu}}x|{tyv~v|w~y~|}|ux}t{~|}}v|ytw{{wq{~wvto{~|{sxzy{y|wy}}t}yk{tz}zujg}z}u~su~}{~wq|p|}{~}wvyr~swsxlx{xxxw|}z{wq|{|v|q|}yz~un{t}yvnz|zyzyzx{z~~~|{~x{t~y~}q~|~xqw||yr~zw|z{q||~||V}yzv|svzxtr|z}}sz{~~{}q{uvjyy}~w|ywzxx|xry{{ytvxuvy}{}~{w}uzt|zxy|y~p}{zuv||y}~ywys|~~xorz}{zux{x~}}vtxu|x{wzt}{w{|~wu|||~zqs}vu{}ud|}~z}{wvz~zsx{zz}~}snzxur{zwypus~{{~on|pzpvv~vwysr}ryw{sxsp{yvwvs}~}uz|{v}}y~}sk}v~{y}}|ooyu{}}|~~y}|{~~|u|}yq{z|~px}~z{|w}}vy|t}v|yz{|}{|{y}{{{}}}~xyw~v{qyw|zy~}s}}wyu}~x~zw}|}}z|}}wyyw}wv|}z}|yy|{z}}}~uk}|{~z}~y|y~}|uz}}xz~||~r}|w|y~r~xwu~{y}{yw~w|v}n~u|y{y|o{~}wzpqp}zz}|xy||zf}r}z|{z{}p}}w|}qn{}y~~yxrf~|~|~v~{z}~z~x~z{~tw~|wu{zzn|}|t}t}y}}~|}}w|yz{}}y{}~vs{|||tz}~z~|zuzwy{wwu{}{w}}}xx{}||~|{z}xyvwfxw{|n|y|wvv~}|}wv~|zx~}xt~~{k{yyw||{}z~y{yx{y}~v}|sx}t}~w}}v|ֆ|}zzt|z|yty~yyx~}}v{}~~{t|t~yzz{z~{~xz~zo{z}vvr{~v{~~|{{{zvx~u{{}~|~}z}wx|}z}~z|uz8}{zut~yvzzx~||yzwuwz{~z||w|q}}|~xt{}~|z}}}~{wx{~~wxyzzzz~w}z~zv{}xw|vsvwyvzw|~~~u~~}u||zxzyvy}~}~|xv|vr~z{~z~yz{{}mx{y~zxz}~sqpzs{qyz~~z{|xw}{~uv|}v|}tw}t{x~xz}vw}yxxuyyw{~}~}y{zz}wtq|vz~~||z}~wy|}y|{}{w|s|pxtz}zs{ts}{{{{yw|{zy}uvw~zx|xz~}z~w}~s|suk~yn|suYh~ww~}z~q~gwy|vvt{yrtbo~yvwmv}|w}yr|~x|xv~{}zt~rt}|ww}rz{w|~{|{}||~}}}~y{pxy~zp~|{ww{~o}wyx|zp{}z{u~o~{~yyvx~{vx{{x}}tszyys~{xy|ty}zuv~j|z~}y}r{u~{~{r}z}s{}t|a|z~xpz{}||u}{u||}zy|vzynwx~v}yp~zx}|o~xqxz{{|z||y~zuzzrt}{vxx}|~}um}zuxw}yzs|}suxxy{zvsd{toywynxywuqyv{~nx|w}t~{wtyzz}zuvwy~~}wu~|||yi~uoz}}{wy|}uu~x}t~~|w{|ts}}~w~z{z{~pu|yxvzyxzZ{|zyzt}{xx~s~|ts{{xq~uxw{{~r|~wxvxv}zxn~{x~uvv|v|qpt{}o{~y}qyw~zyys{rz}vtozuzywzss{{x}{s{}|z|{xvop|z|{zrz~w|xz}~|oux}wjxowszq}}~xtnyy|s~}rxx{r~w{uuwu|vw}|vtzqz|zy|uzzx{{~}v}x}yy{l}xxvuzo{{xx{z|~u~yiutyxrqvu||zw{{xxz|xz|yzm{~pzy~wxzqxwv}~}|mux}z~wy}}{|xs}z}~x{}~fkw~zzwt}vso{}||ow}x|sz{mqytw~tyy}~}y~|vyz}|}wQ||}~sq~y{~}~{x}{tz|}j|x|r~}u}zyyrr}v{w~{ww}{z|y~wxvu}y~|ou}x}vzzyut}|~yvwyz|wuy}~~zzzyrw}zy}Ss~|~f{u{v~zt|~my}ut}u{uzt{u|}{Yy~}{x~~{{hnn~ytt}}xyvs}hyx}~zxm{uz|{x~z|t{iw|ypv}zz||yy}zpzq~|v~|w}|~y|yyy||t~yy}}z~xttttzur~{|z}xzhxyqv}{|v{~|y}|~x{vyus~{}~yzz}z}l~y}zeu}}~}u{~zz~vz}|i~wz~{{}xw~o{~v`x{~|zx}v{n}rxy{~~~nw|y~wx|m~z}nzi}~uw}{q}y{y}|w}y}z~~x~~~|v}y}{{~}|~}i}~q|zvywy{lw}~|w|{|h~|{pum{y{z|~|}}~~{|}{}}{{~k{|z~|y{z}uz|{~~}zw|x~}wwy{uu|zz{ts}|v{}y}_xd}xx}}{q}mzw}w||wzyyq|}{y~{v{~p|||~yr|z~uxxu~{{}~z|xxy~|{p~tq~xq~w}zq|kuynvy~z{||}x}~uzq{}uu~yqpuy|v}~z{xtw}|~xxww{sx}f~~|{|r{}|z~}~~{w||}u|m||}}z|{xy}|~z~s|x}|utywxrwv|{{z}|||~nv{yw}zx|v}}|p|zvy|zu}}yz~o~|www||{|y||{y|}w|wwtn~|to~swy}}y}`r}y}v{i~{~m{s~|~w}|~~}~|yux}{{|}||}`}vx|t{s|}z}{}{w{x}{s|{z|}{x}}t}w{|y{uzz{x~z}z~w~zrzy}zy}}t{vwxx~w|k~~}zvrjvzjs{}|rxy{vwy~~y|w}}}x{|vxq|zx~xzt}}wqj~uptpz{z|pz}z{{}~i|||}}s}|ytx|om{qww{p{}j{|}~|u}wut|m}~~~y~yjo|~|ww}~y|w{m}mu|~~z~|yvyr\t~|x|{xyy|uzz|~~}wz{y}zv|u~{~|~y~}}|~}|vwsww}y||z~{z{v~~w{yr|}}z||}~v~vwjz|{x{~vywz|}{{w|u~n}~~y~qx{{tpv{{t{py|~||~{|r}zx}}u}xay|}|~{|z{}y~y||~~~v~~}w|mzxp|{z}}{}}{wzz|tysz{yu|w}r~{~~z}qxu|xt|q~||s|||{w|~}|z}}wyyu||}{z|w}o}}n}r~}xr}yt{zt}z~srqz}}zv{q~vu{}|}~zxwzxy~~}}s|~zyp~wp}w|{~yk{xt{x{{|y|x}v{tzisxu{{vz||}x}}{n{~ux~{}{{wz{xxxv}x|uw||}x|xyt{zr}wyvz}yu{zy~}rzyzt{t}~xz{}yux]wt~w{}zw}w{|}}u{~w{}}w}oqx{z{xy|tzywt~~||{{w~ty|z{s~ytwr~rzuv~}}|~|sp}{ytxuy{u||zc~v||vtxzs~{}~~y|x~ws}|yxx{|usz{}|yyy~wxwz{~{zpx|yv~{}{n{x}||wwuux||tv}~}~lyr|t}z{{nru}|}~s{wz|~y~{r}w|w{w|zyyns|{p}zzx|stzox}w{{{}}~ytyz~{x{ry}||jyx|qvu|x~tu{|y||}{zx}|xw{qyyzxwxt{y}~|{xy~{{uzo~{{t}u~}~z}~|~|zzvvxv}y{~u{|u~{r{|}vzs{s{}~z{|wx}}z{x||wvuzwzzz}t}y~v||}}z{}xz|~}}{q{v~~g~{ysy~}vz{}wz{}~|z~{tyztz}|xyxsr}y}~}~|~}}{ro{x}}zy|}zx|~xmx{{uswz{q||y~}|}y}|z|{{|}yy|}vxtz{wwy}t{yuvt~|{~~x{zwp|q{un~|z}}w}l{n|~~usw}}~zzwzwv}x}ov}{{~zzxo~yx||yzv~|zxwz||{zyz~}~}{qt|}y{~xz}zz||~|y}}yv~~xw|x~~ny{}hw}~x~x|zzw}}}hx}|sw}n~~|}w~{~x~~~z}}y|xx~}|}}}r}{xk|uzzz~}v~zz~w{o{{~y|{~}ywt|ny}}sv|}mz|uxo{t||rw{z{y~~s{{z~|w~puzz}y~}zy{vm}q~|{z|~{ju{{~|t~~m{{|~{yvt}|zs|}z{~}}}~s|~vwwouywtzwz|d{}{~{zy~|x~ow~zz{}}t|~|z||r||tvz}}x|yyu{||}z|yz}~r~wpwty~{}}z}{x{xwyrxy~|~}{}r|||}{w}z{y{ux}z{{r{}{~}wvuu{{wzz~|}zs{{|x{|z|{rv{xqj|{|wu~zyz|}{y|}~{w~xz~w}{|}|un}{zxxx|{|{wy~{}{}xzo{[~yx{{ykyzp}~yj{~}qr{zkz~jl}~rysyvv|u|trkzzw{wrwys}w{vvz~|v{tzwtvyzp|{uj~{zoyz~u|quz}mU~~pmu~zs~{zv6]wuv}|x}lffz}txz}bq~n|lyqy|}r|xt|y}}xy}sxilt}l{yrsvt}r|x~{}{{~}{~|{yyluqz}o|}{q~|lwzyl~|}kWsysvx|}wxv|[v||x|xz|hvt}qyrtp|utx{t~~{|wzz{tzwwm~zyuyyzyqzrywz{}{z}uyuxsh}~zzo|~zvxz{zsre~wvu|yu{~b~svvlzyq~~v|syuqgv|wsz|}vmxzuxyqw|~xvg}|vu|xm|tyv|{sy}z|ktu||w}vxp}r{z}ynyz}}vw{ny||zw}nz}ozyvww|o}o||zy||y{~w}~~}~}~z|y}{{yxtz|{y}}}|~}~{{w~||zy{~|z~|x|{{|r}up~vz~|sp}}xz~~~||z~~|{}{}{v|u||z|q~~{{yw}{z~||}|}|x}}}yxyzk}~~}~}}~tz~v||v{|{{x}|yx~x|}ez}}z~}{~y~|}wy{zw~|ysy~r~{}~u|v{y|yzz~~||z}x}~r{v|}}q}|z}}nx~zz~}x||u~~}x~x}}z}|sx{|t{zv|xv{{x}~}}{~~yu}z{w}w{zu~zxqw}{|wzu}|{|yx|}~tu{yt|w}{}~rwjo||y|z~r~p|{m}}|~yuu~y}|mzyyyz{ty{z}|v{w}zxvyz}ytqy{{sw{v|wzw{zuz}}{}|}~x{vy}|y~ssr{tywozty}|~n{}}xr~{~|{p|~zz}~xwvyzzps~~~|zy|{{|w|xs{|z~uy||~p~}ys}~~|~xz}q~~{pz}x||yn}zt|ov|}y}{~w~{v{x}y~qzy}zvzrvv~y|}||wzw}~uw~{vvzmw{vw|{xp~|{wox}{}}w{w|yr{z{}}v|}xt{~w}}y|w|un|}sz}|~z}uuz|ytzr|}|~{s{|z|yx|}uw{yqxzyvw|wzyyzu~y|}{}wsxtp{~v}lzxzus~{}z~{wu|{{}t~~}}w~r}}w|}zyn}zq}~{w{}{z{q|vv~y}twxyx{}}yyy|x~{oy||~s|uxqzz{{}t{{xv~{}}}{|x}twzyxv|p|~vz}xy{}yuw}x|~}{p~v|z|v{wwxzv|~u}~~rw}nxw~xz|{t~x|v}zx|{y|z}{x{uwt|v~wq{v~vv}us|{sn}}v|wryouy{w}yup{x~|s{z{~{~|jy|||xvx{uy{|z}zsv~}y|sy~x}r~v}|{{gr|nxsw{{}s}|}w}}~ruv|z|zw|~|~xwu~s{zy{y{zowy}t}yxzy{{w{y{~wty~w~xwzzq|xz}||w|{t|~z~}ppv{tz~|wxtyx|}x~y}u|~s~yzm|n~{}}|~}~}~vy{{l{t||~~}}k|wz~}u~|}|vxyyxpw{x~~z~|~w||tw~~y~||t~u}}|~~yzwx{z|tz}zr{{{yx}~mvy~p{yri}~zvmy}y~~{lz~~z}u|~}vvy|y||yyz{uw{~xqs|||}|~j}yr|xx}|{y~zu}zux{q~zx}}yy~u|~tx~o}~s}xons{{vzzyz{}}{x|w{qyw~v{x|}~ywu|{z|y|s|zyx~~}{}vutz}}~}{{q~w}~}}~~~uut~z{x{|{~~rpqz|z|zx{znqrz~zo|uz{}zs{|su~{}~y|{tyxpxu~x|{u{xx{{qy}~t|x~o|wta~|r~~v~{yrxw}{}|zz}y|yz}}~~}}v{vwy~}{z}{xzr{}ti}vz~{ww~~h{{|}zy}vr{kts||y{w|{|~y}~Tw|x}{|}||srw~~xxvw}otyy}~x|}f~~v}}z|~|y}s~~{w{zy}~u|}xfy~{}|~}x~~vo{{}s||{|zx{~}||{vix{{z~{~||xu|~x}~myu~zry|{zw{}}~|yzt|{y||{}wlxrs}xy|{vo{|}rn{ww{~|r}~|l~{jp||v||~x~{xyz|vz~|zy{m{|}~~~}rs}{yw}x~v{v}||{}~|{{}sv}~|n}yyxy~z{yt~u|}|p{{hzr|~z||~yt}yuzvzx|xu|p~z||x|zs}~~~{}Z}zyt{|}s}|r~r}x}uzy}yu}}w}xs~}zvu~~ot||{y~w~~}rjcw|}z~vvy}vzt}{yt}xzzx|puzxvx}~}w|}zuxbwv}x~r|~||vty~{wbvysz{x}xz}}y}{|zz|{|s}u||{|{z}wzy}w~z}|uxx}{|uxy~~uu~|}z}{z}uw|zyz{s|~j{|}znz\~{|typ~x}~zo~u}bvoot~uyux[|vz}{zi|zzz}qy~}l|zxspu}x}{~|||}cs~y}{r{uk}zs{lt~}~xgevstswz|}||~y~~|~tz~o{v{u||||zy|rs}y~hjryq|{~|{|~yyypyw~t}}zz}{~~vw{xzx|{z|wz~|zxz}|xt|xzzytx|k}szxry}yuvvx~z}w~i}~{|w{{{{|xvmv{t{xqyprvxqsx}ry{r}~zw{vyz|~|s}|yvz|~|zwyz{{w|u}}}xyx{x~y{r{z{k||}ky~{zw|~wr{x{}vqa{tx~yvrz|z~~vyw}j~{~~s||qvt{~yiz~}zx|y|zo}|zx{uyyk}x{{~y}z~yy|}wpuwzowqsu|~~v~s~|y|ypz|}w|vsx}woz|xxplvoz{y{p|}t|v~wx~u}xrzv{z|jzrty}wy{o{w{~p~o{y}z}r{~t{~~xvu}y|{|xq}v|{xsk{z{~}y{rvx~|ynj~~uuwwv|py}}u}u{{ozqy}yr|}~}}ut~|y}}uv|~l|{{xx}zj~s|y~y||wwv{~~v~v{bu~}{}}{|~ty}w~s{swyq}~y~z}ow}yw}vuzl|z}pt~oz~{mwzy}yy|~{uqy{}{}yz~ut}r~{}|wv}}v|{z{pp~txz|uv||zp~~zy|}k|}}vqxuv|zy}zn~o}x}{||x}~yoz{{}|x|}fzu}r{v}r|ywy|}z{w~i}|y}y{x|{}z{olsxy|}v}{}kwn}xvy}~w|izox{|ymrvy}}wxzyt}|}eu~ywwty}p}~~{i}zz}{}x}ox}xz~zuzzt{{u}{{yvr~zv~~|{z}y|}s~}}|~{{rx{}}}}t|{t{~}}uw|y|yh~w}zxxz~~{v}y~{ww}||}zzvrrytwz|}|ynvt~zxwyr~|~t||~rsw~}}z{{vzsp|vlv|}zxy{zy~zr}{~{x}}uz|wx{st{|{z~q{~wz}w|xzzzk{zz~ux{}y}ftzkyoo|zv}{}w|~}~z|zq{r|x{w|z}xzyyy}xzuvkzv{{s~wzrw|}z||o}{~qur|v{xmz|x{|vt~|ww{r|yzmwwqwx}||s{|}sx~|r~v~{x~{oww{z{|u{y{w|~x~z}}uxyv}~{}z|zy|m{}}z{{z{vux{yvuspm}wwyutk|w|wswt~{okwy|wy{tyr{ws|xt~{z||x|ww~u{}zz|yyrltw|xxsry|zuwnypzyzxvzr|vv{y_t}vy~~tyy|swx}u{{|~vs{vxyx{wo{}ywyu}k{{|y{{x~}mzwzww}}x{}uwpty{z}~w|v~{x}}s|zzbuu{w}}~{}nx{kz|~v~u}s|s~zwr{||x|~fy||qz{}}{x|z~y}{z~uy~{}zz{||z~{~qzvu}~rp|{u{z{{uwzyy~~oyv{x{yxt}~}|wy}x}||~{y}}pl~}zzz~wuw}x|x{p~}yzvu{y{x~xy}r|y|tu{o~}y|zh|v}u|yt}||zswv|vl~wvuxyy~uzv{|{}wy|xqvy~}{u~y{y~v{}P|}~vv|r}|}z|w{|z{xv~zxx~yu{u{`{zyz|lzv{}}|~s}~t{}~xmx}n}}{x~}}xu|v|{}]zyv~{|~|x~{~}y}}~xx}~vv{px|}y~}|yz{z{v~ouqsv|}}|vx|{{xzz~{yp~|xxzu||ut~~}}}}ztvu~{{z}|~q~xvw}zs|zwqw}}}}~}z|}ov||{|v{{p}u}yo~yzzyuy||xznuz|}}vy}~u||w~m}}x|}|}z}}{u~|vt|}{zz}{|}~}~{y~sxz}}z}}|~{}|||x~~~~}~yy~vz}z|yzxul~ww||zz}qz}w|w}r|v~~z|~{|y}q}~zzwy~nu|w~z~~z|}|vw}|{{{}o}y~y~|{n{u~{~ox}|}{kv~j|q~x}{wrz~v{qv~w|s{sr|izz||w}z|}{xj~}}uyz~~zuysyzvq{q~||~yxqztx}}y|z|ev~s}r}}|wwwy}z}wyy{p{{}z}~|~}|p|zxkq}wy~{|u{{xy|x}}}|w~}~ww~}yv{|}xfr|y~|||e|zw}zl|qxu|~uzzuuzpnry~{{yz{}s|{y~vw{xspx~}zn{}~|~}}z|~{xynsyx{|~zwrq~p{iyy|||{~m}|}x|||wwt~|yyx{q}|ytl{z|~vw}yoil}w{~}}|z||}v{}uvy}x{t|~~u|iw|s|}r~}}wwy|}|}y{x{y{~o|p~{|~}{xztt~}}nyu|zuww}{w{~w|xu}|x~~u~xx}}x{}{~wswtw|w}x~{w{|{p}y{}}{}|w~ow}v}u{~|~}|u|zo{{xr|~|zwkz{ys~zsu}t}}~}uqu{z{~{xxn|v}}zv|}|y{{}yz{~|{}{t~}xyz|~xz||{}~{uyw~|sv|~vrxy~uw}x|~~vxyzqwp}yxzv|}p~|~|}{}{v{{ywyz{{}~u}~zwx{{yzwryyu{w|~|}{ux}|v}u~||rzwx{{s~r~|s~~u~{}xwyz{|~zx{w|~|}yv}y}x~}|~}~|{{~x}u|{|~}zzyw{y{w}zz{{y~wxz}~|x~{xu~y}o|xx{}vu{{zxqm~~{~s{ul|rz|y||}yz||~xxszs{y}z|{z||ww}xu|y}}|{xrz|||wwz~}v}}t~z{}xzs~}v||~~{z~wqpy|}xo|zum{~u}zx{xx}wy|{y~wxwt}|vuw{~}~|}k|}y{zxxu}rwz~|~}{{~w|y~v|}|xz{zvq}z}z{x{~}xs|xv|vy|~{}y}twy|r||w}yzs{}|u~|~}uy||~|{zuzw~}xw{~v|xy~pvq{z~w|}zzw~u~{~~{|~}w}{v{pwyx{{w~{{z}w{|~ww}wz~}zc~{||}{u}yw~x{|zyqz|t~wyuxx}~|~zuv}z}}~w{sw~p{}}{xw{}y}u~}}j|~~{y~x~}{w|zx}zx{}|xz{r{zzzy}~{{}syzu|t~tv~~|}z{~uy}z{}z}zn{w||z|{lz}~|w~zx|zpv}yt}t}|~r~}{xxz}y~~uwzzw|~{t|zqy~xyuv}{z|{z||wy~r{~}{z~||xy}us|u|{w|srv{~v}}y||}~zz}yy~xzpp}y}y~w}{ry~|vemr}{xzx}yy|r~yu|z{y~}xyy|{|z~}{}z}|x~q~ufzls|u}{z}}ux{cwz}p}{y~|~x|z|x{ry|w~{{~ryz{v}}~~v{zp~{wu{zzzx~{{ys|z|x||||~y~|yzuz||z}wz}~|yzzzzty}}||{~}~|z|yw|z~}}~w{y{z~zy|{onx~wzvwx}||~}~|z~{uz||zxzzz{~z~{~}|~~x~y{}ty~~{|z}z|}umz|zyz~y{|}ryt}~u~}y~}~~{|~s}uyry~}u{y~{|y}|}{|}vqv}w~~~|t|wq~vzzy}||tx~www}{{{|{~y}z|}}w}zxy|~vx}u~~|}v}zy{x}w}{}|}yo{}}~z~sxwxr~t{}}u~v|z}}|~y~~|||y{zs|y|}z~}uv~zs|{s~pp}zx~|}{y}|~zz~x|}}w{||u{zw{z{xzyz}|~~x}~xx}|tv{~z{rwy~||z{}ywr|y|n}yywu~{{}}}{y~nswisyz}}{z|xz}}{||{}}}^|wy|}w|y|}z~||~w~y}t|z{~x~v|xy{zyyx}|~|z}}~|tv|xqy{xzq|m{}}{yvtcw}w}s{}|{}x}w|wut~}|x}wh~zz{|}rv{vu~{wq~u~}{}~v|zy~|}~{{}{xpy}pxz{t{y{{~x{yz|{}xqx}z}v{yt{s}~tz|~v~{|~}y|y{{}t{||wy}vy~v|{}}y}x|{zz~wzw{|~y}|x}v|y}uzywy~{mw~|yy~{}~y||}z~y}~{yz}~x~zz|zx~vvt~y|qz~z~yyyxzy}}tyyx~zz|zzr{~z}{{xuoyw|~}zy|}{yy{xy}{y~q}~xx~zvxxrd~xtwzw}y~|yo}}xz~|x}w~~|{~~sy~~~q}{ry~}|u|z~~zz~}~t{zz}w~~upxo{wwj~xv}||tx}w||~|y}zwu||~y~u~{~}{~~{}~w|~x|{}{~}tv}|z{y}vtz|ywuy}w}|z{wv~zu}x~zx{}~}{}y{v|}~~y}stut|~v|{w~~zyw{{||}t|y{~s|{}~w}xv~x}yru~}x~wyz~}zm}w}zy~|wy}}||}z{zz~}~y~~z~z~~~zzx~|yt~{}|w|}z|zx}s~y}u|}yz{o{{r{|}~{~w}yw}{|p|x~~||}xwd~~u}{}ywyy|wsx{x}zxz{xwyz~~tk|}|{wyxwu{~t}}r||zk|u{{~{w|rypt}s~uy|x|~zwtwu|s~y|{wzuv}|}tyw~|ororx}wzy}xyvx}uyzn~~zz~zz}~{}wmx}x~vy~qqr{}o~|y}rzu~vuvzt~}tv~sz~~yt~uuxo~s~znux|x~}~zl~}sxwzxw|t}tx~{qx{~w|{zu}|lwys||qou~|||}n{j|zuy|zqtqzv}{q{u~qxgxuor}|zzw~x~v~jyy~w}~kx{~zy~~}yzk}yxv}~}uw}uzy}wtpv|_}}tyqxzlz{yxr{rxx}s}~z{{}yz|}{}}t|~|t~|xs~~{vzzlt~|}~xvzvl|vuwxy|}z{r~tzy||{{}i~ke{}~zuzuqv{~}{~|z{|yvz{xy~}{|~zpvx|w}zs~|xz}yw|u{zw}{}{vxz|{|z{{u{t{|y}d`x}}~t~}{x}{{t~~}z~zx}z_i|~~|}lxh~~{vq{{zh{yzv|~t}z|~~y~|}uu}~|g~||x}{o{~v}|y~xy{u~y{|~ot|v~||wr|_w{|uz~{~}~|{|}zztt{ulwl}{{}~~zvcqz}zvz~z{}}zxx{z}|{}p{ezx~y|vxz{z|~~w|v{vz|{wty{}{vywt~~|~~|upx}yx}}|q~{|}y{v}w{vz~z}~}jvuz{|xxvw|~~|}|xqzxrtz~}~|{x|{xsy}}}~zzw}uuy{uz}v{{~xx~}z{x~}u{xut~x~~wp{p|f{}yzsw{||q||~z~~~{tw{}x|y~~~xx}tqo{yt}z{}{w{~}tw||y|wzw{~|{ey{{z}}tz{}yzr}u~x{~zwy}z~z{|z{w|}}xvxzzq~~~w}|y~|}z~y~z}|yzwt|}{|~zr{x{{{{i~w}~yz|w{r|z|w|~}w{}zy}}u~zzuzyz~y~{v~w|}~r|yu|{x{|{}w~yvuz{uw~{zx}vw|~w|v{uvy~xy{v{{tw~~t||rv}}zzv}{{zz{|~z}yz|qy}~}}|w}y~m|{s}xvwmj}|}}{opq{y}yt|l||ylt~{~p{|{zoz{tx|zy}ur|y|w}~zv~xt~z|n}vk|~txvz||}v|}|uvzmzz|v}yp~~~~qr{s}||}psx}z{{|}q|}|t|}|~{p~oz}zzx}~~|~~tpz|xuy|xx~}}v|}vzqsws~~{q{{zv~wrx}xy{h|w{u~y|{{zyzjw{~fpx|w|zw|{evpoy|}}k}u|kf}|x}x}x}||x}}z~u|y}}x{|v{y{{k}r}}|zg|x}{yy|~~tykw~|~~yzyr||ox{z}m{p}|w}dwz~|||tu|~zwttvyt~~{~|yvzzly}|xxy{~p{~z}zw|ys||x||z~~x}}~h~y{xy|zq~z~||{v|t{s|~}~h~xz}~|yy}xty{~~vtz}}}|tw|}}w}x{v|q{{}v~|zy~z{}}xu~|{pyyx|}r}z}t{{{zz{z||u~~t~v|pz}}{}wz}~~wxb{|}}|~y|yx~~y{{yv~yz|{z|}yq~}|z{}x~yw~z}~{z~zw}{w}{~~~{}}|w~zo{x|{z|{}}r{w{wyzz~|xy~~z|}|~~~{}{y||v|~d{{~yq}z}{~}z~v|{{~~q|{}w{~{u}~w{x||x|ot|z}pvwzx|zv|{t~}|{}y}txxo~|w~l{|~zp{~z}zw|c}y|x~vx{|xz|yvy{z|xwt{|xwt}~vx{~{y|xn|z~}~|}}z}|z~yyx{o~w}~ku~k~|z~x~~y|~y~{|~{zx}{yz{}yz{r|x{|{v{r}y{|{yzxww{u}y|}z{yw}|}{{~|{vn~|{svzz}zw{|r}|x|zxy{xyt|wyy|{yzvyzvy{||wyzz~{vzz|~v|{g}}pz|t|~zr~x|x~~xnprzzww}}{u|~w~zy~|v{|suv{}v}xxzyr|xzz||x~x~}u}svz{zz~}}{t~{~}{x~~|xv|ntxp}{pyvywu}y{~zwu{|||w~q{}cykzq|yv}u~}{x~zy|~q|{}~{wzu{~uv~y~{}wmxw{}}y}|uvumz|z|{z{{{w{r}{~xzq{|wy~{w}wt|~u}~zz|u}||z|z|}{|z~}z}n{wz}yw|}~zv{~|}|~}xx{yzz}~wxr~{y{{|}w|x}{qy{}zymy~{sytx{{u~uz~{z}v}{u{r{~{z|{}|}x{~}zyz}~~u}zwwr}}t~|zpl|wu{}rz}{t~|z~vx~y|}}||o}|}w|uy{x|x}zz~|x~zyy||~|||y|{{}}w{ywl|y{{~y{|vv{zo~w}~~d~zv{}{{t~zyt{|}~|v~}}xyp|rv~|z~zy~t}}yy}{yuzyyqu~w}x}|{{m~|}z{uy}~wu~ww{||x~xw{yu}pw{}{}wy|ow||uw~q~{vz|}y{|x~hv}lv}}y|~ou|vw{{|z{{|}}xz}yzgzyvyg{}ywzt|z|yw}~~}|{~}xxdv|~{|zw|{~{||yvtyz}{|s}~~~y~wzv|t}yr{}~t}xz}~u~}uo{}~{z}|~}qkz|{w|{}~x|}~z|~s}}u|z}z}wzwz|v}~~~}}z{y}y|yxv|{}|xyt{|}|}q}~x|}s}v|yzv~{}|vlz{{zy|}z~}~}zy~z~}x}{|~~}uz~vzxyoz}y{|}x|~~|{{{w{~|ly~|z~}v~||}u}{|zy|wxuxz~vq}~}}v}|{|z|yr~q|~}|xz~}vzt}|p|x~v|~zyz~|{{{{t~n}v~|{}|w{}|ulo|xn{z|nvyzw{~xxwt|}|}}xvzrxsy}zz{xuzyxz|{woyt}}~|qqz{|y{xy}~{z}~}ovuz}t}w~|}{y~z|z}{}px~w{|y~o|~}w~}z{z}wv{||}mw{}zy~wvu~z}}y{~pyy}w~}{|{}~|yoys|ov|p~z{}x}vw~~yv||rvz}|txysu|tzyzzy}~t~}|xk}|~z~wrw|z~oz~}{xv|{z}{||s{|}~r~~{|y|}|uyey}}s{s}yz|s}zvx}vt|z}q{{ws~x||zq{s~{z~}z{x}wzyzl{j}}wzz{~}zr~xvq{~|{y~}v|w}}}{}}{~}|z{wy~y{}p~}|{{}twx}{xqyy~|}}|zsz~~}y{}tzywz~pr~{y~}v~~{|r{{zt}|||yz|}|~y|}~u|syy|xrz}|{zz{x||z}yu}~}{yv{zx|{~|{~u~y}}wo~|{zv|{yvx}v}yz~u{xz{|}}}~{||~v~r~y{w{}y}lz~s|~{z|{y}ywyyv~|x{z{{|pz~{}}y{v~}||~zw|yz{y|yv|}|txwywtz}{wywwyz}v||x{u~yw}~o|t}{~xz{vswwx~{{}{}zy~|~sv~y{||z|o}zz~z{~v{}|~|x~{wxx~}vyw~|txz~v||yxt{|xxy]xvw{z~~u|~{uyv|~y{~qyx|~x|u||{t~}|zz}}|w}z~yw|z{}~y}|{|yz|z|||}}}}yxu}wy|~}|y~~}{~zt~sy{n|{z{z|{|}|yx~wzs}~|}}}t|yw{u||~|}{}||x|u{y|~{zwz{~{zyy}xyx{sv~z{~zx}zw~~}z{zv{~z{}{|}~~|}}}yxwt~xz~}|}z{{sz{w|}}}~}|}z}qzwvx}z~x~}~}}{}||y}xz{yxz}||y||yw}zw~}z|q~z|}t~}~~{{{y}{~}{~x|yxy|x~}}~zxuzqzx|}x|y}yxz|}}|xytyy}~vxyt{yw{|zz{wywwyyz}|~|z|}}}ryx~yvyx}yx{vwyvz}v~z{zxz~{x}{|~z{}|zzyt|}{x~lz}}v}~o{~x}z{z}zxyx}{t|ty{y~{~yz}w{{x}~yy{y}z||y}v|~|r~|||~h|}uz{v}|{}v{yxy}u|~|}z~zyyyx||{zx|}}v}|z|}}yx{{{zuy~}|v}ty}y|~z||}~{x}|{}~t~yz}wzy{}}|wxzz|}~wx~}||{s||w}~w{|uy{xy}z|to|}}}|}y~y}y~yw{zy~{{~x|}~t~~}x~s{}}v|}{z}w{y|}|{}{{{~|}~}|{|~qz}}}y}}vs}~{tyy~|z{yvzxutqy||w|z}}x{}qz|{z{~|~|xyzm|r~x~zwzu~vvy{pzs|w|}}}~u~{}|}~}~z|yu{x~z}}ruxxqv{{}~{x{|~{z}{|}{|~t|}{{z}xt}}y}}~}yz}{|xr|{x~z~}xc}urzxxx|s~zw~s`~v{w}}yky~r|ry]~y}yxz}w}islws~~}fj||~kxzvzq~x}~{tq~|wtu{kx|uzt|}~vwxr|v}zu|xij{o}x|xwr~zx|{{~x{[zzyur{{ty{y{}wz||~^|li|v~tw{xy~vWy|umw{ts}}z{}ypy~}n}wp{xlwi~}p~vu~}}vyxx{yyyuw}rq}o{~v~z}tzvvy~w{~s|vj}}yyt{Pvt~{uyvzzzt}{pdj~xzzttur~|iy~~~|}}xrgvse~zvydkcsl|gozs|||}~ws{xz|~l{xzjxxw{y~z{pwu~xz}|so}z|}~|}zyw}|r{}{y|r}wzy}{p~|zz|z{|xq|||x|}l{y|lt~}~{~yz~}tt~|t~vu}}{v|{z{t~~zy{r~w|wo~|y{~xvv|}v||rzz|~~}}w|{|xwsx~y{yz|||ww}tk~{}x~}z~y|~}s}z}}y{~}~x{}{sxvx~}{x~o|v{{s~x|qw{us~xy{}|}{y||{}|~|}|z~{x~}{y~}||wyzlxv{~{||~~|x{{sy}}~}~|uz}|yy}oyvy}xyz{w}}~t|y{|~z{u|zqqx{yz|y|{|~~}vv}w~wwp|r|xzy{~|{z|yy~|w{zwr~~wr|~zx}||}}|}|wk{z}w}z{{pyz}|}t{twy~p~}xr{||~y}~jwq{}t{to{w}~xn|vtz|x|}~{s~{|y|{{vt~t{zx{psnk{y{zww~}x|}}~xx}yw}yz{|vw|{yz{u|yu}v|ww||{u{{{zzw|zzzwxvz}z}|y}{|~xs~y~ymvirww|z{w}d|r{|zz~}}q}x|x~}{~{uvt}~{us{z|z{~wzq}y{zh~{zs}y|t{x{yt{~xtqw{b}_t}wrz|r|}wy|}~~{zz~{u|z{zszy~~vz~~~{v}}}i}{z|y{ex|zyz|u~~|z{}p~zv|wtvo{~u{ux~}~~|}|}~|z{}yqts{|~{|cypx~wxmx||}|zz}zqvyx||{yyvy||zz~{s|x|ygs{}}uyx|xz}|{z~~~vv{|zz{ypu~{{{|y}xsx||{{zz|y~~y~z}z|}~~|~zu|}ytx~wz}u{z}wz}u~zu}~wy~~|yww{||ztx}~wxzzz|}tw|{x{pwqwzyzv~}~}|r}}{}x}~{xz~yy}v|~|~xy{wv|~y}}}}x}{}t~zw}{|ytz|}{{t|qj|zwzs~{z~|z~~{y{}{|{p}{}y~wz{~|s|x}}|z~tuvz}xw}}v|ytyvtx}~~{vzv~|x|x}x{|}z}~~u{}pzz~sy{zy~s|r}{y~nz{z{}zwq{w|}~xy~}z~yxt|zw|yxxz}}w|}~{~yx~}{z~x}z{yz{}~||w~yxzzz}xxy|~zrzlvozw~vzu}{r{zyxz|}tz|{zzx|zzy|~}}vzpyw}{yw{~|{~y{{zrzv{z|~w}vu~{zqp|z||}}~}v}{{}zvz}{v{xs~|}v||xzw}~~wvx~||~|v}|~{vrzz}zyx~wqw~z|w{wz~~y}|z{vx}xw{|z{~x}{l|w}{~~|~~x|yzx}{r{zy|}|zs|vzwy|z~zzztyw{}||x}y{|~vz|yxzvzw{|~w{||z~{xx~x}x}~xyzvy~{{~||~x}~~|}{~{x}x}|wy{}z{q~xz||}s~{z~|yz|~y{z}w|s|xq{~uxz}vzqvt}vyvz|z|~z|||w}z~|{}q|yzyvgpo~|z{}xpwso}tm}qzxt{xy{{}~~zr~uut{~{~xo~z|z~py}ysww~r}}wz|}}u}}z~krwz}wyz}|{}utx~rz}{rs|x~y~qn|p}}xzexw{{{x{zzl}yy|~wuz~x|}wrh}zw~|{}|izx}~~z~z{zzy{}y}{rl{~}uv|||v~v|}yz|x{|xvv|zr}|q|x{z}yzw{y{{z}~p{w||{~zyzx|{zxum~|wqw~z}{|~|y~ywxy{~v{uk||t||}}n|yr{~zqo{}z}z}}y~s}||wsxvtol{}}{{t|rl}x{|w|x|z{wxuzszxwzz{uz~|{}||{{ywo}|y~~yz}~~wzyvx}~}}v{zvz{}zyx~v|yrtx{zs}}uu|z|}}{{z}wz}~|{v|xt}|}v{{z{|vt{{|vy}s~|y~|}z~y~~y}|z{zxz}ymy~x~luz~~{|}xzz~}uzsx}y}t}|~}~}|}y{|y{w|~{||~q|}~t|~~|~}{}|z}{q}~yzx}~x~tyw{}y{vt}}|{{~}}y{swzuw}|~wz|x|~~y{rz~u|zxpu{}ypst}z{|{xwy}||}xvh}vym{|v|{t~{}|zysz~wz~|}}zq~}y{}y|~}ks{\t}r{{v{}z|{ruz}|w}sw}~u~u~q{||zzyz{vzvzsrz~~{~nwzwzzx{yv|uwt~{|pyzux~|{vvzy}s|{y}zz}~y{yw}jwovzqv|}zt~}~|sv{s{~w|y}zuz{z~|x~{{yv{z{~}v~~}|wtu~~z~}}tzq}v{}}yr|}}~}{sl{{}}}qy}}}}}}{x~y{~jv|vu}{x{sy|z~|{vzxxx}|x}~zy{~zy|}}}|{}~x|v|||w~s}~u{{yz~|~|~g|||gx}}}||u{yjvur|xy}l|}o~n}}}z~z|r~~|u~y|{uuuxyzw~{~|}ztv{av~|}|ys}z|||~|}y}}xy{{y~}vl~{c||}}xu{r{~w{{zw{z}yuxsszuvusx}|{wx~yz~|~vwzqtxztw~yu|v|}}xxzyz|~~zzw}nu}w}z|}|zX}uxt{~x||u}pyx{{uw}~~|t~vuzzxy~s{yzyv~}ys{~~}ysz|sz{wz|}|z|~}u}{zztpw{ruu|s}w}|oy}{~w{|wx~{~hy|v|z}}|}|{yy}f~u~~zvz{||t~y{zvy|~qzu}zsvi|}yx{~yy|{{||t|wxzx{usyzuu~|v|~vu{qv{|wxzy{zy{}t{r~}xu}qrvyzxyu|zz~}{uwvk}~z~~}u{}z{{|e|v{uzywuw~w{|{|~pw|{}~{~|}x~x}~|}sy{zv|{yi}wz|o|ny}y}|v}t~{zw{z}xz{~zvmzz||}||}yxeovxp{u{zyv{tpzu|u|~r{|~~{|y|ox|{syz|zzv||zyk|zt}ytyw{y}{|vvz|x{{~~x{{yy}{x|~}y~z||{{v{yu{lu~}}~{}}~iw{p}x~y}~x|{}ezy}{zzzzxw{~|{|}~|zsw~}~~}yw~~~||{~~{v}{z{~~~w}}x|u|uy|y~x~~|{|{w||||w|}}|}|{yyz}{}|zxuz~}|~|}u~~zz}qv~p|y}}{~{~~||}~z~o|y|v|quqy~t{}{vuz|yzw}}|{z||{{~zt|ys~wwx{~z{w|b{{}|~|v~w|z~|v|qy}~~}x}zpzt}{|}||}~~~v||{~u|yv|z~~~sy{x{v~|}|}}u{~xwxz}v{~|z{}{|x~u|t}zy|t}}zzr|s}}w{}zxg~v~}|{y~{||{{yxwwt}}z|{~~lxt~xo}~|y|~|}|}x{vxzv}{{y~{z|}}xqw|yz}}uyvt{lvx{l}~}}}xz~{w|zyy}~wzxxnw{z|{otw~||y{q|{}tly{t~||}|}t|{}~~~uw~v}z{s|}ux{x}|~y}}}}}|}{{xtswxz||xy~y{}ywv|{uyp}~y|x~v~}}~w{}yy~tzxv~{{z{xv||~vzyz}}}~s~{s~~z}y|~wxv}y{vy~~y~u{}{}|}{|st~~~}nzzwl}~}q}|~uv{}{}~yo~|t|tyx{zy{}vu|z{{{{x}w{ovx}v}xs{qx||{|~{{u|~t~{|y~}{z~x|}~zy}{v~|yz{x~|w|w}{|z||}}yxyw~{y~|~||}vz{~z{w}{py}~l{~}}}xxx~|x||{z{y~}zpy{{xs|w~||yw|~}x~}|v|{yvxzyw~||{{}w~tyiu|{|~~s}wyy|ywy{{}z}|y|{y}~|~w}{}~xx|}z|x~uw{~|}{|~zy{{z{~}syt{~|~{}}w{{{|~t{}|yvy~}{~wzt{s{|y}|||z}v{~yy~uxsyx|y|{wx|}|u}|ryx}~}}u~~z}pq{w|{z|{z{|}~y}~z|yu|x~{~|}{}}p}}zz~vzys{s|{v{{x{{{sxu{{s~}|}r~y}wyu}|{q{uywy|x{yy{yxw{~py{||}{}}x|}t~{y|{{|vzw|}yyy|x{up~v~}zxu||z~}|~|z{zyu}~{yw}|xz||~{x{}t{xs{}yrxzx~wq|z|||{}}xs{{ysvxzv{v~pv{}{~z{|~v{wy~v~{zx~}v{~~x~|uvxw}tz|{v}wotz{z|tv{|o}u{}y|y~~yx|{xy}wz|zu{tv|x|z}{vz~{z{}zxs~wyyq|zv~wvwz}nxz~xu~~||{z{u|x~|{y~s}~~wr{~z~}u}wzwvt}}w~}|x{z|tx}y|u|s~zy}z}|uryv~}{}~|~y}y{uswyzz}zy}t}~yuv{y||vzzzv~{}~wxz{tuq}v}w||{x~|w{ux}{z{~yz|suwypu}w}w}wow~z~z~}{}~xxu}hy}}yzzwsw~zwx}zyz}y|{}zx|xy|qyzyz}wy{sx~||~y~y{zz~s{z~x}}}w|}zy{xy~{}z~{wzs}n|yqs{{}zr{sqxy{vx{{my|}{{|}}yko}z}wyzuqx|z~~y|xu{}|{{x|pqwpyz|{wd|x|t~|{_{yysosrhzu}xt}q||~{zzx~vyxtn}z~wm}|V}{}qy|x{|{{|y~}ywvv{{p|~}|}~{}v}zz~|~|{{zi}v}~xvu}yw{y|yvzozz}zn}|y~{u{uuzy~xyyo~u~z~zssy}yvu|x~{}t}z~~w{{{x{y}x|y|}~{~x}vz}|fy|sx}tp~}~}}zfxzt}uyzwuw~ws~zuv~v}{}~zy~||z|~u|{oxztu|~yrz{yu|~}z|}{|~w|yzyztr{|yqz~}yzs~~}x~x~zo{yzt}}uypxm{zwy{yx|l{|x~{t~}{zyvzy}x}w{w{}z|}wv|}zv}}yv~q~vu}z{wqx|wzy}rq~|zswl|||z{uv~}~}{w{|wxxu~||xzz{z{y~{w~||}n|vu||{|}|~}y{v{}s}vuv}v|rwy|{~|~{z~xt|~|{}|xy~|x}{}sy}}sy|z{xyz|}htwiwu~|{}s|t~{~{uz{uywvzzvz}xuy}x~{{yy}~{|}w}z~y{zz~}z{zzxu|q|uv}u}x{yxuyvs|{zs|||}|s{twvsyyzuw{~{~zyssuytxxtt`w|||{szwx}{|x|rwu{~xu|}{v}z~vryszx{}{{~||u{x~{}}{x|}~zrwyt{zwtwx~{wu}~~wxw}uquw~y~zw~w|v|sv{}{{z|}fxvy|y{x}wxv}}z|{w~syyz{rq}vv{u~y~lyhyz{|zxn{wxrqot}~v~{|{q}{vz}~mtr}~~{nz{{u~yrru||~|zn{zz|{{vztq~}}}rz{{vg~~xzv{yypu{~{}zw{y}{~wsz{ulzs~wxx{|{{u~{{|xw}}v|myzx}~|~|wv}|ozx~|}po}~~vvx~yqv{yy}|~|{w~vx~zs|zy~yx{qyz~|zyw}r}~}|w|s~z~ytz|{q{{~}~{|xs{xz{e|w{|}}}u}j{xs~{~{z{rzz|ut}{{{x{}v{}yys~~|x{z~{}~w{}|}~u{~{yx~z{{|~|ztwy}|{|zq{}wz{|utzy~~~~tx{|y}~x{xw~x}xz{k~|zz{yzv~~d|{{~}y|{x~}zzuy~{z~{z}yxxzyzz~~~|ow}{~~v~y}s{w{}~~ty{qzx||yxz}q{ys}wz|}|yz|~wwzx{~z}x~yy~y{zyy~}s}x}}~zutxl{wxz{tz{}~w{}|t}}r}}v}u~wt~uu}{yzx|}z}{zxzyxzo|z~~|wyzx{z}z~|x}}}|v{ew~}|y{~||x~w~~{}}}{vr{zy{}}~yv~{u|v|{{ypzyz}kvu}t{{|x}q~}pyyz~~}}}~|tyuwzz~zy{ry|}|y}}x\}|{{}}}z}z~{rwzw}|~z~|t|w}||~z}{rv}y}~|{lzx~|vv~z||}p~|kw{|~xt|y{m~{|x~{|x~}wyu}x{{|~|v}~{zuq||tx}x{rz~y{{}|{nz{zx}|~xk{|xz~~n|z{tpy{wxyrx~~|vz|yy|xw~yz~|}zt{|~yp{z{wyzwpx{}zz}zz~{}wzvuu}y|xsy~xv|}}z|{~z|}t|~}{x|z{|{zu}z~}}y{z~qtw~{~twyz|t}{{{{}}~vuxuqzsyrvhzx}z|{ux|y~{~||{y{~t|z{|~|||z|}z~|wx~~~z{~|s|t~~l~}|uz|r}}wu}~}~w}z}{x~}y~|ywywy}}zy{u{}u{|y|~oz}{xu}wx}~y}vxw|}}sy~x}q|r}z{uw{xuz{|ryvz{{{ql~|v{|}{}|tt{fl|xz~w~{}}}|y{}k|}vxk{{x{|}~vzwx~~x}|w{x{xvw}z~|zw~~zd{{~y|uz|y~}}ty{mzxrm~~|}zt~|x~{vvz|}xznw~~||x`ux{yx~}zxy}~z~~y|~tynwxyvtw{{txs~|wxu}|vvv{yp~z~{u||s|{z{{v~{x}}o{v|{{w{{x{||{y|w{~}tz|}~}~}vwsw}yrz|{z~y}rzy}rvz|~rwtxw|y~|z{t{|}zy}}{zvz|zw|z}}zz}~{~|y|}v~xv|~{~||r~xz~~|pt{xm~{~{{p}{{}}}s}{smx|}u{~zzt~{}~}|x|ztz|z|~|t}v}}v|xy{}r}}~u~]y}yuv{{xx||}|kxzw||}w}|yz}x|~y|x{~v|r~}wmz}zz}zy~y{hkg~xtxuwv{y}uz}z~xw{tsx|v||~yx|ywx|zyz~}z}zxutx|~~y{w~uu{|y}wv~yvzv~p}~|x~vx~ky~~z}~vll}|wz}w~}}ur|{|tztl~~zw|~tt{wvx|{ux{~w}vzy|z{}xy{{~zx{zz{wyyn{{~ywo|zwzw|vwv|~||wx^{z{sx}}{{y~{||u}z}{~{{yr{~zw}~{y|~zuxvwu{v{ly|yww}t~wyw}sy}x{~|x{{svwxm|{|z{{tt|xzvyxo{r~kl|{fyz~|{z|w}s{yu|}{y~x}w{{~{z}zc~{v|zi{u}r{|~kzv|~rqyyx~qzxz}~uvvy|yzIzwxzxy|y|x~uu~x{njv||{{qz{Z|~xw{~~xt}o}~z}v~~{||~~}}~|u|{{}~f}~|}{~}~quu|~xv|~ozzx}~y}{{u}}~z|}|yyy{~}|y|z{sxxn|z|~~y~~xs}}{z|~w~|}ryt}t|y|{v~{x{{{z~y~yx{zwt~t}|zwyy|tt|}ty~xxwy}t|w}}~}t||xz{{|||}}}w||ywv~z|{|z}{~{~~w{}|yyxwz~}wzzzuz}r}{yw|~y{z}zxt}t~}rx||y|}xz{~{|yzw}y{z}||~yuzyxyy~y}zy{z}y|r~|{yyyzz~~tz~z{{|}{}~~sl|~~|yz}zx~p~xp}s}x|z}~ox~|{y{zzsvtxq~yy|t~uuyty{v}~{x}yzzsyz}tx|{|z|u}~wx}{xt{}}y}qv{zz|}w~y{~vv{u{|~s}ook}y~v}~|x{}yxnwv}~uz{||~y~t~r~~{|w~w{~}y~ypy{z~}wv{~}s~o}}zw|xu}wx|wz{vwz}|yx~~}{|}xy~}u}~{}{{wu~~zzzz|xrx~~}yu||{wx}x|~z~yx}y}{|}|y~~|zw{~}y~v}|z}|{q~sz{u~~~|y|~yr||{{{z~}{z|ow~ys{t}}|~{z{~|~~|z{vy~yw{w}ry{q|~}~v~lxwzs{|}~~}{{~z~~~|xy{}ut|{~}~y|~~{~~}~zx|ys|}}yzux|x|{rzz~}||y|}|}~|v}s||w|}{z{}~}z|||x}{z~}}y}{uyxx}{~x}zzy|y|v|}}||xyup|xm||z~xxt|q|{z|zx{~z}}}{u|~y|~zxz{}}||yz{}}}}{yxox~~~|zx~w~}|~w{w}zx~}w}~}}u}}xyyw~w{}yzy|uwx~z}{u|ysr~~z~~z}y}|~z}~zt{x~~s}z~||~{~wz{z~v{}{n}y~z}|~}~ywwyywwxq{y}{wxy}~xwzz{~z||{{z|}~u}yu~|{ys}~}yq}vtz{w{w{v||}|{{s}}~~|}|y||~|{|}ysv}}u||z{|u{{{}z~wsyx~~|zx}{{w|u{}~~utxw{yswxsuswvzx{}z{zuy}z~yz~|}w~wv~~w|o~xzw}u|}zyw|wtvywo}{vu{z}}{w~{wvvz}z~n}wtu|w|~tpy|x{y|}l{~}{{~|}ww{v{{|{{y~w|}z{|w{}z~|}z~}|}yx{}pu{{|~jwn||t~zx~z}t{zkvu{|w~wzyy|usxzt|~u|znpzyz|yz}x|{{yv}xw{rvw}~r}y~bt{}s{~z|~||{}yz|~|zy{{{pu}zujvy|}|uk}}|x}q}ryyxz~t~x~u}yy}|~yyywz~}{}~lx}xzww{|~~~{~~|uuusg~jw|}vx{{}{z{}}|yy~|xx~w}zt|up~t||z}}ozyvwyv~xzx{kpo|u~|~~rw|~s~}xwz}}||vtv}{xuy}y~y}||~{~x|xtypw~|ox{||||{xvlz}wyktxp}r}}t}y|{}~{ws}w}z~{wu~~s||}{l||}}yrzxx}~|~pk{|~xp{v|zz~yzvu|||{yvu}|xx{s~~{{~~{}}tpwt}zy|}w{|z~x~}z{{z{|{t~u~{}uowt|x{}wzn~v~~zwz}~{z{|~wzz}y{{}xyrz~k~|}~|~t||~y}~{}vy}z{n~~x~v{}|~m}vz}{}|~s~}}z|zz}|}{tr{ty}~u~{~z|{zzyy}~wp~yp}uv{zx~su{zu{zol~z}s|u{~|w~rz~}}zq~{{y{m{u~zxyv~|~v}nsbx}yx}~{~u|zw}~xx~w}{z{s{}~z{z~y~|}|u}z~}{~x{m{z|~{}~~}|z~}tm~}t{wn~}z~}{zxprztxq~ryyuU{w||wxzy{ypx{x|{{||{|sz||y{ytyxz|z}u|~z{y{sx}p}~yx|z{q{v|v{z{|w}|uxwz|~xo|wxxxyj}zy}}}}o}wx|{~znq{}}{y~w|ux~{m~sz~x~~u|qv|~z|ztty{|~~yv~w||~y|uqu~z|ryqg|zo~w{{x}tpu{|p}~x|x~~j}w|~x}wyxzLz~yyyux~wx~{~|~v{ps}|{w}k~z{{|vxtqy|z~xz~{~}|n}}xw{|m~~yo}|~|tr~{xz~y|y~yo~|}z}zw}vy~z|{~{z~ywuzwxyyxy|tu{~{y{x~~{|}zy~{mfyy}x{ry}|xy}}oy{xu~}~rttvw{zvn||z~}}~}zww~}x~}|qt}|yqywv{}y{}x{vuvwxyw|ku}vwy}{zuq}ozouxx}|}}|}o{{{~wz{i|{tr|pv}}v~q~~y~x{zxw{zsxxwzxkxo}}uzzv}suwypu}y||l}|s~zx{}}tw}x~~{y{}}{tvzq~u{yq{}_wy}}|wxwru~ty|~z}l}~zv}z}xu|{~s|~||xowx|{}tx{r~||||zz}se}}{~qz~~~rxZ~}u|uz~zw{}|x{zq}ky~uzvttnxoju|{{|w}qu{sxx{uyszxzy}}w{~}{g{y~t~{}|zzzxx}|y}}{~}{v~}~|}u}{yy}{yx}v{{zvz}}{y~{|y|yu~zu~~|{w~~z|uzv}yz|~u{|v~x}~wzu~z~v{{|x{{xsr{{o}wx{{xz||}{~|y{|xw~{}~~~|~sx}|~zxy||ytz|~v||zyz{x{zt}~}~|y~zxz|~|}z{~zzyvz}|xxt|}yu{}vx}wzy|s|~~y}w~vr}}y}u||}}s~|}z~~||x}n{{z|y{|t||zv~tzyz~{z~~{{~|z|~~x|}~v~w{}z|~{|z{zzz}z|{}x}x}|}|~r{v}}|z||z{w{{yyr|x}ywy}|z|}~~|~{xtzy~z}~z}~|yw}y~}w~}sz{zs}rxrww|{vy}y~~}~mmx|vu|xuzu}}}|vxy|tzx~|v~x}}}zx|vm{h{|~yy~~~|y|z}x~wo|vr}yyz~~r|u|yy}v}x~qrz~{ynw~{}|zzhZ|r~zt|x~{|v{|~~u}vzz|nq~{{npxw{y{{~|ny{z}hv{z~xxy}s{|xr{eny}s{qv}v{|{t{vzw|x~}}~yz{xqy}y||{}qzv|pf{{{sv|vs~Vzt{t~|zzx}|~|p{}yt}{qz}tx}w~~}~yx~~}us{{uyv}z~jwy~zy{}zwptytwa{s{oxzo}xzzu}wu}|oyvwh|~}pz{|t|zvp{wz}yx{q|wzw~~x~twx}~|v~yz}|w}y}s|ytxy}w|}|{uz}x|{|}~~zrvx||z}}z~u|z}uz|{p{~{u}w{y~y~zyxx|xy{xw{}q~}o~ot{}~s}|wzyyyu~||~wx{|~{z}z||}y{~xzx}{}x}~{yxo|}y|}}}x|z{|x}~zvy~szw|v~~|~y}~{~{syvuzq|w|xyz|yyxu~~|||x|~}~||~||z~~x|}~~~x{{yy~xwx}||w{~tw}x{|z|y~x}}}yyv~zrx}~qvxv|~u~l{z~q}|~~us}}}{~yv{|~}}y{z|}~y|wz~|}~x~{yz}y}y}}{w{zr|}|vx{|z|}xxt~~x}}y{{m}~x}|x{vru~yz||~t}}{x~}rw~vyy}{}tv~sw~v~~}yu|x|dv}r{}n{v}}}|yx|r}s~ww{~{xp~|}p{{voyu{wy|x{x~~}tw{~|}{||w~{vz|}|}}{uy~v~x|}~z}}sv~{}}v~z}u|}{{g}{}z{{zxtvyz{u|tz|~w}xz{x}w}zzxw}~{{{|r}zyy~~{~vsuz||yv|~|}~yw{vq|~zz~|x{}}{zv~~{{wu{|{s{v}|{wyx|zyu}w{}zvy}vn|{}yt}tw~s}~sx|tww|wuz{xs~s~u|yy}{{|~|~}x{zyys}}{~y{}yuy}~|vxy~qzxzzw~hzx|z~z{t{z{x}xv|ww~}|y~~{zy}p}x{||{~~~x}}~{vz}{xx~y|zy}z|sz}~||xq~~xv|~wxxyr}{}~{w|~{}~t~|tw~{yv|u|}xzzvz}|{~|~hw}u{zsu}z~|}{vzz{~z{~{{z~twx~}t~|wxvTwyz}{}uxSy~x~r{w~}|vx|{~w|}{~}s`yzv}zx|w}~~y}~syz}v|zs|}tx|f}|~}{{|zzwz||pvy{{{w|v{{rouvt~}~zy}nv{|}yq~ww~|lzv}w}{}|~}tx{us{}}{yv|~wlzxg}vyi}~|ywxr}{{|sz~|izx~s~}|wyy|vg{z~u|v}{z{orv~~y{|~u|x}{v{~}{~}~uyvw~|~vz|w{|~~~~x}wu}}y~}zz~~v{||ntt~~v}}|z}|}|x~t~|y{z{y|}}|s}|}x|~v~{~y~{z{~w}f~wy~~w}wl||{}{v}}xz|uww{x}||u}~yw|{{yuv~x}~~}~s}zy|}|{x|y~|zt~~{z{w{wyso~|~z~zvy~}~|w{}t{~}{|~}|||}y~~y}xv|~~}}||z||}qz}}o|~}}vx{wz|}wxx|}x}||vz|}|yywszvzt|{{wyzd~vt~}zxy~wy||~{k~}z{}~}wq{~wzzy}z~zyux~{|}}w~py|{q{|w{{z}}~|{|xvs{~xz|}}~}|}|v||qvo|ut{}y}~~||t{z{y}||~xxu|w|{zsz~{zxp}}}u}{|z|z|}x~}~x~vt~w{|z{x{|{}z||||pxxl|{}~xy{uu|z~zx}{|{x}y~zy{vz{{~}~y|}v||zl}zxv|r|yyuzq}}x|yu~y}~{}}|mpz~yxo{~|}x~{{~~z{}}|x{|{~|yy{x|}~~}~~~w{|}z|z}{x{{|v|xvz}su~z}|}|{~||~|{~}|{zyx}}}||xw~}~|{y||x}{~w{~||x}{z|{|z|pz}w~}}yo{w|z{}{ztv|~~xw|x{||u~y{}}w{uwz~yu{x{}{~}{~|{}~zz|t{}xz|y~|y|{{~~}zqv~z{{{{z~yx|~z|{{||zuz{|}s}}n{z{~}sp{j|}}{}{||~oy~wt}~}m}{}yv|v}zy}|z|{{|yw~z{z{w}uuy|{||yz{~xy{}y~zzw~|||~}vz~}}}zw|{|xz||~yx{}}w~}z|{y|}t|y~{|}~|{}~}{}{~~o~}z~x|{z|}y}||wxw{|~}{t|v~~~|~x~x{{sx|x~|{{u{}{uzs~zyyzw{}~w~{|}{~|{z|wz}yv{~v}~vyw{||~|}|u}~{~z}yv{}w|w{}~{||{~zyoz{zy{w~|yzw{~wz|vz|}}w|u~}~}y~yym{}wx|zyz|wwwwuxy|}{|s|}w{ozwv|wzz{yyx~s{uyx}zqu|~j}y~ztwz}z}t}~wxzy}|{{y}y{~~}{sxt~uv~k~}}wzx|}{~wvty{~wwqtr|zvyzyx||~w~{~uz{~~{z{y}wyy{y||o~|soq~wkmy{{}}z{~mtz|{|z~w|~~zyv|z{~z~z}y}vm}r{z~|{xn{~~y{~o~}}}|}sxw}}x{|uzz~w|{uzyyzx}~v}vj}wyzw{}~x|r}r~z|z{v}y{~|}{zux~n|m{{zy~xv{yp~~s|}~{|~v~{~q}~yz{vsrxxzxzxqjzx~z|vp~zvk}|w|~q~{}}xy|wx~}rvhovz|{w}xn}{tk}|s|vt~}|}}z~y{}y|x|{~zz|wx||~|~y|vyot~}~~yz|}{}{w~{wsxvy|y{}}~t}~|yp{~xz~{|tx}yxz}}~u}~|}tz}}vv~vuz{zx|}xzxz|}}y~~~t{z|z|zz{w|{~~y|}}~|s{v{w}y}ww~xv{r~~}y{|zy|vxz|{zw~~y~y~}}|{~u|zz|~{}}}||zzx}|yzzv~t{|zzxwv{z~||}y~x~~|}y{x{v~zo~~z{{w}m}{s||t|}}}{zysxyzt{~|v}zw}z|~|zw{}z|wvv~}}x{||z}~|}~{y}r~~{xvz}yzy~~{w}}}y~|zy~wz{w{vz{wszwr}oysz~w}x|{z|vz~}zy{u|s~w~y{~{zxy~}x{z~w}{|x}y}y|~{z}}wzy}}{}~w}~{nuyyxx}zxuu}~}|{szvy~~wv~w|{u{~~x|xvxxx~yw{|~xsqz{}|w~~|~yy|zz}z|}x{y}up|oz|{~{z}~~zz~t~}x{xwy~~{{w{uf|}{}z}xzsz{||z}}sw|{s}zy|u{x}~t|{v{vt~|{}}}x~{ypy{t|rwwtz~s~}}z|{x|x|w{ts~~wuqu|kp}u}z~huzzzu~|s|z|r~}uz~}{}xvwq~{|yzw{{|{v}zzy|z}hyq}xx|suyx~{mx{|xz}}xuv}yz|vywxy~xz||}zxy}x{r}rv}|~}{~x}u|ww{}|}|~z~zwzz~|zz}{yx}~w~~{~zs|v~|x~~|~z~}~x~}}zz~wx|{{}vy}~|{{yzy~}zywwwz{}}{}z}v{{}z~}}y}~{x~z}}{y|~x|y{|z|}}z}|{yyy{~}z{~{xzp}t}~zx|}|u}ztxz{~}v{w{oy}}~zws{x~s~xxz|{vq{zz~y||}yw{~}y~w~{v~~}{~x{zz|~{w|{}}zuo|zzyyz~szxv}yy|}~}}z}{{y}xz~~}{~|ww~||z|}{tz|wzzyz~syyv~|zw~ryz|v|u{x{x~|}uv~z{~{|{zxo}||yut{t}x{}{uw{|{|u|y{~}y~~{xy}|v}~yw~y{w|vzu}}xyzx|yq}stwxp}v|wy|{|z|}|w{|tzvyxqz|z|x{{~}xwwxyxz~{}v|~z|x}vsz{~r|{~{t{wvw~z}}x}|}}|z||z{zvxq~{yv}}|zy~}||zqx|}~|}zx~t{}}z}{{|{v~y||v}y|}||tz{~~x}}{v~zu}}}{ywty{~y{}z}q~|vu~zyy{}}}xyw|w{}u~y||{r|}|{xyppy{|z}w~n~|xzzs|}|s}{|t~{yt|np{yx~|y~~qt~|xy||~}zy~|y~u}nz}u~{yw|{myzt~||{zwx~yxwx}|{{zzz|p|z}yyxq|{|x~|zzxw{v}r|{~}zxzs{t{zsv}z}}sy|}~{|y{||t|}~}}yzu{y{xyzz~}}x~pj~zwx|z{w~zwyz{~{|y~wwsy}|~zxz}|~~||w||z}t~|x|~~||~u|uxy|t}y~|u{{}izuw}y~m}uw}{~ys}{~p|zt~x}|xo}}{yvv||x}~|t|vzm~wy{y|~zyu~zy{|xw}||yv}~~}}|~|~}|zuvm~~}zxwx~yv{q{}~wv|tx|uuzuz|y{{~}|~tzx|~{{}z|ywxuysyzv~xw{{x~||}~{{xzw}~u|~||z~zz||~xp}|~xzs|}zyz{|{|z~~|z|}~y|y|{||}m}|~r}~}~x|z}~{}tz~w~wy~{zvs~{s}yx|~~}yz{ys|u~r{ywt}|}|~zus}x{~|{{vxtqxxo~~z|x}|uvy|}u|wqzts|z|}}||}zyy|x~z{{sxn|wy}|w~kvwt}wz{~}z|xqy~z}~z|{|{{zy|}}x~zz}|||zv~zz{y|wwz{}v~{~}{w{z{|zv}y~}op|}}x{|{x|~}yxz~w{w|{~u~x{}y}u}yx|yxszx|uv{|{}zx|zupu}}uyw|{}|x{~{~|q}|wwsz~|j|~}}~u}zxuu}wz}|yz}~{|ux}{}zuqxz{y~|zyzs~zy}z|x}}~}{|y~{y|~v{yz{w~zvy}vy|||||~zqy|r}|zt|tzss~zxx~zqyz~w~u~u~}~{~{~z|}|oxz{~zxzvz|}urz|z}}r}{|z{zzy{}z~~|}~}||xz~{|yt}|w}zq{{{~}~{~}{vzzlyzxv{|}|zuy}|}}~yzz}s|xz{w~z|v~z{}}x}}~yxyzz}x}}}wy}~wc~w{~}xpy||z||~~y~{r~z~ys{u~z|xy{}|tv}}uz~|~zuzy{y}|y}}~|~~|zy{}ww}xxzvyvtz~~{|x{|}|}{l~x}{xz~{~zxw~{}y|twv}|v}~}~yv~}w}vyyyw~}~|}ytwxz{~vz}}|uz~{|x|y}z{}~~pxyvx~{zz~{|x~{{yuu{}}~~~x{{{zvwwzzm~}|zz~|~xssw}~w~z{uu~|~{zw|}y~{~x~y|x|~vy~|}ny|}yyy}x~xx}~zrv|z~}{{{~|}zt|y~}}~}}e{xx~ux}zw|z~y}~~sz||{v{}~zyvlyw}|zx~}~z}}w~}}~{}wy|{w{w}}z~~|{~vw}{|z{o}~}zz~y}qv~y{w|xu||yy{~qy|}~y{ttzn~vu}~q{{zzyuwr~t~~}yy}y}z|u}y~|{}}|zx|}}yz}|z}owvx~v{{~{{}{~}z{z{{v}vy}~v~}{{~v|qu{~u}}ru~y|~v}{yt{x}{v|~|}yx{x{~wsz}vux~{pt}|~{w}~{z~}wx}x|u~rm|}xzvyx{~}wxxxv|x~{}py~rs{xyyo|n}xw~r{xw|zuy{}~}v{{}u~{}|v|zz~|t~|wvu~}}{}{z{|~vz~}y~}z~~{||sz}|zvs~}v|y{{}s~||y~}{u|r{x~z}wztvtw|}}x|{{{yw}}~|}yx{z~~yyus}|}{zx~zz~}{yy|x~}|x}{xzy|j~~{z{}r{}szyx~~z}r{z}|y}zz{~w|{~~{w~}x{~o}}~|r}|z~xyxx~~~y~{{|}z|lz~zzz|z|yk~|}wzz|}kv||~tvnw|}r{{|ryzxx~wux|z~|zy|~w}|}~~v~|{m~{xv}w~u|szn}xy|{t~w~vvzz|~{~pz~ss||~ytv|r{~}zu|r{}}~~z|}wz~u}{z}~|w}s||u}}vx}uz|~z~|x}}{o{~}|yr~w|z~~}vy}{z||}t{wx{y{yxyn|y}n}yw~}{~~w~y||z{~{z~s~}y|}ty|wz{{{{w|yu}|{zw~~z}~|v}}||xpysyz}{y}}s{~|r}y|{u}x}{|~yz{|zuyzr{}vy}~~}{~zr~}~~z{qs|z}~{~}|~w~~zxv}xyx{zu|}~y~|}}zw~yxr}}z~}}}{~}s|{{z~|z|rm~v|y{wy~{~~~{z}x{pz~x|~}zv|||zt{u|{z|}w{tx~x~~wz|w}uwz||{r~x}{zy}}{~ys}ws~}|{{||x}}u|vyw||m|m|{{z{~uy~r~}{yy~xw}{s{|~r{y|qv{xt{}w{w{y|t|{|{}~|yz{}z~}zy}r|u}z}|x||w}zmw}z}uw{{}zlw|{t}|p}w~~wrvxx}xz|~}}uwytu{~{x|{~|y|~t||||~{~txu}xyy~wyv}{z|{~z|y|}~z~zz~z}x|yyx~}w|y}t}wwzy|{v~~}uyz~{sw|t{yy|{}|xxyy|{}y~x{nwt}{}~{|{x}zyt{z}}xq|x|||}tvu|}u}x}vx{x|lz~{}}x|~w}{xz~}xyw|~}}s~wt|{rzxyu}~|xnw}v}~|w}~urx~v~x{wzvv~|z{z}{}}}s|~|zz}q}}}z|~{}x}|}}|}~~t|q~}}wur}xr~~xy}~w|wx|um{x|~x}wwv{}|v{z|qw}{}|{~yuvxz}~zxz~~uz|}{}~||zo~h~zs~w|}|t{z~zr|z~}x{|~y~Sxy~{|zmy|zsq{}usw|u|vyy}}}r{xow|z}{|}tw}z}vx{uzv~{xvyxzus}yy}~|}}yxy||~~y}w}~zuuvtyz}vl|zvw~zxpzs~|~}vm{{}{}tmy~y{vy{|yx{r|w|w~zz{vywxlxz~}tw}h~wizzos}}syv~}n|>v}wzxy|m|~z|yv^uz}r~yy|y|vp|y{w{}|x}~zz|w{ttx~||uyt|}{{y}}~kx~uzxzvz}v{}}tv}{u}}w|wv}{m{sm|}~}|tx~}q|tx~}x}zxz}xty{uvzr{7v}{||y~}x{}zvwx{}|xz|~{p|{y{x~~zw~{y||{x{{}|{{~}|~~{x{}|}}|wyz~~~x|~{kxw}|~|}|{y|{z||{~utz~x{u|xx||}}|v}{zz}{yz{}ru{y{~~~}}y}y{yxt}~~||}|}{{q{x|~~~|||q~w~|ww}z~|zuu}{~|oxxxzyxty|v}ry|v~wv{|}zt}}y|y{|}~x~~ux{|}x}}{zv}syx~y~z|~z{{y{~wu~w|{yxv}x}{zt~{}z}||}y|{{~yn}sr~}ysz|z|u}w~{vz|{zw{{}y~z{|{|z||{z~t{{~}x~}}~x}}{r}zx~x{y~x~~u}yv{y{~yt}v~w|y{}~}nwuy|xp{wv|y{x{yy~|{ueko~t}yt~{t}|sszy|{z}{xxsx~}wt|}mw}zf~q~}ykkyw||}szx{{x}{vz}|{t|uwwwzv{{krzuw~{wswyvxws{m~]rzqw{q}j{|{vxzx~g}v~vnz]n}}vmupzvzy~rs{|s{pzxvoypip}y~{p{zgr{}}y}q~rvtq||w|~{||smysus{w}t~x{xvlzuw~x{~|yz}t~zv}|x{ryty~~ztu~{zru||z}}y~\nxyzy{zuy}}xyw{y|yzz}sch{}h{az|swuyYn~}z{u~wutth}y|x}||_|w|xeuy\wuwwv{u~y|sGxry|n|}x{{p}~wKx~~wzubz|pu{|}|y}zwz{~z{x}}zw{z{}|{~y|v|zz}zz|xz{t|~~~|~~zz~y}|t|||y}}zzos|}s|~{uz~~~}x}~~{y{||zzt}|}zv{yu|||{}||~y{{zw~}~}~}}z{}{||}~x~y~{xx~||{~|{|||}{}|}|{|{zxzy|}}}s~|{}}|zz|wz|~~}w}~z{{{z}{|~z~v|~~||}w~~}|{{xwywvtyy||~||x~|{{y|{|w{z{|zz||xx|~~|v|y~~~z~||xz|z~y}x{}{ywyz}{|qzw{}z}{o{{}u}w~|}~|x~}|}s{{y|~|||v|}{|zzx}v{zw~rw~~{}v~|{}z|{wzw{u{xx}xv}t}vx{~}}}yx}{yys~y}y{}uxxy}|zuyr}r~}w{|t~{}wz~u|z~z|{{}~}~}x|zxsr{{zy}|||{xz~y}y}~}wz{|q{{y|}~~|{y||~tz~yz{}y}|v|n{zy~y~~~}~|x|}z|vu~x{|}tyx}{}~{y{z}x||zz}z{~~{xzs{y|{u{|t}{{wyu}x|yz~}~|}|{ww|}u|y}}|vzt}||}~~~|~{z{uq}w~{}~~}z~x~zx{u~z{yz}||}}|~}zx~~x{~~~~txzy{{~|z|{zz|~yx|z}|}wzw{||u{uz|~}uyx}wz|{tz|z}~w}}|u~}x|~}|{t{~||{z|}~u{zz}x~||}y~yv}zupu~f~~v}rw}yy|}yt|y{~zzwr|u}y}v{~|x~w~|~zsyq~|v~x|}|}}x|}~|xx{s}z{y}v|s~ov~||yw|~{|}}t{n{||y{sz|}}zut}q{|}z}qvxu|~s}p||zy}w|z~}zy~o}z|}~y{|x~{{y}u~}yl|~|}~x{z|xy|}owt{x|vw|~zp{~x}{u}{{|~~||x}~u|~{yxw{tvsyyt|{{z}y~{|}z|~ywyw{z~z||wsuxz~p|y{~~}~k}|x|vz|v{zz|vt{z}x~zu}y|wzz~~yz{xyyxglyu|~}ws}{}}|~}m|}}{z{rx{{zvz}~r|z|xwyu~wytz}}{~~}w~}}v~z|wy~}v{q}{|z{~{~xz|~y}||||~|~}z~}}rz{|~~w}{y|sy|r|}z~sz}}q|z{wrzx|z~vy{}v||}~~}{}z{y~z{|~~t}}}|{yx}}qws}}zz~}w~z|~yz}{rx{z{}}s~rz}q}y}|u{{{~~|{ypyw}|z}x|}}}z}z}s{{ty}|{||}}w||}|~vu|z|~{wzwm}{|ux}y||t~xyv~}w}y~~xz~{}{~}}}zyy~{{u{vv{~{}}{}z{~|vx{l}w~t~}}wzzv|t|z}{zy}w~|x}x}}yz~~yz{vv}quv|~z~}s{zzt{{v}zy|y}yv|zz~z~v~tzv~xz|~y}s~~sksz{uz|zz~w}z|~~{wu}~vyoy}||y~tyts}sy|{zwuz|y}zz}}~ny||~yz{}~{vy}vw{|yyz}z~|y{v{|~y~ypyvxy}{x{~uw{|x|}|~|v{|}my|~z{s}|yzw~|~}}||~zt~||y|}s{{~{~yxo~~}yz~x||v}{ztxz}~|z~{|}z{q||z}}}}x{}~}}urw|z~zvyp|vy}wy}zxy~m}|~z}{~{wvx}~}|q~}}~{{v}ruhz}~{}z{{w~oz}u|u|~zvy~q|v{y~mk{{|}zx}~~v}y{tuyzz}x}{}|y}{{|}vuw{|wyw~w~x}~|yp}~y{|o|~tz~}ypy{}}{w~x|{zy{sx}~x~}}{{~||ykyx{}wz}zw~||zw{w|pt|u}t{pxv~p~}}zwryp|y~|xuwx{|u{{}yx~||w{~vz{|yyzgxu}u~{~~{xx}yuztzx|x~urv|m|{y|tx}x||z~{u{vww{}~tuzy~uut~uyyrzz~z~|oq~wg~{wz|~x~~~}v~xw{{yz~uj|x~wy|t|~}}{u}~x}yv}{}uy{uv|ys}ev~}||zwwz~|q~~~uxz|uy}}~~~r{~|o}pny|tx|u|~|x}}|l|xzl|{x|xw}uy~}~{zwzk~q~u|svxm~~}s}wt|}|zh|~zz~tyv|y{~xy~z|z~{w{~{|~s{|}|v{~{x|~z~|u~x|w}}{}yys~{~{w}x~zt|uv|}~|vzyvzyy|x~}xw||{|~r}zy}}w{yzztz|z}}xz{~}}q}|~}|{v}r{{z}}}y~~|x}y{y}~yy}}~{y~{}~z{z~~}yw||y~{}zyny~w|}xww|v~}}|}z~{|}{}yw}yq{w~xzy{~zy|uzv}|}|yvu{z}}~|~w|u~{{vy|t||{{~}y{}ww|uy~}z{y|{~}z~{z|t}~yty~}~xz|~www~ux||{~u{|}w|{|xwzzpxzx~}~}||{y{{{}{w|t|||}zy~~y|wy~v{~~{z|zw}~x}}|{z~~{~zk{wu|~u~y~{}xw}o|~{wr}yptx~z~~~}{xu|~~|x{zy{q}x~{xx}|x}yz}}~sz|}p|}y~x}~zu|t~{~w|z}~y{w|y|zwz||u{yut{w}yy~w{~|twzot|}}uzwz|y}yx}|}r~}{zy|zvwz~~|~~x}}|l~v{~~~t}|x|v}zwuyyzuxv{d|}y~yy~~~}y{{uwyu}u~tyxp{}s{{~r~w{}{wyjsz}{y~ux{tw|}|z{}zuu~}}|}qz{zzx~yys}vvw}|~}y~~t~|twk~{{yxmzzyz{||}u}uoww|{{|{{||}o|wwxxtu|~z|{~z~yyx~}{|}|{ruix{~w~y~w~rty|yp|}}u~wu|rvzyyxzz|}sz~sxIn~xvx{s{{x}zr||y{t|zx|{ut{rx{}qy{|z{wyxz|zvz~vq~z{xygyw||}yrw}auzs~zzn{ywy{otz}uu~zv}q{mv{~s~yov}zsz~}z{zztt||}}nyv{v~v~w|mytwezvz~}~y|x~m{ypv~o~yht~w{c|{|~|u}}uy}{yu{xt|y}}yx}lsyz}y{~s{y}~Xz~zx{wqwzx|yz}rymwqzur~~~z~n|zy~mrg||}st~uwtuzxwz~yygzz|zyzxyz~nyvt{~qrzvu~ypuzxsqsyy|}{wxw~jtwws~}{{}~{y|s~wz}wt|qxxxz{~v{}~zxxx~|z|{wxyz}}{~w|zuz{y}|~{s~|w~y|x|{{t}|y}}~|}xy~w||{~ws_w|{wwv{y{}~~|z}|z~}{zx}}}r}{r{u|ywx}|~zx~y|}~z}v}|yu}{|~~}{~x}}z~x{||v{}x|~}jt|xux{z}}~}l|zzhzx{y}|{z~z}|~{}w|}|{wu}xwz~zyy}py|~y|||~z}u|}|t{x}vz}|}{ur|u~yw}{xyzxxy||~~|zxyyz}{xxy}v|yzwyyqu|~{y~zxyz{tvxvws}|zyzv|hzx|{u|~yxz{|yy}|q~x}w}}yu{w}y}|}{~{g|}w}{vvxyzywzprr{~p}{zw~~zpwx~wv{{}}|pqxu{r||wx}vb|q|xwzzwo}}y|{}w~wxvz}ub|qwruw{p_|w~{y~vxy~z~ux{r}|m|u~vzmxv|xwv~xw}x|~uu~ls}uuu|uwt}w{|t|dvv|onxovw}|yw~xw~}xty~}t|}w}zu|wo{in|}m~kazzvr|pwwyy{zwr}y}zmwy{|q~|t~y~|s}xtxm{z}zqmw}ywuq{{ywzyx~}{u}yuzc{x{{x~xq~}w~~zs{|n~s{zx~~}|}|{~xw~~vv|xw}~{w{|yv}zwgz~xzz}t~p|u{}|y|vu{rt~{y{|~|{|j~lrw~vvy~|z{s~zx}{x}~}w}qvi}v~~w~yz}}y|}|{{r}~~u}w|x~uty}|v~|~~}zp|y}~zv|{zxzzz|~{~t|~}}pp}}~||y~vzox~{u}}z}{t}zz{u{~||zyy~z}xn~y|x~~y||z~x||x|w}|~x~~xyy|{~yz~{z}{}~j{}}~v|}}}}v}~z{}}|~{yzqqy~{z~~~{~z{y|}}y}t{y~{y{}wy|z}w{||}{||v||u{{~tw{~{zx~{zsz~{zw{}yyz|{vz}u~{x}z|~x|z|f~}||~|~~}~~{|~}||~uqt|}{~|}x}w{ytj~~{~|~u{|vlyt|vy}~~{{u|t}v~}zx{r{|z|qyw}yy|z~yz~w{~{|}vzu|}twz}}}}{~x~vzpv~~}}|~w~~twz|}y{s{}vyv{rkvxy|~}~zs~~l~~x}v~|w{t{w~~{{~y}{vs||xzq~r}zv|{~t{z}|ktw}}|zyuz{}uy|zz}j|}yy|{tt~~yxw|x}v}zqyv}y|a}ts|wxq|{ry|jt~u}~qy|vwxl~~r~vx|ur|{{xrz}|}x||||~jy~nvk{v{sltz|y~yxv~vsu}~~rypz~pr}t{}ww|~yz}u~u{j}v|{|}t|{}y}xn~x}~||xv}zzzxtv~~|z|{lz{}lvxyys|wu{zi|x||~~|l{z|uv|xxu}z{}zvw~ug{z}|v|z|w{xuy}om}yzkyZs|vxyzxvv|uz~z~yufzw}}uz}yu|||zyx~{yrk||xyt}s~}x{{uxwyyuvv~vuvjnx}}vuf}y{wzs}||zxkx}zww|yyzgg{x}wytpzs|}~y|{oqxz}y{u{~}~vvzv}{s{u~szr}|zww{z~~w{yl|z}vvtxzmwwqwzzsu~w||}y~}us|yvdo}wwy}su~~v{zuo~y~|z~|~uzk[zt|rw{zw~zpzxz~sx}u}ytyq}rrwmw{z|u{wuy~j}vsvua{szq}}x{s|z{ww~k~~}~}s{~xxzp||dqzrz|sydu{rpuswzqy{}zsyzysy|j{~wv{yvy|s{|um}xs}|n{~w{}~q}zxwzu}p}zix{tp}vxu}}}ywz}yy~{utxz~vw}uw}{{||x}~zz{{x}nu|w}w}rlx}t}v}w~u{~x{}z~~{s}~t|~vr}v|rua~|py~{yxy}z|yyz{{y|x{xwz|}z{xzz~ut{yxxtz|v}u{p~zzz~tx}~}yz{{|}yrrxs~r~o}}}}zz~tr{x{{zu~zrq{yu{wit~v|~{}tvzyyzuu|{}|}y{~u{lwxu}}{|ulpw|~u}putyyz{z}v~z|{w}{|xyy}~zwzzzyz~y}}y|w}u~{|~{wj}x}}|xvvw}{~|su{x{x}v{zusyuz{{{|z}}{~y|~rv~}~w|y~z|}rxxu{{|xyyzz{}|zty{{b||~s}wuxxzypv{zv~pxv~~~~}z{z{|~ry{}|z|{~y}yz{}yz}}|wu~z}{ywy|u~|~{}}~}y~||wz}n{|v}{{s{tyy|}{||~y}x||z}{}xtr~|vq{}z~w|w{w{|}yos||{~yyyy||uu}z{uy~x|o{|{y{|{}}|~x}{v}{z~{~|zz}~~~}~r}~{|}y}{t~{ulx~z~z~zzy}zs}x{vw}}z}vv}~}~yw}|zt{z{xvz||~}|{~}}y}|x~}~|w||||}wx}|~||z~v}}~||}y|t}}|zywy|{x}{u{z}}|zznn}}{{}z{zxxouzzz}ww|{y|yx|~|||xtzzwzt{{sy|y~z}~~y{~}lx}z~p|s||}z}w}{|zw}||~z}|vo|{szxx{~}s|nyw|z{vtw|{}~{{|wzxx}{u~~{ty|wzu~zvy~}vuyy{s||||xxy|~||s|{t]z|xztvz{{v~{t{{}}|{yt|gzw}z|p}x{uzy|}{yvzv~|~x}|v{xsy{}{|v~syxw|y}z{xu{t~zvr{~yy}ly|z{{|}~~|y}|jv{~~x|{uyzu|}{hrx}||w}}|}y|u~muz{zyv{yu}~t~}z~uu{t~y}}q{mux|s{|x~|~~ww{zoq~}|z|znvx{r~sywo|ctwwi|w|}zxp}{y{zz|zutz{q~w}ynyxoyry~r}{v{w~{p{vw}{|}oxz~w~{|~}}|vp{~~v|s{{sy~w{uu~z{}|t|}~~zx|{v~wz}yv}~}{||t{ytw{z{}{~|u~{}y|z~{}p|}{{x|pt}zy}yw|}{|t}~}{z{~~xw~xs~~zz}xz~w~x}|ys}~rwz}xvz~v}y{}}w~wws}zy}|~{|u}}v}|{v~s~|}~~|~zz{u|w~z{y~pxs}~l}vws{|zyw~}x{}|~zxz{x{}|xx}v}||x{sv~v{}|||x~zs{xq{|zw~}~vv}}p}o~y}|}|zz{|w}~{{p}uz}|||~y{w|w~}u~v{|{{{z{vsyp{z{||{{{z{zx}}|wyx{{{u~{yyz|z~{x{zz~|z}~}}t~{w{~zy|z}wwzwxsz|l~~{v{{zn{vr~~w{{yx|wzvv{v~y~ux~u~||{ox}z}|w~~~r~y||{xz{}rwky}z~~|uy|}du~z~oaw}z|w|}m~yq}x{yy~{~y{~vwuyzq{q~}||xwt|y}xyyvzzl~||{wvz{y}{x|vz|{qx~}|y~~{xyxsymyux{z|q{~wpzu{~w{{~{t}}|~t|wsvz{~|yrv|~}zz{}p{zz~u{y}|z|y~xwxo~tyu{y}zr|zvy{{}z}~{z{}~rzu~{y|yxwyvwz}zyzx}}y|vzvyz~kyvyx|otzn|w|~~{}{{z|t~{}}xx|v~yv|y}x}y~~{~~xt}{|{x}h~}}{|y~||zxp}~ry{xz{n|z{x~wy}}||z|}zzwr}{xzz~{ui]xpwx}~{~zyz}z~vz}i~~x~z~{~yokx}~zxv|r{yytwxx}p{|v~w~yw~zy||~}yw}{~}zt}{y}{ytwg~y{{{xz~z}||{~rqzlz}yw}zzyy|tuw|q}uz~~~|{{{}~|}~|tq{~|zz|~t~{z|o|}~}y~u{_~}}|izusfxxyx~v~{|~u|z|yzw}z~zkzz~{~~|{zn|x{{t~y{}tsppr~r~{zk~|~xtxy}wyo|{}|rvzz}cvq~}w|}ywz|zxz}~}y{|py~w|{~}~|rsu}z|{yz|{~{|}ypzz~xx}|xx}}mzx~v|{xu{~w{xzxy|~|vu~}|kwt{hu|zq~|ur~vy}|x|{}{{u{|sxu{xzvzy}xtyw~w}tryz{w~||yw{zxoty{{w}{|}p~}j~w|xs}v}u~zxrzvwytvr{kzu|~||}yr}x~u|m|}~u~~uyxu~~zv}{{~{u}vxt|{yy{my~qy{yvu{w~~~w~~zv{x|{uxyxxx~||{}|z||y}||~|{~qxt|wz|v{|x}r}{zmy|t}whu|y}wx|tzvz~smv~|zv}vy}~{f~{~zy{r~}|{u{}wy{z~w|t~{|wy{~}x{zqqt{y}~g}~}x|}~{u|wv|yys}~|xs|wy}on|}xxv{|}}xvwx|v{ty~|}~|jvyjrnv~}o|xy}owzzzt}uy}u{{}tr}~{{x~||xw|z|~wz~~}{t{|u|z||~y}|uw{xvxxm~xp{{sz~zyz~py}~uzzvv}~x~z|zox}x|u{}}xyxqnv{}{{z{uwvyzt}|zzzl|}x|youmwywv~v~{|xwr}~y|utx}xy~s|ycrv~yuv{yvm{x~wzyxzk~x~{ynvzxqv{{v~}{||}yrswun|w]t{zyzxmku~zu~s{|xw~u|d~xx}x}y~d|}}uvr}p}ys}r~{rvxou}}|xtu{txnmrw||~v~zw{zzssptw|{uy}~|}q~u|ysr}gm{y{x{z|vy|}|z{}xu}{yzs|~|||t}~~}w}z}|}z{zyrz~}||z}{z}~~x{}~|||{|{|{~|~{wz|zy}}z|~{}{u~{}{}wz{}x|xzy~{w{}|t|zy||yy}}{t}w{}szt|}yx~xy~{|{xu~zyu~}w{u|yy||}|}}sxx|xt|x{pr|~}{y~v{v~ws|x}xz~wv~~y~}}}wx|~u~~vsy~{|}z}}|yn~tu}~yr{x}y}{{y~}||{w~|y~}~zy~x}y}|x}|~|~{{x{~|~x~vzy{ssuw~z}m}~}x|}xz|}{y~{zyvwyz{uyvyzx|~zy|l{|}w|y~{}zx~z|wz{vz{v|y|x~~uyy|{vx~e~~|}{wy~uy}{}zzt}~~ww~fw{|~~~}y{vg{~wz{}}}}}}{zr}z~}~s}{~x}z|zxx~|xry|p}o}{z~~w~|m}~{yy~|u|yzt|swwl|~~|qszz|}|wzx{zn{|vxu|||~|y|}{}}~|}x~q~z{{}}||r}||x}~~{|ywu}v}y||~{s~tu~p{~z~~}}}}|}}|~z|z~t||}}}yu|}j~xwz~z|}|~y|wq{{w{~{~z|~xz~y}~yxz~{t|~zy{||}zy||yts|y{pzw~}~zyzx|~x{x}{}v{||z{}}zs}~r|~y{s|wow}|||{{zvzz~}{yr{~zu{xzyxw|xwvy|x|x~||zy~tyt~}{uuyu}|{xqzf{}wzzz||y{|x~~w{q{z}{}t|}zxw}~wv}|uw}l}}{y{xr~}}{|{~zx~vx~~wu{sy}uwup||uyzyw|~xn|v~zx|x~|{y}}~xy{x{yxz}yus|z~}vz|wzr}{y|{|~~|tyvurz|~}}syzts~zyz{{s|vxzxxwwzw{su|}t|x{}py|~}xz|xuy~~v{{zw|}{vwyxvzw~yzs}~tp~~u|y{yzusswz|}ztx}z~ux{}~uvx|yytp}uvyzw~~uzw|{o}}y{x~||v~tyyqy}ww~}ymxzuy|rzwz|zz|zx}tzsv~tz}|{zx}~ut{~||z~yzqxw|ox|{}wrykv~z~zyl}}wzyw~xzv~~~ryt}}xy}z{~}}}x|zz~{~}zuxzzx{~z~elyttxyzvt~c{|vvtx|~{yy|}y}ux[p`~{v~gx{}z}xl{wzgyx}{uy}||{~x}p|z|~jw{{{nu|ut|}~~gyyxr}xq|zzz|{y~|j||q|}yslwpzu{{nw|v||ry{}{||}}v~~u}|xx}|z|xz|{v~y}|zx{~zv~wsqxw|y{}z{yx{q}y|{yrk{w|xzRxfyvp|Vy}p}k}v}}y}xoxy}}pox{k||yy~}{|~}{qy}}~~zvwzyyz{rz}x||sw}|||s{xzz}u||s}m~xtt}}|~u~|yw~|u~yxl|w~z}trx~w}ywoz~}~xyy{w|~{~zzzv{usrkv||{u}r{s|w|qs~z}{zzz~v~{zr|~{qyo|{v|~|{vvxu{}|nsy{|z{{zxy{|s{u}u{uwx|{}|{y}~xt}|~{|~|{zz}r|s~z}w|}ys|yzzso|}~{{zu|w}}{{xx}}qytx|{t~~~x{{zy}|}}}yx}|su{|jwz}wv~~u~w{{|y{t}vrws|{x|u{|||}vy{|}wszxzp~}|~zvixq~zovp||zv}nsw}{zwx{x|t|zx|zzys|t}xxt~uzy{xy}x{z}zv~~xwv|yxt|~||}}xpw~|~ny|~zz|}{}x{|xw{~{yy{z{zysx}fxzuxw}~vz}{{|{r|{~wz}~x~{}uzq||vw~|rhvyu|xyz{|}wstvz~}u~zmzwxx|xw{wzo~zw}{x~n}|xvvxxy}wq~{|y}vy}{wx}zx}vvvyyyw^~~py}~{~y{y}~}}yz}x{hfy~x||xru{{jxly|||x}~{{x{~zy~t|w}~xuzyzwz}rzu~v~wu||~~}g}~{|{wzuo{{{v{x}}~}{s~xyw~xw~{vtz~~z|u}z}rnvr~{g~pp~t{~}z~lzy~x{|{z{x~ouw|t|zwywr{}z{|y|xww|xyy|s|z}zu{yv}{sv}{ys}|~y|~yr|lxwxx}txz}xzz}yzz{~{z|~}z~w|}z{{~}yx|}}|{}{|~y|x~y}{}{{w{|xzpv}m}s{~y~{}{||xv|||w{u}~|yxv|yvzz|xo|y|}n}yv}twt}szz~|~xqw||{{}u{yy|vu{v{zz}sx~z|l|yzy{w}u}{t}|z}t}}yy~x}}rxy}gz}|~{|x}{uzu~x~~xz~xys}x~~~ytz~x|yrzzw|{{{|~spw{szw}}zvxtxun~{v~~xzyzzz{|zz}xx{yx{||uzvx~y|gu{{x~|~{~tv{~}stz~usw}x|v}|xz|z}{~x~|x~qv{zzy~}~v}xuz}{{||_{w||zz~yyozt}{{}y~~~zo|xyzpeu|tztvqz|x~zrv{z||d}~~xw{~~{v}}s~ywwu}zxp||}z|y{w|yvy}|yz|}{vyvmwyxvtr~w||{nx{||v{xv{~vvi|zu}{vy~|z{z~}{l~{yx}wwsvz{|zu~v||z~w~{}w{yr}urt{{w{uxvy{srs|yt}}uw|xz|yw|~s~}}wwmy|{wvyxux}zr|~zwvzzy{oq{r}uz~orr~w|~~{zzv~~~x|~g}|u|}{m~{w~{~|}u~zs{zx~xz~{ws~zv|~||{z}{~tq~sy}|zyx|v{|~{~v}}{{{{zumww|v|v~|fsxrx}y}vyyr{s|wvx}t{~zx|{ux~v~~zzv{x|~pznzsovyu|x{o~{z{u}zz||iz{{wxz~rx}z{ut}{x}{{|qryyx|~y~}vw~{{zzy{y{}||yx{n|~x|xz~|}|{vu|mxy{yzxzx{~{|~ywzy~y{w{~xz|}|m~{}|w{x~}yx|}}}|w}p~{{u|{{||xyt~~}{}~y~|}{||}s|~zy{zvxy}}w}|tvt}}||z}zt~}y||z~x~}rt~y{~sy|xv}zvxyws~~}~wuu{~s~|||||~{~~{~zuzu~y{|}}wz{z||~w}||{~|~z{{|y|uyy~zt||r{y|}z~wwzvttv~||{xzw|pu~~xwz|{}wy{{s~x~|y{}}}ywt|{}|z}ts~x{|xx|}{~}z}~w~w{yz~~zw~{~|z}}v~gywvxwroz}|v|~nzysyx|~q|}z~nr||}}yv~zszxjq}}v{|uzsxvx|syvzx}}zw{{}~xxm|tuxk}}{z|wy|~}uyzu|twq|qyz}yyzyr|}t}xxz{}~yxvz{~{xy}w}zyw|su~_xkwsv{wx}{wm{|}z~r|ztvf|}y{}||st~alwo}k~u{}zjwuzzooxth}}yzx~{{z|lsyxvmt}z{{uw~~{zvy}uu{mq|y{~rot}~ztxz||yc}{mpy~s}}|qp|{o|||auzy||{}zzz~s{szzzlzw}|~t{vvwzyovxuxw{qxy~y|~}w}u}~|{}xw~}z{s{yv~{{mzv||~y|r||r|x}}x~}}{~m}|{~}zz~zty~|~{s~vzwwzyt}|}{{{~}|zsy{m~z{w~}x}||w~u}{}~~{|{|{zt}{t}|vz|}{|x~|~{rw~~~y~|~|{y~~{|z}{}z|}zy|}z~yxsz~}y}~u~}{|u{{yzut|}ztx~{}}xuz~}}~||}~~}~}z~w~x}q|~x~yq{y{}}||}~zyv}~y}}xx|z{yl{rv}z||r}{{~u~}}yv}{{{u~}||}w~xww|z~n~z{~}}uw|}y}}m}~u{~}~vpz{zzzzvwzq}x}{}~vuzyy}{||}}}zz}z|x||yy|z~|{||ywmx}~{z{~~~}q~|k}wq{~z|x~u}z~w}x~wv~z}~{xry~o|uxt|~~ts|yx~}t{zz|{kz~}t~{z|r|yz{~yu{}|x{x}{{{yxy|w||yy{|svut{uszuw}y}w|~y~y|yz~}t~twv}w{~{|zwzyw|}yz{~~~xx~~~}~~{{zyv}zr{rx}x~x|}zs}|~zpz~|~}}~~yxq}uz~rz~{w|xz}}v|v}z}|{}{zyv|{|~{}~~y~}sxw{{~{xz|v}yy{}~{yx{zyuy{}|~||}zru|}}y{}x}||}{znyyyr{||}|w~y}x}yz|yy}~z}|xv}t{xzu|qzy}xz{}x}{|y}xusy}}}y|xv}z|~}{~|y{{x|{zl~|yvxv{y{}|xyh~|x{{{z{w{~y|}}{su}z}}~~|~|~}yts~w{xt}~~}y|w|}{~{xw||yzz{zv}xyyq}~{s~|}||{}~}{sw|w|z{~yz}xys~w}~y{|}}|}r}}~z|zz|{{}|{}o|zsz}~{{x{qwtyyz{}v}~{X}{~~~{zy~}~zzzz|wxz~}znnvpu}|}v~}{~}z~~yz|y|~}y}|sw}y|{~z|x|z{v{usvq|l}|tvzirtz|x|vxs||}~}|zxx}xvg|zz~z|~qty|ys~z{|y~{z~}}~y}v}y}}vwy}{z~zvp{~y~zmimx|||v~r{vx|wtzzy|}|xzx|p~qyzy|||i}{~yuxyz{{}|sxz~}uyv~|{}r~xpsp}}wt|uvzs|y}|{zxxv}~xr|{yzz~z}ygmrwq||{zizwytz|sz}x{~w~w}~xi{njz{wy{{~}rvtp}||rw|tix|ysq|~~~~yw{hxvzl|zqz|zl|wu{xow~~}oyw}u{~|t|zz~}r{|{~sxzx}~{{|{mzx{ut{yxz}|z~r~ry}~~|}yv||{www|~m{x{xzz|zl}w|yy|w~|~}i|~zy}~zqxm|{zx}y~tzt{v|qz~}ow{}yz}}|~zu~~yyuwvuu||{}y{|z~|}zrzzlwy~}tw|~z}w~ptty~~s{y}on}|yx}{y}swxwepw}}}q{{}~l|{{zy}}t|}{}~|~zq{{n}~|vz~}~}}{x|xvy{{z~{|{|{~x|w~|yuz{|z~~zyr|~}~{}~||}}yyz}~}~~~~z|z|{t|~}wx}wy{{|y|y{{w|x~|~{|}~z{~{|~{z{yz}{}v}~|~y{v{yvs}{{~}v}z|}x{wzyv~}{~}}|swz|{t}wx{u~{|~u~{{~}|}ryy}}{{{}zy}y~w}}s}}zx|{|{}w|{yzz|}~|y}{}v}n|t~{v~~~ywk~z}xwz{|qv}|y|}~}u}{|tz~t}{z}~y{x||{|y||~zx{rz|vwu~{||}o~yuy|wvz{sr|g|zv}w~t}|qz||~y{{nt}yzx}}~s|z{|}{~}x{swzzo{uxyz|u{s}vr}{yx}v|zoy}~|zzu}y|tvw}{~yo|r{{xx|w{}s~z{y~~{|~w~x{uz~yx}|xs~|z~x}v}x|v}yq~v}|w{}y}tvr|~z{|~wv~|zz~w|t|}|zy|}}yv|uz~{}uy}ww~su|{ywy}~}~v|y{}xyx~}|~r~~~~}u~}p{vm}|y|{~wx{z~{}z|~|t~|{|wyvy}x}~s{x|}z{|n~|||yuzv|~uwx~|xwv||{xpx}~{|{z||{{~~|{yrxx{xw|{|z{}v|t~p{z~rxxv}~{{|i{qz~uy|oqv}zx}|vt}z~}}x~~~}o}w|yyx}xvwyy|xx~|vwt~xy}~}}z~}}}xz}|~w}{}}|||zy{{y|||~}s{y|v|~z||x{sy}x}{w|~}}~}suxwr|l}q{}xw~|}{}yq{{y{}}tvz~xzsy}y}xv{||~|||~||wy{}}w~||{y||o|{z}yyu|lv}}pi}|yy|{~z}x{}y{}|ywqzy|{~|tx}y~wpoxsw}zyyyz~{{|xxy|yz~zxmwzx}{|wryt~}t|}zt~}{{|~{|hyxqyyx|y{}r|s}zlw{wyzu{v{z~zz||}|~xw~{{y|~|~sopxuvtzst}~~{}x{y{|~}w}yxuu||}~{}{s~zwsv{|rn{}zx{~t{k~zu~}z~|z~}|xv{uxxy|z~}}v}{w{{y}~y{~~||}zy{~u|ylg{zx}yv|rx|{w~|my}x{r{|y~tz{tw{y{|~pyyr}|yv}vx~}{|~|syvyzw{t~~s{}uy~~z}~{yyzuz}~{}{~}rin}}u~~~}|zt}z}|{x|ur|~||zlzyxx}y}}s{v|z|yvzwz~~|{v~|}o|{~|wz{k~srk|zx{x}uz|p|ryz}}{}~z}{xv|~xuto{t|~us~~g{v||~u}}~z~xwzxy{orx{{~~}z{z|vvszpv~y}x}zz{{uz~q}{p~szd{|ypx{r~~y|~}}y~{u{{{|y|zxypk}x{~|}}wz|~wgkfyyv}~|x~gzz{v}}x~|tyz}y||{~y~{~|{p}v}}}ux}|}z~{zv~p}|ty{p}{{~}x~}i~yy{}}x|}|~l}r|}}zx~}zw|`}xy|qur|}y}yv~z{|vyys|~w{}us~|yz|}z~}w}w||~x}rvz{|~~z~z|{vsyqnzxe|x{}yy~~t|y~~}|uzr}u|z{~y}{{vv~}|}x~tyxz||{||~~u{}v|yy~|~{{wv}w{~{x}}y~u|y|~~uy|xy~{tz~{u|j~vn}q}zzzy}}}jqvzwx||x{}|u|y|||{~s|z~{h|y{~}{yzxrs~wx{{yy|~{y}{}}}y}on~}sfz~~|{u|xtz~v}{yyyttzw}{w}}}||n|y{~~vw{|{{}x~yzzz~}z}sxxt{xyy|zy~~uz~|{vzu{{}~xpy}{{}yw}}v`~}{|}}w{zvu}{|x~wz{~{}}{~~}{vst{|}zwyy{uxw}y|{}v}}|}vtx}}}zt{{~zy~|||~{{vzzzz}|zx}}||x}}zwwr|zyx||~}yx}y{w||qq{z|~}oz|{u~{}~{w{z|||z{|~}||~xz~~~|z}||{|xwz|yu{|x}|xy|~|{~|~{zq||}~z}zzt}~z{z|}}yxvsy}zt|}{s{v~||{w|ur}|zyw~|~{{vxz}~~|}rz||}twy}zy}~~||{z}uyxwz{y{yw}y|||y}zs~s~|~~}z||{|~}{|w|s|~{v~||}|t}z|q~|s~y}|~}|zzy|}|~v}}{~|{}|yw|s~}~x|{x~~w|}{y~~ywz{}}wy||}zq~yu}}|~zu}xwxzzz}w||{}x~|{|{}x{{|~~~uz|{v}{}}}zz{~~}wsu~{|xw|}}x}}~zzw}|}|}||~~ywzz|{z~y}}zw|~}y|{z{v|zwy{~}||}~xw}{sz|x}x~y|~}}{z{{yyyyzoxx~zxz}|}~y{~z~stwuxzx{v~yx~{}zywz}zz~}{yzw}~xx~{{{r{|{yz|x{~z}{tyy||x}}~}y{{wx}y{|uy}z~s|z~|pu}~yr~~y}y||~||y{wz|}zv{xwwuy|z|~|}v|~~{z}w|~~{v||x}{r}}{}zwt{x}|}y}|}z~wnz}{|z|w{xv~~~wu{|sv|~{z}w{~|vxz~~szxz}rs}z|}{}yt|w}{tuu|}uy|zzuuzz|~u~{|{}y}v{{xq~wzz~y|w{~x}{xzx{}~{r}|sy{y|{|xt}zw~~p|}}|{x~}|}tz{}{}~~|yy||y|}xsz|xww}{zy~{pst~}y~z||z}{{z}ur{|{}z{{n|}{{}~}xztz{}vzz~|syzs{~s}|n|{~uyyw~zzyzv|}}{z|xyvwu}u}p}z{{z}yxz|{z}v{~u}~zx{uw{{}x}|~|y~{{l||w}||yz{z}z|~w{}}{}z~|yz{x}wx|{z~~~tx}ysw{w}|z|||vywzz|}uyu}r|z~}u~rl{v|zv}~~ry~t~x|yw{~zmyx{zx~~}xzzyyv~mv}~{|~dq|}}}z~{||{xqyzuwuzz}y|uz~}wy~~urz{yw{|~{w{vuyyjxwxywy}~~{}}~x{w{}}y~}}{~~{zw~txzv~||x{v{}z{kzr}{stc~z}v|zx|{|ozw~sx}vyy|uv{~r~}~vxz{~w}yqvi|vq|w{|yr~y{yr{|z~wy}v|y}{|~qxy{x{z}}y|}wx{ym|{~{yvw{{|~}{{wz{~l|}zuw|{xs}{||nzxu{y{~}y{yr{~zvz||}y{~}}suyz~uv}}}zyw|~|}y|vz{|vz~yuz~wy}}}~|y{z}w}|q|{w|{}y}~z~xy{}zzw}}o|~x|w}z}|~yy|{z}{{y}}v|}z}~uw|~u~~|z{{|~zu{{w~}yr~yy|}}}wxu}y|{zx{u|x|{~zu{y}|yv}}z|~}o~|~x|t|}x~~}|~|}x~|v||z}{~}rut}y~wz~y}~z}}|}z~y|zw~|}{|~zz}zyy{|}y~|x|xyt{zy}yw|tyxxwxyv|x}u}z}}xwz~{y|ut{|yuzxz{~{~{|{~}wxv}~}|~{{~wywzwy}z}|ys~zuz~}{yz~{y}zw|z}w{|~xprwu}}xw|y|u~s~|zzz}{}{|~{{xvv}uuz|}}}zyt}xw~~}|z|yu~}~xv{~{yuxxy|}~z}z~{x}xw{zqx~y~{yrww}{uyq{rv}mz{{~{}|xy}yuvr~wzryx|z}}~~zy}~xwy}~~|xmwz~y|z|~x}~|q}}|zrz~|yfyx~v{|{wxzzr}v~{|{{|x|yv{{~sysuww}uyzz|}ys~|{ws~~~x~|w~}t|z}|~yzvw{~u}}}z~|~|zq{~z{~~~}{tz}~~s|}}u{w~|x}|{~}~x~{tzzvztwxzzyw{}zx~~w~~o~|uz|{y{xv{zzzv~}~~u~rx{}xxv|v~yywy~~z~txyzxzfz~|~|~}z~}|}nz~zyzwyyotz}{}x}~yk|}z}|yu~|}~~w||v}zy|z~y~xzvy{x|~|}|x}t|}}z}l{}u|}vzw|{w{zz}{zz|{vzw~{c{z|p||x{~}y}yz}z{{}~|}tx~ts{z}}|q{y}t{zr|p}||v{z|}|y{|}|{}}~{}w~utzzwz{~|v{m}~y{yt}}|{}z|wnyv~zx~xzyx{|y}}}~|v}{zxy|{w{w{yq{yzx{w|wyv}||}}~~}y~{t}zv}}}~x~{}~~|~rx{t~~~}~xyu~}vy|z~|uy||}t}{yyx}||x~}x|}}utp}|{zu}u~uuz~{|tm~|vu|x|||}|w{oyyy~{ytxuv}|ww|vwo|xw~i{ra{{wy|zn}rzzw}z~vs~yzuyqvw~|}sx|}|{wxvu}{w|w}z|}x{h{{|xx}}x||u{t{}|w|zwv{m~}~vyp|~yvkx|x||~|`n}v{u~xG|~s}x{zw~~~}x{s}ys|~}{r}Vr}z|{ywv~yz~~||}zwsu|z~{y{t~g}xz{mz}~~|~{}~ww}kv{wywyysc{{}pz|{}zr|zyso~{gmo}qtyuw{su{{zyyz~}{{q{zwx}pxm{tvyw~zt{tw{v~st~s|}vt}tpyx{{}xi~y{}y}}tr~~m~Rzxu}v}y}}r|{ulqy|py~|x||ox~}||{|tu~zy{ur|vz}~vxsvnw}x~~z{|}}~~{{|x}~}}yy~~~~x~{}~qyk{~~xx|~}vr{xz|zy}}y{t|}{~x~|}|zzow|y~z~x}|y|}}~~{|xs|wv}u|}u~zzvszv~|v}x}~|{~}s|{|}usx{{~r|wyt}~zpnx|xyz|wy{vv||}ys}~u|}zy}{|o}}{x|zv|}x~|}~y~r|y}{t}|y|y{w~|zv|{ux|s|}~yx{{yx|yxw}uyy~zyxw}}v~v|{|u{|xzu{~w|}xz||~rx|{wx}{~v|}wy|r}|~w~}xtz~v||~|~~|o|wx}xxvxy}x}{v{~~x~y{tovv~kstzwyu~|ynzzzr}~v}~~{wk~{wyvw|xk~r{u|}~}~{uv{{hwwy~yux~t~q{x~v{~x}x~|vx{zwz~}~tzu|zrrys|{uzz||wz~rvu~}tyo|v}yz||~vl}yvu}}{|t}ttzy|y{{qyvww}}{~wugr}|x~x{m}a~zay|~zxv~||ssyu|~vzs{}|wtlv~y}}|ztvw|}soms~y}~y~u~xsvtywtwxvv}~z|dz~z~~|~}~|}y{{yu||n}{{~u|uqz{u|w}~~x}yy|{zr~{xz}ujy|u{iyy|uy{vt}uymu~sy}~ur}x{yuu|z{|{{ytyyuwyWx||}yyzx|z}yzx|wy{v}|zz|xrw}qz}ys}~|vy|}z}~|~yz~~|wz~~|yx|v~xxuzr|x||{{|~{~}|||}|y}z}|}zu|zz{~{x~z{|~ywv{}zx{ovw}}x}v|}}}{{{~vx{x}}v~~xy~~}|~}}v|z|}uztyy~~yw~}zy}wzxw~v|{{y}{}{~~~y}|o{~zv|y{|~wuzo~{~~y}z~v~yxxz~z}}z~|}{z}x|y}{}{y~{y~s||}t{||~~wz{~z~pvpzw||y}y~~vzw~x~q}w}}uzw~|{|~w~~{~yx|v{|||}w}y{z||z~~y}~~}{~}zxzz{}u~xsvxty|wx~}}~}t{ywoxnx~~|{s~x}zuy{tz{}}yx|{z~|z}}{y{~x}{}}~vt}uyz|~y}zy}~v|wz|s}pv{}s|}z}~|x~}t~{~z~~x}y{{}{}vz~~tv{~y}z}{zv|}vyr{x}vyx|~}|y{o|ztw|yn{|{z{{~~x|x}}w}~wso{|y|}y}wqvsx{{{x{ur|gztyu}}m}}}~}y~y~w||~{js{~|}~}vaw}}zx||x~{}zupz}}~|t~ywx{z{|{|}|x~x}}y||}}ww}{yx}hzxxz}z|u{z~xw|y}z|km~yv|y~~w|ux|}||{y|ztyz}z}}~{||~~|x}u}v}~}tt||{wzv{rx}z~~|~wwxtz~}}y{v{{v}~}|zzr{{yz~y}y}z~~y|{}zsx{~~{z{wy}~}oy{yx~{z~o{w|}}~xwv||}~~zs}}yyssv~{wyx~{}}|z}|{t}}|zx{}~y}p}wrz{{z~wzt|}q~}{||{|vk|||xzu~z|}}||v}|y}x{w|yxz{|z|{{zt||yz{~{{}}oz}ry~u~~txwz|wz|zyt}{~yr|~~}{}z~zv|w|yv~~}x~z|{{~zs~|vy}|tx~~|~{ry}}~v}yxzt|zr|zyuw~}|xzvzz~{x{x~y|~v~xt~{}z{ys~{sz~zy|{t~~{xwu}wyv~~|~zz}t~{}zyxzxvs~{zlyzz}x|||{|vu|yyy{~y}{{z|||p~zv{u|~|~~|~y}{zyxy{u}x}~{}|y{~~}|{w||wv}qzxux~s~{z|zr|~}{u|y{}{y{~x}{{uzu}~jy~y}~|{ywqz~vy{}yyy{}~p|}}nv~}y|u~z{yxz|{}x~~zy}}~uwz{w|zsy~x}z}y{}{vz|u|{{yu}z}~tt{xp{~wt{{{q{}w}yuyww|z|zw~~}~sx|||}~xz|}~|}}}|~yqu}zm~{~zy~z{ss}}y}v~zw|v|n{}vwzv{{~x{z~}~uszxy{{|z~}rt}|t}|qyr|w{xyxyv~w|x}v{}}}jxxv|oyyxzz|tt}zvu}~}{t}|tw}{}{{zn~~x{ywtz~{}|zrxw~{{w{{z~~|z{|vzv}|z~xv}xv~wwzs|~~z{~t{vy}vy}|~}zyzvv{{}x}~}{~w{}{xt}}z{~|y~v}zt{ywzr}~{|zv}}~y~}tv{~||z}}{x}x{||{~zvyz||zz|{z}z~x}xv{}{|vtxs}~~~z{~ytzw|}zy~v|{~zzxw}v|y}}{}{~~~xxzxx}~|zxxj{|r~ywr}y|x|yzz{}{xx{x}w{zyy{{|~zzoz|u~q|~xyz~y{}}|t{{z||x~y{}~z}z|~u{x|txxtzzvx}~||||y}~{{x|tszyx~y~}y{st~{zzx}}{|}}m}txu|t~n~sy{~~{xy|}y~u|}zy}t~xz|}~{~zxv{ru|}~}}~}x}|z{{{~{y}vwz~w|}|{zvy}~~y{xk{{~}w}zr|~u|x|~z~zy|y}}|yz}z{y~{zwo|~|y|~t}p}|{y}r~{~nxx|}x}y{y||xz{{xx|}|}}|}~y~n}v~}zyju}z}|x~wzwy{{}}xw|wl}~w|x}~||x}~yy~z{}zw~sw{~||q{yyzw|~{}w|}zyx}n~}w~{|yvz|y~x~|z|z~x|r}y}~su~~||u~zy}x|~yz{x|||zzu~ytxw}~q~{{{|x{x}|z{}xrqw}wz{}{|}~}ny|~}|szz~}}||~|~||vz~x}yzv~}r{xd~x{yw~}y|}~||{wz|w~t|~}{hy{y~z{vz}x~z|zyv|zy}~zx~}||yy{~y|zyz}}t|~}}ypx}|}}z}}tyxu|~uzw{|yw|zw{wz~~{u}{w~|~{w~u{u{yzw|x~y~y}}z~~~}|xw|{|x{{~yw~ztwy~{|~||vz|xy{||wx}||w|~s}}zw~z{wzz||v|}z}{~z{wv{y}ymv|yz}}z~|yvyw}{{{uyy}}||zpx}}}xy||yxyy|rvv{~}v|{|{}s{~{v||y{xz}|uy|{mxzv~v|w{y|vz|xz|{{y~}|wyz{||}}}z}txww|{yy{{{x{|}xup{}v}{x{v}}~zyx|{~{}uwy}|||~qs{}y{v~}zv}{v~}v{|~}}{{zzxzu|vux}}ry~~y}}{~{~~~|}v}{v~~}|~{z}|{}yv~sx}|y|}lZ|kzy{~}w~z~}z{{}s~t{{vyw~{v~z~y~|}sx|}~|x~}y|l|}{zvu|{|~zz}}wwu|m|y~y|}~z~}}{tx|y|~~~~~u|xx{vwy|\v}u}x|{|xv~|w~{{{|~qyryou{}~y~yy~yyyx}{s{~z|||}{~z|s{w{i}~}z{{~|~}w|~|~}w~rwzw}y~z}u{{t{zqy{}|}|}y{hv|z~}s{z|}}|zy}~||s{|{|yz~}{~}}|~xs~{ru|}||v~{rvm~||{u|z}t|}}}{oux{zxwzv{~j{zyy|txzz}p{wz|~zxz{||w{~{}||{y|~zxx~yv~qywowwrzynz~{}|oz{xmru~v}zzp{z}{|u{}zx|}~~{vzx{}xn}~y{ur~xyx|}}~z~|~}}}|qyvw{qn}y}|{y}q}{y~~{~w|zm}v}~wzyw|}}{}wpx~tswv~{vzo{~v{v}~|x~wz}yx{}{~sxzzy|ww}{wu~}~{xz{o}}|n|~~{~~vq|~}xs|wwz{w}x~vv{|mz{{~}z|vwy}twoy}yxuz~~|~}w~vuwy~}|}uisx~yxzzy{~~y{}y~||zwy~|}u~w{|x}y{u}z|vwum~}}uyzzot|}y{x}z~}xto}}|ywy}u|{xv}~u|}y~qy~vw|{z|||w{z}}}z}w}vx{yx{}|~}|uzyx|z~zy~tqy}|~|~y|t~yvz}o{|{srx~xwz||w~|y|~~~u|{}~}~xyz~{}sz~~x}tx|zz~~|}hzuvu{y}xyyx|z|zyyo|}rwz{xyzxptsn|uwx{yz~z|{zw{t{}~{x}xw}wx}{}x}x~~w{x{}}{y~{zx~z~~z}zu|yx~{j{||vz|}{oz|zx~z|{}~~z}yt~~{{|vxx|z}}q|~}{sz|~q~wt~xzwyy}ywyyxyz~|{{y~yz{rwx|z|xxzzx}}x~{zzr}|||tyszxr~{xvy|}yz{w{~q}{|v}yxv{|{z}v~x~}}x|rl}~uzw{~xv{}sy}|~}z~s~}}{{wzv}{u{z~e~~t|z}}zzw~}v}{uxrw}~zw|}x}~~|{x~~|}z~}~}}xxt~z~|q}|w}~xzv||uwxr|~y}{u{}}zt|}s{yv|zxv}y~zzz}y~zzs|{}z}~{|y|||}|{~w|{x~uy||{~zy|z}z{{zvzx|zxy|{z~yw}zry{rxywwxwz{~~wwxxw}v|xzu~zx}{qu}{x~z~}{~{{}~wt{}{vs~{}g|{}ys{|}}|}}}}}szzv}}w}z{{~~~xv{yyw|y{{xynwy|~}}{vt~{xz|xx}}~|{x}y~y}z~}zzx}zjv~yzu}zy{wyx~}xy}{zuy}vx~|ww}~vwmyv~q}z}{{|x{w|y~wy~|x}{}|}~|yz{~zz~~xw}{v}v|}w}x~{~}z{~}~|}}m{}{r}{z~}~~~y|zzypx|z~{v{|xyur~}{}}~w|{py~xxsx~x}y{~w~~{|}s|zzxw|}{{ywzs|}s|{x{yzz|tzz}z}}wv{zm|~|z{{z|{~u}~}xw{s}~~t{}zz|{{l~ozyzzxyz{}s|z~~w{x~zy{~}}yuw{yvy~||~~zxy{{||t}|}}{|vxwu{|o|v}}~{w~z{zu{{z|~x{|~~x~z|y|}vzw}vv}w{yyz~z}~||{~{}|n~z}vu~xux|yw~z~zz||z~z|}|xvx{wz{zx{zr{}ww}|~~tyyzy{{}rzxz|~{}u}wx|}|y{}}}}w~}n{w~u}{{y|~n~~zy}{zrv|zz}qzqy}|vz|z~z|{{|s~v{y|uyvtx~~}z|w|v}~{~{|yyz{}|}yrxzy}~}sw}x|~}y{y{{|s~z|{|z{x{|}z}}tybx|t~}{~~z{xx~~{~}||}{t|{tu|vy~~}ymzzr{~{{}yusp}}}yz{~}mv{|{oj}z~zzw~~yz}~~|z~zz|~z}~uwr}~zz{y{x}|}}~|~y~z|}{y|}{|xx}|}|w}|}y|w}~x||~x|vz~}}~|}uz|}}~}{}z~yx|~|{}}{{|z~z{zy{yt~~{{s}~~v{|{{~yz~|uy~us{z{}zx{y~~|yy{z~rz~|||~xu}{xz}yz~{}|v~w}uzz|yv~wzw{v}}z}|yz}~zx~~y{||tx{v{x|yz|p{rshwyu~|z{~|y~}wy{{}|}~}z{~|wzx}vtu|{xx~}}y|yzw~~{y~~y}}z}}}~wy|pvw{|sz|}{w|{}jvu}u|xwxuz|}}x}}{vz|w}x}v}xxyv~}}}m{}{w|}{{vyzy~{u~qz{}w{~uyz}|u}{z}~{|w}wv|~u~~{~{w}||}~|~}~|||xz|}z{}{x{{{{tr}|x}}|u}|~ywq{{tq~}y|s|}~|{}{y~|~|}vu}xy}{jx}|u{w{|w~}~|w~~|y~zr}svyv||~z~u~}}|yuv}{|z{~|yz|y~z~pw}x|xwux|z{{owy~yz{{~w|~t~~z}}|w{t|~~|uz~~}w{}rv}}{}x}|~}{z||}y|}}{}xz{ux}|x{}x}qzp{q}wy~}y{{{ulqv}{{}t~txpv{uumzuu|}||uzs}u||{}|y|~}}ty|{{o~t}wtx{sv~wyzi}yy~t|{rzy~~|z}vsq{yt{w}x~~}|u~~~}|zy~nyyypyzu|~{z{z{zv~|yur{q~x|z}~~qxyyzyxxv~xz{z~y|z~~x|y~}|~sx|nx}~|w|}}w{w|~|{|yzzx|}v|{y{yw{{}~lz~|{}}v|~}x|u|v{{|zz{~w}yx}yz}{}v~pz|~xzr~}z}{{zu}ty|zv}z~y~}~x}~|~y|zy~q~uu|vx{|}xy~}z}y}z|{tx}w~~{zp~z{yssx~w}zo~|z~}{u{|yo~zxw~|}yvy~||zy|w|{{s~qyz~}}|zxy}r~}}|v~m}{|t{zzmy{x}|xy|wz{zyy|wy}{v~z~}{}{}u{}yy|vzt|zyz~~}tz}~}{}}}|~z}wy{z|uy{wuwzzz|yxsv}z{w}oy{~}z}|yyzky|y{~~~~yt~r}zy}|}}y~}}x}oyu}u{~}||~|w}{}z{vzx||~yyy}~{vozyxxz|z{{z|}{y}yr{z}~xxv}~}{yy{yt{{|wz~}|}xx|||{}}~~{|z~|wzvwx}zyz~y{|{}}yx{~v}z|w|~{~t||}~wxq{z~o|xxvs}s{yy|{|~xz|}}~}~w{}|}}zp}{w~|}}}}z}zsvt{}}}|q|x}q}~v}}}{z~{z{~}y|}||v}~~{}||w}x}|{xv|z|wz{y|{yp}~|~{}usvz|~|~zwz{{wx|x|z~zzy}|vv}|o|z~zy|zx|x~|zuepus|vs{z{x|y|q~luyc}}|os~wzr|u|vw~wvv~~psvw{xwzxx|}yzuv}}{|imz}}|}v|{q~wmsxxwyys~{|Wqz|zvuv~v|{{s|~~zvpmz}yx|}s}~p}uzp~wn}m|wss}}|~}wrzy{|m}}v~{gt~|zy{-|}yzm~x|uwxasky}s}zowwxzu{wk|wv~{y||quzxzozh~yL~}|w{m?qrztxwvtywwo~w~|w{x~}zy}xrqlv|{~~y{~sy~y}ngnpoqzx}p}ylw}~fw~~{yyw|u}y{}|sz{{vnyw~wpnz||di|low||vz~zb~|}uwq}v|~{g|y{yz~ysv}z[syzs||yvz}|z}ruw}{~z|~x~}uzy}yzyx{xs}~~~y}u||{vu}t|{yw~}{~}l|~}{}~v{z|t|wp{x}}}vzt{t}f|ty{nxu{~x|v~lv~qwwy}xyxnx}zy~|zy{|}|v|qxuszs~z~v}|{l|}}}}yu||z|{}||{w}zz~u|{z{xyzy{|~u{zvyyxyz}~zx|}~v}}|vz|vy{|{}yyy~{y{}|~wz|zr|~|xyx|wy~u{}|~w{~{|}m|s}zyt~{}~|wyz||}~xzy|}uxzyty~}~~}r}y}|wqyuzzvv}~}}yvzsxv{~~z|rf|zvq||xz}vxw~~wzu}ruh~}w}iuxx{|}{|tw}~y}|u|q{x||{{{|w|~|w~s|z~~{~x~|z|{yx}}~xx}}qz|}vpgtt|xr~}||t|dy{|{s{wzyx|v{~~~r~xz{|{}ryy|su{{|}~}z|{}sxuww}}|y}~{|x~|~z}|wq}{yxz{}}|z}zx|q}|y|}~~|zxyzu~zy|kszuruxr}{~|r~xuzw~{}oyw{}~~z{~xz|~|~|zvxt}}{{w~{yty~sy~|w}~x}yx||z}~}|}~tv~{y}}~x~w|~sv~||o}}~ztz||yyzv|xyszz{oz}x~{|z~zy|w{|x{|xwr~{{{{}|zhu}ww}z}~|}}{yxzy~~px}~}u{sv}}p|z{w~zh~|{y{~}zx~|}t}zq~}xz|~~{r}ysxw}ly|ywxu{}|x~wxtx||s~r|}pwv}_x|{}xw{z{u{~z|~xvz}vz}pqvxzsyvz{zuyz}~p||tt~v||{p~zz{~Zsu{~~~h}uq}x{{u~|~m|~{r}w||vjx~oqw}}{ux}l~z{{}{|zzw{ve|m~{{~x~x}||~q|}|~|w~{yy}~x~v~|u}}s}udxz|}~wx{{s|ynyz~uw|}rhq~uiz|yt{ymrv|w~by|~yo~zsmuww~}w|v{~vz{nw{{jx||y|vyy~{x~wxwvxz}z}r{|n~}y}e}urxz}}v{ux|zz}}zz~ztz|~vv{{y~tv{s~~|{}y~~tzx{x{~{w|r~~{z{{}yy}zy|~w~u}r|wv|~}uvzt{zxt|xux~vwzw}~~v~}~}{}z~|z~xz~w{~{~z}{tv~zu~z{}}y|y~{z}}}{lyz}zy{~wx~{t}x|v|~y~z~yz~xzx|zyz{x~{}}}}w~}}~~~zx}{|zy|~|zy|~yzx~s}z|}xs{wsy~xwv|~{~}||zs~zyv|wy}~|xu~y|x|zy}}~zw|xtzwqy}~}}}vs}yx{z~|~t}zv{ywp~x{~upi|z|z|v~{{}v{{x~zu}~{|zk~xy{|}~|~~w~}}y}lvxz}{yz}z~{sy{|}}||{{{|}~sxzzwxw{}|xzulqPtzyvzvyz}szz||{tvszz}xts{v}vxtuwy}zz|z}qzzy}|yzw|zx{}w~zw}e|zp{z{|{qy|{srx}~x{|p{wxv}{{|{tq{wux~{||t~y}tu|y~xzyyjmu}yzs|z~~r~~}yvv~y~{ujr}|w|}|zozvi}sq~{y}zxyvs~|xxyo|vxy{|~~s~{|{}{~z~zw}yltxv|vqT~xwp~~|{zu|x}vxtuu||{~q~~qx}yy~{x{z~~zzr}su|pwzsv}x{|yf{{{}~|}but{w|ymuwvqjzzzyw~ovz}u~~|}yxsyxq~{o{~|}w~m~}~wk|zvyzsz{~xlu|v|x{vxwz}z{y}{~||{vn{z}zsy~|u}|||u{}}|{~y}y{yzmyztn|{guy{}~x{y~wvyx~v|wzxxm~||ny~~}yx~{{oqsyx|r|s}~}~|z}u}}}}zu}t{~|~x}~tv}}y|wy|zwy{u}{}{y]s|{xzN|ts|r}xxur~v~w{z~{||txzzt~x~u}uo~z}~{}|~y|||z}vvu|n|w{lspr}v~~}{{}~{|v}vw}yvz}zwuy}}yw{{kyuytu|uveouzxwyws{j~wwyz~y~|~|zzy}uo|x|{yr{{{~ywtp{||]p|}|xz~}z|{tw}|}~{}q|~z|h~vxozzryerxtxw|u|x}y{|w{w{{|wv{s}~zw}~}|xx~|w}~~y|~|{|}zxzy|xq{|n|z}|zu{{y{~vtw~yz|yy{vtw}~y{}}~t{{{~|xv|wz}~z}syw}vx{s|~}zx|}w}{||~{}}w|{y|z}|x~z~}{{|v|v|}~||yz|u~|}v}xz|~w{yyz}y}wws|~}yx{~~~~||{}xp}z~wy~~xxyyx~~s|v|x|w}xyw~{w~q{{zy|}s|~x~~zwp~x~}zn{xx}|v}||~sxzxtz~|~{~}~|{}z}uq}||~x{y}|v}wvx|}}|}~x}~~y~x~}~wx}v{xr~sy{}~||w|xyt|yxtvzz~r}{{{z|yt~{zyv{|{|hsv{}u}t~xv~r|~v}}wvyy|y~yty{w}|}|{}y}}yz~~p~~}vyds{}x{vq{~w}{}~}wqm~u{|~~{~|x}}~}yw{}{~{~w|v|~u|z~www|}z}o||~xv}~~x|ltyv}s}|~y|{{zz|}~}}|u{yz~y{wxzy~}s}|||y{u~z~{uzz}}|~}}v}~txx~|tyy}|o|~xz{wz}}}yz|}}w~{{s|}~kyw|xvx|uy|rv|}v}z|{zx|}t{~|nq{~~yy|}~}n}um||~w{y|z{s{xsyy~m~r{|zs}kw}cq~|o|}yy~|}sq{~p{pzwrv{{sswv~|vszz}{}{uznyww}~~|{{~{{|}w|~vw}}tt|~|zx|x{}}}|~yxw|~~tu}vx~}zv|~zx{|}}~~{{~y{z~r||}|y~ym{wy|s~~{{}~tz}t}yz|yw}yyssrxztw|x~ztu}~v~xrv||}~sq{|r~}ytz{{|}~w{~|}|z}~yqw{t}}}zr|{~}mwuwx~|~}~~~znyxzz~{x~zspm~t~}vx~w{z|zzzx|~}yt~{zqyvq|}|w~w{uwz|v}||u{|s}zx~}}w{y{}|~~}ycu{z~~zwx{x|~~|~y}~||z|yzxwzwyxvz}{}{y}rzwyz}|ws|}~}|{syzwz|~wnu|z}z~|~~{}y~o~}yw|~}~~|{~~vy{{z|zuxy~wz|{~xz|xyz~}y{~~t}{zru{~}~}~~x|}}y~ws~zlx|yzy|~wz}ys~n~|x{}{}x{elxw~e~yrz~dq|z~zzxyywyzxuz}g{}y}yvsx|{rz|uwtyywk~w|x~z|||yrx}z~}pv~zyy{||{{u}{~}}{z}}q|~|psvy{z~~o~}t~|~x{{t}~vy~|j~}xz~w|~pr}uz~{y~y}y|{{v~||~z~y}~{}|r}}{~|{~t~ty||v{}xr}|||z}zssws{|yy}py~s}x|}}z}~vx|~~zy~z~~{u|z|x{x~|~vzvy{}{~x||~{n}z{zx~w}{yy||x}|}wryvxwyymw{~y~zw|v|z|{o{~~yws}~{|v}z~w~u~ywywzvx|~zxyx{tu{{xv{w{vuyzzyu}{||w|{{w{{~u|~tu{{~}}qrz~|uuv}~z~st~wz|||x}|{|zxsxy}zy~}x}sw}q~}{}q|xx{rx|}ss{~{|{}}znwzy~ts|}}|zz{v{yx~z{{}|}u}|{}|utxwpvq|}xy~uf}{v}{{s}q~rsz}sy{}{ry~y|{kzwzuhvz~|wvwxv}|}~~z{|~}{n{py|xxux~}ww~~vz{{{q~~t{{|}~us~{v|}syzy}~~upv}|{w~doyws~zwyxxz~|vo|tz|x{vxz~{wkz|}x{}x~z~}|~wyyz}||uuv{w||xvw}yyy~ry|zzz{o||}~~s|z|zz~{zz|{~x~~}~{|}~~zw~|~|~~~u~}|]xzwq}{}z~|o{~{r~zw}uwz}{|w{~s~}z{~{}}}}||s}~~~w~~{|t{v~yypzy}~~x|}}|yq~}~p}y|||{y}zzzy}y~{~y|z~y|y{||}}z|sy|y~t|pv~uv|}}k~yy{rww{}}{y}zz}~{}{xz}~xxz{}z}vw~}|}~}}||{|{txzyv}}~}z{zz|~{{xozxt}}}|}~q}}{y|||~t{|~}m{xvvj}|w}}{}u{nkyr{t~x|v~}|z{uyt}{}{v|{yy{{tx~zyn}~|}}}}}zt}{q~so~z~}xyx|x|{|yp}v{}u|ou|zq|{}}~}|{v}|z{n}{}}{y{}~yqzyrz|~}yv}|s{xz~}|z}}}}{xy}xz~yugw|~xu{wy{}yx~yxwxv~~zx{nzss}z{}uyvz{uyw~t|t|~{zw}xy||y}w}wqxs}ryr|xyzv|q}}}|~{|}~{|pxyx}~u|}}rsm~}{}u~vf}~~xu{xy{v{s{}}ys}w~y~xzx~qtz~z~~xzow|vy~|y}x|~{xxzxqx~}}w{~|{~|s{v}y}|{z|yv}~~|t}xr|wty~}plrtx{xz|xv~}~{pn{ws~wlz{y{{|xrwt{w|rvzpu|}vy{zu~yyz{~|z{~uvyy}srs~u|{y|t~xxyzw{l~~{pv{bv}yww|yu~s}|y|{zwo}qv||~|s||{yztyz}urwy|}}~~qyuyz}p{|yzy|{uw}}zvzuz}y}vwmyz~|x|x~|xu}w{|ovzvz|~}s~{|x}vuz~~|k|zmx~|zx{oxrs}xe{yttx{{}y~{{}|}qrLyn|mtv{u~~~|w{w{yt{{ux|z}}w|r|`t~v|yz}u}lws~v}z:yyy~~z|~xw}]xwvy{Q|}z|x}vz{zrwQ~~wz}|x}m|~quw~|z}v|}u}r|{{~w~zv~sqx}}}|}zyv}|}~{x}}zuzy{zxy|xu}n|y|z}|wd~|||{py|x{}z{zvxz{}}x{~t~x{|y~~v}v{}zy}{{{|}{|z~xpzuzwo}~|{{|{x~zs{{w}{x||x{}|zwzu}yx~y|yzm~ux~}yq|{p|~w~z|yv}xy~{~{}}zt|~{~|~zvz}~|{|z{q|z{x{|~|t|y}~{tx}~{~z~|~y|xy|zuv~|y||||}~w~~}|y|~t|vwzw}{yx}yxw|u}x}||}yq~~z{|wou{zzzw{z|w}{ys|{||w~qw~{y{z}|}|v|vo||~{|~~~v}wz{~z~|wzz{}zz{zx}y{w}vtw{y~}|~~}zz|o}xyv{}zy~yu|z{x{~{u}~}|~x|t~}zu{{vp~~ww~z{{z|~}|h~|~|u{|t}ut{{z|hx~}|~wu}~~zs|wzz|yz}zztv}}|}}~}z}|zuy}x{w{{|}w~yy}x~z|}~~}~w}{vzt|yz}{vv|yzyt}|~}~y}r{}||}~~vy~}yxr{x}vy}{z{zy{y~r~y{z{}{yst}~z}{t{}}s|~|zwzy|}}yzw}}wv}tx|vz{uyur~qy~{tr~y}||~~vzo~~z{~}o}x|}}}}uvu{r||~}vzyz|z~}~x}~~zs~}}zxxzy|z|}voxwvz|wxs~zvs{yy}{|{~wqx|}|x|~~v}}v{}{~{m}|ws{wx|}vxxy|~x|~v{{{svn|vu~t}r}}t}t}|ytw}~x~v~}||{|{ztpq{|uqt}m~z{y}wxvzx{{v~|~~~fz}xy|t|vu|w{wt~}wzxn|{~zx{{{|ry{~|~z|u~~n~~i{~zy~y|||zv~y}x~ov{|z}vlr|t~x}{w~yvwxro|xyt~~s|~vuyy~ys|z}~uq|r~~~{ys||{{{~|zz|nw~~x}~~yzywuw{wyp~{z~zw{pz{}xx~~s}~}pw{z}yy}pz}~tv{qyyzW}}y}yy|o}z~wy|y|wuu}qsz}}|r~tv{t~~tsv|z}|w}{~x~zn}y{sxvx|~m~y}u|w~u~}~}{}}}zw~uy}x~|{y{yyz|~|{y|}y|z{}}pw|zv{v}y}}|z~~|{yx~wx{v}}y|wz~xz~wt~~}~wz|}x}zy|}}zz}~~}}~|z~|}~m{|~}z~|z|zz}||m~x~x}|~}v}{|v}~}xx|~~y~z~~z~zw{yz|~wzz~z{~x}|{ys|u{{ux}}~~{~yx}zs{~w{ty{|~|zz{~~}yt}y~vwy|w{~||~y|{yl{~y{y|{u|}}v{~|v~}~}}y~z~|{|zwyy~wzy~zyrxrz|}{y}}xyv{{{}|yy~~}~rz~w~{}|ux{{w|syz{{sv~}}z{x~v~u{yz~{{|~z|{~w|{{xw~}}|yztyvxwl{vzv||rqr{y{}ys{|{w}{||{[}xnv~oxn{|yzvtyzy}}xtpz|xvvywz}|{y~~j{x}}w{xz|yZxy~u}~}q{{~|ztty~z~~wwzuy|x}qr~t~lvy~s{zw}n|v}|z}wta{{z}j{y|}{}w~|xv~s{x}w~tyz~svzu~y}{~y{~}zwy|~xyyw~~`}p}ur~|ukxxzu`~x{y|zxy|}s~|y|ztxys{q~pvw}{~}|zpzwz|}z{z}~{rz{v}zzyt}t|wu~w~z{|||q|z{~}w|vz~~|~||z}rt|}yv~zz}qyo~qwy|z~|{ux{}x~xxvm|zuz}s|}q|rs|suyznwx{x}x}x~wszt~|zy}w||~y}x~sx~xtt}}{{|||xv||y|yu}|~yvv~~vty}}yz|r~zvi~{y}{{{y}~yzxxu{{~os~}~v~}rw|kpytr{}~|szy{zjw~u|x~sz|{~|zzzv{}wx|}~{wxyxuytuxpw{yv}}p}~{z|rx|xz~{w~yz{{~{}{~w{yxx~x}~x}qyp}xw~~p|unyyx}z}zxy|y~~{z{}}w}{z{w~wwzvsoyw~w{~~vuz}ywy|{|w}{~qyy}|rx~{}|}{{~{}~x|xxuv~}l|h}|~~{yz{}~zwpwq|{zg~}{s~~|}z|}|tvou|r|{z|}~|xpz|x~{}uz|v}|}}yzx~y~z|}s|y|v}v|zuzu|v|{}~rzv}}wrv~{|v|wtt|{}t|v{{~{}q{z{{y|v{~z{z}yysy|yzz{|vv||~}y|}~{~|{||{n{|}vyw|}|q}{}w{~q|x|}ywzxv|||t|y{sww{u}|}~y~~x}~{{yz|||yx|y~~~~}u|xtyw{~{v~|xx{{{}~z|tr|{{~{{~yzxwu|}~wvx|~tz}z}z~{pz}{|~s{|zvwx~z||ywz{u~ty}{y|wy{w{}w}z|~zxq{zzl~|ymtxz~u{}v{y}y{z||puq~zv~p~|~|~z{u|{~}}z~|||~}x}|{~zzswu{}|x~w~}y|vws}~yyy}{x}{yz{y|zxuz~zy|}|zy}x}{}x}}~wx{~~z|}wt}|r||n}~{~{t}zv~~y{xuy|~{}|{z{}|p~~|wvz}~}}xxwwy}}}}}|~}{v}~|zxqu~s|w}i~~y|{{{}{}}z|}z{{w}z~r~{z~xp~~t~|}xw{zy~}qsvrvy|}ywz{{~|}yvzvy{}|}|s~}|w}~~sxv~|~{|{}y{{x~p{u{z}z}~{|y|y~{r{}w}{uz~{xzs|~{y~{wz}~vz|z}yzw~x~t|~~z||}|y}|yyx~z|~}{zyy~w}}v|j~vyq{z~~{{}~uwx|{{yl~{{{v{|}wzyz{~rx}~yxz}mzyv|q}w}z{}{y~w{{x|l}}yo~y{zv|{w~sx|~|{y}|pzzuu{~}u|l{q|xw}ypy}z}}y~}}u{zxvww}x~~~y}xxv|~y}zxz~w~{u}xzzy|z}}||{s{zy|~{v}vzs{wyu|y{|wvzw~vy~{zz{ryy|yw}{||{txw|zz{xy{{}yy|v|{y{|~}yzvmxzz||{~w|~x{}zw{vuy|z~z~uyx{zxu~u~{~vovw|xn}{z}zwmwzr{s}|{~~w}~zyxy{~xutz{}~|rytw|{yv}yz~}{}zyzz}|uw{||nyz{yu{y~wxu||}|z~~w{|t~z|~{zw|qw}}y}x~y{uy~z~~y|r|}}~{~x~uy}ytz~v}~z~vw~y{{w{g}xy{}zyvyw|sz|}|uw~m{}~}}zw}~z|yyprzw}}}u~~st~~}}}|u}tw|}{}~|x~{y}vw~~~||}}q{~{yz~~z|ys|q|w}{{zzz{xx}|}|{}uy~}{x~w}}}zw}{vz}yyz{{}u{|zzy}|}}|}zvy~{w~|{}~}{~|p{x~~w{n|{{}}w}{x}wuv|{}q}~}}|uokn}wq|xz}wvx||{~|}wx}}|~q~}y}}x~z~x|~v}z|zz}v|}}|{oy}xzu}{}xuy~}y{|xw}kz||v{{zzl~yzsk{u{||{|}xtszw~x~yu}}~{{{{~}~zxz}x{px~}{{qzx|}}x|{{v}oz~z}~z|}~}|z{v{t~x~z{{}}yt~{z|x|wzw~~v{}~}zz{zzzx~uzs}u{vzw}}z}}}||{yx}yzwv{|}w|g~~|}~~z|r|x}{~}|{~{x~zwu}}|t||}u|wx}{~yz}w|~~|{x~rt~|yuz}vx|~z}~y~x}t}|~|u}t{|~|z||krl|v~}o}}z~|wyz~|~u~|r{|{u~v{y}}sx|vzyr{xuyu}|vzr{w{yu|}tz}z{~|}wv}~|~xtsxx~zww|{}r~||uw|~ozwz|y{~~|xxz|zyyu}}{}|~~wzut||x~~~|{z|tz|{|x{~~ez}q|~o{~yx|y||~s}}}~|~vwux||v~~}|y}{~r}~u~o}|y{z}yzv|{x|{u~{~sv{}~|{vn~v{lywty~{|ww|}t{~{yz{}|}}z|~|m~|y{z{}~x}xut}zx|}}}~{|vwz}|}vz{|k}~{tu~yzsuru~z~zt{{y{{ts|z}vzm|y|y~|~}}~uq}{z}}rzu|w{xtx~zv~}~y{{ywqrxt|{}}}{z{z|z~{y}~wxz}v}tzgy||}~{y~|{{{lu}|~zm||xy~u||~|~{|zx~z}~x{}y}|wt|q}wr~x~x{sxv~~|s~{}|q}{ytv{|~}wt|zx|}}n}{|~x{p|s}{utz}||}}v~~xyz|||w}}uz}|yv|}y~|v}|z}xv|{}w|}~tzw|~z{v|z}|~xx}u}zzyq~yv~{}y~~~|}|zo{yz~s}|~||su~}x~{x}{z{{t|}{w~xtwy|wzwuu||x~|||t{~|}w}w}z|~xt}||{{z}v~|xy~|{z|vx{v~~z}||}{txywyzy~~{{}}xo~|m|wzrw|~~}{zxz~}w{z|~wy{|~|{}wumypuyz|{w{y{sy}~}}zzw~}yv|xqr{w}~}xxzzw{||zz}~|ytwz}~}{y~z}~}{v|l{|x~~w|~w}{{~~yzoz{}|~zz~}~~{q~~w||x{}wz|~xw~~~zv{|v}vyvuz{|yz||uw|x~p~}y}{}ww{~x}ww{}y|{|y|~t|}||y{xvuz|v{}z}|}v}w~ut{zyu{y}{{~}~y}ywuz||xxsy{{||zxy|vur~~{}~{s|~{~}~{r}z{~|xz~{~~}~~||}}w|rzzyv}xx|x}v{~}tyrx}yz}{~~ww}{}v~~}{}w{{|y|}|e|zx}y}zz|vt|zt|yz~v|}{}y~}z~z|y{x}sy{uyz~z~{x}{~{zy~z|yyv}zux~z{wx|zxzy~}}y~q|~{{|zw{yz}||~z}xz}|y}~|~zwr{~~|zzxw~zss|~~{x|{v|}x|z~|~{}s~zu{~|o~zv}sfq{}|tw{y{fvo}xtxx}}o~}{~{slv}{u{z~|x{}tz|~w|~~~y}|oz~v}s~{}~uso{{zyw|zyx|}nxrw~z~}}~t{|x{x{l{syyzp}\}x{jvvwv}v}yuztv~{}~t}wzqt{m}|zy~}z|zothxz~ywy{|}|y~~|txt~z{k~}}szsu}zr~yyyzsvxyvtsxpxx|~y}}qZ}}vnu{i~z{{wvwuow~~ryw|xy{}x~uz}uir}z{t~ly~ur{{{zzy~xy|y|z~xzv|x|vsvzxmbwzxz{{~|x}}}wwzz|~ysz|uwvuv}wv~vyoiz{|oyuxw}y~m}~~~{{zs|zy~{{zuvh}n|yw~t}{{|{y|{z}y|w}~{{{~xzx}x~q}x|}xs~x{x{z|{xzu{}v|yyz{{yyyuwpx|v}zv{u{}z|x|}q{y}||{{|}{s}y|u|}{~y~}~}~zyvs}}}{zx}~u}{zz{{}}r|}z~|z|{~vuy}~{~{{x}y{r|z}x}~~y{v{|v}}|v~zvyv~}z{y~~|ww{||zxk~|hxzxtsx}}~yy{~x~~|}yztww}y{}|uy|zx{~z~~zvuv}~ynzr~{xz~|xrxl~z|u}}v~|{|v{sz{qx|t}~wy}w}}{}~z~u}~{}wy{}zy{zxs|{}w}~~{~kwzsxzz|t|{}}}}|}v{r}}{}}{}|y~|~|z}|y|ysz}w{x{t|i{s}vyy|x{}szyzw}}}y}{{~|{}xtrntwxs}{}z{y}~n|~n{w{v}z|vz}w~zx{|xy{~|{y{xyz{wz|~u}vywi}{{}|}|r}}v~w|s|zv~zu||zzrut{}qzz|xtzx~uvy{}z}|~z~vxuyxz{st}{{~vzqwywvqut~yy~{{|~w~~|}{w}~~|{x|rz~|~}}~yy~~}|w~w~}|kw}y}y{|zw|vz{p}{~|{z{~}x{}zy}xtt}{~}|}}ru~px|{}{xu}}{{|{x|xu{{yy}y}||{~}~|{}v}zu}rp|}|y~{z}~|vy|~~hw|y}z|}{yr|wm~r}v}~r~zwanxnxtuz~|xuuxyv|v~zpexptsz||x~ytx|wztvu{zr~tuwuw}r|{{v~ryytuw|}tzjxz}x|xneox}}tzXmq|mwz}}[tpsx~vu~x|xi|wy}}pznytxxy{x~~fvr~}z|{c}~}{gw}tu{z}wz|inswxuDsu||rLqyh|nzu|}}zvyw|{vw}~{{bwyu~|{kvz}~~~|xw~y}couzsrb}qx}ww~wxw|o{m{{xo~trvv~{v~ysz|tvsgplsuuc{}{|aosztx~{{t{rpzt}|{~uls|wur}}zli{zv~|t|b|ryl|xyz_{t|~y}aw|pqxo}~}|x}wz}zvt|~|||~~x}zyz{ztyw{u~|~xwx~xwz}y~~|{|}{y~zry~{}~v}z|v~|~}|~|~x}{|~}{~zxwuy}}z}~{}ry{zz~~y|~}v~|{}~{x}xw{wyu}~y~~x}~y{y}uw{}||{}zz~w}yu~}|~ss{{{}||||}|~zx}~}{|}||zzy~~w~{{qy}vz~rz|y||~~vy}}~|x{~{{z{~|~t~|tyzz{}|zz|{~~}}wxzv{~yyz~xzq}}wzz|{}}{|}}|{}~~}yz}{v~}x{|y|}z}ryz|~{{}mszx|}||}}|~z{}}yz}~|zx|rzvy~z}~yvu{~{{{v|~y}y}||y~|{|~}}{{w{wz|~w}}{~zy{|}uz|}}}xy{{szzyszk}{yyz{}|ys~}}~uyx{|}}~~~zzvxx{|y~z|z~sv~|z}ym|||z~~v~yw~~||{|zz{}qzqx|}}yxvz{y|xxt||}{ywzx|~}~~yw}x{~pz}~xz|}vs~|{~}~{}~|}{zzz}~~}uz{}t~w}}|{|}zz{~|}{xy{|xw}|}vzxw}w{u|||x|ov~|~~|z|j{|}yx~~wxyyy|v||}|v|uy~~z|}v}v}u{wy|||}}z~w}xz~~}y~zz~~qz|w|~{~oz}{~tpx~}}{|}zuz}g|}|x|zz|zsx{|x~~~wxz}|xt~|y~ty}|}}~{z~}{{}xyz|z|w|}}{y|wz|zy~y}}~||{u~o|vs|x~~uz~z}~|}~}y}ymu|}un}~}{}yzqzzwo~||}n|{}}xuywfzzz~~yzy~y}mv|~yw}|~~{wu}{p|uus{||svv~{~|}~x{~wyvyxvq}s||ux}|{}zyy{v~|z{||ox}vyzz}~zyztto~~|s~}z}|~|~zrzp|~}~w{tx{}~|nu|{|x{{zzv}tz|{{}y{w{{}yy|}}{|yx{q}|~ytow{w|~zz}}{}y|{y}u}u~y|w|zr{|~kv~|u~}|x|zv{rm}tyuy~~uywu|wyz|vl|wxw~~}||{z}x{{y~}|{yy|m{}uz{}zz}x{||x}q~{|~~}|wxu}yysz~{||tz~tt~~{zv{{|}vvrxwv~~s|x~~|t{y~xtxyzvu|z~|}}{wyzf{~w~|zzvyx~qv}||~{x}}vx|}}}y{{}{~v~yyyxy}x}}y}u|}~~w|}}|}qzy~qqrszv||~{{z}sy}~{t{{zr}~~|~{xx}{{}||}{r~{~{vzzvyyv|{q}}z{|z}zvx}~xv{~yv~zy{zx}}||{|sy}x}~yx{~rxw}z{}|~yvwt{z}}o}x}|x{}||~y~~zxsyv~}~}uz}~{yvz~zyz~z}yz~}|}|y~uzz{}z{x||yyw~zxx{~x}~u|}x}{}zw}|~{w{}}w{y}u~xz}{v}}|}|~~z~v}x}|s|yy}zzy~~ry~}zzvzy{w~|pzws}y}~z}wmr{yyl|}z}uyy{}zw|p}s}y~|~wvy~~wzxp}w|yvx}w|z~}{|uy~x~}}z|}w}zuz}|{yslpxw{wsm}}n}||tzzx|{xx~uy}}~v~l{t}{zxm|{w}}|u}ypt}{}y||yw{}|qzyywz}~~~wvuuvtyvxww}|}||vz~~rxvs}~}{}{oz}w|ux~q|znz|}||y||ytxxm~~sx|}vv{yq~|{|v|s~~|yl{rxxtzw}}z|}vx~|}vx{u~zy{}xxv|wlvv~~{p|zwouz}}xuw|ur|r~|u}~{}~|qz{y~zt}y||}y{ttz|zwv~{|{||~uv~w}yxwu}r{z|}zr|}~~|vx|~y{r}~|yt}~}|~yy{sv}z|~~w|y{x{x~}v}||~z{~ry||~zy{|z{~}~|~|zq}{||zvw{r|~y}xu|uzz~y~x|x~}v|y}~{z{}~}x{}}{v{v}}xv{}{z|zzt||wy}{zusw}xx|{~~v{|s|}}{}~zt~~yty~{||v}}y}{}~y~}~vz~wyuw~~wz||{tz|s{zzt{{{}w~{|y~{|zxz~{}~x||}zzv|zyx~yzx|zwx|{|x{~~{qy~}ry{~z~x}|z|y~}y~}}xt~vyyt|s}x~yzv}~~wszwvwz|y~|y}so|ptv}wzt|yz}s}ztz|yw}z|ww}wzj{~{u~r}vu}z|v~wxw|qz}{~vz~|}}sj{}z{y~qw~tt|v~y~{yyv{||u~{~~yx{yz~u~~~y~~{y}~t~}{yp|y{r}y~{{|rwwu|}~z}z~x}{}||y{j~}}z}{ztv~|~zxw|xvzxzzzzx|y|{}}xyz|s}y|}~y{e{{{skuz|t~z{y{vs|zvxx}swy~{}{~~||{y}y{}}wz}q{~vy}r~~~~|}|wkyw}{^~}|~y|q}|||tz~~oqz}urwv|zvuyz|{v}y}q{v|yuy|u~y~~{~}uzoy{ovzzzx|s}}~a{xy{z~z|~n{z~|u~xzy~w|p{u|{zp~trj|zxv{{~w{}|u|}x~~~y}||{~~|w~~z~{|{tjz~xw{u|{z}tzx{|}|ys}~nixxt}yr|~y{{wv}}}{yy|{~z{yznv{{y}}s|{uq{~wu}}xu~qyxxz}{z|{{s~w|{v{{zz{}{~~}|wst}{y}}}}y{xz|}z|}q{~t{||}zyz{|}x~||x}v~t}{v~{z{u}zzzu}{y{y{{wzwz~|yz|}zz|x|x{}{~|~}~}w}yz~|~wz{~ux}~{}ozy~nt||yr}~|~zswzw{u|}{xyz|x{v~~y}}{{{y}s}z{{x~}t|~yww|l||~|xywx~u|{{|rw}|w~z{xz}vu}l{~z}{ywvyxz~{y|x}x}}}|{{uz~os}v}|{tu{swxqyzy}z{vy~zvn}ywr~{jyqzvyywwyyu|z{}|xyw|z~xz|~}zz~wt~w{}|y|u{u~z}r}{t{~{{{vz{|rzz{{|q{vzt~|z}}y}}}}~zxy~}|tx~x~zwzx~qx|ys}zx~pv|szk~z~~v~}|su~|s}t|zt|}z|p~{s}zvu}twyyzx~}tzw~{||}zyyqvz|xzy~{wxw~z~zfwuqz~sy}{{|{xz~~p|~}us}~|xst~}sz~zl|y{k}y}xxoyvxx{}y}{wv~}~yzz~|t~ynzi||{~w~n|xz}~r|}}t}w}|}y|~|w~syt{{~~}y~{zrz}}{~z~|}~{z}{~|}~{}{}z|w~wqyuyy||y||s~{~{{}}|{~{xzyy|y|psz}{~{{}~{u|x}}x{yy{w||~}x}~|~zz~zw~~{y|ytx~}|}||}zwy~}|u{z~|~|{zw}w~zxz{{}|wzvu}~y||z}u~{rx{vzu|tx||{~~}||{~~|}~{xy}wz{~}|yy|}~~y~~{wux}}u}||}~z}z|{}|}us}zwy}|}~y{}~|~~~z|rs{vvty{z~wx{|~~|z|~|}uy{~z|ytz~x~}y~~w{|~}{||yz{~y}}w~}}s~}|w}z~t{}}|||xuj||}xr|{{~du{|{z~x}~o~}|~q~z|x}yy{y{}xxzxwq|n{}|}~yhw||{zx}{}||}{}}tvpuvr|z~xz~z{}|{}w}z}}|~~|u}w|psz{}||rp}~wt|{zz}~yz~uyx~|}|u~|~{|~zv|t~~~|~~xx|twz}yvzyw{vt~{y{x{yqxw}}v~~}z~u{l}}}x}zytv||}{|w}w~|}|~mu|t~}x|z{~~}w|x~yxz{}z}}zz}|~}zz}~pqu|w|s|}r|~z{z{wz}z|rr~u|w|y||~|y}}zp~||xz}x|{rxw|{y|}~v}|~z|y}~vqwo~{~{{y{}xp}z{|y}|{{{z{|s}wrux{}w}{~{{xt~v{|zyv{~z|x{|zlty}xyr}x{x|{}|||wz{y}wzv}r|v{|{y|uz{x{xvxxx{}wyvtywuzxx}s}{~w{vx|z|{}|~y}xyz}z|syw|u~}wzz|z}||x}v}~~{uyzy|}u|xyyxwzv|{}yz~zv{xz|~zwzty}{zpzp}{~k}|}|u{~}yw{sw{|z}wvuw}w}z}||{s}~{xxy~yxiy{x~}y}z~{~~x{|z~~~y|z|~~}}y}}uvyn}{{s|}|te~zt{{|}|x}}{}~z~|}z}wx||{~x}zc~|y}wz}rywuwy~xx~|}{{~|zzx~}yz~u~{tow}|~~xs{|zt|yxzv|xx}{v~~}}}~}{~{{{|{v~zz}}xwtx~}z{rtq{z}x}~wu|{|w}v{||}~|y~y~{~~ru|t{~z~~tx{z~yxz{zy~y|z|~{w|{zz||||wt}yqt~x~vyxtx~~z{~xzvx|zzzx|zp}uz|~|~zzzxvwy~~|}t}zx~{||qzys~}zz}|}{~|q}|~~~{~{~~{~yzu~{|x{t}~u{|zr{~~|x|p|x~~u{z}|~||~|t~~|w~~{xv|w|}r~zy|}xyx~}|r|}|zz}}vuxz|}u}}{}~~|xx~}y}w~{txy{{z{||xsz|yz}|{{{|~ztz|zzzzj|~wyz}xyx|~y~o~}y~~r~y{{~zz~}y|~}~uv{y}ywxzy{x}~}{||w}~zyz{}{|w}y}|vw~}{|}||t}|{~}oz}~zq}|zxu{~{u}}yx}{|}yz~y|zz~}{z{v|wwzwsv}w{x{{{}z}y~yuz}}{{tt|}~|z{v}|}s{~zv|}}w~~~}vy}}}vv{wyz{{}{{yry|}{zv}yv|zzz}x~ur{yv{|w}yt}~{{{~zx{~~z|~~~y~yvy|ux~{{z~zzww|oluyzwx~}~}|w{xuv~y~|}|xz|}{~y~wt}ux}~t|~{{y~||wyzrzwz}wz}~~uvtzxzw~w|z}~~|{}t|~{xuzt~{{|}x|v|~{y{xyuy|{{|}|x|zyzz{kzo{z{|urwq}{{|{yxy}~{yz}{|v}y{u~}~wy{~}}z~x~yq|~vzwzyzz~q}}}sx~~||}~~|z|~vvrwvz~~}z}l{{y~t|rv|{}yzx{|y~n|x}|xy}z}|~{|~zyn|z{x|xwv~pz}}{~}yx~xyzvpw{|{~w|tz~~|r}}y|vwyxz~w|}{~~~zs{wqvt}qzx}~~|}v|o|su~{y~w|yn|}v}|wqrty|zy~|~y~|y}}|{{{}{y}~y{|{~||x}~y~ov~}z{ytpx}u~~w|}bo}zuz|}zy}~|~|||x}|{xx{}|zw|}{|s|~||w||uwy~{z~ty}}~ww|w|z}{}|y|zzvy||nx~|zor~~~{s{yu~~}~ur|c~}}`u{{~}zzu|||u{~~{~x{x~|zpw{iw||v}szy|w~rk|ez|zz{|}zuo}}p~i}}}w}~}{w{{ux}|wx~w{x}}y}~~y{}s~z}|ywis~z{ql{}y|~~v{}s|t{~z}z}u|~w}y{|xz~v~{~sx{~|}~zu{}z~|iz}}}y~vz}}{}{~zwzty}xxx~|~}vx~wv{xz|x}v|||z|}v~}w|z~z}y{yxzzy{t|~zxr~t{|zdw|~|z}z|{w{w|}z~t}z{y||{yv{}~yy{zp||{~zviiy~}}yw|vs|||zw{z~|}v|ztvw{xvrxovu}{{|x{{sy|~|znyyt{zxy{{|w|}nzm}|}s}}y{}zs{x|~n|u{yvxz}y}}{|}|{|z~~uz{xxzz}|xyzyznz}w}y{|{v|sz|{|~}}x{}v~uw~|}{|}~u}su}rvx}}t}y{{{z~}uxw{zz}}z~~|z{xq||{xv~~~|wv}}t}|{{y||{{yzv{}~|}{|}}z}|}}wn}y}}|r~|{{{}zy|y|v}||z}w{p}sfxzy}y{n{~xq{{v{{~~~}v{xy}}~w{y|}~}|y~|y~wzv}{{~~v~}y|{{~uzu}k}|}zy}|{x|zx~w||{}u~|w}{}}wyv~{~~~|{x~v|y~vz|yu}~z|utuxv|yvx|~szzw~||x~yw~e}x}u~|z{{|~v~}|z||s~xsr}o}|||~xt}~wu~~xzi}}w||~|}v|~~uw||g}~zw~y|wxs}h{|z||}{|y|v}tz~y~~y{x~x{y~~z|s~||zz}~}{}l{z|zl~z}}{||}q}~rv|xtx{y{~uxy}wzr}yz}{~yu}w}|v{vy~~uz{}|y~~{|x~|{{~xx|u|~|{tz|}w{zz}{~}}}}|yx|~y{}{~|wx{wv~}z}~iwxzz~x~yy~y{zoy}{{|w}}}}~|{{x}{}x{t{t{u}u}y|ry{u}~{~~xxsrk}qy|tz|~}~{{}{zw~ozz{}~|}not~q}~t~rz{}xw}~~}~y{}u~{}~vgw}y}|qzzy}y||}syvv|rw|}}s|{{{}z~|y~yp|}w~{zt}w|yty~x~{{|x{}xu~|{y~}}~{w|n~z|{~{}wq}}~z~v{}}{t|{x|}{w}y~|u}~{yw}}|~~z}}z}~}}~|z{t{{gww}|~w~||y|{y{zk|z|wyvyx}}yy~{|o~|{~|~ty}~~~h~|~|p||w|{|y{~mx{}{|~{v||~}~wvz}y~zy{|zu{yu|}}||}}}}}~y~~~tws|x|k|~x|}ew~{oyyyuy~zy||{{~~{z|t|{w~w~m}u~}}z}}{{}y|xw{}~~|||~uy}|}}||~}v{x|v{w|v{{|}}v{wwz~y|}{zy{~{|~y}qz}{v~zz|t~{|}~x|~}toyv{w{z{|{|zy~sz{v}{z|xo{|{y}|~y~{~}}~|}|~{z|}y{||~{l}x}wx{~|w}u}s||}~||q}~szsyz~y{zzv||}y|zuy|wqx|z{~xmyx{{~x~v|~}|vx|~}~syzzz~yuz|w{}w}th|}xx}n~{~~oxy{y}~vv|z{||n|z}r|u}w|~r|{~}~~}k{xv}yx~}z~x{zz~}u}~v|}r|~}wz}z||x}{xr~z~yz~zm|}z~}|~{}~}|zv{{z{{}{}}x{{~x}xwyyv~z}r}{svxzzy~zux|r}|z{ux|y{|~|~s{vy}~yy}}}xz{~{~|y{yy~}t}y{vwxx||y}~{|v}s}t}xzz{~uy}s~x|yw~y~~u{|s{{yv|x~{v|{}z}~|~x}||{wz~yz|}uxz|}m{}{}wz|y|{uxu~yzxu{|~~|q|ow}w|x{{w|}{{|{uyzwx{{}}~w{r|z{xy{|~{||}yxzx}z~z|~|z}{~~vrxz|}z}v|}{}{r}w~y~}t||q}|v}}}u||~}}x~yzz|y}z~pvw}~{|w}xynmy|y{~{s|ry~x{}~~}|{|yv~||t|{vywx}~|xz}{t}|r{tw{~w|{{|x|yrwy~~}}yv|yxm}{vz{x{xz}{|y||xqz|}y~xyzvzy}wz{y|y}xz{z{{mw|||}w}|y~{xy{~}{|w|~||vzy|~~}z|oz|{w~x}~}}}|~yt{~|y}vzxo|vq{|~{uyx~yzxvx}u}yv~{}~{zyy}{}wx|z}|uyz~}~||q{}zvxx}yzzsqy}qt}}}~}|yusz}{~|{{y{z~{|~}wx{zzzu{}yv|x}||~zwjzzq}y~|{y|~x~~}~w}q~y}|~{w}{~{{y||{}|x~zx|z|z}zw~~{|~~}zry}z~w~{|{{{}||{y{xz|~uw~~z~}|y~u~tyzq|yyy|{w~~zxxt|~k|{|}|~y{}tw|x~w{zxz{{z}z~}|~vy}tztyz~wn}{}~x{{}~z}}}wyzuv~|zz|uv}w}}wt~p~}{z{~x|{}zq{}z}y~j{|}|otyt|y|y~{|}}vu{|q}w{w{{z|~}{wyuz}uy}~zzl~|~~x}w}z~|{{~{swzosxz~}zx{{zzu{~|zyy{y{t{|{}}z}}s||qzzz|{zw|ryu~{{}u~x|v|yy|zvvvy}z}yvu|wsz}yv|u~uz~}}{wv{}s~|{}xzv{}{v{}{|vz}|}n{zv|~xy|x~t}~}~{~~vt~ww~~wyxy{f}xyzw|y{z}}~}uz~s{yyzwtzt|wy~zwvvy{z~~zu~yxq|~}}zus}p}u~vxtys|}|z|zyzz~vvs|}o~y}xzz}w~w|x{y}x{{{z|~{}z~t~{x~v}}|wtzyz~}x~}x{}zwz}~zv||zqs~||w}w}{zywphx}~wt{w}y}zu{|y}~v}}}}{u{wdxv|{|z~zvz}|zzowo~z~~|y}|z{x|}u~|zt{x}}x{v}~|{vwz}vt~z}}~s{}v}v~|x~w~o}{||}}}~|}z}wzv|h}k|z{s{||}yx}{||tm|x{z~~}}~o|{z}y~z|||~{~{}y~zrv{~qy~y{|y{{}|z}|ytzx{y}n|~y{ys}qy{}q{x~yuzzys~}zz|xo|}x|~q}xx}z{|t~|k~ywu~z}}z|~sypx{~|ux|{pyr{}|sz~|}}|ruvopxgxy}}{zy}u~r_}yy|w{w}vzi}|}}u|~w}rtvwpy{|uzozx{}~qw~~sz}~|~y}}zyt}z{tyy||t{{}~~}z|wz~xp{{yzxz}z}w{zy~x{z~nzx|~|vzq|{wx}v}}w|~y~|{szry|xu~~x{~x{~|o}}||{}z|{upqqvy}~~l{~y{vt~tvy{{~z}x|{|~q}z{~wvtu~}}}yy|{}zx}~z{{zzt{rtx|y}}|x~}{{x~~y~~~z|}|{|rzyz|p|}krz}~~|z~}}w||vyrx}y}~uyxw{~}zyyzx~}~~xp{x|z{ly}ztvzzz{{}y{~xz}vwy~lxy|}}~~~z}}yr~yu{{qt~uyxz{}zw{mv{|{}u~~w}u{}s|~|px}x{nxu{z|r}{{xy{r~zw}z~s~~{~{{|yown~z|x{|}{}gzp~xv}zpzqu}x}x{n~|n|~vw{yv}w~u|x~t|w|x||xj~wux~}{zs~{}|n|vq~~z|{}|p}{x|~v}}{}t}}v}w}}~v{y{}wy~yxm~~u|~w{rwqszzs}vgz|}q{|uyw|ums|w~~}v{{u~xtizu|ywu~{ovu}xv{~~qzq{p~|y~~szzwy}zvxsvz|||{|r}z|~|}}||rxuvzzpv~}wzd{t{txutuv{y{wy}{}rtpkxv~~~w}{}}|~y~~tz~{|yu~~tuywsy~vu|wzzr~}|z}ruwtz|r~{~~}|w~~z}|yyx|q}y~|vsy|yw{y{y}}~~|~x~~y}{w|~~z~~ssx{rzs~v{z|~zy~~xyyv~~vw~{w`w|v}zzv~z{w{{z}sz|u{u}{yz{|{wy~|~|~}}z}x{x}z}t{|}{~|z|{{st{w|{y~}}vz{p||z}u{zwyv|}|~yzz~}x|{xu{rzy|}{~}~{qx{}v~x|qz}~y~}~zy}{}ww{y{x~xuw~{~|z~y|{|~y{yw}|z~||y{|p~||{v{ruv~sx~z~tzy{}t{}zuq{y~|{|}}yy|{~xyzzz{}}w||~vps}}zyr}{~{{y}}}{wyygyz~m~r|||wzt}z{yy~||wyxzyxz}x~oz}~{}{{u}|wp~~~e}~}w}|y~}y{l|z~~y{~{{v~~}~yzws}wv{mty|s|ru~{x{~|y|s}|x}{|s~|}}wzz~|~}y}p{~}wzz~}w|~y}|{y~~~|}}}}v|~}z~wxyz{~}{t}||z}jsw{{}z{~u{~{x|zy|yz~{x{z{lz~yw|u|~us}{~w{~~|rx|zzw~t|~~{ss{zx|}u~{}|{|{{}y{z}}}pyz{|~{~{|dww~yxy|x|w}zm{wsysw}qq|{r~uzwzys|z|}~|xsy|~w~yzo~w~|ty{~z}~~||zlx}xx~t}}|}xms}y}~tyxp|d{{v{v|~}~~zvy{{xx}y|o|tyszv~zzz|}~|}{zy{w{x|qzzy~xzyw}yx{w|x}ty}z|tzys}z{z~v}~|{~|}}zx|~~|ywvzz}~rv~}}yyty~n{~|x~|x|zv}~ux}s}~||v|z|{y~z{~|}~w{wvztxz}pz}}~wx{}xt|~v||}~xw~z|}{x~|{x}vxz{y~y{zw}y||wt|y}}}xo~vsv}x|yv}y{~z|wzy{}zyz{w{}wt~x|~xrv}{}}z|}|n|{z~}rzyxv|}m}yzy{y}qyx~uyyz|tsvy~s}|}|}~}x{|zzx|z~n}}z{x~|{|uz{p|}z~{~||y|}yyt|q}~{~vztxyy{xo{xwt}wxzx|~y~{~~z}|suyuy{u||}y}}yx|}wy|}vxv}|}v|{zyx}{tx}{x}|}ul}|z|o}z~~~{w}u{}{~y}{|}yy~zvv{zztv}||x{{~x}~s~z|wx~wu~}}z}{|~}}z}||{yyyy{~~~zw}|wz{|~~{x}~|{}{qy}{x{|wxtu}yu}|v~}x|x}}~~vv{zzu}{}y{|mz}xz}{{xv}yz~|~{ut{xzys~xwyxp{||{z}x|w}x{}|v}|}{v~||}}{{{wzn|x||x}{|{ux~uv{twzx{|~v|}~z|{|~{}{~u{{xzov{}zyz|{{~}yzzy}mw{~w}z|zrx{|}{ws~}|zpw{yy{u}}r||wzv}~xy|v}|}y~~q{~x}}}zyz}w}~x|{zyzz~wx{{|zyxq{~~~vyz|y|wzk|xx}}|z{vw~|z|ykv|zyz|t}x~{y|w|zu}}|~}x}}{~~u{|r|z{x{}z{|w}~y~|{|w~q~|{yvy}{{qu{}~{~c~}|tz}}v|}y||{}y}z~yu{~|wws|b|v}v~x||xx{qwxtu}|}~|xy|}||{{y}z~{t{}{y}}zyuyzzmz}||x||{z~uy||{tx~~}{~~z}}}x||z|r|tx|{zy~~yx}|xxzz}~v~qzzx}ujz~vs|}|tv}wvz{|zyv{v}x{{xzzpv{{f}n|w{z~xyx~z|x|~vz~}~x}~{pwp~}v~{|{y}xxpuyyz}|z|{|u|q}{v}yt|yuv}|zvzy{|z}||l{xwyz|}|g|t}~~|yy|u~nu}{vy|ix{|zyvtyx~~yvzxzyxw~t{{{xy~~{hw~}w~|xp{}xp}~xy|pty}y{wqiv||yy~~r|nuz~{wkuxvwr|v|{x|y|}yv~|}nzxty{{yny{~{~||x}x{|~nyzzw}|w{}u~~wy|swx|}wybpxz~c~t|zsv~|w||{z~{v||xav}zy{|trvw|wszu}~}~}z~twru~zp{}}ytp{o}vv}z|xym~szwy~{y|zuyw{}yxszxyzyy{zv{}t||y}}}~yx{~||{~y|wx~|z|y}uyw|r~y|{|{~urzx{zw~|{yzx}~t~~y~{{~|yvv~y{~y|}w}zxxu~~rv~~|x}uw}}w{y~vy|~}|}yv|~xz|}~vwzw~}u{}~w{~s{{yz}xt~{nt|{p}[}}~|~x|~~zxr}y}rz|qzz{~|{zsyww}}{zv}yyxzuu|||u~{yz}{}~||y~|t~|}x||~t{||{{xj}~zw}y{v{tt{~}v}w|zq}sxz|}{|z|syz}z|zy{}~{{~y|xy{xz|{~{zwt~{x|z{~v~}|}|}y{wxx{{}}w{z}{~|{|yuq{|~|xw~}}~xpyywxzywx||{yy~v{}|y}z{y}~xs{}}{~~t{vzy~vxy|zvx|~r|{}z}~wy}|j|{~|{~x}}{x{zyz~|nuz}zy{|{~w{x|t}z~x}w~|xy{|ry~}~u{||~{~|~xxz|yvwz|}{vz|y}}x{z{{}|{|yx~{{zyxy{~{u~|{|~~|~}t~}sz}v}w{~vv~sw|zzxz|~yx{}|z|yo~vz}}q}}~z}{~rnv|~pxwzsq}y~}t~|{z{z}~{sz{wsuiy~~w~}}{{qu}~uxqzzt{|~{~}zlv}{}{v~x}|||}}}~x|{y|k{z}kz|s|{u~ky|gvnv~|wmy|wt~su|s~{{}suv{}|x|~{t||{}}y~pw}wwuz{u~{j}}ww|m{{x~~|q{szz~u{ywz||ztx~|~}}{vsxzs}{v|uz|||n|zl|wwv}{t}nzwy~~yz~vwyz}{|~mo}~z|zw~~}w~xyx|||yxtmy{t}yqyxx}yr{}||zyz~vuw~}wz|}|}u}wow|uq{z}z{}t~wy{uw|}syuxr|~z|ux~r{||}}~p~s~y}swy}~v{|}~{t|rx{}~n||w{y|v|{x}~x}z}z}x~~|z~x{~{xxuww~~zt|v}x|zrzxpuuz}y}yw~}svyrysyx}w{~{}sz}~v~~x~x}~{j}x{z{tzpw~v~js}|z}tv}~}^q|xxvp|rys~y}jyyv{|{{x~}~x|~w}t|x~t|un]yz~x}x}wyrzuv}k{\{pz}y|ss|uz|{x|lt|}w~~|}t{{r~w{yx|}ts}^ww{}|~~wy|zxv}wk~{r}x~{~}|h{|y}|{mzyvzr~iv~~tzb}zw}rw~|v}vy~{o|}{{~|xtx{ytz{yz{tzy}pzzy}xvz~~w|||}wnxkz[}~}y{v}gxz~py|||{}}}v|y}w|}}{{y}zzx{|wr}q}{yy~z|q}~z~z~}|xv|z}|x~z}}|}z}y{xw}{{|{|}~y~|v~wt~}}w}~wyzy}{|}~|}|{}}{x}~}|}|z~zzv|||{~||w~s|{y|ywr|z}~vzr{z~}~~u|~|z~{}x|}|w|w}~vws~}z{}y~~~x{{{|r}oytvt|~y}~y{}|y{|z{|v|||~x{|yzx}|xw}y|~vx~txw}zp{|~zrr}}zyvwu~xyw~{}w|~x}|~v|{}~u~wzz}{}q}|{}||u}{yu~rw{{~}vy~vw|gyuz|uqw|m~x{wp|tmzvywx}}qtyvz|xzy|~~~k~wv{}T}u}rzzpz{x~tzxxw|zwszxxxxzx|u~z}wzxtz}r{xwxtvw~}}tws~xr}t}zzy~pyvyz{}ows~zz}yx}}wyvmzx}~u{}{vz{zxxuyqyx{}~w~xu|{~zwyzx~~}lws~~|z{|z{xw}~uzw{prz{|~~wszz}|}|}|{rjzzxs~|v}~w}u}w}sszr|z~pv{ivww{zx}|wwwx{|n}}uss|z}~}wwutxzlz{|}mp{{m||nyvu{ry|}wx{u}|y{|~y}uzz~~}wzs}~{|{{}|}y{{ztz~q~xy~{}v~|vzyv~z}z~{{|{y{z{||gsw~~j{}|~~}z|}}m~y}}nz{}|x{u~z~}{~}~~x||}}x~|||y|u{zx|}}~z~}}z~~~~p}}y}~z|}{}{|yz~wys|||}}}~|yz}|szwx~xy}y~vu~zp{tw{v}}~~}|}s|z|{~x|{vxwz}}t~||}yy~{ysyz~~~x|{u|yu~s|~}|u}s}|{~}||z~}}{w~{~}u}}|~~}{yn~u{y|zyvx|~{yuu~}|s}r}~x|yy}z~}||qz||z{uw~}|vynyp{}|~{}}pyzu|g~~wnz||y}}y{x|q~su~v|y|yzuzxo~|~uqy|}w|vxzvzkx|mtsuqxvw}}}x}}~z~zt~}~{lpw~}wz|~zwytyyrxjvyys{v~}s~|zyzv}ysqyz{tz~}x~s{|z{u|xy~}|yz}~xr~zy}x~~uv|xw}gzuq}|x|}ky|v~w}}{{}yqy}xpwzyzv|rxsgyx{w|qw}{hyyt{}ry|{z{syws}wt|{|{r|sopv||wz|tu{x|xzy{wxzzyxzwyz{}w}wjz}r{~uxv{{y}tz|y~wrr}{}t|tuxx{pl{qt|oo}s{ny{{wjz|z~pttuoxyqwrywe|skz|{{w~}}~|zu|~x}{}|y|~{xsz}vwa~x~y{|fx|}wwvy_wx}yy}v{y|vwyuwr~xx}zry~oxxuzw{z{}y}xq{wm~nyq~~ryy~~qpyot}~~x|yvuzz{vq}zw}~vw~ywz{|wyx{||{ktvx~lgnwyzyzy{hvww}ywwru|vyzryqrtt{~y~{ty}z~~|{||yqywx~l}vyr~t}vzt}{x}wzvy}ytywZ}rw~uzw~`{z{{zxvx{{~~~w{zzxmzzx}~}wzjz{}k{d{w||m~zugs~|x|{|x{}}~}v~ujyy{yr~xzxy~ks|y|}xxz}xv{xt||v}rx~zz{{yzy{z}|b|~~|xz{qpq|{{|xuvz|~}rvvxxzp{y}{~{iuss|{tuyy|||x~u~x~}~qlw{{{|x~t|}}~{~nz{vgc}|p~~u}{zxz}|u~~xzzvp|{}r~xz|pzuy}zqvv~~yxx}|x}yzx~r|oyxy}||{}w}~jw}|{{xxy|}t{{y{}~w{z{~~{}|t{w{txx~y~w{{z}{v|uv~||u|uzu}yoyx|rxyy{{z~|}z{y~{k|v}x{wz{|yvxyq{r}w{}{r~uvzx{xz||}xuh|K~zz~m}vzX|uz}xz|~|r|rozpxwy{y}p{}xt~{|~sy}zv~}xru|||~vs~y~s~zqrw}}urx~vx|wx}~{{~ku{~zmw~s|}}{y~}{{w{r~u|{ql~{yxz|qzs?|~}|~|ruzz|x{{{rx~w{{y|~|\yx}sx||wwz|rzx~~xz~s~|uzx|sw|_n|u|e{{yn}}p{~}||q{{z~{y}{{vz{{xrn}w~z|v{yqw{x|~}{}czzxxzzv~wzz}x|~|yxw|{xx}l{~{|ge~yw{qv||zzxyq{x}{n{~~x{~}z~xy}q}w|uys}n|wz}|y|t~vyy}r|xn{wx}|z}x{s~|~|{}|~z}xz|zy}ry~kx~|x|xyw~|Zu{~t~w{~}}{~|ny|~y|{m{zr}h~{~ytyznuy{t|w|}m{|yyyW~v|i{|uy}zzvt{}|~|oz{{~vtw|{}|~tzw|n~}x{{~}s|ux}{}}vxwrz~|t}}tzv|yyx}y}umvtywytzx~m{|~||}u{{~{zqs}|x{~x{w|xr{{zv|}o{|~{y|wz|||}q~t}z}|xww}s}~{~~vx~~{}{||~zz~{xv{|~|}zz|{u~~{uqv{~~y{~{yuxz}wv|~x}|{~t{{ysy||pvxy~x}`{^~y}q|{|{|}p|y|v{xtt}~y}~~{txz|y~~xx}~}|xut|}ryx{}zx~{r{q{~u{z{~}x{}rw|y}|{xtsp~|~{x{~zw~{~}i~rz|z{q}}~wyfzwy}~y}w}z~|z}wn|vzz|{{w|}|}}rw}~x~t~|~y|vx~|{yv|~vy}xx}~{||}|y}v~|{x}j}z{}u}u{y|r~ty{x~xyzyw|v}||uyzqywyyvsyx}yw}{{|zv}~k~}}~z}us{}ywu{zw{~y|zuvw|{yzz{wz||kuy}w~x|||{}}v{y}u{}|}vz}sxuuz{y}}~{xss{}}xxzq}{||wu~tv{pzy{ux~~yxhn{z~}v~|w||}}~y}~oypw|n}~x}u~||v|{}}}u|{y~z{sy{~}z~ew}u{{{~tz}y~uz|z}}~x{xp{zy|}{n|tx{x|~}|||~{~|rq{}trtvzztqvzx{yy~t~}}~twxy|q~~~}~|wx}|nzz|z~{}|}yw~v{vz~{}}y{xyw}{}{q||}x~|~{y}wu~z~}zvz{z}}uy}|ju}}}z}}~rsx~|xz~{|}}~yy~|}xz{~y|p~~z|y}}y}zz}x~}}}{}}~~||vzwx~}}~wvz{z}xv~{}}|u|r|}|z~}z~y|{t~~v{wy~z|~~~y{|}|}x~t~}yzzr{z~{||}xy{{s}xwyz~{t}{|w|yq}yy}|~z{|zqw||}y}|~~||{w~}{{||{v||~}~}}|~}z|xw~{~}wyt~vdxv}xx}vz{}~wy}{}~}~||}v}wqxy|s|~wz}}|z~|~|{x}}{~u~{{{|{x|x}{uw|}|t|{{~qzyszz}p{~z|}~y|~|w}x{~z|w~|x~{|r{|vyxxz~|tr~|~~|w|yywr}}~~q{x~{{y}{z}t~}||}x~{}z~}qhzkxy~|}~wu|m|{}vy~~tz||x~|}y~yynt|y}z|q~|v~w|zt}}}~|}yvtwz{|x~}uwt{z~}~~}{}z}}{n||x|}~}~{}x|}|yuy|y}q{{|{|{}{zv|t}zr}}~~~{~zxxy~{}vszwu}~|}uv}~|~{}{xv{y|||v{~}}|x{z{}zu|v{x{|s~|y~~{z|uw|r~|||tn||}z~y{yvrxzvz~}}t}y|{t|}wzt{~u|{yxxztw|v{~}zz~{z|w|vz}|o{zyvz}|zwy|~|{}}uvs{w{r{v|}w}z|{}||v||u~t~|yz|}{vvy|~}p{~xz||}uzs||}{zz|yu|{w}ymz}}}|xy}}r{y|{zyzn}|ov}|~|yr|yyxy}}z~|~}y|uu}rw~~zzzw~vy{~~~|xy}yzzytz}vyu{}~y|}}p~z|||}x}v~|x}z}xwz~t}w{}~~}~}x|||s~{}s~uwnz|||swtv|yx}z|~|{{|{|}|~~nw|p|uxzvqv|s{}tx}y~uw|~{{~|}vt~xus{xz{||z{}|{~~ly|}ry|{}~{~{~{|{||}{~|z}w~}~xy{~y}z~|vuz|z|u{{|}|~}{ypv|o~u{vw|}}{yz}yv}~x{w~yz~|}}|~w|}|yw{w{~~{~u~zy|s}zz|{|qy{{y||s{wz~~{s}zpw|{}{x~yxxwz}{t|zyyy{|~{|{|}xxxxz}y|}}||~z~tv|zv|{`uw}{~~|v{vzvr|z|||}}}{t~|u{yvw~{z|uy}}vzw{y|t{zv~}~~{|xh|~xxvvz|u}{z{~|{{z|{v|q}{yz}t}{}{||z|n}v}~yrzss~}q}{~y}~s|||q|z{t|}}y~||~tu|xz|wxz~~txyyyw||zxx|t~{tyx~q{{|}}z}yz}x{|rz{z~or~|{}v~y}}vw{{y~~}zzp}|zsxp}}}pz|xw|qxk~uu|}{yz~~sz|}yzz{js~{y|z{u}vzqxxzz{v}k~zz{zz}|{{yzu}zt}z|}yy{y}v~x{zu~x|z{~z||yy~~~}|xw|x~|~y}mw~{|t~}s~zx|y{~|z{|zx}uyx~}|~ul}uy}z{yy~~y|z}|yuzz{v{su}{i{}||w}sy~zv~vxw~{y~|u~{r|}{~oty}yyw}}x{|{~}uuxxx{{zy}~}||z|z}|~}x|o~~{vtz|}rym{{z|yvutuy~yz{{{et~~o||xwrwzzp}y{yxx|~{}|}zqsyy~}xu{zqv{y~v~}}s~yv{z}t~}w}{ntv}|yy}~{yyy|}{x~y||t{{|{{{||~{qmwsr}w}z|uyt|{zy|}~}t{wx}}}z}w|vt}~w{|z}{tu|~z|vyv~|{}}|zyx}v~}{~z||w~}}vrvu|{|y~yzzz}}}}nv~|z|||x~tuu}~{{y~zvy|~~|xs{~{|}}}~uu{~}q|z~|{~}{|z~y~xv{wwzy{t~|~vy~}~{}}ywv~{~~zwx{w}rt~p~s|~t|xu~{w{~yw|y{x}}w}|~~yy{w|suuw~|{xzy}||q}|}y}}}uxxs|yvz|}ys}xxw}tszz|y}r}yxy}~|ot~wzwx}~twzy{~u~|vux~p}x|yx}t{~~|}|zzxv~w{~~||qx}t~|vyxt~w{}yw~p}xwxy~yu{zy{}xpxv~}|~q~|yz~||w}|z~x}x|y{||wuuj~zz|w}x{|yxz{yz~~}{~{xzq~{}|y|||{{ux}~}|{}t}twz{w}z{|z}~tv|~~}}y||~wuuy|}|t|y~zq{z|{{ux{}z{z|x|zzy}x{xzx|~xrrzx|wt}wt}zy||}~tu{r~v}|}}{zy{yzx}yw{yox}~{|ws|zxx}{yswu{vw||s}uvrwzzz}|zpy}z~{|zzywo~{|z|~}|{}m~|{{{z}r}}}|zqyd}u{{~zs~xy{v}~sy~z|~w{~yrxzuypyztu{}{}v}|}{z}xys~ys|zv}}|vy|zuzx}tx}y|{~}ry|}}tx}z}~{ty~y|x{}|{}~zr{v~y~z|}x~}s{z|wzx}~wx{}wx}~z|zy|{{}}xzzz{u|wx|u|z}s{z~{}|~{}|}~ux}t~z||wx{y~}z|}wzw}yvzzrt~{}y}wz~yu{wzp|{yq|w}}xyy}uxz}zwy}yzz~z|}~t|~}{{z}xyrzux~}ux}|zx}zxz~w{}}~{x}}{}y}u}}|z{|{x{w|~}~~}yz~v~z|~~w|zx{}z}{utz{{|{||{}z|~{~|~}o{|vvyz|vzywq{w~||uyuz}{v{{{zv{~|z}~}~zw{s}x|z|tx{x|z{}x}~zw~~~~ywwu}}yy||}p|~|~u{xx{ytl{|tw||}~tzozv~|yz|}tz~v}t{z|x{n~~{|v||y~x|}~z~~{|~}~yy}~vvuzz{{{zzyw{yi~z}x{yt|~}}~|~~x{}||zz|{p}w}v}xzwv||||{{s}ztx{y}vuyw~~p~uvwww||}w{xz}~|zzv}}xx}{z{sz~x|w~{{{uv}y}t}{~~~zyz}~}vzyumxx}}tytwv~{t}s~|~~~s}zwpzwz}~~~}~}u~u|~||~szzuv{vzyxx|y}{{|~|ucyxtpx||v}p{xq~{wx}{~{~z}{xvpu~v~}~}y}{uiywx|{~{o{y{}z{x}}x||u|t{{wvxz{yyo}zsyu{~xyw}~z}u}}{zy{zt|vy_rxwz{|sw|}vyyxtzy}trn{y{}zz}|sqxr~~y|v||{u~u{zjrwwt}zyz}yz{wzwwp~}z}|txw|zvz{}pzwx|x~{q~~xyxvpy}zz~ug}u|{|~zw|}r~sy~S{~tyu{zlxyv~{|{|{vzyvvy|[xwyw|xzyt}z||x}}{{}xv|xwyvysr|wz~{~v~y}uxz}u{}qtzxy}}~oy}|}xwz|z}|yy|wszz{|}}}|x|zuzwt}wx~tu~{vz~z{t~|~m}}~woztzz}vuz|}pu~xt|z{j||~{s}{yur|v}my|xpyuw~}~}|~zw~a}z|tyx{yuqqK~}|}}|zyz}tx~{yz}~xt{|~~ysy}~}~|{z~||wnw}~s}z}z|~{}z~{p}~~~~w}~|~~~v}w|nuy}zz|yv|uyzv|{yt~zsyz}zyp}w}u~o||xp}r{w~}}u|{~|wvrztv||{|{{~w|xyq||o~~~xz|~}}k{v|~ym}}}{ywz~}||~~{xw|xv|{}|}zxy|{tz|xs~o~}u~~~~yp~{|z}u~}i||t~~|}|{{}sz~|~xz{}~{}{y{|v|}}{s{zuys}}yx~|||zxz}|vv|}iyxyo||{~}xv{~v{~{zy|xxuxx~~t}|{x~}v~~w~y||~}}|z~||z}x~~zx}vl|~|x|tw|}w}xvr{ssuzyw~w}z~~}{n~~w||w}}ty|y}q{{~u|i{|~{t~}{xzz{}q{t}{z{x|~||wx}}zy|yq}||zsy~x|~yr|vyws|{ww|rty}|y}~~~|z{}~~y}{~~}~y}vz}yzq|}{{||~}~~|t||ws}r~v{t}}px|zv}~}x}{yxzwzu}zszoz|~{}utwz{jtt|yyxso~}y|t|}{y|z|y~|wwquz}y}|~|w}w|{wyutzyv|~v}}z|wu{z~~y~}|{zs{t{{{|vz{vx||vx}~~}}y|zxz|}{z|y~|z{{}z}{{{|{~xxzw|yw{uz|}{uw}~yy}s{}~|~uz|~}~vzs{y{{{{zv~~vz~~wywpzs}}|}{~}y{n~yw{u{z{|w|ruz||wz}vyz~vxxw{{}t{p|~|y}{}z{y}{w{|y|ry{~t~|}|}~{yzzv~{xx||xu~w|z}}tuywyps|||}{zt}~vzv{}{x}yuy~yz~x||{{vy{yx|{{|}{y~{||xx}z~xp|tx~~~t}}ox~w}zu}}|vz~y}|}{yzw|~~yqy|}z~|}xz}|yzz{~z~~z|szuyz~}{k~v|w~||wx|y}k}}yz|{v|wwvr}|z{|~~w}|y}{uyv{y|~|}z|}p~szzw{z~}ezx~t}~uol~{yzty}{|{xyw{vy{zx}|}tyv|~~}zz{|x|{r~|~|z{x{y}v||xul{w|{{{z}xyowx{{}{y{||w|~l~v~~{v~u{w{lyw}x}xw|x{}xu|zx{~~st}{xk~{s}ryu}xozur}v}u~}z|{v{y{}v~}xv{}z}zwzp|usy~s}{zlzvzx}wy{{}wr|||y}{}}w~|~}x~}{z|xz~~{~|}z{sw}p}{vo{yvi{~rz{|xt{}{xyz}vss}{w{zxy{}sq}v~w{|{}|vwy|z{{zc|zu{~{ytvxutz~y}v|qx~u|u|}|z{}{zryoy~zycyx}uu~~~|xs~l~~w{y|{|vuwwz~z~{sz}{v}yr{x||}zvtwkvv||w|zz{zh}zxxz|ty~zxwt{y{{~|{zyn|zry|vx}z~{y|{s}x{{y~yyhux|uxyzyz{~z{w|~}u{~}~}v~{~x}{q||~}w{mxu~}}z}~||z}}{~z{wx||x}~~tu{ut~{}}u~~~}wu{~k|v}xtz|{z||~xz}zz~|{|z{pyzy|w}{t|y}xu|||x}}~z}|y~xvy||~vmu~}yw}ryvtz}~y{|}}v}~yyztu|~|xyt|{vx|yx|z{||t~u}xy}}w~x}}xt}|wjxxvz|{}{~|zz||}}x}ezut||t~wwnu~l}}}xyvy{rtizxz~u}~z{~yvl}{z{|{}|z~{||zz}|||x|y}zz~w{~x~{x|~y~}zu||~z}{y}zx}}u}~yx|u|x}v{~xzzz||z{~v~|}{~|}~}z}~{y{z~oz|{u~|{y~zy|{{}|yzxyxrz||}x|}}|}{}{uoyz|{p|v~zy|znz{zz~yxw~||~mzv~|y{~y|}{y||}v~y}{ty~t~t}{x{z}}}}{}~qyyx|}{zz}}xovy{~}uq~{}}}|{v|xv|}}~~o}~{z~z|vx{~p{~sy~{{v}yx~zwsz{uyy|}||zz}uwy}y|x|zy}yxy|yuz{y}w}y|ww{}prw{v|v~zu|{}~{rz}~z{vq{|{}{~txy~|~|zzz|{z~u|yyx{{|y|||w{y{{|{|zp|r~xox~{|u||}|~~q|{tx|}|{}zxv|r~w~xvmw|v~|||~z{{ru}x|~tvy~z{v||}}~{|s~}yy{|~~z{}~u|}wz|sx}{|{ux{z{y~t~yu|[{||xt~}}}~}~~uy~}~|z}t{{{~~{}zu~~|zyx{{{}~}zrw|y~p|}uq|}x}~}qn{wy|zwnyxuyywnw~}~{~y}|~ryz{{yzvxyry{~}|w~yu|}|}z}|y~~z|}|{zv~z{~~}}|l}q|}{{~|z{xz{v}}z~{||{|vzwzy}wy~tzwyx}|y}{t||{}{}~vys}x{}w|{y}}vzw}o~zyzn|w||q~y}|~z{}}{|zw~z~~{~{w|v~svy{|{y|{xx~z~~tw|}}tv}~}~{~{x}w}~p||}|ns|tsx}~~|}}w}pq~~szytr|~u~~|{{~||y|~oe}v{}y|t{|zzq}{o{xz||~xz}~~w}~}wyzwy}y|y}~~}|xv|~s~w}v}uxwyy|||y}}}{}yt}~|~}xuy~y{}|z|{}{n|}|}v}qv~}ytv~zuu{~~zwy|~{y{{}|}~|s~}zw{ryzz|z~yx|z}x~r|||z|zy}l}|{y}zz|{y{ww}uy~w|q}}x{yy~ky}{wztqzw~y|wvz~htrz}~}{v}{|}smx}~{{~ve}z{}v||~v|{{|yv~{u}|{y~ux|{sz|{|~t|~}{|u~yuz|v}yv}y}z~{y}w~~{||wyyy}|t||y|sz}u}~~}zw|}uxzz|zYws|~y}~y}{wy~yvxsx}{x|yz|~i}{}u~|z~zs|z~uy|~ytz}rx~vusv|zz~rx}q{}ֆx}zw||{}|~}zs{|twv|~n}yxyz|~|wxy{}z}|}~xywz|{|v}~~}}|}}y}{svyx{w{~x{|xuz~~t||zw}|pQt{{yv~~yvvyy||zx}vy|w~{wxy}tzv~w~}txxy~~E~{~zwx{yyytuy}}{zx|yzx{|yz{}}r{xs~x~~{z}|x{|x~sz|~}x{w{{|~{x}|v}|yy|{}twxtw{|lx{w|ywtpl~v}w|vyzzzxz~~{r}s{y}x|~{qw~sw{q}{|yu}~z}~u}~~~|}zy{q~x~~y}s}yzu|x~zy~wv{wk{~uywx{ky~y}|{xy{v{zx|x|y}zz|vzv}wt}|zuz{zs||wq}zz{}}rs|v~wz{zxxxuy~{{|z}|~~t~}{~yx}x}{xzv|x}{}{yxv}z|w|{x~{~|~yy{yzww~y|}zv|w{|~z~wz}{}|z~}{xyz|{||z}m{w{~}{yztsw}~yzw|z{toxy{u}w}|~~{|v{zz{wypy~|t|kxvx|pz~{{~{}|zx|{}vmy{|ziw~zqzv~z{~{~}{}~wyv~zz~xyxy}yt~~x{yswys}z}{}~~}}yx{~ww}|x~u|}}{||{}y~t{zt}~w}y~v|}zqyn|z}gx{{yz|x||v~z|z}{y||~uvyy|vuy}s}|}woz|yu~y|k|wsfvw}y}ud~xwwywxz}wy{yzykxyr{t||zu}x~}}}xrwyz}w~||utz}xv~zq||zx|z{y|{vmru|yww~rwx}xzz||z{|yxn|{~ut~{q{mox{}|~~qi|eppu{wzzxz~zwzyqrx{|p~}~uzyz|oyu{}oryqzz{|zusrt|{uqt~}t{z}~|{|wv}~p~yvz{zo}p}ztm{z~|||wx}{xwkyv|}yw}w{yyyU~~|w||unq}q~}~vx|zqvozwx~~}sp~|ywn|{}~{}vhrxzr~~{zw{b|w|vsv|tzyy}xxtu}t{}vtutu{t||gu|||t||kzxzow{r{}|pyuvv~svt~}~w{vsuwvt|~zeyrxy~wYtuw|~{w~my~xl~}{|x{qw{{}vzy~~z}vz~z}z|v}{ty}v~|}tz|}lt{zx}v|y~~}zoxz|z}||{zz{|z|}}}zw}d|~~|u~oxvwovt~v|wyy}m~||tzy~|vv}|}ttxxr|}~z~zzz}y~||||y|{t||{~}|zs{]z}~{{twu}{u{z{or}~{z|~}}ut{lyzyt}s}}~hz|{t}x|w~x|z~xx{ty{w}tpv|}ry{y{~~{yx~p{x~zu|p||}}z}~vzjv}|}|xxs||wrtpqyy{~rzzyxzs}x{{tz~yz~}wy}z~}wwcrt|wxv}~q{|n}r|~{{}}p}~}z}}|}{z~~z}|u}v~|w{{y}}w{}z}}w|zsy|{{}~y~|ty{n{~{|{|~~|}v}|lp|z~}{||x||srq~}x{js|x{r}{~|zmu|}}}{zuxy{}{x{~}|}}~{||{{ww|y|~}}|||}||{yy|{vs}v||{|~uv}|q{xus}r{}w~~xv{zu|v{}}~i}}z}}~~zy}}}}y}||}~|}}xzvu~u}xy}}pt~~}}x{||{r||}lxw{z}}tnv~~|}xyw|~|q{zz}y{|~~r{xxs~x{xzx|w~zz{{vuz{||}syzyt|zx{}u{s~n~|x|vyxv|z}}{}||{}syv|yuqz~~wz~uz|yy|~}{~{}t|u~|y||~~~x~x|}}|{{{tw||~z|zw}|y~xwx{x{|yxsx~{sz~u~|}p|~}~{}tx}{|{{x~}{~v}zw|z~zn~}{}|yvxy{}{yy{zz~w}xzj}s{u}xy{zzyzztut}w{~zp}wx~x}}{}|z}~{z{{|~pt|zz~~}{|~z}z~wz|||~~{~~{tz|w~}}|}}w||u||oz|p|zyw}{~~zywyyzx|}t|{{w}|x~u~y~|{~y|z{{~vw{wq|y~{r{~w{~{}{|t~{|x|~}{z|~zpzz}{}{uzyz~~ny|xwyw|~{||zy{|{|}s}x~|~{~rwx|}|z{osyuw~xxxq|z|z}|~{~tzyvw||~{{vp|}~~|xxx|}||{v~r{hp~~|y||{~{|xzyg~}{x}{}mw|~ywu~}~vwz{yz~{~{~~y}|~wj~yx}{|x{|}|yty~r|}~~}{~w}z|q~ssp{~z~yx~||||w{{w~~{~}zzqw~yx|}~|r{}xy~tv}y}x}ztv|lxz{yy{|}|~~zx}tx~{w|}}y}w|~y~zvuw|}~l}z~v~y||{q{y|~||iy|||zw|}|zu~qsx}|}|yz}{}x{|~}yxw}{v{{~zj}|j~s|}y~ys{}y{|uxrz}}}xw{qtut{z|{|}|{z|~~{~z|zvz||us|~{~wzm~}{~rv|~}towjs|s|tx~yuw{}|}|yruwz{{v~}r{}swt}}ro}zt||t|p{y|{|y||zm~zwyr~{}u~|}n~{z|}~|~}xwuox|~||vz~~z{wzzz{}wwt~|sxu}}hz|u|v}u}uz}|q}}x~{zxo}{|mx~|vt|y}uyx}|wxqvw{{x~v~y~~`~}{}|w~sx{}z~~x}|{~z~{~~vy{wz}z}y~{}truvv{y~||xq~~||yy~~{s~xvvyuw~x}}~|~vvz{{~~}y~x~oxxlz|}z|}|x{}~{{|z}z~yv|pui{~}zzxm~u{xm}~w}u{|v}~x~z{xvx~k~~v{xz{v}|up}{y}~z{~v{|u~wzvwoz~}|t|~l||{|~}{||x|w|}vzz{ww}x~~}}~~||}zytz~zv{sw}~v~|s{}}~|{u}|~~}}{~vwu{|~{|zyz~}z|t~}x|x}~zy}w~}s~}{t}|~||}zw~{|{r|j{uy~~z}}~z~z{}}~|z}|{p~yr}xyxw{|~xsux|u}|}{|}z||pm{yy}ywtt}{zt{v|y{{zw}s}|{~~|v|{zr|n~{z|}xv|~vh~|~~|z|}{w|}y~zzp~w{}}uy{}o}~wyo{|vx||~~qz}|v||z}yvz{}}~yxo|yy}sz{}{~}ti}w|zwvxz~yytw}{x~xz~|}|~y{{yx}z}~~wrv|tx}|w|w}~{y|}y}||~}|}~~}z{z~s}x|{qxz{|~r~vy|zy{~vy|xyy}s|uz{~~}~vzz{}{~}||yov|l|y|zv}y}}y}zyx}xz~}|y|{|}xy~s~u}xz|~}wx~}{~{vyy}z}{~y~|w{x}{|t~uw|z}|~}vvyyx{~{~|p}{~|yyz~}s~y~xx{}}zx|}x~{zyy|z}}}|~{}|{wsu|{zxvzj{|}|}~{v~x{w{}}}zyyyx|yy~wy}|||ryt{|~yx}|{|~|{|}~{{{xm|x{~~|}}~yv}}~}{t}|~}}|||z}~|y~~||v~s~yy~}~~|z{{~y~|{{|vyv{|~||w}}}zyzwx|z|~z|x}v~{z~wzuo~y~{~z{wv}|~y|~yx}}}}zzv~z|x}uu||}xy|lxuz|xzxv~vv~}vy|y}}||~||~~ywwtx|xv|k~{wszz~x~}|{t{{}w~~~|{xwxxr~y}kw|{}{{|{y~z{zwzw||tyz|{r|~x{o~}}xux}|r|usztr|{w}}}zx||t}zz~~x}|{uv|}zwjyo}}t{{~w~}zo|x}vx|wouy}{{~v~waz|||vryfs~z{|}x}o}vuy~x}|xy}{xr|zwrt||}v~wx{{~twu`t~ztx}|~|y{}|u|x~xxz~||~y~}}z|||~|uor{q{xv}vy{zzswtnyy}yv|zry~q{u~z{z~}~{n}vr~}|w~~{~~}m|t~s|x|{~z{|fx|}~z~zuzux}|{{{u|yn}}|v}~u~}t|u{z{|kxp~{}{zy~{{~|y}}{|zzuws~}||}}{~}xwouz|z|}|{{||x|}vywx|||~||}x}uv}|zyvw|}zw}|sy}v|~x|{x~|}|~||{|xz|~y~~~|z{x}{vy{y}}{{~{v{{~}xr}{|{j|~~}x|||u}}y}}{~u|}|yy{e|xu{v{x{~z|}|x|}|~z{}|}|p|~rw}v{~zzy~zt}x}v|}~w}{x{s|}~zu}z}{|z}}}}}{z~xzxz|{zz|~|}|x|}uxw|w|xyz{~{}{yw}}|wm}s~}yyz|sw~{{~zny}|y|xxzv|{~y{|}z}|{~{}{{{zz{q}}{z}}t|wz|~yi{}zz|v|u{~|xzrv}~x~x~vu|x~~xw|}vz~~vtv{}wzo|||xy{l|twv}~}uwxv}zw~~|}}}}~uszu{wz~}vzz~qx~u|o~{||}vxt}x~zmww{vx{yxzyvyzy{y{~z{}|{~~|y|{vsvt|s{~z}}~y}~uxv|z{|{t|uyz||z~{|s~yz|z~w~zzoz|xz}y|z~{}|v{}}yp}{}zwrw|svu|}o|x{~|}}zyxw~z}yu{{s}w|z|vz{zyrzztsy}pt~||~w|vu{{}|e|w}x~{xt|zw~y|zuts||yxspx}x~|~qt}zy{w}xvwx}w|{|w{q|o|uy~v|xlj~~urv~{x{|}}zs{~twq~z}{wy|wv}y}}~wuv}|ty{}q~{}{t|ovz{zx~yvzs~wxxw{|x}xz~|~{yv{u|r}}zw}yzx{yw~t}q}~~w|qxlvzzz}||~vuy~v|~}}{{|{zsv{us}r|yg||}sysr|{}~}{}|ynw|t}|~v{a|~v{vxoxyt}||w~~q~v|z|~zxv{tup{{zmzv]zywy~z}zvuwt{{}z}}x~wu}ixvtz|{t}u{|wu}{v~{qx}~zqx{w{p~x~~|z{|sz~zzq~zy|}~u|}n|yx{{}|s~z~x|yxz~w{wrzyt~{swv~ywx{x{tyy}o|}}|y}}y}~{p~ztxww}v}{u{xxu|t~|nstx~t{|{s}v}}uy{{{_zs||{|||}g{}~y}sq{}}~{xzsn~}r|w}}{|~~~|}|t~{{xtz}||~||uzx{||zq{~p|zx|xz{wwswx~}zx~|kj{}z}|ykwv|~z}ttv}wz}uy~~w|~y|x}wry}zul}{}|}vwtuywxy~{y}}~vyzzywuyyx{wx|x|q|}w|rwysoiq|zzzz|yyxx|zz{|}yvw|r||{}zsx}v}o~xxx|}|z}vvvy}w}}~yv}{~}}|yxqx~}y~xy{||xyx{xtwzw}|{y|pr}}xs{pr~wxt~ww}{{{~v~r{s{nzuswy}}yz~|y}zlzz|}oxruyV~~~uwxzwr}|xp}s~zyuu}sz}}{~}y}~~q}z~ysv}v}~}{{|~vz{z{kn}~x}}~|}~vs{rvz}||{|x{x}|o|gtmy|~yvxt}|{x~||d|v{|||~}}qpsq|{|o~~z~|xv|utz}y~ny~}wy|z|~~~{y~|t~||}}}{}l}}}~}|~{{z~y{z{ys~~u~~zvy}xwz{z}|~o||{|wp}zt{~}~|xz|~{}{}vnz|v}|~~{w|zwz~{wnmw{|}{z}||x|{}p{z|{}|~}{}vyw{~|~y|x}zy~y|q}~|||}y|~}~|}|~oyzyx|~v}{|||syw}|tz~yuz|ky|{|{}{y{tz}}|~~z}||q}ux{~x~wv~ymtz~{}Yup|o|y~}}h{wx{|{x~}{|{{p~zwuwxz|}{x||mxpyyrw|^{w|p~wwz{yuu}wztw~}s{ywz}{xMr{~~~|qxqw}y{a{~zz{st~~t}|{yxx}sq}}o~yywywx~z~|ux~v~y{}x}{w~{~urxptz~~{~z}{{v}y{j~}{v|}w}z~rymwxw{|nq{y{}t|vwzzi~j}|||jw}{}qx~~|y|v{wx{}t~wyz~p}}|z|z|xt}|u}y{|y{zj~xxxywvxzz||wxyywzj{z{}~yu~}~~yx}}jfryulqxr}t}|{{x}s}v|{{u|r|x{~w~|}~y}{}~|lv}zl}u}~xx~|~{zzp|}}|tjy{z|yyv~|}v~uskty|m|w{~{|r~sxx~}|~zpyvx~t{wlzpzzpz}ix{zx{{|~{|x||xwvutxw{vz~rpsthyw{}xy~}zq~{zs}y}nyx~vyx}t|~{yz~ztw}ynz\wul{z~||uw}|yvxy~y||}t}}uvpvxm|vvyxqqszt|wux~f~r|{g~~zvs~x}~tup{x[}|iyt{||y|rzw{lx}z{}uwr}{|tx||yptzoxu\~xy{|g}u}~vyy~~jbxq{wx}_|x~~x~}qxvuyk~zq}{t}}zvzyxy~{vdzv~|rzqnxtpy|v{txv|~z~ozvxuzw}~u}||rw}z{|{x|{vo}|{yuoz{gl{{u}~}{v{{w~t|}u}p{{}}{|||u~mw~|z}}~}}|{}~~e{z||v~}{{z~w|}sf|x{{v}{|}}~|u{~y~}}v}u}|~zvz~k~xop}y}~}|r{zm~ux{{{~~y|t|pww~y}~}z}|u}uz~|}txxwv}{}~~zvwyyy|x~}w}{{}~u||~}z{u|r~}|}xt~|v~y|}|~}{p{|{uzv~uzpx{}~~uz~{{y{y{~}|itt}}w|u|x{p|qyvx|zy~~||}}h{vy~yt|}yu}}~r}zyz~nnw~wy}{}~zwo~}}yum|}x{}{}z}}~r}}}{|~}v}~y{~s|y~~}v||~~|z}|t|||yz{y{}pw{}v{v{zxs{sw}|z~~zys|zvztt|s~|yq|x~~ztszz}vr~hyx{{xy}u}|~|uz~~sy~{{u|}vxzwxy|m|v|zvyw}szzvtw{|{}z{|w}}||}|{yywz}}y}zw{{zz|y~}~|}wx{y{~z}{{z{{|zs|p~yw|u}||}s{u{w|wxww~~~~|y|pxz~w{z|zxxo{y{z|zx{u~~xt}rv|yx|zzzp|wwzz|}uzy}s{xx|xy|py~y}|xw}~}|}}{x}{}{|~u}}wy}{~z}}~~z}}}z|xy{}|y~y~z{|w~{x|~{~{yw}ww}xvzvtxx~w{x|}}xq}{|~z}~{{}|r~zst{sux{p~yz{{yys}{yw}y~}}|}}}x{wzv{ozsvvyuu}}yz\~y}y||v}xz}~r}|J|wzyl}}jysvytywzfz}{vquqti{{~|zpzsx}ry{~xyt~y~x{w}}zzy~x}wrzw{~{}xr~~}zy}zuszvzy}x~wyy|x~w~x|}}s~~zwy|t~gxw}zvz|y}z{{sx{y{yxrvwy~~~{q~{}|y{~Rrrx}zvz~{~v}xz}uyyy{~~vYjy~xy||~zwvzwxrx}u}x{vuy}{~|zxq}|}{q~x~}|}{}nxxxy}n}zvq{vs}zur}{~t~|}~|~{~v~}}~w{}{~~z}wx~|z~:}{w|}u}y~z}x||z{xu|}u~fyviwzuyuzq{~}~zyzy{{tz}ypw}pzy|m}{{rz|~}~\z{tr~xzz{~y|wv|~ow{|y|}|}yzr{}zy~|uz|x}~|qy}vx||z}~wz|~~}xwyx~~}{rw}w~{}|~~|r|}{{sy}yt}zyx}}}~{~~{n~z{|wy|{|}~y|u{|~y}}|~~sz~y~~z|}t{~vwx~}zzxt|u|h{|~{|{z|}w}|pyzys{ys{z{wwyu~wyyyu}~|u}||||}yx{{{rv|y}}}}y}z}v|}|}}|{{}z|}{}}ys|~}~||xtx~~~py|wyzqmyxyyv|zt|||~tl}zzzx~|{|zr{|{{ut|st{||~z~~}wyy~uy{|{|{z{}z|rx}}ww~|~zoxr|{y}|}x||y}~zq~utw~v~||yy~~|}y|}w}}t~~}~~{|x~~}{w{}~r|~{}y}zz{o|y}~{}y|lw}}z{n}||||~z~z}~w~txztx~{~~~}}{v~y|x~nz|t~v~z|x||vy|{{y}~~~z{yzz~|~|~z{yz|x{|}|}|~yzxxx}v}|~~}t|x|t|x~}}o}}zz||yy|~{|}z~{}}wx~w{t~}y}x}~yy|~z~|yszvz~t~|z}{x{}|y{l}}}{||~u}zz|wx}~|w{w~~{{~zy{{|xot}{x|~w|}snu{vy|y~y}yyx|||}yy~}|||t}z|wz}zix{~z}y}}z{||y}xr||{}{|{tw|y{}p|zz|r~|{x{{{{yvyz}{wy|{|xw{zz{yu}{|z}y~}|w{}w~yp}wuw{|}yvw}tq}|v}{z|hzz{v}|}|ww|}~zz|}}{}|~wxy}{}~y|{}z~{uoy}~u~yyz|{|q|~qwswz|}}x{z|y}}{|zxxy|sy}zw}}ryz~yywz{|y|wxv~ww|tv|w~xt|{~u|}}z~zt}xq}z~uvzu}|{}x|yw{{wxy~zw}zvx|x~t|~yyx|u~yu~|~|ywxzy~zwu|{~|{yzy{~wq|}vqw{~{|z{zzzxz}z}r}~}}v}}~}~p~y{{{wt}sz~{}ww{~{yv}}y{{zx~{zzx}yyvs}{x{{~|}vyy}y{}rruzx~~z}|ty~uzxy~y~xKd=|hpfs~o,|XiV\l|p`wfpo1o`qzD_c]meK~KxvdxwBnuÇ[vht_^vKLlOfg{gm|byZpUngzn|b~t|s~zrhkujleiIiǩV|XsUSØ^mvtsLlg~ˏ}4yqYHWES~ImdrbkvoQUmExqysy`Ca^Tcx6#]ypf=|G~Fy\^Z+%og}{bd.vffɞiu{|`lmRboU]tqkvkvu_oV!dxrk|Y[I}`:wyyg1<]1uepca~f\gKIùqtj|]Û}s}xzxz}}zs|}|{}~|y~{wsyxzx}w}{|qt{}x||zy}v}{}uv{{{|z~{{z~~}~|x|wl|yx||k~p{~hvprqktowv~}yy{u|l~xsxu~~|y{xrz~x|}w|x}|~~uy~yrvmryyw}zptw~|t~wwy{}cy{qwzr}w{szuqzikoiu~s{s|g~{΀t}~z{yvtd{jwtxHmu~|{||{||y{xtuvy|_z|{hvrx{~||z~{y~~{||~}y|~{|kmzzw{{x|ws|t{ykbz~xrzh~|ym}wyu~wc}yezo|~t|}~n||qpz||~~pwlywxpwfp{~mvw}pj|sv{~{iyzvu{~wyzzzsyu}~ky~~t}s~{~|u|vt~}xz{l~q~({u~xxyvxu~wz~~}r|zruq{~syl|{||z{~~|z|y{s~}{~~{z}||{y~{uu~d{n~iyyq|xm}y{kku{}z{vz~{}}}w~|zjvx}|{|xo~fza}}Ut}~{yNyh|}r{~}|zz~{|{r|wv{vw}FtD}}zy|w~~}y{~~ww}z|{|~y{pw~{qnuy|ry{|w~s|}~r{z}|~tx}wv{}zm~~u|}}}z}}~{w}w~uz|{|l|}z|rzs{~xy~vtvy}wt{{|z{~xxx~yqy~v~}}|~~|{~wzy~|w}r{fu|~q}~|}{~}rsy}}{~ly}]||w~vrytq~zugqz~|jv}|~V_~wt~~sx{t~{|sL}{z{}~~|zyw}~}v~n}|x}o}ro}nwz~r|{z|z}|y|~r|zw}{|}|w~z{mztyj~v~{tq{{x{{|~|~|r~~}ws~w|z{|y{|z{{~{~}|{v}{r~}}|s~~o{yvz}t}~xpzz}}y}ulv}u}z~w}z~}}u}y~yz}~z|{r}{t~}e|{}{x}y|}m~q`~}xq~yjs}~~vxq|q~{tqp}{||zxIwat|}qx|||~tTvs{}xy~q|P{}oa{}wV{x}{~zw{rfu~|||grz~~u|{p}|x}p~~zxqzr{~|x||~~or}}y{~drx}|~t}}{{x}}|~||vgqqyjbik`Za{njkc_Xc\nx^jb^hfoviunmy}i}iLjnq|bk`fbci]nnpe\elhl_cdcciala^yx]aizoppqpgqaijotq^|`_\ema{I{p]z}sn|cifg~}s~~|~}xv~sz}~|tyxr~}z|tu}~f|zqrt}}}{z{}}t}}|}uz}yx|}|}~}|~{y}z|}{r}~w~|||zx~zy|z|{}}~~|{nv|{{y{swu|~~}~w}xw|{~jo~~|}zzmx}{|v{~{~|x~ws~}z}}z||{v{|w~x~sqn~~{y}}z}u~v~{~x~ws|}nglgvy~|~}}z~n~}yxv}}nr~tq|shzx{~{vow{~y~u|^|{~z~xzyy}~~z|~w{w|z}zj~yhf}~}~ory}|xqyysz~~}}x~yo~g|t~~|~ql{}~sk{t|~ja~zzm{}]o|~u~wvwZ}~}x{}yp|ro}x~~x}~^hnzu{~y|}~~}z|z~t~xyt{~xksntmy{u}yzs}xz}z|y|uvw~q{{p{xb{{c{|h`qvt|aoktzy{~|s}zkruUmiyxwzx{shzlyio~~~ffy~y{tt}[io|z}zz~uks|~m|~nvt~~~}~~{swy||sq||opoxrx{~lulmy}|}[}u|z|{{z}{}tzqz~||~yh{u}}{y|yy{hx|lv|~xy{sre{pz|jpk{~s^~xm~}|ly}zz|~zj}r}w~~~tzpzs|pY}xf{rv|~ywzz}|{~y~vsq~~}~xqyz~~}~yxzzvx{|u|}xwzz{j}~|ux~~xz}{}oq~yu|{zvry~zzz~wr{typ{}uw}tt|s|z{~qqxxxk~uztzli~m|ukluuwx~}t~|y|zq~~v~~j}{~|z}~u|{sw{w{|s{~{t}}yqz~|tpj~qZ~}sirz~{ykuzzv~tz}tx\}~]}\ivgzq~QozsZL:gz<{{~qqxx}oezUw~||o}~}{~vvrq|wx|na~x|y}{ix|{u}z|y~{xv}~~xwxy{|ty|z}x|uzy{x}|Xsgw{ey{{}ti\|mMvor}}p~~w{}}rO|wu~}w~ysvw}|zy}{w|}v~y}{zw~y}~}|gx~py{xv~}|~w~}~}x~||st||}gu~z{ixy{qz}|zxv|q}z|}|zn~xs}p~t~y}||{q|zs{o}ss~}}}zyszzx~~zowu~~ypvlvxzkY}yvxp~}t|g}{~o|a|}|lqnotou}jmqup~|t{ypzvn|tpxvxvyswvwpm{zmu{p{|yytsyqqo~~u~|||~mvh~xs}z}|w|nw~|{|uz||xz~~~}|z}~z~}|~~|~~{}~{y|{zyz~wz{}z{}y|~~y~~{s|{~}~~ovm^|}}n~qs{}x}xy}{t~~~~}~}z{z{{~t{|x|w}~{{~}x~zw|{z|uitt~smywtx|~}j}r{un~yxn}o_Qfbolz=j}p}|t}{`~xt~|y}~xblp|{n|mc|x{zw|{k|s|y~u}{~vz~ud|~}|~}gwy|~z{|{~vk~|z}n{}~}~}u~l{y|zt{nwy{{voz{xx|{cmj|~}v~vyzsyo{~wrw{~||zs}wy~s~}yf~}vuvm{}zyvz}|w~frp||}}u|}u}t~~}||}g{}}z}yz~~|uov|{{{mqrv}gwh|~}|~x~yv|}{~~||{~x{{~zuy}yzo{|yw}~|y~~p~gyu{|w~w`p{qvfzp|xx~z|~y\|qt|~z}vvy}v}}}~x}zvyy}~}sozzy|~x}{|pz~~iwp~~}t}x~x~~j}xuzzzroz^vscpowu}}}zi~^}{~tsyvqvyv}}~s}y}nny|{{xztz{ukq|~|xu{}|}{~}~~y{u{uq|t~n}n|w{w~o~v{ry}}l~w|z}}~||py{ss{}z~ux|~k|{yy~|~}s~}rx|y|n||y|}~zqt}rd}r}hvm{]|{zx~{w{xzoyw{~w~s}tx~~~ur{zzz~~w~li}}~tt~zTs}||{[tkwx{dz}xr~p}{}s}vX~y{t|~ov~|~z}us~}~q}x}|l}}}tutv~dm|}|xq}u|}}~u}~|~}|x|w}~wyw~xoy}~yw}x{}{s~~x|yd}y{~|yu}t~|}~uv}~{}~astynsw~}aysm}}z|||~|y{~w}wq|rv}}|w{v{{~zr}|rysx|stf}n|ymk{~yovz~cz||{r|yz~}x~~u~ynu}~yx{`vq~}qz{~~~zrzzr|}|wt}u~~}w}{m~o|~v__}{|t}k}t|w}yyx|{~t{xzi|q|}|tye{xzxt|zvpyzz}z{p{ya|muO|j}{~|zn_id|k{z|zQJU|~wo}}|zx|yv}}zuz||x{nx{||zzy}|w{|{vz}yz}r}~yw|zvy{z|x|z{|x}vu~{|xyw||y{rt}z|yzotwyxyxx_w~}wu~uU}cr|}~Ur{zx{tqtFqw|xoxpk~=`}u_t{owsyzz}wwo~[w`}|}~yn{{bz{~dozx|zvf}u{~zzwxyzzx}f}~suz|zurfw}u}^anW[zsay|vrjSyNyy_kwm\p|{xqȄt{]~h|v~lz_v~ywp{ve}}|x|y|}xz|}w}}|z|z~z}|}~~~u~yzq}xz|{{]sw}l|u{}}{|x~{}ggy~|u|rprxx~ss|{r~~z{~y}uz}~u~}~gn|~~y~sx{}~}zux|p|vvz|}r|{qfw~sqfge}rqy}zyv~}|tx{nk|~}~|~|}}z}}z~zzz~}{|}x{y}|{xz~||{vvw|zyxy~}uy~s{ux}Xtz}|}}~uw{y{hxx~zz||z|y|z~x}yx~{|~vx~~}{wyvt~}xmzwxw{ysuxwu{z|u{{v}~|}|x|y|}x}v}xy|}Ww~wx~x~yvxyz~~}}{y{}~yxz}{{z{|~z{~{xY}}~yxyyyxx|y~|z{{vzz{zzw||}}}|z}u~{~zw|{yy}yz~{s{z~shc}zv|i}~~{{wyywlbx|~~sZ|~|t~y}}|~w|vm~r~`x|tzv}~r}}k|q}{g~~~~zo{~~~~yuy}wy}u5~|vzv~}zy{}{{}}{}~|{{xs~}}~~{}~x|~~|y|}{zyK~sm{xss}~k}~~|}{~yp~[x}n~w~mn}~{}s}jvz}~|^{yrowzyxns~uz}<}~gi}{|{{s|}cz}|z}w|}kx}f~x~~|ssw~q{{~w~~t~x}n|tuw~z{u|t}}|km{r|{|y~}n|}z{~wk~~|Zvz{~brxQr|~Vurjv^e}y|||xyw{~~|~z{w{}|v~n}|txuwuuy}~zk~~~}t~y|k|{xxz|~yyzzx{|u|}~~w~~|xz~mpQyz|~qL|sz~T|v~wzrp|dxoo^{z~lmb~vspv{|vfw}xw}{rz}zw~~{z}yznxzc|vsyzi~j}wku{tyz{p{rvw{{qgzjx~kq}|}|}|r}~bqv}}vyms}eixgrm`~k~~t{|{uy~}n}di}~zz{}~}z~q|{~~|{~w~~}upt}y|}|~~t~~x~x~}v~z{}{~}~{msp}~~s{}|tu~~~}yz|~rw~\y|wl{~~|xj~|x{~}{{y}|~u}}~yz|y}}s|{{s{~{w{~t}stxih}~j{}}~{w}~k}{q~y}|mtx~~}z~f~ko}}}|{|vu~}z}~~qv~~y~vxw}u|wyzr}|y}|t{~}}y}w[~r^{|t{o|r[|~stuq|u|}xzh}tx@~zxm{]t}wmv~aryz}n}x`xzwy~|ti~t~{ry|~velpw{z~~{y~y~z}z}pvz{{~z~{~|p~}}ql}x|{||~vq{|s|~tu~r{uz|tyx|q{~v}z{yy|z}yl}c}ylwu}|zvz}~w}z{yx}|rsxu}ox{~z|kru{}}{sy{v{~{w}}vzz}|g~wtz}l~xyvwxrwxvmch{v}ovbutsy}s}}ryn|rtMq{|}rln}vj}qzzsq|lq~u|qwx||~}{z|}~v|~w|~turzl|u|yv~yq]}sy|to~~yz}wysz|x{w{z~|yw}}ve~~x~xzzzz}xy||y|{}k|~~~wy|zyt}y}{|w|{|{m~}|y~}vx}~~{z}|n}|t~z{gxdr|~~uu~~}}^|oxko~|||q~s~~~n~}x|~~w~~sz|r|{|xy{|~xs}|w~uz|z}y}v}yz~hy||zr~x~e~u~~y}oxz~}r|x{yr}{x~\hs~sQf|}}{k|zzy~{xrz}o}pwly|}{{~x{}|z}{zzku||z}m|zm{zz||{ow~ud~^|{{usfXg{u5rWvu~|uymh|r{s~}}n~t}~}z{nsj{|}ry~s}u{iwzzm||~|||xw~}~f}b~{~}}}~|~y}xv~txy{}~z~v|v~qvsvj|}kz{oz}~tx~jyw~|I{~w|~ly|{yi~|~{}{zo{j~twxwj|uz|x\m[~yut~zX~~yooow}~~fx}nw}~p}vzzy}z}}~^nr{yk||{|x{{}y~xyww}v~}{txp|z}{x~{~s{z{}{zy|s}}y|qkqx|}i{wt{yv||b|nxgfy{}K|w~x{|~}vi~ji~~zk~s{}yzt~}~v}luwo}|`ux}sjopqstvqv~zyz}w~|{{yyp|~z|{cx{w||||g|~]w|v|z~xyq}}yytu|~~{y}~~sx|t{o|w}u|vy~ut{}z}~}~t{z|r~zvx}y~~}z{x}u|{~yz~|}m}~{v{~{}|y}{~y~y}zys~|~vu{w}y{|^zvpoztwoytyk{yvuz~}}}~k|~kffru~{zv{^ky|x`xs{Lyy|}ysy~ńzv}mřn{|w~rsy}[y}u~ovX~}~x{{}y~{t~|}i~t{|}gxxtz~~ol~kzz~uc{}qp|~hut~|u|~|~uy|o|~~~~s{~~}|ys~}~fr{~~w~}o~xxv}}{}m~{}vy}~~|~{wryzx}z~t{xh~~~vyxio~|omyz}~{yzy~yztgz~s|}}}~{~}{vk{zh~}}yy~x{{}~|{t{}t|rv~|z~t}u{ssnveyz}v}{y|~w|yxtz~n{xoqzs}rzqyt{|Ȉ|{nr~~}{{uv}~~~t~zylwy|~zv~v}jm{{ztw}r~zy}|v}q}s~~{~}z}ytm{t~jap`|~tzhbujR~w}otr}\\]b}-aw~y~y}w~yzx}z|lzxwtz{s}|v~{|s{~}kUy}{{y}{yk}{{{}z~{~z}|ys}oz|w|z}ox}}t~w{y{xut|r}}y|{{zvx{y|~|~{|z}|wxwzntzx~~{y{uy}xxwz{{l~~{v~||u}|^ty|u{t}w~~~|}{zsyw}}t~}}yz|w}x{vy~m}~q~y~z|vs~{mu}s|~}vv}va}v{~a}phx~}vz}h|z~zvrr{~~~vy{z}y}}vzyw}|q}{}yo~}x|}zt{~}}~{~~|v~{{z~~l~syu~x|~y}~}~y}}}}}{x|zvy~}ytyyzqvw}o|xuxos{rs}uz}v~wu|oz}|xkw}Ņwvpxpok|rw{{yqvx_`k{typzkqJ}d|~|{z}vz~}|il|}uix~x~~q}sw|mzw|}vs~~{~zwvztzzy~|u{twtx~|~y~tx}v}~z}i|z~~{wzw}jy|y~}m~t`xur|{iw|}|~|zq}~{~z}~t{|y|~zu~{z{~}}w|~}~y}w}}yutzssnyrspwvrwxq|~xzvujurx{ywso~}{{}|}~z|Umw{|z{|{~o}v}xzqrsrutgfv|nqhwywz||{{x~y~{ox}wzyyrs~r}}~~{p|{s{x~hi}~wt{}w}{zq~kuw{k}og{v}yq|yvY~z}z~z|{|~{}}xw~u}}~~~{}vhr}hrxzqx|}u~wy~|y}wz||~|{~yw~z|r|zwt||~{si|}s|}wq{{ux~s~s}~ywy}yrrvxx}zz{~vnw|~ssi|}~{{|xw{~~z|u~wy~x{||u{zuyxh}{vu{vx{{|{yy|wr~|}u}w|y|xc~vuk}{z}||{}r|}vty{y}zp~v~u~~s{~|{|tzzy}s}{x~jx~|{}zr|{|z~z{}lw|v}}}zyx}|~z}y|}}z~~}zj~Uw~||y~~tys|~s{~ndj|tyj~;}x~Y|x}mh~qt|sjz{zjz|jxwxfpsms||y{s~swvz|ls~t}sp~xvwzhytnxr|}ytltlyv}uus~o|l{|qxn|t~wtxz~|yxzvvqWwr{r{~|g|}yxyzruq|~pt|tqpnv{vqyp}~tu~{wy~{yw|wxxrjznxx}itp~{{u|}{}~{u}z~}{|l|ms}}w{{~y{|x}|~z{}~w}{pp|uq}tdt~~~z|~}|{zZi|r{~tzs{s}{an|y{u{{l~w}|~z}}|dm}}z|yzg}~{}y~og~{~`~yvi}|}x}p~zxw}zvqwy}{w}}w~~}|p{}{y~e~x{{g~}}~{|}r}}~{|}r}{z}vx|{k}u}p~|{}~~|t{}~w}|~~}|~{m|}~}{u~~ys{x~x|{~x~{}z}t}yv|uqx}w}~tul~yytw~}|z|xm|z~}u~ux{{u}z~t~}}mw|o|u|y~x|zx}xx|u|syx|z|}~}y{~|jz|{|nw{~~xwtws}wyzy}{~v}q}|~|{xx{|t}}t~y{x|oq~zcx}m~ht|sn}wywy|hy|{cl|{wuw}]t~~YX|naysxfo`qpxpfpo}~|~u}}xx}hww}~~~~}t{qq~l{u}sv}}x~~~x}ytz|zzyo~x|x}||~rz~q}~~~~ztx|xx|uy~}}~}z{|y~}|~{~}}|~~|}nv~|p~ryw}|zw{sx}zxy~yw}oux|{x}zy{p|{z{~zz~v|zssv}u|}p~ws{^zrlmoxy}|yx}sv|y}{uuwy{w}~z}n~rw}~~vi|~{b[|yz~x|}fy}x}{}}hs~kdtvJ_w[}yZey|yxsiz}{{pz~}}nx||fzlr~|ti~z{xxw}tsvzu}{{ztvo~|{y}}zt}~t|z||{wwywc}{pyWsz^vz~bbOTy~rkz|belz|ynzuvz{~|qt}{w{|{{|}|u}z~vy||tu|w~xw|zw~v}}Yn||{y|~qhz~ucuy||z~q||~~}}}}}zq}}{~uzwt|z~zq^~vr~||yy|}u~x|q}}}~}z|t~}uyv~zzpx~zw|vy}w|yy{z{|~~|uz{v|ww|}{|||xz~zux{u||~}|}|}zyv{ut}}~xzq{{{uz{}|{uttp|}wqytx}szv{}{tyuw|vs{w}pzt|||}uyto{pn}wy~sz|oy{r|z~qr}lw~|~}|yss}|w~z}}~}}z~y~w~z}yzrw~Y||{quy~m{}tz{}}}zshy|ot|z~qzxt{{}v}~v{zvt}q{|wjc}}iutm}c~{gWiMoStNunw~czv~z|p}}t|p}s|nlw~qqw}z|}~sx~~{m~X9{~}~j||rgeyxwwxzu{u{||t~{z|v|}{\q}h{ys}tx}uzytzz}Qr~xxysv{nzywzqYzyz~{|nv{~ywr~Qz}|rpa}xe~wdl}|z}r}wlzqh}Yk~y}}|p{it_}z}}mm^T~y|Os}t~ve~xn}xL~~lo~yl|t}}nw~yzyonc{O~^|usVntx|}}{z{{{}R~|v}n{yz~~~~~z|xv}uz~yy{n}c}}||~u~vy{}z~v}}~}|~{~~ho|~~}zywu|otzwqxz~}|}~~{x}w~~pra}zuuv}~|y|sa}~hvzns{{qzuxzwf{~{uuyuEpwyt{sqQupxz~\r|{}{wy|z~|xyqgxwzyH{d{{~s~^k|~_}}cv~z~y~xrpyy}j}xu{|}yzy{}}zyw{|wi|mUvqza~}}{t{}_sxmws~S}y~Jpyoqs}|sgm|~uuro`BrZmvk@fd|~q}}|{~y{|a~rx||c~x~zu}z}j}wyyv}|~xrxi{ywwzZvB~uy~}kw|zsychz}u~znrzf~{~}{nzzt}t|vq~zz}uc}{}qmt|u}~~}}u~yz~~v}lgtz{zyuz|}}~~t}jy}~|}mz{{w}k}yzqwz~}y~y~t}nwr{_|~mox{w}vs^z~u~wjp}{w|WzKxsx|~p}z{{x~tp~|~uuxv}|x\fs~uw~qZ{lz|vysv~~u~q|s~zt{u{|rwxxzzuuo|{~~v{~hxq{vt{|z~n{{{x}{~w|{s~{|{z~}{y~t~}yxv|~}yqz}u~r{y}~{uv{}}z{}s|{|}zvuz~~}}{|{v~r|~|~{f~{{w|{z|{~swz}xnw~xq|}sr|z}|{n~x|xu}x~z~zxy{~wtjux}pgzvxyys~y|y|pw|}~}}yr|~s~vzxzy}~{sy|q}|}mvxiqpwz~mrz|k~hx}}zuz}}utt~{}x~~~v~}ns}{p~yv|~o~{~~}~~|zt~{~~uzyzv}~{p~z~}w~~k~|zvp}y|yxdyt||rwqosjizv~{}}|uzs|sz{}z}|}zz{|xpz{}~~xx}||{~z|~}yxmy|z}|~}y~}}{vu|yy{u|u|p}e|{}}|ytaz}ykyU|~}x~|w}zx~~ne{q{eVvz~}}t~uzy~|~`xs}{|~}~ph~`~j{}z}hzyvwr{f{}v}nl~}}zf{yu}|a~{y~|o_p}Qk{{mtu|}~ofz}g|zyyfzwiw{yzRl}y|{~{vWv|ysq|y|{{{ys~``o}|xRertu_d|i~y]s`McR~{{}z|}~{lz}iuixxv}{{{~[{~qwwr{~xw}i}{~yqzz}}{~yz}vr|n~~x}xv}}kz}|z~}{zvy|{{y}}~W{}x~w|y|{{}pyzi|~}~nx~ts~}ssqstwy{|rzzum{k|sz}xrj~ez}p{yy~w~x}xq~s}{}fpz||}~uv}}{tq}pwo|xx~zkxw~}~q]c~|sQ{wu{~hX|~rzyzw}vt|zt}ys}}y~~e}~zvo~uxz~|}}}u{|xu}w}~s~r~gx|v}twic|w|w}|u~owj~~mx~y|k}oyz{woj}yzvy~}ys|}_|~}{zxzyf{vx~dd~w}~zy~jhl||}|}y~~|z|tyjs}~ss|u{q{~rv^^v}yrdqzv~||}~us|{xxy}{s~||p~|~zyq}y{uir~u}~zyxq|~{z}~x~~z}{s}x}w{{{yzu{tznwn}sy{~~y~rvkuu}oww~~|xrxzzsj~yk|{x~z~}~su{}v|zwzr~zxv~~zxrycxv}u}du}ywu|ux|v~l|~|ws|{lr|}yt{x}{~}}t~{{~|zyz|~}y}|s}~|~tt|vyz}}{z{yztz|v}yz|~psx||xx~v~|xzpwu|}zt~yux~xh|~~}d{{wS}w|y~u}{{|}p}||z}vz}z~z}zzyvwx|y}{}~{p|xz|}|uy}o~{}~t|xzw~v}vzw~y{|x}|{luz}~|w}y|w~~yz|qyw}|wy}vv|xzuy~xyu|}{}}~uou}{~zu~zt|{y_{~z~^xg^}|}}}~|{bzy|~{~ywz~uzuzdl~zlzeZW\x{f~t|~xttTzw}y`}tyipem~{|{}|w}t|w}~{{|p~vyut|vj~{~z|x~wwq||jvx~{t~l}~}yz}~}vzzxw{xz}r}}~r||u|~~x}}~z{{w~||{~zz~|klz{}z|wt}z|yy}|~w}{}v|w~x{ytx}|y{x{x~x|~~xy~||cx~~x{tdm|xm|P~rpv~wuu{~q{z|qgauxf{xocnxc|{rqy{{x}xh}v~{}}{~|y|s~}tw}no{|uyoz}lswwx|~z~v~~y}x}io~z~}y}{}~k||ptvq|wq|}r{j}yw{~}uo}o~z|v||vmft|ku~ny}|gx}y}{y||~}}xz}~z{~|s}vtz|uq~p~xz~}}ywfy{uy|o~w~}vv~woqz~pz}{vyy}}|~m~{e}}~}|}~s|tx~yy{}z}}v~{vuzz~}~xv~|z}|}}r~w~yyzt|~v|}zy|{}v{x|t{}}}{ywxrmp\~mk|_x[~{|ysf{k~|~}~z}|~~tmx{v~{|n|{}~y}}wu}||}||yz{}z}~}{y{|}zyxytw|zy{z|}|v}y}|vy{w{z~~yzwt~~~u~{}~}~|~}}~~z}~y~~~|~t~}}}~zw~w{}{{{}t{x||{s}t}w}wqq{~~}}}ws}}}~t{|z}z|w~w~~||}}}~~x~}{whep~m||ow~o~r{dzs|z~vx}~flzxp}yvzy~usywopyx~{||qbzw{yn~vupz}y}||~~tyl{}zv~v{~zxz|{}}~~}~t~~}yv}~uu|bow{y~rnix~|u}}ryuf}|h~o}}~xyq}k^{zxys{~vxv|ux~{xv|e{qon}~upyr~x|x~}|~ss}o||~z~ytvkzs{~rry|y|{|k|xwu{vmcxzw}~fZh|yyx~|~]uovzpq|{}m|}|d}}}}v{{t~yv\}}rp~~|uov}|{{}|v|{x~{zr}|vvuzuz~ynlxu~}|{{~~|y~xyx|~x{~{}~z|~z|}~v{~xk~w{va|||{eyyuy|t|~}h~|}~}vtq}x~jysqs}y|~~`~z|x{q}}~||y||}ox}y~rsb{|~^~nmw~ywr~}~yzyhqtxykqzru|~zwiy{||||y||x{sxzpys|w~w}y{{uJ~{~{y}tt{h~xtz{~zkw~x|mn}|wh~tb~}R~s|}hƀ~s{xx{ł~|{k~}v~|]s|wwvuizxzlga?vRz}wUh~z}w~~}xxpt~~x~w}}ux|~~z{n|~~p{zyx~z|~{~z}~~|}y~~ww}~||~~~q}pq`n}e}v{^xv~wwzwm|dxv|woxmx|fs||sZj~|~}zxzb~xcz}}rzx~}t|~vzmv~q}y|h~{oum{xy}|vx}~~wzbs|p|w|uh~zyz|{{{}u~|}{|{~wzvy|r`|vzdqlq{}||~|~w}~|yu}|~se}}{~{~h|z|s_q~~j}m}s}wy{f~zvxf{x}}lvxxxx~y|pztto{o}ct{y|tzz]uquk^{}x~bw|zpvz~zt~|}x{|~y|wzu}y|x|z~|}yn|yqwp~}}yk~v}x{tqso~wvmz||~w~{m~ztxt~}|{z}lIzzzpu{wpu~u`Qz}~~{o~~zpouw}lt~{r}xyzorlq~qtn~~|zio}u}{||xu|ud|}qyz}}q{}q}}yry~{~uzzuxwzlx}|z|sa|~xwy~v}w~}m}ۈvr|{~t|xzwy~_}}|s{z{|~u~kbx~{~g{MXyil||px|r}a~{x~t}utej~Z_p^~{~{WwG|ʇ~qyr}~y|yz{ut~{}ym{~qx{y~w}~~z{q~~xjwly}yp~|}w}x|k~q|v}{~yxur}t~}z{|~{x{{~s|z}uW~ky~i}p}y|}|tx{ygwx~}}}wy{zlx{|}~z}}|yyz}}yvu}zx}}~{vtc|}~|wmz{|zyuqy|dzyvsm{ztvw~}z}{r{{m}w{~}~|zsv~{rz~w~}y|yzw{z|{`~|}ws{~}y}{y{o}jwx~{{~|~w}}|~x~xv}tu{u|~|i~~~~~}optzy~}w|u~}n~zy|}p|wzzx~{uw|xuvrwxrv|s~~z{p|xz}ty}ziyxw{x|zvv~xvw~~}}~yws~y}wguyzmvu}vZ}{~xx|~~wjqru~}w}}{yxzit{~{xwpsz}h|t}|~{}xxjg||t||||{~{~}}x{z}ow{~~zwix~urw~r|tvq~vsw||~~ywzxz|x}|~wz}dvzs}~}|tx|}~x}|{{zz{y|y}|{xfx`~|unzl}~~wv~wz~s~uvh{w}~z~ui{{|{tyz{s}}vvoy|u{zy~}r~hjx}x|lz|~{u{~vu~yoc|zty}~w~}{q|ne~}|ye`s|yow}}zz{w|zvy~|`swx|z{~~o~xw{~|}z}|tt}z||s|vs~yw|l~z}v{~y}~{~{}|}||x}yw}wou~{|{}{qs{xl|mT}{x{Lo{m}tf|ujqu{k|xqi_}o}Mhzu}}w~~jv}xly|qtz|y}s~wxhw~quv}|~y~~~~v}x~k|xtzxwnvtqw~{xk~{{z}}xud}oz~nuwypqy{hmz|trz{y|wwept}ho{z|zxt}onqoaosedo|osv]bfXzUgkqu\oniXhj{mttmsjkSomqtnreokrnpfsqgnnwl_|Qcklcpogsujf^q}xtqfpnpwbnapeuavoufscjsav\oneenorXgqln}w~}zwu_\rwwoxo{~}q}sx|p}mug}}}yxyk}n_k~nR~^}~wqQvgszYhO}~z}yp{yzz~zu~tuz}vu|~~z}~~}z^vzxvtrz{m}x|uy}wwyvt~sxuxx{}q{txy|~}vxvszy|xzx{~wzit{y|r{}}tt~rvuzxdy|ew}{~i}{v~{f~wr|zr~x{{z~vrp|l}x~tst{wt{o~zv}{xu{u}x~u|}cvswzoYzbqr|z~jVw|wsv~|X}~g}r~}~~m|`krp}r|yd}}}gy{sjpa|ojw{|w}lr~vw|zo{pystw}v~~bvr{w~~xl{tyc}~}z{wrqy}uwwe|z~yx|sw|bo{}y~}~}oumyqy}lshvyrm|xayh|{~ui{tys|~y|t{|muxp{~v||zrk}|||y}zvy~{~v}v~z~zyw~zzoz{x}z~~}nzzN~yk|~}yvxqxtqg~umR}~h|l}|}~}~vx~}~u{}}}~zr|}|ru}l\azv|q~sy}}t]mrxxvx\|}t{wUr}wz}{}|}~}{wt|~u|qz~{zr~sl~~y}~y~~~{|z{|z~~n}y}|mz~zx|qy{}lnz~}}ln}|y~z}x|}|}r{|~w||uxyuu{nxsnwuy|{||tmrsy{}vq|~~sy{uj|~}yzttyumivs~yxsxp{~}zv}}~}~|~|wzxz{uvz}z|~}}wz|~tt{voz|yz~uz~ozruswcpz~zu|}r~{{~yy{||{{}~}q|~|w~u~~~{~~|w~~~~pz}}{o{{w}zyq}yv~~p{}}}{|zzic^}||qz}a}yz|kz|~}~s~x|jub~~~zp{{{s}ftyz|f~sx}xy~{s}s~lk|}qxe~x|}z}zs||z}zu{|zpy{xo_tzypk}~w{{}|z}{}x~v{~{}x~|~c~{}}~~{ou|{ow{zq|fty~|}n{~z|xwspzx{usb{}~jrqwwmg}vzyly^ryytr{v.~ztwt||rtupN~~}uq}\wx|{a`Uwyywu~iu}q}z~~l~zt{|~ou{{k|z}}{}zb|~}~e{w|y~X}vu{|uVhp\{n\|i`{j@]lyVf}v~y|rywzx}~~mzw}zvjxyx^nrstnuueyx}}xtun{{x}}zy|~s{}v{t~{yz}vwqr{w|z|vwz}|}z||sx~ztx{}{o|y}~rvix~yxxmqy|wUvw|xyu}~~tvy~~uyvyq{yysjv{y~{x{~~yzuy~w}}~}wx~{[}pteqq~{_s{~|~uuyc}y~}ovmz~wvqi~|z]}n}zu}ruyr{q~^zxy}y~}}syx|~~}||x|z~y||xt{{z~}{}|}y~|vuh~tx}~~xsyzz|}~{}|~~}{{~y~x~|}zz|{|wzs|yhvx}hps~||xwnmxzyq}ywu|wC{uqqkr}p||tw~z||u{~v}zx~ezxr||u{~|svx{~zrodz|ywzxwy{z|xq~{~xLxqwz}v{|}~n|nyys~~x{~~}s|vqwxOvq}y~zx{rz~zy{|go|w{vw{vt{~~|Ylzt||zt~vwx{tt}|on{xu}xsx~w~}uvx~{h~you}}|ux{~w~}z~n~~xz|~z~jum{~z~}}g|u~z{iu{m{{}{}x{vtzz{wqt|}s||x}{s}{zzxx|~y{xy}}z~}{{s{tzx{y}}tt{|{y~y~p~~|yx~rpR~z}stw~~~~~~y~w{o~}~v~~{~{~v|~{w|{{zz~~x|~~vhxy~sx{l{vvz~}|w~{yx{|||}~v}u}yz{{ts{ur{u|~{|c|}owx|yyuu~k{}j}y~vpzy|e{~z|xw~d~|yx|w{r|}txys~~z}uz}xxub{y{~vw}|y~}zl~~||||}k~x|{|t|yz}tlu~|otxz{}||~yn|r}r~|x}}{~wgt}x}}zp|{|~io~{}v{wx~w|vmo}{hs}}~utc~szsq{uzyy|e|m|qzcypz}|uwuvxk}}|{xe:xsyswyoyztx~~ps~q{n|z}u~BrzIeirhwzvǁ}~y}izxs||uzl}|}zz~~{}~~u~{~w{yz}{vz|}m~|}x}v{ys~v}wz}{y|~o|x~|}yz}t~xv{}y{x{zc~ww}|jvvvz{fzowd}hskwjmkqqnogzjWesrvnero_[mRvnpljmttaodkmlphussqlolknr}uppijud^contnowlTlZoi]kpm{ccqqopm`zVlropglqspeipk~chmpl|relouqkori}qpo{ipoammo{hninTnmmmulsoimkvoinolkwsickok`FopoUnYgz{l^jasiqtnjQklrp[Zs{uvuesirkgglWktmprv|rxkssxmkcrwiUkz{rkQjzlkqZlxonrnptZhvmbsaimp`nhtitnlfmoRZllnhojte{l|zk}mymaspnin|kxorlrfnopyifpqgj{\nmkmxpkjn_miooopoophokqwslqihlzdirqa]ndp{pqgsiiqssfvqyokXenpzxuxjiynmyle_srrc`n}qh\pnintmsvqo`r}m_ppolpnrlpql{jfqnjpmonigospGq^kppkmskwkoon`k{qgo~d|lnh_umyik\iihmqjyigRkilmjd_qmmsmq}mllmeanpnkblenmrhyh_bgrnrslqhqHvsmpththplvmsl^ihNkoj~tur`nfnsmkn`pgkqSunqntrmmq~npZersioYntpmgski\wlwimoopkvkmzygdh|rophqphnkmg\{[undtnhvhjlkYofX^noplgoi[YjqqsluhYyboijldj~_rppVppmzijnloSkinj^ng`lko[mer]sjxbxdtZumopYniQnutsh`fKjlq|elinwmholkpenio`o^hQWttmoZjersoqnjqVY`xkktcmgeosyagrvsquTlqopqkcgirdkgc^nlitidnXtQpfnigrr`coucyvlfs]hdhjuslmwkybQshef\jjip|pdxh|ojkYnginzwrlap^gifinl]p\rvddubnknrjqghjvuusjrnVxmwvpnpruqjpik\ykXogsmWlq`rnhnpog_~wfoukgqnq`llbl]lwrxdner]zmnrjTswjjbrqngpHuodkfdoogwqolkiqsntsnPt{omZ_nhvnhloqgoiijjrapji|utr_ypnUnopf|}nlirawVkvWhtipoollllRem]njenuopvpcd`oim{_mUj^ivhsblmmsozmuredfkjnnnqnntalkldmmpqq[rotnolnomqppmo|\mursqkbpsvcpnmn}l^roWrsnokpnlimxqklmrvvpJolrqqLqrmbzmoqmspjkqlsofvrrznkeom|pFaqtimzinhjoSQmnUl^npkrwlimlutklnnmrmeru]irnoswp\lo}onsoQimc5bnqrmmmqnkolhlmivpinqtjmZoaovnnmoqukmne[fqsgjppedlmc{w`obmqhfokxmpcg~tmon[oyhhkjaqeqpQkfpqh~n_yeoyznlcmasjedca{i`mfpplxoq_gl]\nntcv[vttoqlpsfqmqcegyS_aXmovp\iwszkrhrwnjmirsncjHsk|qjnw\sgthnipmngipmjmZgoq^{ppnumqlW_tmeogtdjs^qftirgpps}jlng\gljciiodnbrpgxxrlxc{alws[ik_tqbm|npqg{phektkfgjshsiosiurkno\kqTpkomiplmojriphlxmnphulmndQsenjmkmnkhnrlrmllqNKkdrVmxlnlDqnRsfqmnhrozon|kz{qnmYrgqnoon\l^mejkphfcmmeokool{ilkghqkq{jdlmmnynTmkklmq[lnxjplRlibnomj}oihnn{nmnqnl^pgnNollvqnhp|RqsP{lqlmmyenqojmbp^Onniknk\jcolnmjgoeoinYlCkvqsokxvTlimMqth|mcnnhod\oqp`orkilor\lqonupnvyi?nqmiplrsnoYn~ykwpist{l`q~qomtmnOvbluknpqrmpmp~qw[qjnokphnJf`iophlTl{poqsm|irmlokkp[j`olfjmlomrnrwgxpo~k{qnoainniurjqquNnpjnrnSe_oUqpIks\pu^popnpDkEjnpoQposmjluiUyI}tr}pjxrhlSnpqlwqkkkpoyxmoynclokfEppud_q~nlnpyxpmvqdouct^r|kWnywiiotrcmgpfnjmv{tnQos^sertfim]ajhqql{sfpvtwojnwguVyokllp}mqUlzykmainotkihwoTtaz\czptirkqoanj{pnfymjbnyokwhvouqpyvlo`s}jTwdqnh_rlgdpnZRumq_aj`shoiqtred^qksd|zjxlrddZfe{Yi^txqknZmedu^mj|uzucmpg~gj^lrj]tZ~~p~Zntqnqukitflpoixhmqlumbuh{uqxsqloknlkqoklnqjk_hjanwivjnmlfklsfllkmixllepmpg`psgkbmozro|gjvnljgao|k\slgip}mgqjnmw|cmWtwciousoeqwzrhiqzjzipkuplaxfrhfenkhqei_brt[_klxmfsmjX\vhtjlnpvqmlqppqqnoroplmgfxi{tgntthj]tIhhvrmojfhnyteg^hvhnidckndmmiojjr~syrwjmohq|nkhkvjkpiohoksomlsocmmivssivoirWdpoomonpujjqpiunlrvVzbqqwuOexjoYodhqdpZkjlejjvpipvyu9ugmqnikkpifgrkgg}bnlsfiWnj_ghnYtbvlm}pybljconiqNfls]jhmvkqopgjtlukv~zbhmjcntrlwb~o\oqgnUotlsjmmjtf_dc}XnvjilodrjkoV_ut|ikpmjplro_oqqkqelyjok}hwo\trfujlV^ogeortxdcrjeuhqdlnsuhglgowgeplkPqkVtprdlptge~pnsxchanovot`ixltkyjahjPgujlpqi~jzqvlpupdXvkitmpsqmzpzos^mxnblfx`n\CTxnT_vexffnoeosnvqbjqwqsl[hj}qxornxqv{wloV>glsogqykimovcgU`ijkznntqmtqmn`sghzxp`vpoefrxlqsaZxpn{ohlf\qbcihrpdjtmfMimzvXydmkjt~jbkf{mlkZtom`wctlgji_xletmpc}bvsmfvlrp_ht{fmvxomnipnnhitqm|upbnhjthnsk~\|lnlswlsobsqmrkqrlfflvenvocysstinig_qytpcwqj`t_thslitdpugpa}tmqkvmnerynpYif`t\hounkwlmknrkokfmo]mgsog[kgevbjibtfs]sorqcmh^inyMlfrpssqmh~~rhohlUhrvmvpfplpsjuekjsnhtsjpwoivkcoozpytwjeqkklrleqsp2lmgYlhrfXil{osjn~wuhkqrpxZprmyhlmujronuqeOsl|VhfdhmjgrvYitYppqorrn`pVszkpqmlZDxuluyzYxirmqz|vkoirqUkhytwqkjnrUe|mmqgnmjkhmnrngnnfurpluqkprbfmkiqfjniipquqrkkl||nxlkptqnrp|ehv^7jbsppenooliismfkzjwmaoukhrGsnqr`pikronqfppqnnQsvrxfopolY{npj\isnQklpvknonrckoobpilqnjmplqnnkoOpick`QnZphr~nunqnRqZmnllnnqq|nI?sndO`mjnmmprjynjmnsouhtknnpovttqmhy_mmgncenjl|llnukosvhnmrNnQpnmolonolqhtmNkpsosoZpimik\nUxbmavpnqQnqfk_ooktmlmtlkqtsim]ogplqrm\osmkmqqimnonvtjfwjRkl~qhmoowsonrIuWrgij[vqmrXmmkrovqplomkrrloxo^jmppkheonrogkoXt{:tyaoZoImlmpunsnmqlvmppmmg`i^p.hujkosop\jbhjWqpknenqikmfnuvtfkKjaksk]k[sqhqvl_njjukhBGmnjnpll}plmnenlurfPNpmnkmllgwmelxm~@qvolqotpZ]onkVorekomvjQ_Xgvpwmhilmwjlmmsnhmtlpk{Xykkdmn.Zxqky{}htmosrorqsux{v`jrmolk{hyjMcsmboifpshtpxlqpjspxnTlq{hc}wwav`dsppsnknqnsnm[Uekya|putgjanpsgn_|F{trfrcm^jCn_mpggnie^oojfysfznr}cuqt~rfxomegkocwcivh_uhpnsn||xkpjouJmk}v~toMhv|oVnyw{apfhhnglZ}stlXuXdgogk}z`bbjyhvq]|`h~rwkeZgrHnwUetmvqeblicnTOvimu[gdapqeuocrrnhnacjjmpwwj|_poocUlhoclp|sp\ettXxrtu|drtz~ypIkIshmnvYlpOsmyvkk_\qrslejg|tzqdthYsbqilvg_jnrk`oiu|oiZ_vodxYhid^evYcglD~cutresgkVtfcYzTr~Rhngmpnlodrogu^mqhumo`nVsrhjWpohgmbjtwrqkmwtosodeZm_ltfomitKTnPk`jasbaLtDjpqZqNnghZZkknJmqyThrxixq|puqxvof=}hmxhfYOqhoyoaC_ftsobpisyhmrftijb_sdr|ejn_gqsgfu\nk^fhqlrfs}hg`rju]neg|njldrtSspnvaQhYpaqinqgkprwrYnwnRhninmZnrnZhnlpqowrmpopokomPkHmrmqimnmnk;_njon|kousmmmmmonxop_gimhmjlro@qVlpcq,hjohqlkjl_nFOlrcopjmfmoqsohlrdhhlllmlkUlml}moo1zqqprozqMqqopmmqilqgmpTUporinopeul\gmlxskkntkrgnfBhllmzQmntomymho}{dPkmconvnmlamlptrnkumnp|lvmsosmmtnmektodfnkoioeuupAropX~upntnwpJipmrqqsot`sfwmliqidjujolihpkmcqlfjWokbrsjSirptwfp~jl]pmpnHnxkckakfmnvolen|usgnqfsmehaidhk`ftfqlkjpejmpqqqhlzqoohmm]rsgzmixk|kmlobzreumkdsh_qgphqdpmdogkpvttbooAkljsssv`rljukiqnkikhtsthemydjpfjlVhompm]rhh}driiznwqmoenzomkz|ichhr`hkbjlkihkzW_vjmmnpj_o}jwlsgfoei`m{kronbjhbdm`vioekeonveyqpm]hkih_kt{timr\uogvnr`krlht^}koqy[y[lgsqjjifmrmkhrhmukoll|monbok`tqxlQrmdp[lbtihk]fujhuiklmrkljofmigwjgngptjXyjkfejptunklpzxeyjehlfqkXlhcnvdovmyiu_opehqqjhvhj]nogimpkojhjp}ranpupnelhmVtq{mttZs}[pojeurzs||}jnj{urzytwez`vp{suvplmvo||yyzfqtmgotmossrpg|z~vvW{naz_kzzym{xyz{vquWj~qx}{tnrudwq}tjzxslvwYyo`wwpz|wsfjrppkv~zckt|wryiuz|tozpzvj|efqyywi^ruceolq}fomzjzgnmyi|eosWaxqkor~vwnn}eswv`hngu~rokanlqeknztprvlptonbllgrkzrbXvuweqGoqlmrvukitcqmjnen}fntisnbt[ocngynesiXljX]gmpkkTvgg[rhotvjs`rp_f^scqrwgtrAleQoqkmjotpqasl`nf`olmp{FqwpvncyppnqyzqqxelmusogBYgukolgrs_kkmhoe^w|rl|qsmxiforldwxOonjuppxqujXtuwffb~s{pjnxTqtlnjSrply~to{ptxmmutwullmpnknnkwqmpfqupofk}xlpinqmpsslokoni^EmSumqmTupDglpxqmjgcn.y[nokproToo:tkeohKkpholnm}qZ{mqkt~otonlrutvhjowvqkRlM]mherqUqmlpmsYlumkhq~rqqnnswogtll@qinloqSwKl@om~n\_nkipnuvIqcFlpvqR\nmlllqrxoci]kfsopmko^oGlorgvpmymlno^mtnosokrlpnavndjjohkqqppm\[mhpulpipwpzmmqmUno@bfbnjnjonblnvLvnpp}mgqrenjSktoziTqnn}gklopr_qmrbq@`{hoksupmnuKnqlnkTjlliibqOhtrlhjloemqSmkivljitpjrnsamoigmYjh}knp}wmtqpp7pqogmjUqnkUxsmw}]hqmnkhlr\rrf`gkqPxnph_wPtkOboHilxpkpYnnimpirSlooq|qh_nzumgrqqe~lpNoLnombhqoamrkgmolubkfmbthfjqmmRmn_hvnqngclpjvoxpqmfpqnvklhktpojfmdgkeagqptkkgnmpkflackuoikvniiYwapq^w}p[nutqtskcg~jipsqolonjwriydpirkop|niicidk{Visnszokjhs7mhmekjiiql[onmkhmhkpyiknp_gmnsngklri]opwmhhrkkbshtwth^loljkkonkvtfphdwolksvhcnzvljkihlqn|nyximfl\lw\|pqemipg}vVunmrnhqjTstk{dlohoYsnunprnqjkmofgrm_rxooqo^rainpwmmkolsesmemjrXoohbmhm{sour{l\t^XtospkkwktkgQgqiqnlevi_rLWrh|hoimysmjo~]nkufqjlommf^t{vl|Sqvp5djgoaillapbl]5niqpffs}unnjodnf{YlmswtqtqkI^geot`gs\vksm[rbTtmiry~qhositntslssoqglr|\mmpo6ovimkmnpykinjrmxootlnyo`nimrrwtnkncoXnoanmOds=i^mnxq_toqjfonnoqsnhaqskwbfTm_npilkrqmg~umokkpopokupsljkyxqlrm`nqlHn}mmbnmjKhnnpvosummndlkndpmm|ooskrmjqoXuihmG~Qmlopnjwn_oqjBmnLmnip~dngY\uroqgnnglullrimnmppolWywlYlworrn;mnnb{ejysTim`iwsmntwmfdqpp\eqkjwxn^llktlpuiqs_qbrgtloWovihetskojkgrwnihsgl|gjpfwjxniqoprkphoquxfeqngercwogrbmkooYpnvlrqpowldoqihBhsohnkxzphjdlqopRjmwkMYmng}\vq`}k9mjjq\kpukgvqsjpl_namq]mgav`rnpmzn~rcnhs7m{ztlbsrl_vfovqhj]ikrwsdglkrz^[oh}aeelnlqsrajzqpjuohhptmkiior_o~khohnqmms]nqtt|Xqqoro{grxssqkpjj[xgoumpl\nmzisqqpsisirmQtkMoqvsilbqhvkgkr{uooewpegaoqqsoowpqhhkfZnnmksvrZm\fp`\wcotlptlouro_uftjq]qmytdswleihxtppogdq_mesokqjgklwvpf{jntpbavuSdiejrqjnnqodtm]reywv`rfp~luj`i_lwlw\obrsjnjuoihpwljqoqexelclngwhofm~ovzoqWkxkjs^uoftqXfpmlevso]xjje]ngttaronth}qobpqsnfqnOh^jnkunhpnzmop]ronxcconmmdXmtpomqBplw|sYlrqxvnrpkeZmqs{bqph`s|axoqgcXvmimttjcnewsjprqinJ`qlZdfqpjlfbg{nvijqlLmkhmosjyfveoi}wstoZfjebk,qhztqowjiz}rkqbr\ljmvljaltqsQslhy^isj`lvstnkujfbm~wvmwqnwqutqrbfqwnjmwkovgXfWzgeuneuqqw`dqcsh{osgiwfolmqnokoplmmkpj|rja~opoimh`koajd_jmniXgxlpby\ljd`efdmroWgqrkommsvsuhuntpsgndlnidbmomfzduljZvaplgo|herskclltjhhpqllmvpn`llqhl{}jsptgkf`\sqgocplstjpqVlllzhmrdmpqmk^kqgqfjhrcwsbrjmsytfrsfqhshp]bbtmot^[uoW|dngoecrienVdSi}[oh]meopcztqzvxvjszomifl}sxliphksSsvSejlcprjtptyVidrmmkunbT{pi_jptj^TpfsljpdzXyxVVnfgjliopnvjcblosqfklvjmlptugldumUf^xpfMxiufmypetZbdVlinliWqc`jfppoywiukpfaZdovimhhnTydbvxrbgsohxhmYxsZehmuldgrl\q|qfwptgfc_osackhj}dpsavsvrYyfusopcdqmfgf`qsjuqshm~dlnbjmjjqolignrhjp`~i~jqkwvOnUnhl`plv^oliotmSofts|tj\~mocilmkore~fh}mrkfkn]bljrodlconOc}-mzf^jlpafmojxrmqq^{xnloookqwllzmvcpggTkhi]lhveomtduSs7]RmnqqtsiVt|YUnonspnk>koflwa[cizqjwsnhjVrphowgkwhlo@bqafqwSoo]dnn^jolnxnZjgmlopzpkq~mlrmynsjsjkrf\fljjafupk[uIm=isjn[hlbsqfknynTknn`lx^jQgejqqpfjl}ko[tmtgnph^up`pso^qzn|WHomxXi_atscYeqnkrp`nNjlbljtrmmnnoz\okkrrmqmlqpspvVyekui{mwpujjoqeklmpmn[kysolslikwojnjwofceSlnWffiQKp|qsoprlkpllDoenC`nukoznLzonrrdokvlkqqs`us|eolkmzoc}lnpb{hyivjghg{jesopopfial_o_~psmprrwquockp~|zgV{ktsvp{plksfNrkiiuoka`mmtkzNspowjpstvaon\lzwxh\nler`lylzooklljmj~ps]vrirakl\go`kygkzsqsohwpvcmtjs{ytt{mdu{kuklyngntstjicpboikkommjsjtvjHuZsehwncq~asukdxtjllbngscdgedp\mjnnvqfgcfsmi]shfcmrpaYdiqdn]uwdwaiskibSm|^heqXpqmtSKxlpdi\jfj]gf]aDvsfgqmtSgflfp~gre^dj[pbr|snozgklovg]pmilmlib\c|ngmW^gbtzrnNykpViXorbjtf^mjjUfm|`lujoegfLp\cip^k^opdmispZw^shzhWfpmfoq{lpo}gww]fgmuk^rOncqwqphvjmhqrsdhgnqeRa`vghcfl~|zLYapdrsmpkwjWrniokonlrmd\qjmxt\glgduixUqHhnqpmCpjnNkknWreo^rnjqdoonllgmrtqjnoonnxnobnmrakOqolqlyilo{s_kppipovogelinu_uakmmpoipi]j\egnpw^jlmmmun}vqorr`pnaorqqprmonkfp\ionxjrojomjiuyomllmhlrroojtl]osntxjnTHqunljmXdg|spnhlbkqurltmjiSp]\ktroijojulmnriom^pmq2}pxocklnmuNlno\Znl|itgpoeojksmlhoqftvnglqY|z'ulkpllpdygpoxblsptkr\Ypmrsooa}rmsmpspiqlqsdspelgmdbtIkorrtoqfmjpilovttfsmjwfSn>nm`vqjxsrYmm=sopkliomqinep9qpvJhlvpjhmhs_stgX`soq^nljsskRz}v\opksnrcrmoljgnqmu^iouwsjqihojbtiiRXijoqnpbq%kOiomymlirotq`mgruexmqqiintnvnwpgsmrugrkSnnphdiptpjoo_ilxxg\r]mgKrkhloqkdglmhgefjjlrr`aohotukmhp\k{nqsogpkpkqoTklqa|{Xrqk^onmnkkvjivmvdsikqvswpbsc4jpqum|tr`rohekakocppsasynlR[hiookqq$j\k_mlernoamqhwmpfiMgcoxppcm~qgmqswknkYvkmlumtebnlqqPrZulqhpkqujsrhhmafnsjk{2momktc]lpSljhpgohc\ol`slnplrqhrho_ztmql^eljoko|mgp`btzmphrkpcnbXhvxl_clorjkRljeluum\jqepmj~oimjwrec|Zuii_hndqnwlonu_lpt{n_pSv|kojjtxmg\yqfae{{gs^tlitsnpidnyqgjinoypiokklmgtovulho`Snpkgyekomhxnc|qxpmlodhmpkrbpppb[ivoYtossqlpjtpjmramnqgnqgsmhb_Xkhhfjnrqhgr^jstyqan}npqloqcrlmyowqhmhYvmnn]oinSsntVkkomsmqrbpmfixnmlkmmjono^qjVjppnaflwUk?pyopmmmo_telrmrnq\ow@pVjphetcltnlrossyqom{ksnotmt`vejLnknjrp]vkkjonflnmoqm6c{lpgnmpyhmhopregkptompmnnnsRnkKmqmeDollpqoW}dMmomo]]nnujljlakaa|0frbnhlmojmnnookqljppsn_spglol>kkw~Zn\pLeOymrkz~oiscqppisnopvouevnnVnj`jojmsnumnlW~m}btjpQpeiJjrptpkozfnkmqnoqkiagk_dt^cXproliorjqlfdZisqfscxliueo:fqmp_wdhzl{klpj}hu]klpiqafqo`tgmhktxmmo\dtfjmmhrrordimtdrojgnqprXupoumjjZN}smsygqmiipgvqpz~]v~dueyqkgkisriomjVolnmjpPikrgtgWsrxjgOmv_yidnqlmoicsgtyaUw~psV}~stumrllfe\~erehoerjXkuUkdkq[nqhtpc\rwpckntithpjmhoir:pqZojlNpyWtzgtWfo`x^jOmivNeapgysn{up|osZQfYplukmosj?urkVfwmiwfnsnlc_ycmQdalqjYqgiqdhfs|ijoqmsepl}ikcsrh3rxvko}[llfYlnfozlZgvqjjmmkmirylLjsojpekixbvilvk_hnDrqcmjpVlimlpmo@lmzlfokYlekbsoietl{ldgiilKrkp]yqgr`kxhkhijtmxn~nlpwnw\dj{ioXon}kLqPslrxhipt_rvlgBngsziphfqrk^patnnejqubgur{ryRrqqlR\tn}cripodsq}zmSsrpftmvmmlhpsralbtsormhqgtwpmsdjcZ[[lOym{nrw]ulfiszWu?lqp[vhvJrjrrjbg{|fvnokotmwbqkrkkrmalkqcekmhtqolrpgtftfo|~sujmmqiko;eswqjinjrkklzkM^np@Nl|mplmrosqmmyqgposkjkw`lm4nrmHmo{hnopkoijloawl_b|{imokkpoZpoZmlnok;nvqpqsraznn_mrapgmoxkrlknxrphpopRLpoq~nlvor}mhrikutlkquGqkppip{hpWdmwoWKmQnmllZstnkqpq|jmnurltmak=tto_pemmtlpwramnpolommolk~cypmn{jn@]Pngv{bpal\glsog\zlkpPnfpJsyqknsfoi_wn]ou`lyipxt^pprysf{wva_^Lpdk[tpsdo_kn~{rzusmi_j]fiRsii`nirpkpq}sYj`{iFqnm|Pnmfisgji}mgydzYujprtVmjqgnmemYmlpioaonfhuwmh_xfwj~hdtoZ`tjxtpj~ZfoVqnhkwqqunnhmzulXoqf|\njbru}r_dmj{nrluifpnnqjjkdqvaklrglvusfnk}wkpdogzno|ikxgdqukmlrk[kkqoqoenqumvXknVwiUokmpmjsnnl\Rmvnmsslfodnop?owpfooOnklmpnmOjrfnpegspmnmnngmypOgnrlb[kknkmpnwWpnitsmpUlpmli_oeflronjoZpenlnmq'qp~qomdrlknmpsanokmgoZ~SmcaknwblnnioktqIjkslxulm~gpknrqc|trssmpmmfm^prnqmlkzpllRVrilo]ojTWUmjebKqipAunmnjekawdrmjnklnnqi{hphhgNoekjqf]omsfvm}stRsqmqMUgkonbeonXomlpkrmoTpsopfnf^kUfgplnltsorywLvumlqvsqikqqqJ~jon?fqfminmdllogan]hujmqqikppadtrkieniqtmkavislzllohnn[TjfoEntfpqoqnrph]nadqlpmpxpnCmmtmkn~hd}kwhqtjno}qtnfongmknV\]mjcfXlstZjlrin[k_slqqnnH[lpmTknjkqhnommnlqpWsmqqonsjqqonosmduokpHevqmkml_nswobUlrlqnmQnbl~Sni[xjowlgnno}dpluZgnknvjnmlvr}nporlphmk{kVojnqpNppaqluS{nodm@oXqpxpkl|pmmjkqLwmmpmpng^mknqlSoxvXgnpvbm~eqkqnmoppkwnTkx|qodmplmqkmunlptkpnaponzuftsqmlmMVFnnpobTlumlkimqnntjdkkm`pkmblkgmg]lnT\rInspqklzsnvvlolgjvhCimQpimrnsnhjlgkqimklqRkdanOhivnnpnlhll\htjmmnxmktnroovtopoinottjgwmslumbsowppnUW:so{rtnmrdroonhnwmmnGpllipkprnXxmPlism}inpltmoqGpiowpkonlrqv3Sv}mqshmmgmmomokmlonnp_ril{mchqZCml{r_Ut_njirniostlnqQlotLmnpcokwkzqnoR~nzmnnnplppomR=khlrtFhalhqvlumcnntrlpnhijpImrPswdsXoxjgppinhGjwp]xnolrplkqmtnrfxlkWpjqpooo|pmooTnq}qor]xtplokzo{mmlpnnchmoromlnpomo^umGepwm_falUrmodjFsonmrjodMmnenkroipTM~OnVrokljxnlnlopnpm~plpBuWnmqnoj^Q|nmo{m|kfnglo`nlsgjxognia|jdpvdfjmsmmmqslmg}Z[laghjqZ]pdrnf_fqjnlqghynq\dyqjvldpWgvThjcwieepg]pp`X_o{n{vfvqdp_elvmv`mlhao^x\tqubdfjnamzxmndk_foltovo{ixpkZmvhhfhvhdjnein{ee_imljrlmuekisolZlerui{`wggik_u]qtqdqnuo{d_rXZfsZ_jwklfmdctSlpgo^nildwlglVlpgfole}jNdgpnl}ihriqojyotoknpnpjpqnbvotnkmmqqnomogOqdvktnnsqMlenEpkk`pZxWkklmpi~m(rqko]oekynkpokbohrukupsmmiorrofipXqcojlvmHxjmmVienionnplfontqotstpXojl|qoffmmylolkqpWoownTmpnlnnkkkn^nlrz~lmkmrnqRV~xnkhwliqmilqojnlnmm_qjmI}ssorpPonLorqkfVQbomou|mgtwqgiqflm_Znp|r`qit`ieuJkm~jhtywtZu`dqtltommesppvnyfgqlmQwmlQij`hnr_slxpidqiuljTc`roqpizhob|gMP\wpkojasqmlhor~kqkv}rnk?mnzrnf}vkslUng}flinyrmwjhknpfz~stnapjwgvkpm`kmbFgiqkpmu_tkhdTvx7pqpunlm[ujSumml[rCTatznjrmcnhZpolaphefljh{{hojnlhtkdigpskoehqxmelCoOtdtrrqnZpm{m`logghkkNgrXv``nbopbqjpmdippjtJpolu]mlqklpgqpntpausslqzbo|duxqmgb}OrsosY\mqwftnqYkpWdsemlaloqvrg`pY|ahlromtksqyvp`[xyhYu^qmk{pdijnrpqhq_kpzsnSopj^_spbug`\grpvqguqBalionqsqZklawX_qotUpuoip`rwYVpdot\myrfkrxocrzpidn|ruvlqqq^unvmjomrhomnckptnvTpmUdk~nknlgmoqntmhlUojep7tPunn>l}mScnpjmlpoqokomqYzihokmhmo_mhzrmonfkkipntmuXuqn]slYqopoQemtjsq]hmkhome~fndo{lupqqnlnltshorjZnmpporZmngq0n~RlZrpkjNkmDrmpq\Mllshkmo|nPF)tonounk_nklongolklnoVP\xldjpk|sttrkjtnsqpknnnvdok`rqgsrzZbnuoshlodgZvspmueyerbkrtofy_bulooswrlsbpproXopfqmowgmrt]urawnonsmkyjathm^vmuihteg{Fpvqofru^ztnjru\ptf|nthpTlonllWotfohqpgottsgs{woasv{jkm]fhqjpmcfppwpomkoqlhlkjihWpgxpoodq}nqsrvk~jjyxnrnismnYzgxpf{km|pfmntsVpjkte[ssjhvjnrlpnslvjmnmbommmzxmmrpnmlSlukmso~q}Rnlnqblnlpuosglst{njuqmtpeovjkqmorlli^qrppjnbmbnyDszw]gstptlno]tyjoalojhWqppqmopm\sonwmm~lnjmJsnookmknncqnnT_oqnnnwml}jqnpppeqql\loronm~Wm\rqonpiZmtkmroXrq\`qomolnrmnkl\n^qnyq`nmxnjllpmmqnpj~moojgllnllqOipncxg\k{t[m\nsml~dlapqoikkmjlwkypmrmmpmnokkfooq|njcqsLgrqpy\mvj^nnimtmxsjmnkvkkxnyqm`okxbnloonmovkZmpllmtuimqnprml`lqrGet[pjwnycqjqJmTgn{rqm`BkmooiwoOjmgsmktngmrjjupjnniprhXkt}opk|\oqmjnmmn_neErqonpqmmrkmtirinmSmalkiolklunhmnmpkpm{oknbptlxltmlyyPpqrdQuYn^pnfinqZtkm]rpxcpioWkhzpgynnZunamnpufnjmmpmjpqkoikFfrbqlqsmfkbiluykgmlppdqgqMvpmpYVg8mfjhvnRw{jmjktnshujprlgcokrUn{vrevrjosmldpxmsYlmiMAtkliorwntmdnwnbrmng{nsnkms_rl_ontZUsnnoks~lx}mspfykrmknlng__PzpasoijkvjxnmoiusoYplmp~Z|njidpkjV{qlhvzjwsqsohxponquvoiopemurqmuYkmogmoknptqrzqqceniqjmps]qknkfobqgslppiiSisotklr\mhmmlkqpq\}nlruptokbhrsaponklZwQhsfmiknmbmgn^ur^mopxhmsmlsxdqlrpskjpqiqYsxturyqop||mkOpievopkiqjdtlighcorkbmmgmsrspwkmllkjaSjmkunqzqpr[nFpmtnrnowgjcnlsmsmmsulqsvg\ligjnbsqkplepjqkioqwn[npo~^iziTiejp^Rqiagiuhkq{gnmlulomobiopflkonlmmroion_onjpmmokolpr-ioot|mtiqcon_nhkn_pOpolsrnzmDkZVp\ogeuNqlmqqapuj}klkpintsployXlonjqsqkqnw}pulqQrolknipkpTjhjwlprmlolnqnook}=ospoou]zm^mlqsJ~roPpmlpaseeiopqoxmoojfmphFjYoo`qmkimnbnrpnhlq~omnlbkqirkeoqfTooohioVsfkbqnmmrcptqXppkynilrifshtnotkPpoophmrplpvYrftooZxjtOpynxlvmsmwlpnmmnqwnuoPhoidjglloomsi{o[llfq{pljqlpnXTxpknmArq^lcWlfoXoPqnFhloGsodnpkoonzmjmixlmqpkpmmlqm_n}mrXldok}cm^mmlqcpoglmjWGkpvmmoo|cuUgim]mnoqn~plpkjqhmo^nmoUoLqYmgnj}gnmokw]qk`j}niunofhtcajsn{lklaZqdclxqokngt^n]ypp`e\kQhuQmn_tto^qhrsilps\m|mnppfmn^|fthmmmm\doon[vgYjhu|usmjqNxPh}Rwmaodlni[nk[olYRlupileOpjlSylbmanmgvibrbhx^yu^gtjcejeLklslo"Y]tsr\fkxmgmuncslwvmnmpnhlgneoscrwxobgekihmomeWhrvrPfk]qvlo^ncpbigtt_oSojmpqlQ{nnqspopwitvgmkwptvisjktjqplifkLenrzlygopmjfukokiZofsnvRgGYz|p{pQjm{pYVtmrmsqj{noho~_JtifgxosqlxInlkso`hmpii~jsBUk_ljTdmhar~urrgluhvgtox{t_lolbhvlsvqigpVhlpjklXp{mvyp`Jaonplyeclwrnvnria6chtltkeqUkbtrnW|uhQomtir_vqcrknnoxx|o^lsk`_ebujsjykmfR_hjuorneikproiyogyilssgoc`jlovojnptq|qpmujkqposhrniWqvls_nknpjjiupofgqatolfjmfgeplrgqnrmjsUl^pWozhqqbhqeoorjprsiutfdwqlsU{krijg{jppelpmezhnrnopngmvmhguJnoljk[yqheslwhldmtngqixnktlcelkftnitrhucnlqnfgiqmm|[tpmlkmrgvtm~eaoobkgkrmylgjjnne{ifitomskgnojfjkkemgkpomlxlkr`nph}lcnDmntngqotOonkslfqjpnqumVtqXnpf{qt\mpm{wmfsUrllhvrpcqppp_4prowlmrElB|ymnqo]konnpuqopsinma]rrli|oolpnZlk5jqk_TNmnhjo\okXopklsnsopj^Xphkqrv^qlkmZldi`rBnqpllZjnnnggysjk\rpmpqg:lq|vmsmpownlpomijofnunzjukjeknqohgto}o]UpeoYp`srlnnrjspQnmeTklozukmqonmdgmlqlilrnmmqvmjpnchtxhtlqpwqgmn_qLipllpmYk{dkgnbP]m[jrsrrfHqgQllmikqgksfoasnmKlrclnknh~kkgzmenoUnlpP_topnynsfk[opojtqsuqk6oqmnloiQFanplnm[lnknmpKaluqnq`xkqrlninonlwUtzqloonokcploopilmlmomx}cldqldoobwenku{uq{q~mk{iinyku`nqmttoalSuspiwgpqeyax{|tbjqktlblborglx_neqpqpauvkwXiwgbaqcio]vqzeiqqmoqahw\njessgifoopuowdrsqwjo^onTmlxpikdmo\neWogkt_ltinuppo|lv[ritcn]rjioisi^{WrpogomanRzongsncnpkavkkRz{qsa}jy]t`k]tlnkr]nin}dvom{rzvndpfpqTlttrimorttnpprlutsqqpnpcftti^qhxibrhtou\lwxp_kwdykligkyhzvtcsnk^kn[Xjrdv]grkjxvppqqppUrYtqrhpuufzjileovy_{raedi{u\sszqwl^lmkp_lxjm]m\sggpemcbydfZkenLnljdrjteYYmbjpxrvuk{]ynohX`upvpufyooesjmlqibgaolaolk_bnqprlpwvppnn~xo^`mlQ_otewXelkdngkj[mzyzmtbJnr|^iqxibSiehidrlrincryrthmpocljjslqmnjmumdpdo^lzkGvkltlzoilltnw]q{oq\igrmmikeoevrxn~iforhudooWklpkqmrmWsrmbksem}nostzQ7cog{ork{njmngovlrvvylivnrnxdwoqjjmkrojpkyofrpfzvpkmimnrnvpgylnliig_p]skqYogivmfmnmol6qporkkpxRtZnrokmeqv^xr\pij^~lpslmh|nn_onmoiid|{mupltqlqimvprhdooqj^gpiiPohehjcnkqgqom{phlqkul`pojolrnnppmikqkorlnipgknoqvnjZnq\jsfgjnoonjqqmeknimujoegsjpoxhkmgppmmlurilnhlrjhokcmcotlnpolqnnmmqqhlqdmjlnnmelhhkkn`khk`mpnbijlsuleojodnorpepnrokpzknlklqlmfemmpld|ocmmhrarrlhnpocpgjpumvlzjqhrrppqym^ikfpjikpgiqmpkmkpilogjtkkmnqlpioomlSmlkm`emno_vuopmosqrrnslniaqowfEtvwHkoTppm[kn`p|minsilrmnhtcn|v`lsnrihoKjnxkonlzrknqriphflmt^gwflylplnp}nmhcrrpvpcnslBmspqppigo{jxlglrrpqlwvfiWyrpodlZkginnnhgnoolnmvoomropoih`lcdlhtsmrno]nqnmspojk}pnn[sgjeo_kwfXcki_lUrodsMo=npomlppzllkiokpinnkrqlmonojoknkkvlhrmri]mtvkhnQmc}mlm_lmcqmgs~ipmkpnmtHigrsg}~arzkmkoqRokirnikqinlkmmnotpmhkpjim{gomk_lvhnMnlmknEkVoKjhjljoqsn}jpq]cngsmnkalninkjnyjnojnjlovokqmn5jniqgyl~jlvwsooGpmionpo_kmnpnmnojlnZkntmXoQpoh8npmpwj\nhlhhntlhxjnrOqqlpUmqohnooo|spjqh,kqfrkmojmnXxkwmnsmlmin\o[kYni|lqoaxnnsqo`qmokmriHhlCamlYq\mXkmmjoktkppnkhtnpllmmrmjkeffrio{rnwl}qroruioholmjrfipYpmdmozx{ykhqdrvqkskXelrmknnn`sropsljmQvpm`do`noijkoikmio_o_opel]tork`mbopmxrp}tUkolwkhmuly_nouomcnlrunzmfpyomrqiulmnwp[rqjlvmX6jlxoi`nlpq}fjnqpSzbkpgjtjPkjZrknlmxskmkbknmspmm^opkJr^oddtOwopmgbsg|clptPlnOoo{m}fxMolnYlovmnthymlksozv~nnkvkuthvgkspzdqiepdEkqlQomn[jqsljjho~qrhziiVpnstskonsoTpfhudhaixnl\k^xndlskvmhoZkSt`sefo}opvsdhiin`imauqlolnZhkkkhnhihg_t]hb|CardfshspcTokzaoNnnpbbnsh`zswkknpplkrpofsmmpdejelkn]lmnrxihVpgnokcmlknjwyl\ijqDgpijikpSnoknHk|{Mzjmigpujyw[lsnlccunqnqpnsxlsjslmnshpetlphY}qinselniglYfnmopuvqmrslOqtN~pnr_ookumntlr}opfdmojwdWeVjzdld`oxxqmxulpgowglp`tcldqujhrkpdjhpl^kTszpfbjj^~Nc}novlmknrunjvmyaZokneclpmvvrrhjnkptjjwmo]tfgahzklimXbbnpd{uefinhtgmplwtifpligSXrpqqgiknksjsirhiitknmqyxSulhYjtkqwmYqmrrjmu`coplcqp|nlmpsu_rsrposhfjmltspcehfmjinoeyfkowc\umpokjpwnusmlutkrmnkmxltiptrhipqlfnwovnxopjmrvvibepdpiofqcpjuorooyy{wrvophnfkrzujwmfo`{pmjtsyjiqiptjlmgonornsvhbyfqvrlhrrsmlqnxfyqufqtollkluvw\ktmkilntlxlnomklhmnihipve|olnsihkprgciqrentjkrouviyqjuo^okssrjmoqqmjsgrto{tbtrhlsp`jt{vqltvhiod`dZvxohq{iisaydm_uaspmkokjnlfTkpatfWkUxjnRdwrqsmc_umghmxlmzhlwj^kilovvhailkshqkxpf`]jmt_kqxqiimijkrf__s}qbitlpUjllmogmqptor]agvdoqkdollmmzrqeaxpnrmhkgeO|Xr{frkiwzciNqllwcakp|oqqrlhop~or{tpt|ldnpipoynhljnkufkicjtjnVk{mcnoeswjosovztlikcooqqjolioqbqownrZD{iovssmYeKo|dobRpkRgkslnvyoj\onpqk}lalgxmwvvml_mktSthchkuglfjzqnhijrqmVuhispck[u[jeqhq_i\fyrhyljoZuZkusrdrwspvxpupVq^ximnkxxiiwacqfakomaqoplqgqcpmdQUrq{bbglkbu]j]urmtvnjqpzctml^krqrbyy]qmilll{potuqspanjimZkmasZmbmfhTn`Jkcnplhsgbqk]plpjv[mmflfkposlsJqciutyaqZpmbqmfyshoj]WjtheQmT|iqurbtskpjhqumhm`wsllwaae[sspjuxnd%lpmo_mtoWjrQykzjjin^cnkjkmmbspposeiytlmXophj^jxl|mnlessvptktaoreRflqOmhoEqtvlktipsiWHs[WrUiwoqq{i^hopvnpWtulxmx}n\ntljkl]ylkghhoyqtcjuqwlpqSsuzhphsw`Tl|OSgkfiqeq`t@j{m]hgnmfoMomppfkiv]nunmGivmjxsmraVzlssopl=ikjnL_rqpycpthu{lnsqpvkdjrmumgdiemgnmojfFsgufmqop:i|dzIrkPd}fqs}lYr[MmwppjFpk|foenopyhrgmilhhbkiylouoysgkXpmnNglolp~hsrfijijnrildg|tRe|nzqtmijpqoyndpqgplpfpqkownrn~ebiqsfljssVfmtm\lhgpi_tuvkkrqzXxwn^qyhlrrfoix_kvyUiqhijyqtmsojjWm_moslkqhqjzu`rjZqnfkhghnhoh_llzoxqqnaqetlupuuoimZypiltoouwbqqssumsOfg_rhrrqsrfgZf~lmfvboimoojjTrsqxoPnyqrlcroieiosqfm~jnhsmkjlNlnqanoljjpo|krvllannWoTojmjloqmnqk{kbqqqKBoYnTo\oapztmw~pkisplejfqzWkULlhenplknjjmZ~rqhnonpqomr^ztmkobppkmolohj~mompoqbonuqwogkpLgnnilkmtjmwnmlksq`ylvmMnnOniqonky|q~GzmolXpoojfmlt^flap`oq\pmvpl[kdpqpwloixopmkswltpll7SenspwPnm]r[qnb`iionShlq_j{{hopukRdqtfs`kphnmg)^hwc_pyfpYcQgrkor]emdnhrnrfiqcs\{|jlogehnluusqjph]prhj`eoIupoTmh_{|iVfa~amurrgsknnopocnlghbrmqluoOwroorgmn"nkn_kjluzTlg]zrrjj/whnwipko`skontqvtqnmihomdip|j^aovhnzrlFfkgq]pjp`rrqoposn[gslisljinhrpstcnish~fMxyhdOnipelsqe^kqqo|ookpmj{nhnbillklppoQsmlqplijpooqyquojpoXildnn{oqofloBnrlmmomtkY4oN]ll=Xigkromn@oSoaWnnplmmjminkh]rpnm]qpplpdnpjounomilolGmmnocolnljpmmuoglmlos`piqlmnc{qo_oboZg|punonqgpkpejlm|qln`onhnxsv`lam`orimnongmnorlolfnlnd{kynjrYhalpwrsolWppupljwss_ieqpdpuZrhyrcmhpjohmhroxrqjcdpn]cnnxd_fpo]`eqooyllm`qorfpwnpxsn`nyldklbnhgith^{lqkgo]cdlqektjcqld\ssjmevrdplxqxqjiniwkyojprsmympelssjkbilq{jqjziqgqjhpntikneohqeflgtfetppllsiyroyihqmurkwy{znnkhsxkbrtqhjndkvnvgpcirmhk|rjmbp_nrtonnrpdhbgglofkmopxnnxwnjdhmegvmkwi_jnoiuqzokqkinpjoouNs\ttWlx.u`rtnHndivnokfimnuipVlWp~sP|>ppkpoirTrgyfhtqf:gjpqktsy]otom9jj[kupquiTmurnVpnmj7tonnGnvon\npiprsxloposnqosvom]ikRohndmror[fqmlmikkjpjopkblxzs`nulnmnnmqnopxmnllonL\jlkxmkjkmktWkqguxcnmk|pmlkmliqjcqlscxmo\nujrr{kZpsnocpnnrpksktr~iosir`qllmjmmnz_novy|njiyissmltomVqpXrpovk~wp^vVljrmonqisVkoxzrkqnoovpq`jfhfmksp^oqnessjygn|fu_uhssroitcongn~mj`uspeoosungkvvtkjnleonss^rpppjhoephqjogmpvoeqyhinxknpylzcpgplsloggamkrvqnr|rllYnunajq[qpniolegmupqqk]mo}ugm|kpikrapmofpknpj^olu_wmlTtrpcEkul]oopm[khgtdjaplSsztpfrkgpaituioVk`lqxgrfusimseg_kv^diqn`nFZvq{qzjc`cmq}Ofj{7g[|uinnn\knWnpUks_]nlutOqmpugpoptmqstnz\qleiSbYhg\gjnodkmhUjqun_t^vmpho~pgqQtnlvfdLmhpnSug_fenfigmzjig|o_jjclyxg[tryvp|mtilhqmiXnjYjokhoOnrgnrjcnkmhazdrlnntAkgpgmSnmkbkbksqm_ju]lAplTlqYnhSrmpkgrbkp}tim]rfljgrqu]hmlo]uirnomnpoiol^ikgq{npjyio~[qfwVhenhmmhsbpvopafsgnlqn{keomipnckrqhonhqksgvpiXsvyxkdrbqhfxsktvfrqojolnftslUrnhTgnqbnmefwmopajmwYvodkqstldlqi\jZkgkitzmdmhpcdsqYorkink[vxjrlnosvkanrkkk{pqiltmerj]tkrlonn{wnkooqolowjkvissp}pekojlx`lumren_bqctgl^pYlmrljnrrxgqwnmgfj[tnovcrlmwg{qmmzofjnsokmbi^^htnmmnkioosiiwmksumplpeylamtfmlsil`pqhsrqqnkhomsoqnhbsmigloijkkgphpeuulytnyhlengmrtgjoninszpmn`ktgqm^pwfftnkogcnhmrlimornglxaosljonnlxjjjrjjkmryrkibhlpjbjmqqg{h`gots\bsplpdoqppXmxoxudlkqqdtinrdoqirfcrtqlrjzlotewouyuperkjompr_tmnjfiidWr\qerom{kmjkvufqiyoexwhsewgjridiumnapmmoi\sorjaarqhnotlgozpgcuksajVboqgo{vtdVhqoqelhsrxqrvrijfmujnvoojmpkrsjvrhgqc^xquntjped\etteolbxihlnnk^lqkwmnsqpnljrs`jrvknjnwsmkljnnienqj^oljgpoaomjorxspXowpmnrooilpo~^jZkxTjlcvremxjokuVkoplknpdorkoLolrJnppoyo~mmmrrqitrjnojqjmjpkudlT_epzGmoSip]pr~orqSonjyrooNgsonOohponmzvuonne|qqnkgppQuk]ilgoGc^qomlo}wlo[yppwdJkmmlxkznpe@|tkpqxfsmloqpjtnqmlkmdbktjnwotTiqqhgdpjnoimsjgpnfalhmooimpnYiovlcolnQXmmojomilklkxxp{qonnhiorqPnommsmm|qhjeorolikeTnvkoO_qblkqnk\miiqpogmqhjkplnqqoh|nkkLm[mpm]numpmq'}opTq|penmyqhliopomlhTQnhkmqfymjjffnum{eldonprXnoxH`njgplmmnomkfrasBsh|kk{qmvlqqrgpnnlOmkprl;mlpo~fo&w|mmof!ovylqki`iwm]fju|glu_jUs_ngpwobdlmWoqUnkWeroojnk_pXhugmognptnTlfnfnwunoq^u^}poljlstsnzlqmmuqvhesptuidj~ntbirkouohtsmkcJn~lnjop_okkboovsYru|n[owrfpr~srsvwc`ozsmkwZglnj{woebhnnphr]qtjptfnlmqoojjso`^r_lmn[qgd^Vhnlpqkqggkfr[_nfnd]}srowlec_jqop_ijqmrqoftntusupntsrplyvqpUmnpjihtorxniqqqfmnr\p[enwed;Ygeojersbkjlsvqfeqlknpypkhorscjvau`kfppimripslxmosmkoqp`jSsgddroomlnuperoor|kmljnifnIkH|nooh*jjnlftonjgrm1nznkOocnokkq~hmqmjo\[ajoXlnqGko]okmlnmqpnovBmjooqtwmkknn`wuRpoj{lOqqewoqmudlnYmnxuirOWYkp_oogpnvnonsmlinlmkqm}tfcoSoLkngtnntwPlkirrhlqq4jukmtsqrZmjnxinnrkhlpUnksorqsurmlimlmsrJo}ZqWrunwsplko_qgpiqrk`{jcPs`Tjmblkjkqxvosjpnrimnpgilr|uwql}xVWphblkNpslklqjpgomi}GYmljmSsXzsxnjogil~cokUnkpupupn|znwsfnppmkgSnunsmjo`]jnroimqo~ncpPrstilujpkiomoio[llonPYmnodmkS~mlwtWgplmjhmomnmcpon}isjcjukdnnnplunnrllnnqnnnilrmjhvlirnnl`onsoo]lunorcrocn|jmpnmounanm|]jhlsznnnnpnkjmamlmnqohonpptjohusnndot`lmwkmpopmmknrnilomkyhqo]kpnontoonlonmmhqaxqmnmrmgetooes[nvy|molnom{jhmzlmpoicomfpppnql}m^kkncknkjnuncnppppkonpmpVzbjmklkolp~lpltqndnnrvlo`cnlqjirmnibmrgnehg{lmplfojmlnmmmvogyelqkmifqdprovmpaepltgqsnhomiipporgjidiljlkvpqspflilkprlnnqgprfnkmselpxovlsjlsgasmkprptqopjqdomqrlqmlmlnnlomzpwrklirlrrnqoklkrojoqagkoqjpolVrmigglknpqrnpphminklsslkqZptvnumskbmklrgiiolniksckksngkohlnkkqonllitvomopnbpsnvroqpopxtrmllgrioonsfqqkt]qonjotninkknrlnmhmjttognxopfamrtenilnookiknpuqplcojpnhbqyvoytmkmlmnir]oqmmlltpspqtpmnhmmh\jvtmq_o}{pkpbjphkmopnerisngmnoynoknjonqnnnsrhjpqlotlulrqtmqmn{kisspsoyudrnwopqmpqsrpntlg|ms~jjoqmmqkoodllpnmnooqqormsqoxolootfwmvtogkniltnji]YhupjxpqkinhplpmeP=nmkmown{ntoalwvxkokqgkmhgromtkjUmbhiqqoenkofnkmyepptollpssojxmWnqkfmg`pfq^q`itscpwHokjkmwvnulpfymlqvhohojplakhnsjnnpkjktTlt^pivlbj]jujppkeXrkodnmwmmnsopdrtuik^nmswuin]uVrkosminokhlrillqppupo|ynsapdovnqrhstsxlnlnvoqjdnkbxlgpnhqslvosjpoqmxopplbrsisenthueojllqkkfvkahbbwlvopppbhagmhmphkpqxfpgjNkhnigmnkniprel_lmlfmjncmygfixnioljifjxnjvnzwpxrlnlidmcos|okvopnlhrtqnfmowjotlnkr\kcb\bmfmomhnuupovhkjimylpjhnlit|~oflqpm]wkmkrokm{wothcfrnzjrWmhjeodqapu\nphprsjursjji_{qskhhomotj^rno_ffmmgfmnkpunqsjgyopp_qilkrm^horemwnlmiqkxmrvookamugtlqjqjkjkXm]nhoeosojpnovkgpqnkgnsosnojIn}hbjfjhjxlqihdjdlt|Uuispls|uiprikqndinfrmrnaqmwnoimqooo}nlokukhiftpekndenjmidll]impkgjbxqfdkxmksefokhnnapkdnkscmnm}dlwnmhlhjmmllvii{noxpqnjlh|mmkmnjoglnbnqoeqtltlkn{nilioknw|onprmmojnmpjjqmoocmnsolwolnnpopsmmrfmqpphlhlrvdmlpnsnionckjknlnojpnkmoslljzmpp\oltosZmqshmnnqkplklotroyjsnhpppglozl\fopnzormlwomo|`cln_mgqosnzmlmlnopjgo~plmntobgnmwntykeiqoymoll_hihYioqmo{pnropvnin|ls{otkqqomnblgohoomotspoq{jgonommnnvhrqpetlfknm}npj_r~qnqnrpwjxcatpjpeyjlmpkgkzqxcuhiokhrlhnhndpgqizpigppqkmmrnqmlbip`epgkptelgqoqmnkpplwg{ivrnaso_ojjmgknvtgqiqsmninmwlljwujklsnxoplimofjnmlnolpjpnolpmeuqqopvrsprelpljmlplojhnnnglkuop|iisknhjrffhilimnpnqnmrmyhkmrrojgmklodoqznjnkppbmmzqksrmktevmkltlimpjlnhmirlplmkkukqfRojoprmlnvqlmk^qhpomolpkinlcsnznp{ob\hyml\onommXlm]tlloomlmmpspqjxohh{gklmlmmncjnlgimnlnhoppopqnxulkhhqqvmqtocklpntm]lmmulryinotkrofnlmmqnptqihnm|{ooonnp~viofqZlqx|lponlkxcoocppooy|nqrnmslminrfbsmnmkofqhphnitjmkmml_l[thlpmmmyk_mkobywqqmxnlppomfbppndpmnflsjhjopnpnmsqpVpomlqorrnl~hoqtswmznrrlmijtpknnnm\qfpqnnonplyvnunmtlofo{qpqmmjqXpgjnlko_ostnjmlujqkqyojrp_mizmonqoolmtonrujompvlsmwnkcpmooonklosa|qoopmndkjpdplboujoneonkkqZivaoqro{colzomtmqieu]zpptomsrktmammpmponkqlptryootkfknnnUojsiluntokqgwgllkpl{fluijjvpnjwiqlsmfnlndnxilkhzskpnngqruvfkfko^cmqlgomrvlpgoqiq_lmxks}oluppoproqntkkqotnmirkrkwqgnezonfvlhsqtziysnkkqmcrikosslmtprkrognzgjqrneggjoridqnuuubimjnislnzhlujnmonpmkmqrljk_nqhponklkpmnlmpipnnm~nnlungptrlmmmuvi|rkslkrskoolrjqmkjk|rpqlfWtkjsshkfjdqlwgthjnmocmikinhkjnjuufstllmlmqqznrgjlcoqwpmslbnmnqsnnh^uhwlpqolrjpmkrj_}kgxp}hnqkpw}]nnquYrhphqjvdumnmn~sljgr^lhppkkpqpkskmnnmplnrkmpmkmilktubsnfqopoxknsnmlktlrqkeolmvpofqrhmcpdtmotiakQmhosqhotdmljwippwqpnmsoblj{qivquopukymrnslqonkfrpohxmionmilngqeholpnvpjpssnjeooqqomouqnmretlrspnbmj|pl{ogkhsqqmejqjnkrapliikprnnvmrt|Ytqjsonkmlnilhrxpjnjumpnnpubnwdknmaqphoktqqlolhnmrim`nknjjetlsjunromxprnqxsnlki|llioirojtkptindr~lkpkjolpokgizhnwopzmocrllqhfuuq~qlegtiqnokZoeplkjonmqpyrfnntkgqolpenmlojwlrhrmmlwnmekqqqhvqj|nnlx`isqdvooapwpoponqfronhtknp{wknnznishkrqohyndd}mpqsjnunukukhcoedoisfgxmnsluqoqgipprmpknrrs[_elkdgpckmnsrhtkvqijmjpoojfdirqrmqlqhjrqjnb_nspmimyrropyw^geogrypolflplnvfmkifveropumnippsss]fpqj~nnmkhhedotohknwokbsllois]wimionttypnnkxlsmngloxfsjhozpjihokokrkmb[kotnnpko|jbfjjoxpei_sqgmlv`oioslkqsmogpgprjslgvjtkqmsmpvmsm^qnqustlqhjpueiqohnepjk{`vUijmUptmjoPqv|gomvonrgoqlhgpatulvkrlnar\nkbjflnfkpoohfqkl[s``ongndpooburrigmoiqkjjsmntq^ioqminivPpqtnhmjourirutmllbi`kseqgjfqumkquoonoonhfkkskdllopxjylylcrjmswrlkthjqmqlsjwlnqckjmnjbmnhltsoqgrokcctmtkhtmq^lrnkngnfnsiorjiv{ojvhomlnvnknmxotsoogjqhvnqlvdunqfjcwjjajop]rplhiattskolqltimijfrgmrnelkpkfyhdukxigplnlrqhkijmitpfknlnylnlmusmvunupsipqhjqdmgqkpkkplinjntmgsitsusfjodifhswmjifuyrnpdhlnjtnkhouojhjinsosxiprmofrptnhkjlhponqgjjrminmmemnqtqhmktqnopxo^plgof`wvqnjl}mrkwunbmfhonnkitolon`Zhobgdkqkrkmljnmsplknjplslspmquprmqunsbnmkrihonlsnpmoqlnsvjnkl]nYjmeolnnnlotmp}`olnmpnbmlmtnpbodokonnool]ljjkiqnntnlnkppqiokwlubplonrmleqpnmmmmimsnnl{oqlokdhnzkinprsqzqop`ncpsol\ooqmdkmn{rqkoklfnpqjlyrvktqosnrijmrneomimwbrscmeh]mllwmmwkkooqrpnpzpsdjsgpMhnhqqppldnfkkdnrrqiomospploqpgnakenppimkqomnuldkltmpni^Zpmoksmrpyppnsgpmspib]qoppoltlsotkoootc{mwnnnivlhxeornexpmumnrmomghahqohnkuontpznkmrqll{omnkpfxkzlgonMbzqktpwsrnnnspmojnlsknmrlorjlltfjpmWjllkqtkzronkknrpnvoj{tenuvnfrttkmocjqymncrhmnqknpldbftnpqqorhkxpsopkgssfohepvjv{zkxndVcn_gpbgpmqitmongn~qkvrotdkkooroopmmneifpfXikkllsomoiosnnF]mRrjesttqwqpomwngq]lrroqtsgimnmhrrtnnstpqqopleilkswjo[pmgo{mcmtgqrnc}jjzXVfmhssolpyepnkorsmjpkoqejlkmlnfomhnmltosfikheoikbpnmsbisrmnhnfhqmqrrkomkk`mqgls|jqpepqmnxllnlmrdmppfkwrpngs`ojcshnhgvqmhim\kiqsdbrzthosrplpxcnrmovmhnnlmnihqjqllo^ktsjiosrihiolopjolnnwijomrxoskjiohbqsjmldrnspsmzjomnvkqynjjqfkbomnhnjmvlopkpbkhnkjmljnikhjtlmnngjmsqospprevogmvigcVthUlkmZtjvgnmndiSss|htnyikotjmeuyyrtmreodom{olmhpiintmkjpknmsdtm{nqitkkppnktmskhrpsprmlpoiqhgmrmdjqqcxygowrrnplql]fiisewqcrnlrrktmjoqnbcilhqatxoal\mgrprjXnnrkonlnmkfnlhoxkf]pnrqjplrqoopxmnraqoglrtnriojcsoenhrqoiesnfonngncntmobpfrrkoolnoolkmgntijoomfmorajlpLqqkqmolmtnmor`oYoomnnrprniXcqoqkxporqnpoqoommtvplipnmmnkopnUzpborlmQjqrnmompppiq^\mnjjxlpnnoloxvpnooknno{oqonnlhnxslzonoVwqonnoplemtqomllnkqnnj_fqkplmmqgnmblnwpql|mwlnjjsong[llnosfmqvnmolhlwsl`mjkpkusryokomormmnrnnmvupsqpoooo~txmjjiroshnnqttudzmr[xoqijnnglmj_olifojmkobkmvo{ntqcwqojajptqjoosinmjpnojkmhoohhgjZrlsnrrnppsnpmkknmlrtoukdfewpqlvylrxejunhfnlsupslmfjmzvqnj{nrm{plrhqqiljqpxkxnhqhpxlirqno~ggkonmpjksjjihkpkgphpqpvpmommujgjtihmhgwgoeapoxltmmjqkhqcwknmiollo{ljnmrnohniqnmrorsonkooolr^omkuljhepipsbmjznsrsxpvqqooglgl]rfmtkie^_mdmhzg{vnojhomnvryzrlnlhmp~oumijzitnkjggpsrphqsl\t~tvcipeukkirrriogYxontgjximnkijfpjm`rvnqntomolpcsleolhnmpjfrg{ktmnqb[totf|jki}qloqbjsgholr}qmnqikhjujlkimidmnqairncfkmfoqhtvz\jposnxmqjqijjkplhipamdmjkfhhogeholpgtnudfkrkprX^pinplu~spuyttonvksqzoeysuutonsqoouruwonkjpivpomlnrqvlm|mnuoobpgorphqjwrnqqyl|svswoooemnms|rlpnkusnorupsvenr}hknkjvkukepwlxrumqqosnvjlpmhlohvwsyonytxwjvxoqmlungkynulewrqttplmmhqiytnlvkjaqrahkknkphkqvxtilvmrojzg]pju|rrmlvijtrojgmu_nkggklfozioepqopg`dlgunpu{qndq`itnumomnjghrzenonopo\iiemsgqmgmtoulspnmkrkxfeiermtlneksznonmrndm~kkpmmmtkpkuwnq_rfoppmpms]l]nspnl]mmvkipkmfkmlizkrlr_nymmrtgpmtmdj{pu}omqusihq\rpmmlnvpmnqmolljsvlprsviosanprkkl{homwlpkyqumrjgexnpjcrrthkjnkequxnoln~punsokuaprtjomrkjykqkoroprjtnkrvorjuonuntykmvzkpqknmkqslmopdo_npnmi|rlbihnomqommmMpqnoqmpkdoqUlrhpl_t~mwunpkkslooiupmrptppourkpsrutors~llfq[ilonpoeomqnmnwpnrmwpnkxrpwomokpnlmnjZwnpqlmkepanXphvokbsiklkxq\lkVqmro`bominjmookhhfbloslkimmgrXomomnmmnmoophnpmxntnnqmlmknvflnjqjmlkmnpkipjoslrmujqmpplmlvemoahmmspoommgmlm`mnzqrskjkqjxpdmpmvn_jlsprlnonjocpznojumXdrslpnpnkqqotrWmnjqhapnpqnknbiprpmovyoqkonbmnltoklllknkqovjmvkkminl|jlnpsnrmhlTxolnnoqltklpaspoutkpwpnkwmtjt|mntllhmrjtmmrembtnegpfllkonxpdqrnmtjn_lmpvmqnmdltpmkxqojwwpr^rfpmldUmomceknjrhkxomnqu|rnphqkperkdknjtghnmqnrkfqninsfkjcqlmjllriomaqqoerkqofskqpmiooljxperlspqpnvipjw\omiq`en~iflnxojjkkqlsniiigjjqmnmmmpnhjnnotunzqhnlhgmsqjpqvsklqrhkxjiniqcoqhlhtj_nsjhpolroijkepirnbmercnmrsqnrmqrll`tnrktkzpjipkkjsorgnjpojrnlpubbmrmpofklptpgijmjjcyjrdikqlohmbaggusrkentmp|pdmaymhtknjllsikqqhqdcp_fqn[ramhmhurpfckrmmnlpplhnpu^pfcpfhmeotnrtiltrqlukxonsthrkmhosdoplrlvsonbkbhrnlmomonlerehsblsgntnjofphlhpqrhsaksnVkljvmmnolrhnhdlqlrehmsmjrrjwmqgqknnnqprwh]ficuonfoqttgmhpj_ippulkolrsikqoornpkpuls{alonpWnmookommqpnmkqmnpjomlnpeplopopoonn~hk^sojmm[oqFlgr~ouocppojjmnoqpq}nlkmqujmkdavisrpqqvomptoowmwkioonloxmnpnonirmn}mugmpl_mumljnml{\~fpoormpkvnrnlpkmonmqonpqipmmrpfoljn[vdkomjkkrnj~xponyXoldmpomxkjhd[tqtnirolplspolloomqpnocuuyngmqnmrmYnknitelvqcqkduvohpzegppikpmfboxxqpdlrncjm`tistjujlwzquwifostpthn|pgryonunfqwkwjqvlnrmnoo{voqrnquploluoterimmrnqcquvsoesrmqsaprxlm[lrlldgnrfjplpwroloijtugmzljlsj]ojmpplmmfwnUvnomognssqitnopookpsptkimxcrnttwlonwrqkqgkoo^jktdtgmulmsnojploduntwsarnmrnmhnlpeimnkaodoWj}juopnutwja`glegpjnXklrljqrpkr{citRmucjjlwgnn}qnovhnijvarpogpkoomiktrsohvhjserohlpnsZpweKj_isljrioc|jongninmpplyut_opfknormnjilcn\emle_hpofoovpdkysklSpmmdjmiqohrnoodeuqpnokqsyverivojkpmvtqm_mowtwjkqtomemgmmlsrno[jvwenoWqjomjli`lnkznoljtmokqmemnmrnfnokbqvutmjrp]rdhtrqkjjhnkkjtlolfjyns\hi`olmllqttk\qewpkzohkmpnkrhrqmmnmumg]afmseqpkovnqpogsbkpgjluiknmhilmifpbumpcjnlemalqojlvsnsynqlllgnmklpqkojonf\jirkqkpdlinmvqkn_grh{nomonplwhnljncqrnn{jnhkpsX{boosorqtlqpYhhipj]olm[rqlkkphqqmrepmulerugmmnpojtpoofjjkmpqojmvmyfpkqmpkhmlzkqhprnfliopmlsinvm^horkkunhjmyhjgpniimdlrqqlllmlqoulthruroonnnjpvqomjknwldhoquqkjrlmgpjusvvnxneopdyhygpntmljoqvgplljhoksirpljlkoqbggsmnjrqqrjipiuriijmplvmeqlnkhrkktnhnmwmnrjtgrknunnlowprhpmeqklirlo~llnnqpvneqjplpoknmmpmfrnphulmigdsswjpmjmhzqeqlxdrrsrmfepnkympwqiiwmulegllcnlnvnsznkxpulrknoowflksnrslootgqnbmnkqtnngkkpklnuakhpskxoxlhshe_dlqvjurjksfhpkhunlqqdlrrhsqqpjggnsmbnjiotqvjoqkrirplt`pkllppqfqrjerfhj`hiemmho]dqoixjprkmvpleiimnsmiooleqpmpqqgnplhsmipunskomnnitmkkonwtoononnrronmimdknmfgqpncnhtolthnojwkpqcrumnqpmoohmophm{nolpohpnkjjgq_qkxgwrpwrndqjpjrjpnzqdilonomcmljirqovjoorisloqknlupjvhkrhlpdopqoruikmikttYhlzqgplngnompivnqlrisrn{nonrnoznjnptkqiolgalhnernriqnnfo\mWfforlortlfkzfikhnsjqk`qnxrrlyhmextrovjohl`olmkmlotmko[snpjmoennflxrgfkw{sqlvnkqnYqojllkjofvlpqpktnuhqjfiojjriofldbjorlnjk}foqpb[n^qjwnkpvisyitnwl`dmjnmrqtjvmqnjd`antpmsbiis^^phova`muulpqslmooqxljkndtikzlYlkwr|mnulomjmpnpdonvnvpdib`pnnj{tfvjqpljdmjopylozqhejnoimkotqlnotrlno^tofuqlip^mlpr_mnh{\wanwolmzhurrmp|onsgpjrldqlnsmrmnq|pqxwnut]sortklkohnqlphkpmhnilhirpowijkhsnoielpou}oskqgnlklsnhjsqpieqnkitsmjjluuqi`tmjcsough[jxnmoxypkcuk_ktnsmorohuiimgeupenmwlonhzmllogonivqmlobsjromqrnfrrrkiortzpmyyqqoqhowig`mfumjqybrvnrqftyxmitnYfunrnsftqnljjpjaokcpgstosxnrptnceejiuqklmmknjokdkhkqpfqomspvmlop[entuprhrmp|{wumohjhnsfceoetqqknqiqqufjkkidplmpuzjmomrunmkqsmslhiqqhmcmk{hkkk^jUlljejxhnmrisqinnodnnlnrlnpypuhqdponkqhvkiqn]kmhephqionoqwlmjoojpfmlqqoiinhospsyuokrkonmgmqsfjomwppmhniabeonhoirtnymmklppsltloYlqompr^mmhlmqnswswpkqnnfkjhunljklqloonlwbkmoqm[ojo^lmnbnnnhqlsqcjnnnohplolpnkmomJmojjqwjjzmlfoqoimtltnoolgmookkpsoksll}snglck|oorpmog_nhjlnrpekloloimptrrlupnjknisxpnnnqlminkkiijnmnokmnlmnlmpmmropmsokmooq}qmntpltoli[npponmdmkshmmsojrnntslnnjl]ompmoumnipotnuniplonofponQuozqglflpr\mmphfmqwjnlonenldmojplsumnmjilcsoTlmmolnsknilvktikn[lnnnp`mpqwrnflmjsqntkmnqujwqogepjjirfllhvknsfoenumynhonnopkhlnbvj`pnnuks`Zk]skqskruojxynsnZoqmerhoirmkmnkryflgrlgoomsjjwkbovlognlnwoksnqlljlokrhokpnwlplnqqpjuleavqgnpomlJh`opufqllohksmmklqsnpfmuplunmqplpjliktirnbjroxgpmnlomqnabtmlmmncpfmkqnnbplolbrstdloirlnommgkqvormonqomrlolmmqpmq[vonmrvnrhkqtskwogpRjSozkyqjkmBsnki~`xioeprloqnprlkptprzifkdnwgjljnflolpm^nhnr_hppsZouoxcckljhslj|hjoqloflusnuzoonxgmqdqfwk_rkokbhiqisnglopxnvnnmqojnjkopflknqmiqtldoklonstomniqtkntlipolturpqillwntqjkpqkpXl}nmpmjbsvppvtvtzvmntnplp}vpgqnsogjreqinammqphmo|nkinpovpimYjquorlfv|gxpZiplvhnrnrkfms\ghtrueut`oqaukqssujlpjn}hn}fmisrgqrztonzpiptkdmlh{lmunuulrftqooentormpr]mgqqomnpjrfiphksrzgrhkmdprqmknqdnUqmnjztaksskpnruhqvl~jsipinqtq\{jlvnshs~gqphpl}lnnhkmsiopi~tonmninn|hlvnpmiomiroqjqnampopkmordkUopnqjolmmjllonlpqfol`lfvsjpybijqplmrmpmormntmokqnnoj~pkmaljsmrrmanllhpnkoorjoo\mqmnjonkoplkjqpkjorkmjulnmjml|emn`msvpwm_oiqooqcxh]mljupalnnlkpmlktegxQjqmlmhnqnljnqmjvknooppk~zllhk}nnuY}mmrtjro`o^g_siqioymtrfplkqrojzifqqtrin\rkcwimnpmjkncawj}rsmq^jml^klesoooplnflhroqnjcmrkszj\ldrglunjmmumlf^lihlpknmskylI|lph|ghpklrnqimpfxjomnlpom~ikendojtimixjjpfgnnsomrptuomilktfmwktqospmYspmeklsbijqqnqiqsinoujpxys}[sqmtmkoqllymjpgmmoaplge}opmiltlqk]}llsjm_sukpijqh_npmlehskrzlhu{oxiotvolppmlnmtvulkptthgqwlvejcmrgofroissooklmmjieopmiogwgrnjpvombljrbguwnikgtkcqk^qtmoy`apkrpm|jo~pnnllviopkimsmtlmshsheqpkmspxjiiltloijmjq{ioitnkivmdgpojkdnnmipqmkprcpovony\bekoililn}nlmisoin`hoqektxhzinodll[rdpln|lfpojozmdpjvgjnnqdoomjrlhqogppifmknloqxmisgulapompnspndjpkmnjjhqoupfrzookwiklom{lgtmnmXsflkoqmjzrlbqrqnXhhkuknpqplqlorgxkhlkxnlgmvptr]rkkjibkzourrmhlqrrwtl\mpiojpxmklmgwlqkkjnjnsiojgpnlirpioigem_spqo{~orhwnpmrw~joYgklhslllirsulfbvsxkkoljtiqfp`mnkko~kfqjornmwqooznmwrlvgrjjuttsmlkokonRiqom}klllmrktnppnelomY_mupmnmornlmnrylfsmlpnujramzoXmpo\mnsjssqnrnmxlwonkoqefiomqpmgooeotmkkoqnlUlqoqqqpBkrpvgkqvqpgmm|lnpgmrptiqnojgspowp{oollqnmnrnlpjmpjXppltlhvjnhgmpmc}^l_mmpnwgpsiilpnvinmsjnqtfkXpokljlsoklmqqdmpnormopqnoojzvskmtknVk_pmtsvjmlijjwsrqierpdl^fpo[omklsimpjnjoiolooqjuuktvmsrvmvsqhkicpi~rjdvsingkmsnqkrrlqmplcsrfqndfnqlqlktnhjsrqdimkan^jotlotkismknmkmijqjlcpjoolsinbrlrzknknpriirljitksqlsojqljesqnmlgxcgmarqjkr{oorjmvmrojdfqtmdxqutmscpilppor{mtrmsprknzilpmhqrcplkn|piqqhlrlktkpjnnxolwjmmkhppntvoplkoknznqnfnjsmokkmmql`punqoosrnij`nrrlurpnrfqj~m[opoymnvjblnpnnntoy`onhiuucinnqrqlpnkqnVpnpmjinpppqpqrdqjorkvpmr`pwmlkmepllpsqpnrfrlppnokQrntnplmrmqnmoyoljomimfudmfhnumxoeq{mmjnxnmrcnpnmupmpkjmpknidyq~rqjnoomomqbojmoqnksplox`_tnmohqmeheojih}^lwsxm[mplpkitflmmmhslrh~imnnxtnmnoqfmkkqmphnmphplsvw]qlqo^mkhfqnkpvemessmonnimgoqrjnkghjdgirqoqoptpmi_volvmooqprionarotu]njkqmqnkljmmil`opiknlgxgqoikll|lkmknmjklfmlonkpjnlorf{fmkj]nlkkklolptmfjinlmulwkom`ommpntpyjsqrsoksmoynrnpomwomjnpo`ealjilfkmrfsqlpknkkhp~dtpknl_fkno]mljpqllnphlksynngpppolqpnprmnirpnlqp~loVmspn{koogoqqntjgopnopl`mzfmvfjpcjmiwoknnmpkklknlmmnzoqkpqopvrrrplpjklyl_|mokqmdqndokobx|mmjoZo_qoroloporojnlYtklooimpienopm{ncnwp`loqpj}ltgrmllvwkjnnmpo^ilvwuponnmqppjnsponpnnnbpnnntonnqlxlnZdgoopne`jnprlvlipptkprljnokbsrnjnomplhlmbgq^ljqliolnnkqhkjkqrqc]rnophqqnsohknhixlknqqpbojemeltu}zkmoqplpslfprloopm}pmlpojpxtpql~krpooorpinoovocpmqjrlafZlowmpmxllkomnmkotmjp^xkmnmlpkvmjrq^nhr}pomonophlpVsomlnymksponmqoSepzrjpkklhmoumpmqqnojmopknjoplfkp{cfpnrnmcneukmqohnnonklpbjoocnukdopqnnsnnZsnunvmpnoonomcUorspwmp^keninqnnnitnnhljmoikmXpp\nvfohosqmlqmropZnqqgsmpunxmonqlnmjdskr_nmxrqoouzmhloobomsqrneqvknpmulvknqqslpljqlkn}vnlorkpfqyo`jmolmmimcmmolpbmqwmponi]nmnnnronn`_ydxn_oknmmpmklrnmpoltopo_ufnlplrmmdduqjnsiooknsrozk{ipktj{mkrfkkvmj{fhmklrmlkdvxjosl]hrkqwllkkzkrqmnkwsk]ojnglrolfkhosuuiqkplhkouwjgl`qieiekgpvkuqpfgntiteootmoxrrnodnnufkkoqlnptrhomjlmeqinlisbmsunjhkfmfp_irjlredjpfiillkkstwxjknoqn]rirmkhxnbuirobodooaogehi|stjimsmlj`lntngsolhokgoiibqmkmoignofbksmnhgskapjpml|wqnnojplnpsmjoklngpnneqnyppntmorjlljfpirmmgo|npcphp^pmjknhqelosnrmwm|Poormjdnqwnjmpmhmhpujdqmqolpsioyyfltapl|lkvl^pkqrkmjnlmlmqmxjpoppslospdpjppnmllmntunnqmmoawvn~ooxpzbkmnmnmjvphpjmrouopm|rlqniaertnn`rmylqkmqkjpokonfpjoUxommlm_nn[ohsig_`jppokrk|l~sjibooicmoeemmpyjlsnijhkpkryporhtkto|qmtqsojzosjjdpwlcu`qojfhiigmpssolhijoknoujot^molqcprvopOukq}qtpojznlodlnnjgxpqnwgyiqkk]ptolmnllqkqlpqakisymnsoo|isehsykurhlkpjmpzgrsnojoxlrslghrrgr~hjjqkrwmlqrimilekcofjmhsoponsiurljmqlmjdmmrnjmsklpeompmgppoomoi}rhkhnvvjqlnlskpor|lnmmfpmngr^mkn{qprokmpvm{nhulfdpcmjqfpznfqjdjoetgnklwnkrjkuljko}pa{XxkljomsoqSvrmexSwzqgkpojnmoktnsujoqnrmrlinimrpjnlhmhpkmps]qnhZlaokhwmopfqstgjilmooyhmipstnkshdmtknop_m^llnkpa_luikjishjjikqnhkqerzjpxojrlysmnmqnpqlqpgop{fhfljdrekwumhro_qnplopmqnhnlflntmnbnnkmpynonsqoqpnkgjp^tpcrsXreoowqZospbnnrpnlmkmokpppxjkrqushnkpkmorkqqrmlhnrvmjotspnwjqoodmofgirqdililrocjhoqmmhp{knjqyhknqqojnknnoelji~pqoqsplvopftpTm{crjnqoqeokq_lmrrhgnmmpkqoujbudPpnvprrinhomooonsklxtmncefookkppyo|ommpfbjslkoruvjqspigeprpllprqosnapopqmlm|qkfpx~nwlomkoorFckcokomlnlpnslrpfloettlqemnkpmropkrophgihormlktomloir\qitpzfnnnmptn^mjklqujhnntlmploeoqkpyjplhoo|jpoqxmorrfjzgx~lkkiomljjlonnmrnnoiknijvsltlmlpikhsnlmjtimrvmsuqorkooupatopmqqpto]mmnensgclfnnqntkpkprfoopojorpomgollnpknkopmboqinmnumlakn}mscojnqpkolmpluojuloonlllsmonkqsnrofoopproinvgprTixrfkollqqokjqsmjjooxjcpjnponmvfpgkomlznppmZqlmnrlohndqpofu_nowqnltnm|konimjmslm{_pnnnmlu`wncnolpzqenmpnoqfrkeasqomm{omzlmnpaigpumsgnlzqpvnklloorpsxlnpszk{mknpmmv]ponhsijowpclenqhmskrlpkqj}mlhsirnnvsmnntmlnmpoijqnkznoltm_llrrtakqmfopnqonulkqmopmmnmsmjf}noplaononroklnihrnmpqhknqnnsllwconkXppmnnrkugonr^mbsjrqpll[kpnmorpaorhpnn|mlmlij{pmoomqnpn`lkvnhongqjqnmrrqltgUmmpnltqqopooomlkjbndlljmkoqqponsnpgpooqlnaqqoxktnoj{_oquk]siphqnqlnoerionqqoorjmgkmmmeqmmesnrqgltnmllmmslksqnjm]ltskrlrkomohkm~ornkpiplwnxfm`omorfflZooulq|obmsookqnkqklmrlpngnrpgmrvnispomlnskqqnlfknjk[sonjovc|qosmkounljkillwnlqkrsa}tlqijrnghalxmnpmujouxpnrpiolnoonkmqsygkaltitmgmnppnmkkioomjknnmpcnoolmlokhxrmmqnwmorrmo}omknqrhkkfrifporoqoyptmfnsnvqfqppl|vslqpllsnuphmkzpodkjlpolm`lokqrqvtqgjsnmkqsuorltxnjqnropvopuojmjcpauzjvopgpjpljnkissrklkjykpvntllqhrqkmolmxrbogjnsplenjowrxnleepmmhnppmpliprlijjmslpuoqqkkiosbknoppkwhnpZwiqvr[nuqvwxovplyrlupinfvqnsokqopmvkiogfcppnpjmwkvhlmko_konoijoplitkmllkohinoYmihokmllmjmndijk~tocqevl_]pxmonqppqoilynqorkmmnitoaopcsojkjqipomoxo^cqhlihmhmoiqmeklplrqpjqmckyalmn_qmnnnqpm|vfqornmockrdmhnomkxkjquirnmpkjp|pniqqcmZneuelnnfhkl`~jhkkfbpq^jntqrw^ebexq|rlmpmpmtkrqnrlnpooofwchljmpnoytgomrrvvfdqljkwpepnmkkkmniksnstlhsrrmkhkqnypnipsnmrqnzookn\mnhnoillnopvnnioslnhomlolppimntvsoppmonnlhzrikqui|imiumjmwmzovflinnnditmnmpqhiopjqoprvooj~rnmifmsqpkkqplknloqnkruclpubnljkpjkmyktoipiifmnrfqmropukpifllopphljomotlonpin_r_ynnpflprqjolngrrnqkdqmtosokqnihnplmjj{llhimwiffzkdpljohoknrvjtioplwrorniojtlsgqbppnweqhogjfjqxounrmtj`mmmqmriylmfoltnmh~qmjminlpqrjiljpoomhtgevsijjnkipicjfkd\omniqelprssainnjlnkllslntipoqoro~nvvrueprlrqlflgnkk{uulcqrowhxnedkomlmgpjtmjnmlfmtrkjjkcpcqiqjjorjnn{qifmin|mpmljgjqksnosjhyYllqlZjjmcsuf\qlokkjfpipjfpbsminluvjimsrksRp}rm~}l_tnroowmrfnlrftpskjqmpoklvmqqjmgmnmlcupvooqk]qrmkoltbxjsihr_iot\rmjolmjk[pnnmtinnlljasorkghugz`fpkvtmoeoqori\tXlpqbojnqapgfbgonRrntmnqrqqgtlcyoe`tmkvtgjionzkm^hnhkqjrkxrZmY~mkom|gppjnp^trlsmgqeojjmqlkfntlreilf_pnumorrlnyjpk^lqjpokqovnnnk}mupmopnnnqnijemmstKm[brmlnwjhnqpelnzkimprnrlpnsom{qrYpdrhuqlvoq\l\j|qlmmnSnlsotnqletvthsrsllppsdolpqpjomronn_`anmynsodpiyonlirqqhps{^ppnmoouw{mtmlmUlqshiorwkmjsinqtnqopmgropnpmkh`Vnm\mnnmopmommmoplmcpomsoppnun~lnspjojkmqooxoapprowbqponknnrkokiollqbolnkljdqpnkknoompqm\op\nisejoqospoonlljmnmikoplvofch^cowl{omomjnnrxnhlzplrqolmnjqokpkwrmpIlrullgregmln`oznnwmpnk|qxoxnplgnphommknoljjnnxkmokmpfjwpcujsorkinmomstphlqmmnpnnonormpmgmpoohoqnpnsmllnooomlroompnny_[xnhlqonghempooTyommziqpnnk{qlrhllqxokj{pqpmyjlmmcjhsnjnpurmonh~k`msdnwyigkcqtpkn}knemymmnpmqfmlpj[gpzlviqnoomorqsVmllnosmanqomhrq^sfostlsXpmqpggmkmkpcmommpnkjiponqtjponmlnmqqlmpplYmmomgsiahmfmqhpsqdrdpmor}nrmunoom|nlmqooonrwopdfpqolilpinmomqoonpmkplk_c~mhmxkpzq{pqojromlqklitonlxqmqqbnnpzqomhskolreqnhmompmmqmqoonntrl]lodmqwrqogozmqlxumwoglqmtlidp_`lzioslaekqkmrnsdkwnZvolkttpmmqlroyjlpkmnllojrsudpookk\rononm_g|lolnnlqnjqlloolnsrmnpmlkpongq}em{lqVnofslpnlnacjbvumkp_llmQknlmgn`tsgzkxqounkkm{okoppklkmmqXtnrgnmnngbnnqotpqrjmhhnmqkotgqpnshlmxmllgklkmwjnnjnvqnlmkjmoolo}jxpnylrolrprrmjpjnuno}nulmlinljjl|knreoq[innnmmongmkn\jmjhibnlloknp`_pkofdnsjlqifnrlip_imnpnljlziofmipvop}llpqkopmlkejnqnnnolhqpZnhhoZl|pvnnmkmxqfqmpqnqmownmoktrjjkkmohpolmmgnlmkolktpfpmnoekundmllpshamnekzvouoqmuqpmmmrnnklkmkmjplomlnroknog{r~onpnqkjnkrnSkimmunn}qzooipnfnkunji`kmpqomon\ji_ohmokoamlsoronopwrjllswlnpnpnpwfqppsko|kknovunlqunanlkkqlkmo`nlnrnonomnomlnomoz_oonnqmgvmhmnqn`vno`nomjjqjgoljnoysnnrplpmooXjjonohpmrilwjfnqnrionvrlphlrqkwmfnqiu^ppmnvjmcpgolmhnookpjl_nooxmmlqkrrmvolnx{pfmqokpppjlxobpirr}ndnmlonpjxopqtpnqi~opmponopuum_moijrukilppmmjlhtdmoqpyplpnnmpqesmp{lnWoqbpd`mqq[peoo^mmm}n`onhmlhgnnxmnmfqnsjpmx}nppqqokhxpncjomkvjqjkmpovikognptmd^mmronqpwjr^hp}liolgmmynnnqmlnmoiplo`n]tsjoinnuinqmisauriqxipxYionqkldqmkpl[ssmdm\zlmtlhtfsasicffylyjhwlojprkrrfpmohiu]nhon}mupnmbhophsclngpllkjr{qdppj^pregjistlsYbcmdfioumhbqmsnltqloXslUcovjwglncokhkWhlhslqhqnhnkhZnjycmJienpiagnidsnnmojoqdlmxiupxoqklnqri`qhtrhnokiklwnlhrlzjokmfhsurpqolpkkprprmbehlsokosretlhnstomtvollioklnphapcipmripkluqijqnomrdqonlopinan^`qspkofinmkfgnlmnpolsporistje|{qnvmgymtrjpofnmdutjnrmlniom[hnkolfchlhyxzlpnnnrpiswrmunognqlhkjpmnmnmyglinmepcjhoptijjbnxndpxffkxqmfnnvrpZlhjmvqmhinoppjjrpnnpplmqlrpikklkmrrxllpnojakllxmzqkuxtlpkh{xbjmwplhuojvjmjomnjnpklmqolimmkloqjlmpqqpirjmomqoloulspkieqjonmkmpmihombqlpisqpnomtnpmnosunlpqnnqsrqnvhjmofnohsjootqkqmkqeknnnmlmpqmsmroomnjimqsmpfmqjmogknloknsksqusponqmopqnskmnirkolodrminlmnnuhlennmpqpnmmioqoplkopooorqpsoonnmnjngojlomnnmjkqmojrpnonnpnlmjptiliotlmomvqnpjdnmpxpqnZglmpgroongsmrnmnlnplqq~q_lo`jk|p~pl{ninonzwmnoellokpoxnlynptnsh\ouopolrai^qupnirngnjmplnozmojktohppwpjtmnohqklnUmomegallun{obpmgnjnsqkoknhjZnmrmnocwpnltojmiibr[kohgjjnqilpolromo`mprpqnZgwpvnpornqmntpspoljqermpzkvncfkqpojwmmnvrfcpordojsnonenkpq]nlfblqltrlinvmmmknouphnkonqlnlvmmpnsmzpuonlknwkgmodq\mokqklfmwfnlvldcxkjfpqook|m_ucenkij|lppnomm|bsokZlo`lpooisonjtlkmm`llt`hqknvmqmolmemmnjonvrnoYopqnokm[Zilnmqoaonwmmlm]inrswlqmcroprmlooqiinf~slnqkxrodpronpqjnmmnokozimntnfkodlarmsssmqtrzmlZcckrlrtfpmhjrvouowd|mongogqsnjlfeqli`i^rmlmbpthnqinhepiktkipfntkontkecmgdmmesoWhhpldmop}mclsk`ronlrWqlnc\fohsoluklonjhbsdokjginglcqrmjpnkqsnliplmowlr`rcqhnlnqbknroqplentpnlnhnqosbrnkgrnkjvgqwlwprlolhsfpporjkorwonn_gnqlrkxomgluin_nulrjkpopksmsqesnqrrhmql]nrnnhkormo{khllkchunjfnqkqksmrpoyotrlj{mt]nvfqmjioesqdntfnjookhnirkimpkontkokikfkvtotfkzfmqnbntpxiqkgnkllqwcnhlikjtlkrqjnhujuopklt_ljpihntgeglgrskqqzjqjnpmj_ggqvlqimjlcurklujiirvajoqfomkgrokslinhrutmuupdmoknqZkfwknorqwiqmoonhnppoonnaonogjzolgf`koinhsuphiilmvZirqlmpsq}lopkjmhYjlprhpmqkoWmuv]shk]torugmrelnqmhepilokfkyppoveolqbjo^lormlnvkopplVhwptqslegsm\|]ql]Wovvqk]}k{hrt_plmlorlnJpjinkjcmtrqposrfmr~okPwMnlmslllmmztlhljnloloonTuosRmjlixpnoqglzjsmvsjmp\kmsmqrstnjrkPVmpgitbsldoglkTXpemkaoiqnwunkb{rtnppnmknmjklojldppblTdoiqnkiqqmpvoonnmmoqjihjmpprplpknmyqmkjmphklniopmmnikWfrjkpnplkmmjhjmnmprhladquuhjhqosmrmnimgorlpmijmomwjnrnuosopkkhnqvkjhmkqknohmqtklhopjpmmejqqnjmniwothhpqprqpjnjnvooqenqpphyjomiihnkphmklrknjqhjpgjojlcinlmmkeolpopmjkngiiiiggpgpkhnmmpqmheypoqkjmtlqnmopnmn_kknmdmqonhllosmoonnqmkltncpppl\puvdnwplpmqarmgnmjjmnokyomklrenxsz{nnmlppojkZknmmgkoomlpliooghorggou~nlrmmxpkruqqlkdkos}wtqpionm]ikoomolopwhirwhohlolnzogm`trlmkjcsdioqolikjrhmhmkpmojrmioephu~cnqploumngnllrmplnlujnnvbooohjennkednpklcqpdq\papqnoq|pmmwjopmormfpkkmpnjllmoopmmnkmhlnpomlmll{ju^sirmmngorojqnkqvqolklj|mrcmhkqfqylqxmkroqhlsptsniml~ksqnppqpvmnksplmjhrqlnlndpmonbpknrxjnZk`maloinknruntnonokllpmnmgnqonllrowuslxmnklmopslnrni\lmrmmsoujjsuhqi`oqqnlnoepppppkmonom^qimmlo^mmgqXnllk[iolmqpmdvkspkjhqhb]vkckxn{b]rmkumnp`n|sa~pfnr{oecmkZmppsdkaqmYfhhon`lhhtbsiigimksp[nq`koqmamopqjqrojenlflkkZwdkfnpmmsjmpc\omkkkgqjrjkqof]tdpsklngn}lN}lmfgngqekxgfvadcethpmolkehkfkjwplrm_lhejp^vX~qlqkin_alijmjmgoxjf}scgqmQjkqkeqdwmlops^qYgbjqgmvlxokquk`nOks{cjklipljtgkjesqvkulqgnnokitloyzndpiqsupl`st`dqhnlhbnovmijbmkdqutelkepnvmpsmo\jkjmummnjknss_cpzpqkefrziXhkminl{fyjmssrwlfrnkqvpjfmvsofgnsokpfrmscepzixiofronqqkjowsockmsppkjemniikueojfklmtcjnlokkk^jefsphollfvjndjl}hngyymjjkyphklwognhplqilb{omnhimktppmobsovrrtivfqjqqnjwmrqpncpnlmemmhpnulengojkpxlr|mw]nfvdlfsz|lsqhnkphphdok`hqyqgptporbtprvi~iZjnaginnlppqno}lexojntbljucnmfulprgeujhpjoknlrpogqngnmimcrghpumukmpntownitqrmogjcfjjfmojrjxpniojglelnmfxqpmzsharyimrjrnmnlcbldokolinnoonnnguoi`qmcjlhrnflikqdqornmplwqjiprnlunpl^tisqqpmleqiotpnmqkomokuogprboeSla`qahpn`mfpmypwnroumocmwylvrthvq|emqmrlpLhuoxrokmrfoppsplsgocphvooqlsjruqmpmmm_roqnolsmoo[hgmfqhilooaqmonknhooqonlnhzdldnamnhmtmlnoitvduvqqumkimnplnjogom}xVjqmlomijukjmqlonikomnnjiwioykqpl^kmolslelmcpZhqdrkk{oqmfqonrglaqcrqhjqdm^rildsqgfonprtgrmh`jmsknup}kjwfimooqlqkktiihpyrtjilnnyskkn{nioenj^nifoiwrsmoe^svpuogmfjrlirtxritmkvpyidgljgjyommkojoqnoiti|gnk`ioimiiijmulwsispurdnmhqufniprqmpsmlcdfrjkjxjemrpsrhnpolyhqeeommkphlgqphoirvqmqimnrokjnpnxhlihqntinhmpietomqykglogkqolmjg[mmqiooqrrfdidjbu|jhtcrraornrzlqnk}fgpopinqy}whfqlmilovyqqr|ilmntkpal_omknegqlqmtqne_uqmdlkhqifolzyoVojqmfpvlghnsyoijlklonldqgboiplbkoxflgpkogfXlfppi^nongocpodmvkecqqjnpnavjoq{uqnaqmsmirtoWnbmllijlolzpjnmmrqgtirnkjkjmimonmifimpmlqtqnppilm{{mqjvsnnzimjZjlqouukmveoeponnnwomnrdwm`puml|roqoqpltnqobsmvomlpnpopnpvgoVtmamsmkkppplqkp{ow_nquldpmltokoltrnp}iiOmsylrimrmopalmppporlsknhlbpbpqtnmnpsjosnkisornmrpwUmmYcppfr`qblnmlqirmtmmrlmppzmkonxinjjcirvhoommuounloqqjmhlmozmxppn_pnztmlhutvorpvloolpimnjlqlmioobqpkpmmln\vnoekljknmimpruogncmfnhon{tookneropmjuonoujonpolmujotqfnnlxvhnnimnlxsomrnjjkvonrqjuoetqgnqkd[plmqinnllzmxglroloewdmnkmoramo`njosjoooimdlnnopjkfkqm\zkhmziks]snrdkppktrlonu`mqmpnrrxiqq^ulqbmoqqlnmoloopftrtpontrqrivhmkpuomsqiof[jol_pmqldoirmyglqsovhsinrmhnkoqminmpkmmjkhuvlimepjxkihkfmvhwjnmojoplqeurmpjvnkqpogogi{lkherqkoljjnhntijjsb}llikmisqbopklndmnqrmojqujknqjjapmqpwsoknoikiuovnkpqgnmnpninislmkomppgkkmbolmyjqgumqnqnngifd`mprmkovt^ooglijhoprnsxlhsonjvshdpglpstllnjqsresnnkjoqpnnnakto{hfnouhheqwktitmpssjhtynkotpqksheuonjnkyormiwbmgrmoqpjczijemmntkmilnjgcnkbrujnsvgrnhjlmlomwmngbchimkmjihjpt[aoxqonpnkxqduhltmmjuylyqp}lgkymfoolloms{nsju|h^kil_hqmmkfjyjxofjqojeoqmglyroowhmxgjkdoucijljiukqhtinnnmjiiqv}jnpovmplozslinusksdrqprjjojftlgjnjqkgshjxhllljlvlmtjmtdkpovzdullxmioilgnmjpmtorornpulkqsnelckqnjkpuslpnofrqsdmjmuhoqknyjkrfilqwmntoovzmkusausqlsqpnnlpqnorojwkyllpkpzkqstjsluiqfnnmnlknpnmjmmzngmnqrmskkrmqmrmoopjipjjonfrxjlopknpsjtkqrgklpqddorpjhmmikqpompnhlssmslqkmlqqxposlqnkqhsjnosqekpndjqhsvougonsstpoidmeseqmm~k[ovomnttctoloqkrsnsgrpczvjocifr\inkplqngcokimkppwmooknvjkmlvrqmhnuphkhrokbvekqosniqzrsoklnqt{mhroopowqboikvmijolrmilghiqdtpsmlwwhhmnssmhjkflrempfabtgnwjkjtusppbmmqokjjrnknrlphmoljoommsyjrgwqnpzvlknyopoovjmmoonomltkzlnplsmminpurvkspoenjylolotxjonlmnrqhl[tntnnjntngmwipivqetqhkpqu`qkkksaot]oontonsyjnnpkntajnsirljnmtdpgoklbhnwreknutl^hofeqckqniouhvtkjq_moznoibjmlkXcpolknnkktlhl~md\knmfjrokooopjstq^lurqrmmnohkvj\oonqtmmfnosr}qlrpu]si{dptjnorhrm__tml`ml\ep{odpougvdslfoYvhljpq`soorl|obmtmglsnfpkhnkt^fpvlpqyutdgoljln\ourtqvqaXlnphvnMnopk_ktpo}oligleirryppoimflZzmiokavpmsgvckVk[sxnrqqgqgetd{{mhjgoosudgllc~qusrnkhilo_ptkmxkqkrmdoblbplkqotsuumh\nfbpqrchitilmpstkjmnrmnknymrjjuulxxnkqqZxi^iqoptuojZnfcVv_hffgmmllpemprhn^qmupcqbqxunfpvros{rtnnpkwslqnspsjpglkpajkvhlmjssnolfknl]jtrrmgipexlphhiolntmqlooirmo^nlmslpqdldlimsgjodqqnoomlmmjmkgpkqqnjjikngkegrjkmmkfk`pixosimmkronsqjjmbjohpqwhwdqeqvgqmjpanjnZ`oqphgus`jkpnnkmmpolknrjdlismpmockkqmmqdnssQppkkjpul_qs^tkuiopkpkonoooodqrtlomo}rlpwinioqjllxsqlbncvnormpohjbnqkjin^ksrmspgo|soeYpO_o{m\rnqns^jemqoplmsbtmrpfmluwlkonqslklktunrkpouv_nkapibqfmummkgk\kkeVxkp}krheRlcnuvdjnmqmtajirjmmno\jqpobhroergnlj^vapkm{q\poxykq]eplmtqnzjqwhmmjokWnpnrpjwicnkrqqnnarkckoqgkZkthjKmp`pkrsnlnannXmfmqlpqdmqjkqlqrkkjoeqmpkooinpmj{kj^zrpinqj`psklmomtnenjmgvulmjlpomeikypovphvjsrrqzo{npxjpjvk_hlviqyjpujmqklofsoltpmhoqiroourolkYf{gqloodptjunhppnmgonqnqqohlqlnjkonmqpmnKro{k\hwpVooomoimr|qneomhozoovpmdvnlo\oqoksve}mppkoqflYnhgoklorihjq~}kjofnfijzndntyrmkpwrsrjvlhopjgliqkvrhnfilkjmu\qmofkklkloqqjmqoqepniqeqpnpmoqlnnmulfrs}oS[ny[lbofofrromkwkknmlliphwpu`nzc[onlnppnjjmNodwoiok{jstppmnhvrkpmlpplomxknkrktmpnlnnuqesmqnrmvpkalnmkmjsojrxvomqonqiuvnxrrYnpezqhpnnknwmsXunqkbimlafipkdhiltdsrcpmponcpkmonnomnqroomvvsnlmwnnWcipmorbpndp`mrngcmnmrpnnqgro|jiosploqklnnzmlkkevitld~omslbjssoulnnnuohmppmjqoosqlnwjoklolopnjnoqfnkkfkml[o}udlrfxrndoknxnprossttmpvrphjnpdflkqkmlwmsnqkjoqOjoq|jmllqjhqimymirkQvktoolkmkkolsnwmtqolbilmdnjo_pomnnqqhqvnonqnpjnjrjlioool`nqiisonioklspoljqhltnmqqml_mjnemhljdnpqnKzpumyonmpkoolojgoiponckqrormlhjmonnHrlrlnynnemptkykuopnfimbiymoookmqpg\pajtulT_kmnlsmnXhbpkdonqnnrqkfmpgdppnvndnmonoqeomk{m{oltpnnoc`lmonimhohnnmmrmkqpjnofoopppoqkpnudkpphjoosoolmltprzomoqtfopiimskokrh|iilhoqploqnkmmnqplomomoj~}vormnnbjkokrmnlzlbrivxlq~vqtmggiknc]mopdennqpncntsz~sljdihovkjdwpnbkkjeefqg_pipdqylxd}equpohdntofoq_yffias|apmgpklagilipprjsv}cj`anv|qhg~fkksnopsjoqmwfwrflhjlommimpvlpfpenz`pduisktqnqpxmjqcp}vmmndwknoooltso{sngopzqtlmzpjweprolm~ktusnilovkpcnqsiWrqhmjrlnnglakssorkolju~kjketgshnfwqootipljkkntmjuohilm{qssnkllnnonnkr^lhpq]msPpfqlroZpiosnn}ymolktnmelg{lunu`vXokolnmpcmjmtojjnnMjljoomrpveoi~oqQmnfpvkoqhbotifdpjnqyZnolp]lnmrfmnnjopnjllvolomoqxllqjkp_m{sxnykmotvhiswokrok~ln}omppgkrtrqgkkjntnpynkmompfontpmm`bmtmylqppTxphhb`mmipuu~lponZronpyhoouonpfppnocxmmunkhnpnsoqnlphnqpennurjyntnnkvmsqZlndnlmsptnoqqfonblmYk^tcponmrlgbphonmphppfmonklgwuliiqoeorekrsmkkpqolqvmooornimusgoofmrmnpoupnoowqnokmnhchqlsmpl|entxmmqmryqqrgroolvpnnmlspinlsh[htboqnmqjnhmomplknlnlpirpjdlqpnaxtmnnvhnxjgomdn_uqneojjmumsnstngukvlj{mkpdmvjnufipamllnrn]noofipluvmmljponhtkgljcedeljkqplsljmlmlfmevxmlgXpjlfnpgmkrk`gipqppplgfysozlkyphslnvsjytmkwvunhpmksnimlwijtfZqymmjshfelfjhplpmrqdpwomnfiqjnjitrgnhgrlnlhoiqppop~kkjteqpmnoqjqqmx}nnhkjogqjmnnimqrnkqrlkjjknlmmlokasevyloiplmplsokrtfngzmgnxkiptncblvvxjem`jl|j{{mkpxiqd}ovktnrvsqonoqqjddrtipriou[uoplel[lhdluqirimp\wmdqdbfprqrsv[nnqqxmsnnsrospmplmkgipgpktoohqlri|prfqhnmkiugkjqnjnhpojqjblfppojurmpiampmpltw^xnrkjeofttnZnstsqkqnhonmglqolnlmqno_epoqrlgkgsrltigtklodpsqnkeoVomkcbnmmnrnethq]kwkrrhjhoimtgmnlohplmdikphvkdkillhlneihocqinhrrdoln[gqchjjmqUfmplhqz`xqqoaggaxolhgjzpubojroeuogkkkp^pimkcinqrm`otoecjnpyrnpptnlyom^ksnhfeijngnofiplhqkpjjmsolkkfiomcvmlnidjwmljrrlriozahzlhhtitohmvqlm`nnalpopfmlelsmjliqan_piqo^lrtjuukfkeqelYqhi_\hukpntU`lpZgicjpdr_popv[juV^WWlWroishcwjswxtcooulurdvlppuxhrajhou]tkopp@unshqnkOdimyoih{fiWuio[jqYisr_oxurnt]VsgdnidsqankpqimQfstrlwgnmslrunSsuupjtjmhnolnsqmxtpdjwrjyrp`skggmomkteelcqsnqh{k`pflqmnlpcnqiMRklgjmNvgcqltfL`rpvhgpnsairqjarprtjlkqWjhlihpqu\mouilwdkmvkjolkgplrmrllmQvnxgauoppYZkkpmnuhbqznpppnptocvumsfqjrenlnrmlnrnpopljkmjr]suphkklutxfumqzlnnoopiimmgiraqjhifpglgpokmwmlnqkoElio^simojelm\pjjghRqcynmrjoemhmpqmn|olkosmfdoutbissqjtvj|gpljtdmpo]pbn[qjrmln^piknrkobjnqqnqmtosobwlwfjrnriour_pv_lmjhinqlltgudqpnmgunkmopgnnmuknyhyqbloppioutrloelqkjngrlpcqpqseleppqnhngnnlophgmepemse^lcjhsrlkmn``okjf{Xllwokp}sypljmhiqmmlhnklrilpoikkoloozkjrqushZp`odkiivnjngiphemkmnqmnpntqlroimlrrkkomjs_nlnsitjimllfqnpkttnkk_rqjhnqlplfnkmjhjlonfpqmmmjiloavomqkhowp]oojmphflnliopnznmnijinquqmnx^mvmfmmqroqllomohsnaqnhqkolsp{pmrblmpovnlnlpoon^tlmdomrj{rsonrokpsxqplnhnlnnnrmollffksn_onbpljntsnjjboqrltlmn`ixpnxmei|mqyplnurrohqkqnnlnjlp`txmhlnfobrgqxonjuplnnZokijl^omwnlrsumhm|Xslhrqppomjxnpnlrnqmlpoaaowotpyopfjjookhgpgvooovlpmonhppoymnhrplbjjrnijlmbbm~mklpmlrnlhqsqqskolfcoqwp^lypmomklqqkmlprmmnmmgnosrp{`jrkkklnoioipunpimovolkjtpotoppmznuiol^mqgnknfnzmpvnon~UurpbnqklqlpojmmokoqnkbZlkpqllrmmmhnismzupnionkkemjwUpnnmupnorkojkmlzhl\qopkotmonlnpomonoo^mkmjlYsqpnumnTpponmkMrnzpplis{pppbqjvqlnn^qwkrp]tirolcovpwpq_t~uorprihvkoyptesgtm`khoio[mrqepnedhdnrkditrfnroptlrrFfunnysxoufrqorxvkotltikmomqqnooozojmqmwmpltollmopmlwnnsreojlonljeirouktvp_mnqojjPwtnrmnphkmvnqirebnulpknqitrWqrlprqimlhrmnvmmljguulfmtrotonilxmkriueqlnovloljhppq~vgqxmtknnmqgjpohkmyk}mjpjofpdqYimetf^bhupnnrhdbknprppbpmiom|tglqluojsovgkcpjnporipntqmhkokmpl]qekpwxrfog^vro`mplilponYlmipkgklplotnoqnmkkqriqzrmn3pjplmlkhp]sfsflgse}moqlpmjlmgnnkmmmljmnpjmlm_oqsolhllpqmvtestiureoornosxkqemgmqmnpkorqgljomplfqm]sp_rpnnfp`ivkfnqjdloo~`snqjhovlvjjneldnkjmbtz|{xbowjrjwhismmmyjgnqilnmzk}nigrovizpmormqoiqloovqeopysuqlikwfommoksthisgqisostalupllnjyuhqfxqqixompnxkejonqtngns`knspdpjnmiillkfmndhomdopf|qiqjmxkmoyxmnjorkrilpjlsojnunoskroskkqsjwvrnmjljpnqllpmrrllotojgivrmphufppvpsnholeppgqmsrqpdknomohjtjmspcdoornrjlkljqqpwkkvpncqtqjmmnozukojqonjsnwgoirrpmjkmoqmwqh|uxbumjotnpmnfudgmoiqfntmpnqoetkohglnnmnxusoomosmooimjnntcqkoyojj[lhwnkpmkpjgmoosmnnqppihnnsgphlrsmkcqpmnomlltkllfgmoqrfmne{rmsjljponrmn{mfqpmpnmqmomnljromaqpng_trkqtpllqjvogxemrnoqoodjtquknnahmlqlvpornwkkplosrvlcjujfssperllsgjrxtmsfjunqlvrmrlhjqsovnqna{l|qwqreuoldjkdelrtgnmsh[_kothqdobutrdksurioosnhdnmmonysilpslwjergunkkjnsteifsnomsxokouupkighpomtxojlenlo^sq|gojtojp{qh{ii\rsnsprmhoeqsppdlepoodhslrmlwpxslorlrp~wqvqpqrnlhqpns|kphbjngovlqnjmn^jpirmtkpnmmKc|on{m_mreridkqpximftpnrfpymfonpnrrmk]mpphmnppmmpnmcnldoilrnjpppsoihvgi[m\qrlqfkMhpllznjhojqxjmlllnoig^mmsqgjzjmpvrpi]sUknoelmyirjs_hrppqpnsqpmko}ppmUprrpvslqrRmlthqho\flmoqoqmcopohwrfprrxmdonkq^nqlrrorqmmmsnlnlksnncl^laqxdvkmnepqqcnhngownonvhroflinlplmmqZtqlrdkhhhqsntljqmmljiohmmlqnrmlpoguplnxklrkmphqolqpsfblhoj{kimsccpnlptqinrnfpolpnpsipnlmrjrgsmqopblWmopflk{polnqno[m]nnhvwnrfr\omnldoolmpponomjnrmnpeoltnhdofilvqejbjssoyorngpmlhopkqqlkngomnqqmjqmoxkmnoonpqqopfmrpoplrsmplmgfojssgnpkhknqprn}npqqjlmumjrkskqouquohmnuiyopmpg`kpsqqoum\o_npbhwkpwtmllnmkrowmljmojkwidniphonkmsTsrwktg[smkkmmjnomgfjllonoltmlnsrokqsjlnhlqyoqoZnlkmqsplrqlooqnqg`qlnmorrmmmlorsnqmtlllojppcakqlnpkpbpnqmnnlrnmmmf|smqmutotnmosktmpqnmqojpnqlkplxollk\lsncvpgomezohkqnkk\nqlmomnmpqhpwnlcoqmlnllomkr|nxrohmkfo_|lnk{osn`roaiqmopqonflzXjoYnyskqrxnjpmjlj[neumnpjTootntqqooktqXnuxjmZqximnqirukorsjlkngknjipkeqiblmpppkqkkmtalqpnop~w}orimrofqxnfmngvn`iljokplsmmnmlkorjqdafqrjonofpplooqknpmpnplporhko`k^jnrjroptsgvonm~npiorp]nopmrssmilmnsklqniklos]notpplpmmonpun~momqy^mvgo`mmnmmqqo|pgnnpllnuncflgemqcotkgpmnmnriq}nnjtoeolopwoqrqpnoplefjkeqn]lpljprqjorknn^ennlpdldlnrnpnmmlrhlohlmqpnuseqsnposn{}iylonpbpopkpmolglnqqmlpooopkrjqcqrjnonjonmomqmo`nomxdaakslimnzerplrqarppkxltoloonjlipqnmpjmplmspqlfmmmumknqkpkjminojlvmpprpkgqksgnnmtnqlejnbpqkokonqomckovcrlgktjlrrkopmnmpqsqlimfposptkmgqoomerrdnprllunmkfomlicljkltqincoulnomllnwjnjqqroslnjlnnkionjlsfpojooqonspsuol|onlodnolllplklpunldnrboopmppiqonoponnjpplZmckmfljmovshmnqmuglmlklogysfxisthngtmcyohioiarutpmeopmmkikuopzgehtshnbpnrproj]snolqzsnjvspuvpgZqefgpdtlvwmplkrpenlel{njmumiqdznpsrfxhrnkkrnoslnuqjmposksgmrhofpqmooynnlpfquoqkgqZqlrlrbjkksorkaqtpoiogliltogkojd{ujdsmkbyxotstxpnkkpiqlrvlcolhiqmomkooopaipoofhkqohpjmnqohsrgjsmprtqmlnqjoopososmqokoolkntpjpmrjqnnoqxprookgmoksknnysonqrzie_nplenemvmmekqmpkoqkkospmhijnqlummtmnnrnngmonngoxslqtsquiiblnj\qrmkjhtvmnlocnkqhnprlfoipnon_jtnpjkjomgkihpk`omkkmkpefqlsqosmqrmr}qmfrrxof}ojmn|mlnfuqonngzkwjotqmtqnjmrmmmnoqn`mmnqmsnsuolpmnorlrqssjlonvmmvYmnmoz^ujo{mmgmkjevrlhnwrfnkrhuxlhenenrnhizviisnlgkwnfqoimpnegjzamkmomrlplasjqniqjo`plhbkhhfnow\pxlgdtii`mprvhskl~ulsnskmonxhpejzh{irloijtslrTRvtvl~lhoiqomgvhbihpljlfgoenlzqqonno}nrmrmdklbhjroosjkgqlgtrlmtfqxrpupznknmrgl}oxoqwphxpnkrmvhnmlemhkmompfn|}bqgiazkhhqtjrxkfm|rbolhlgmojnemhhijfpdpjjglZmtphipi{jlnmojpllhlhmpbmcngsrgqpq~kkcnjsjmjnhoknstrmlWcqkwchlpowllmqlrsnqsqpjmydkoqkwWokplkklonkolrgiuolnppkophmolktnpnlekpnlmnpojimcimrqqmmiodplRlpnosftrxpqwgnmilbplnmijghlrxihpk]nkmvnlevkmmjkqfet|gnoinrr_knjtrsrqnwltnbenrgmojlozmlmpnmoapinjbj`dbjtpjonsgfqb\jtjlbmkmamgnmpkvkrldmpiim_nitqpqrwtngcpidhdmthnibdrj_envkmjonl~jjmlslqipningkpknnntmqkslsonomvtplopeqzlfuhpnpiulpicypuoklltojujmimlofmmklslt]prkpsklgadlvqkmkmnemhbjplntujneninwblkmgblrioqqpouplnjgnjlhnmsmplmxzopmponopoplinpelmdrnzspynpoopqsmml|emlqnnpimnl^nmpvmroipn]lslrpqkpvmkyoxhrnxntr`lnoom`nkkhqmmonwqpqipnnenknpnmnlpmppVfmoo{rynlxompfcmnhnkjmmqjlmpinmknpmymoojmojqnmutruoerwlvlmjoalnnShipliylqlrnjnkq}pizsolkkkllkmqooompqokmnm{kemqgnkpokqmoqpmtlohjrwmmph~pow`rnqegfrqlq{xeqijmbjqoijvhhocnncnqkm[nfgkugljwopihphqllpaiocgk`moogoqttqsmqpxpahwquugjlmoompqnjfVtnljpptcpitulimxokkczlol^nrmmensnmpikstqiroli}mhosionguhclokrnlijmgntukejxqnjnmmprpka[ppmfnrjqnu|mokvktdpwekjnjhpnlh}jZpdgronr}ofuphiplivchkpm`okhdgonqnkppgnwkllZpimlrmpmmomoigmhqjmnnqmmnoqjmromjndkpv_nmmuokkglneofplnmmlvmgqlyrpmsiljpnlpmbrjrqonpplhonnppmokxmloorlwlklpmsolljphmnoolqvnzknrnkoYmmionmprknpqnvjoppmno{qeoyhhbpxwspronksraomXpnsjsulouiltoqgmjwmkhzopponmmjnlklmlmjnpnjjcpmpmplnjpfnkokqymlptmeumkprgmjqimonjmqomolpmnoononj`oomloomnnpjdnppl`iuioornhlqomrnmogoomolonpjrtwqyqspqpilvjmqpoipjkajpjtqgnnnlhmognkpnskl|prlmnsokmnpokorkpmuhpknqmpmlnjlnrmslqlokohvoolpor_oinaom^omjumkpnqkjcnk_vmljxplnvppooqmctcopihmmmnmtlonmolqonnpomgjppsyqjnnmoppojkfrmpqsnjrosntlvhlnqlkmpopooohqnnpkolnehgmqikmjfmhhmvkj}mrgogrnpkijmjmlphq~hujmmqmlqeknvgtpnvtgj]oispfgkrmewjlknafoqijqnlpfuolwunbvkfwqntpn\oflrlorglourcogkjpholikmqtnomkkqkcojopgkuutrjpmljqm_xlgnowko]kqlpookrhqlyoisoom{qnxsjqiorrvgmslnnsiqojiikljplrqrklkjmkodomliglokp{orkhjlekupniqsmjjkmdgirmelqoyitprvnnq|palwmisemdjplsjpjpkgnpnmlximfynnnaqnsptoujoqlkftmrpri~kpol^vmjwkpmmpqmooqktvqogiknrvdnpuontonkonlitillwrlnrmruomgrvkpqukrrqoqobkmdkq`rmjikofmjoqikoljglkkiqloooyqpl~inrgjkhgqkoif{oprhmlpsjrqoopqpwi|ibnogimppn|mfqklknprmgqqjorqmmwumr^lnnujmjloomnpmllos|rlpoirong]xompmgpovldrrnnrpklunjymptoTvphoknrlnolnsmopomk{kolrongmhjjmrkoiqrmtkukmmcplrri`nosgmhklnmpmtmqplorpopfmtmtpoppfqixoaloqnll}{nlmmmpnmjusysqmrk|oodmnpmemvijprsrwnmnlrpmmklkkrknhmqoosfnqrjrlojcqmxrynjkngjrjoqrlmodquphnueuoqwo^mcsjoqrkontnjgfmhnkkmkyjolkrsfetklqjemhekWfmohmpjiprljifji^qhwnvzjrkcqbujfupfzplngqutqmr_eponoflmkpsmmnqphvln\qplmkkh^nlnkiucroklldjjogrommpenjlqkn_kxrrxsixmnkqqdzolmnsbkdipqnhYqmtjrnkjbrgvppnrqnjfmqklnssbdjonhjublmmhmjtpuolljoplnmjeprsjmnoenhoudjhdnokmldqnmojolsnxpsc`fdqnhnfonXwnppoqduoiokpliqmlpjkkfcvzuksq{otuknfmkojnfllqjrbjiqqY]tppjmxjlsnjl{pvnoqodoltkjnqqzZjrkpglsaqlmotrmkslvm]nsn|mjmemecsictmokiqxjikrgkqlmrfphyntomLpomxnehqXnjnpsinijjlsjljokpxmnsiclhjpqrmnoksliljlkomjkqiqngovrsstpqjilmoiosojqllqtqnloklqmmnninglhlonfqmmlcqasiqxleonpnonoqjnnllqhqemllokinppttrnobqmooolnjolrmqpwotqtkjonsknmqmtrrpinktsphpkpljripinlnmmumonlsspkkkrm|mhhlnpphikkhnwpqsopnmlkjoogkqmmmkrvntnkiioflmbjpmpqqmlpqoqfoofilkjpn|lmhllpjopjlmnomopqjhilkmkpnkmormlsomlloujpnjhjlhrnmpnknipinohmpmlprolqmonqjxlblkgsajpx_nnismnnsumhljnmoqlovourlhYnnocmmzpnnmpqmrkvknnmoknjkmmpoomnnpknqkoklqmlnpqooskijnqpsvnimppakpoknommrlnkorozcqlkpljprjorolipenktfonkolaqpupnjmntnlfkotmnlpoxllsjmrqnkmpommqmljropomtxmknodmm`rmlkplwunno^nfplpmkpokoehlpomoppnmulnqjosrmiliqlpkpooj{yrhlnjpmTtpbokrdnmqmfosneqommhmsoueqtdnmr\njrpqlkjhqjopfopjopqnmlqmknxqnjZpgsnmglgqlqnlqkokvmonbilpmpqvikntmnlyqnnnopclnlimoohlrmpmkkpobwmqpnooyptkmfmimiumnwgppllk_ohsmjspnhnrpmnnpnmnjetonmorcwkzookkjlkplnqyonnkzkojntnhwqmlrltkjrvnoipnginoommiqnmmnlmutmkllppigrlnugtqnsijnsnspnujslonqjmimioqqispnwtqpnkonhkgejkpklilzpukkons~kqop{nqwmfqtlqkjsoqmoerpoowprlnrmonjrnpkhl`tkynmiifkqtooi{hrnbmioqvjq{mjnokreesrmllmymmnvhnlmplplpnfllllzhrnnlmomnjmciginlrrjroqklkphnrmkiipvqnrjootjlumwjns{dnoijijgw`foovlnnepklfkkjk`ikuikelkgrwnko]wnmidmhkskgbqjlliorcirnhmowmqwptxmeekmidzgmbobnjokhjijonelqtffghlpmhioljclpqlSrkoqppvkoolpmsfkpooojmrflmqqsu`ka`nnkpgloyxsairsonmapmkqphshRoqnrhjmq]drwniirklmmqdkqcoshngiunqopktm}orihipjjvbpsmnpnr^qjwkgiqwkn{knsmuovqolkl|oljkmmqjoj}pubtmsqkumuop{rqilrk[hokltjsn{ofojjpmkkqspkqqfmqknoqkjgtjksngiqnklkirqnqlgkmmnjqoivrmiloolnkogtkopdtroieirjqnmonjpfolsknaoqprikslrpouhxtklnfs~mmklnvqkoeXpvlnquevmonmofgqvqkchlmcoeoupbokntsnolrtolloponmknomsjqpskklnrmkmppjrpfkonojkhoknloYnpnppolmlsnneim\nsqmommlnmgkmomnpmotosltonloopjoopmlnopnqqqjtldhtip^kninnooouleqgimnoqymoolpmoejookrnlrlqsnqonmohrskltonja|pqmkmrrlppmorpvinmfnrkknmplmnmhqodkrtlsmxopmnqmphps`mlolvgmllrpolnsoojgqpfoqojnnnkmppmppoulonvpfpjdpmlpmqmmknmuuoommllndmsnmdhqmrwihorosdngqoknnmmmnnksoqklmsvqnlonkpjllvnlljpjmlogkoplkho`qnqoslluomjmlhlnqolpqtnkotymnntkillpnmnppknrhetmokmqtiomomlmmqvmsnnslpfnmkotsqejmrmwltpprqslolpmktnllpuqnomlli{llordjpmqmimjkkmphmsmypknmsjrmkllkvlpnqomjmksljmospkqkponknknoqhqtolnjmnkolnquqmlj_jkjkmnngspmipdqkmomjdolpquuprpfoionhmrpoqsknhgpkomplhs{pk|movapsnonolhptgsmmkknohkpnihmwkmrp]rrtl{kfiknmmkgpkiehlqrhnloopllhcqjmmllkqmmjltorjpfjamoluploklnoiqxpqmookrmnmgplmnnhirjirjnoqnhmkkon{kjherqkjijpZsrskmnlsomqfibomfhmqjlikonpkbllnniprrrnrvowskontscrwemmwpsttXjumrmwmronzsnilrtgdns^qZquptlwetmh~gmur{fooqlpursqlgmttrqnomrtlpiguovugptjlrjl^prnrirkqouon~rxqtl~qpomoosooryRrpvokttiphnrzqxokofpfnyjpujisqwfjkomrimpyqjhwqqqgojlnfssrjgPqkrmrm_rvlmrtintu|irotdrqnjrvpiqmewfdmuyqsggrufqlrqxepspmzp`sqol^ntjrqrlsqnhinipmeuflnlnpophqnekoonnnmhormnmrossxwppotrmkpqkknlflnlokglsmkronijglkkorholnfosooqorophlikrjnpnsronuqgmpqmnopopkrprsskjfmslkriprmmnlpqoqqmhqkpofookqisyjjgpppimrskikpjnkoszpohqurpgqnppqkrrekmnqjroplmngukkjxqntnpomrlpoqwuoyukppmquunmdmoojklqts}oqlnthmmnurlqvpnkroqknspppizlvmknmlmoomoj]qjpqelgqhr]lnotnnjrkn`memrjlloflr`kkosj`qzoumlpnmrpvnvmrmimmplqknnmjmmso~mqgno_jchmkjhoiqiipjq}aiimomqmzlmwnnoponktpiZjnrknpoct]oblnnozdglpjmmrweonnsnknggnlojoiqnsjrmjrprnopmpmoennoooqolnlojfnlo|olkmkupkjpnonkqjumtklmmickuplonovnpnlmmmk{fpm[kofpmqnoommopelpwolrmnlzlkqgnmnrjmhnuppplnomssowjonqsdgrwljmlpolplkxeqnmjnelmjndhmnppnppivuqilmlhmkplotikrmrovkrnnrljojlnkmnnpsoopolZqqirhmkbnplqcreqsxdjzqmosptit|lnpohmmoppkrmnrchkbqn`kpqppplnmpmnmnmilqoqnpnkgkxopchorkkqugsdm_mppfdjhkenorhojpjlhnrjskorhljqcutznptoigncommmrtpnnoimmiliqqoiqtmtjpjogxkpnfsjpqutmpnlmnulshkpxnfwunppjrpmvulqirnnsqoollhjrpnjmjnofkoolnlqjkplornqqkpupolmqqqmtrkogoolgmpolnohpdnkjqslnlnnmpmrpjhdm|mtoyoijemmmjptsojssltr^kttnlpqnmkonoirbmqnmiqoltnrqkmpnrilplnniidlomnmnm]kjpnnnmnllkonppeknnoqsipollknkrujhumitjxlnpkrmjh^roprmmpplqelfhfjljrgqmlqsrjmpkomalmionoptondmguvojmoooheqhpqlpqqpjikkufllmtokomjml`olmsdlimninplsloohuelirfjkmlenagoqhotsrmmmvjsnmrnjjrllmnrnjopjoirjtykgoqpjqllnhmponcsinnnpnqmmojlmimqjpsrgqso|qoomnknanpkmljnnsonljpnhppmoounmlkjppslllnymmjtnmoolhmbkoluorqnjosmloookoppnldlrtlsnggnlkojknrptkknoqolmjonnpqmlplnlikuplqylqhomraouoinnkl|nulokpolwolspknqmrninlljpnlompohnlqolnetmkwmopropkk}ppmoy`qq^jknnnnwrjyrlwqnqnqlqppmokjokolkngsslnfnomkpoepplmfglsmnhofenrmmnfnpkjhlklnqnjurunomilgjpjronsmnpofsmopstklrppoqmsmmpqmhpospqqozkolploonnrmsopqnnkqqjplnrtknovrmhknnskpqlnqsk\nghestkojliiqsnqnvlkknkemmronnqqnmnorpmrpkqnpjurkqrlqooqmkiopjkopompmmsgljmowkpplsltjwqrmrirqnmlpllqpmpikbnpqkkqrtmntpkgolnlllivljniqnknpsehutrjplnsnknmkplorqql[_mnnntmuhlnkikkjrojnnjoxfgqpookmpotvinilgmmel~lkosrrpok]pnnooppdkjpoppnmwgmhno`gjjl`djkkrmjqimhmkrrlkoliuwowksdlcdphkkslhmnpjldltqkpphimlqnumgnvhkqrmlulrmkmoqojnlqjnpoqkm_joqlolrkapi}rfjiqji`mrvqqncqintlllnrponononminmqghjhjhkxrsnnlurnbkhhosbplsnnnnoqklu^iqmlpooioltidkji`kgrnjnfYgenkpmqroofiksn~ilspknohdqiogpjkritnktpjkizjdnflavjpgffmkjgkmk^inppm}piqtnrlknnsmtkwVpiopjnnmkolnaneeiqnmmqqgjpopldinmnhljmjjsnfreutklipgosfulhh`Xkmkljoppfoprojmyqlqppwroolqlkkqemijlmngmqzphqmnnjqe\rrjjltqintnmncpfpgrqnqrsqhtnkiitnommlimmnkjoksljnnfkjoswoimlhultpqnmoooinmloksnhhlgkqpmsnlqnoomgnmopolhlmmhkkiqiuomkklukdnresikrvjgkskoioisupjjpnqntooiljkmdjknikmlqompkmjsjkmfrssnrmnkoocnikqslrqljlpgjpjjjllimomommhsilnjsfglmnqomllmnzmejmhqppnnnmjnnolppqovslkojiciomwmnynrskikkolfqqnomncpjdwmpl`gklohlljininftnimkmyimudmfymjoolcnkkrbnloiqqoklmkmnkqnowlilnkjjirrsoivlj^lxlkjolqpkvnmqojlmrklpmklgifprjYljoilmklqqokwpmpgoflkmqi^plplnulesjlkplih{jkjksdwlmponglqmlg[voppnitscnqtrqtpoxnnklnmvjpnwkmhlkkrmnmnogfmijkmlqofunsomsnjofshtoplepvorhjpjnrlkonnkrislteqynqkgjlsnnhrenelkdosfjpuio^mlkipmwohpimqikeqllkzov}j}mvjnmkniijpioloiylsmpflqmnlrlrfklxVmkvseqpommomjexlokn`onotntfrlktojpjmnqhomkimfrpipvrknlnlatWehlqnnkolemjjcmikwmmoSojfnujtsinojqmlosjphfolmjrmktkqp\mtjstm\qklk~lsoowxonmfgwlwsnlmogookzpkwkmjgrbimmlmgmhmoolnmminpgklphigqpphnslmrmkmphqrnnqnnlirqpvmriqmk{jnhplqjqqodnksjomlinpnprldsispnorlnrrfroqspnlirpmnodqkrflrnnonlmgthpmjrniqpnjhpmsmprtnmlmppkowwphqommtpfephkminokrijrlgliupleonlnphkommnkkmipmlmtl^rlqrdimjmltimlmtnxnoomjbqgptnkqqpglghhuglgkmsqwtmpplmsotkhhlwrpnnktpmnuqnopnqokimfommxmmqjonkbmnjkmmsnmmomopmcqkjtnkmxtosloqqprpzuojgnnwllprmqvlklqntnoqhlrionmelfpqmjhkdpipmtrnpjpjmgiqkxrmpqonmnnnnkppllrnm|lhoiqnoonppljlnklntmnqbmvmpngrpkr{omqljmmjnnvnkumikiomqlotimmvnknijpnilomnnll`pl{emqoldonw^jgfmoqqQhnkrodolnotrjcgknqiqlig^[aenlrplwriddgat`iliqlmdomuetderqkjmnlsgdomirldhmvineaptoj_`empgoqtmpfk_xzopfmq`keqroJsqwpreiitfgmvphbmjymlplolnmqucbktjjglkpqyhpl`mepnqkrtvqrbjfGkkmtgoprcmoxkojm}lirnnkphbsjlorm`perrknlqjtkiqjfkmdkcikopn[pudksmnqbpklionmljhqkknmjmronzjqioqpkjomomqRvjukomjnueh]rolxoqjurnuihloolmmnmhppn~jtitkjyknrjnqplomhmnnqjmjnmkroutpnotqquntqoumnlpzmsmnqqlnvhnnwmumiommoloqnmmlppkkkrlnlnppcmqqriorc_mwlnoodmnrprmeqimnmnnmnmhsgolhkrpinsqnskwomnpmrngklo`wmflkompmojlrljelmmlrqtkrkicmiopjtjkhqjmneos`goslllqspnlvjloqocrkmlgcskrogldqqafslpspkqlfjrkomroiloqoklomsopqrjsgvgxihkoklddwirsrlhmssqgjl{mhmipqkpijnsjnpiqmdlnymtoljpspxmlnjknllkindsnhtqttsstmquqolhqlnmlonlcoqwqnsgk{isonrfqlitrjooknoliipskrlrmkkmnngmpinkkmknnvtronimoimlifqnemkmewlmqoooltknjjrmqniqrpkompkqhnoonjljqmkmmiplpotmqpopjkkrmnpootppijolnkqkohlnpslnpoolrmipnovqulqstnqmmqpojnqnqpnplntmnsnomqnqmmnkhqqsnsqqqootlqoiorshilkpvmlpmqinijpqlslomsqnpvnjmlqrioktkpnmsestmqknmomiqktqqonqrmokximipmormnqpmlnqiinntnospsoppmqnoomqnmonqkrpriilhnu_spjlmrnfnokoqloqjnmqolmbqmiqghmsqpooegkionqsrplqoomnmgnpnprqmnnppnljmnsoopmpoplmmkmntllnlloomlsmignnkmtlqfl[qijtmjrknluknghlnknhurspngongrokqoknkoqlskklqksmrkurpqmrsprmnmmlnrlllklilvlnjkikokhjoomkpojnoqjhnlmoqmqomgoilmlokllllnmqlrkmlpmmspqooreologltplmpvoqmdonokkpqompmnmhlmnkomqmklgimmlislnplqienjogmblmmqjpknsljlmkrpniomWpftogirlkgoppnprdzmxhqojkpqioknnjr|ppndrpcrmfokqlkpqrsnjqmmmY_olnnmnlwnnrknmsqkponkt~oljroodqnekmoki\kojnqlntnlvmmnmgfopnopgnlvidplsmkmoimkjqmmxmninlhompcxwummowknlfsrlnpexmnkhrmjmrnjlonppkkmgnjmsvoknkqnnglsgnoolllpmnnntjwmijnklgnjnsmjmhnvqmspnojqkpnknhgpuwpkpavnknnmlopptpkpnprlsmjplppjlpnmqork|jmooupnkllsroknopnojidnmqiqnpmrpnomhgoonqvbnkokqlelfovqpzposjlcpoofkosk_elqnprommomommxyesklsoqsoqqjqlokmnlpgemnpj|qjojqxlmndonlkiedoulxqjtsgrjpsklUzhnupiljmcqmqqlilxnn\ktqnnki`sood|us~oeopdpihssqqphlenntunjnmlokOjrguniubrtqkiyowonjqli[ktfigrhphjnn~sklpjm_plenhfirmokm]hsljm{miksk~gnsphutknkgrkfopuofkokpmrtlpnjpmqukrjoqjqolsoW~nlpkfjmphquhnmtqnqriaolrkonfjn[ldqdnjkngvjmmllxftmyhrpmtfqhpkrpnqksmnmepmkkrnqnmkjhl^qonotlrnskllmorortqlfhmjlwmmcsnooskirovleumomprlprshhhlms`soooooplmlqhnjjqlkskrljkntoprdpopjlevoktnnqjoskronielllipmiojmrhunnnnrmrohmrmiumnlrjkqmchjbslimwurskpomkqlylqekmliukmljntoiknnp`onqnnnqrpjepnhkupmoqroqlrsqlmrnmormtlpoiuqopjnurlpn\jnspxnqqvqrmtmoqmahqnX]qzlmmnmpqqmonzopmnokhxntiluoYolj^mntoumjnkqk|lfrnhqfpouxpmonrnihmtmbnmkqlPommkpnobiqqqiinfllmmwvommkntsrgqnoddmjnmnunslmsollmlnpnrkqZmlpolnsrinoionnm|alaomkkxinjafommskmnpmmmolrbiqmqokpmqmlskjmmnmrpkiqknqd~lsmpilpsignqprpkinoljuskkmjupntgmgojhpjlivmolkoneqomlnlnlknlnjkqlkrmcsh_sksqgpnilojinjjrmjqnemjqkgnjqpkkhilnrlooofejmeopkwggongnnlkhvomqzotvmmrpkekjmmqnpjninnrgqdmmqmokjminpn{mkllssmknkmpjqslhnloooowmoophpjhpxqlelhjhkqmnpgqljnmyqvlplrnm|nljqtnpnpjpsinnpitohnplmkldrmjnqlrsmkfnjqllrnisolidmkmomplsmomqlimnepngolnimutpnoekjlnmnngislulymelqnznmzshrmonnmulr`pwjnozeklrkpopipkrlepnooknmmnjojoliimomntzopqq{knmkrkkpmmolnghoonqlooXpqtlnnllpoolqplppprmpgrgodijkoupkmponmpwpmieuosqqeormnkgpmootnxskulmnlminpngpmuoinmlmxehjlomfjmvfklmmix^osmolkvphoteqoopnplmnpkkmmgmrtlnlokipkkmrlmnmnronnnnnhtmoflilnookiuknqlaoilolmtonsqjtnriamtqokpounmpjvnoksmpmrlorklprnonipseskopeollulpmljplpndwnhmpkrkynilmnlumhjrnoojlkplnoejgmzlm\pqclgqnmkojimpshlojopllcimtmnmslepjmjjmnpmnphlrloppopopmlikykkjilkplwploohpornvnsojin_cloqkmknpkmnmnoqosynnctkoqnojonlonmytlnlmklrYknhkmovlkonjouifoolqllomunnsgfgbokkrnmpnssnmkljlqpjtpkmoppkksopnfpiwokokbtnnmtollqjkmocrnknjkaosonjmnloklmppnelpmmpnkwgiopnlwncotrennkmovnkosklktvoltppkqboqrptrloplpqlpmrpknqlmlfmonptnrkroujmdidoqsojjkpmqmtnjppwpmsolmpmmkoqplmondhlnhcnboqpmlpsronjgmskmlindlnfokmomqpmdojlsnmllmlmodhn_mmrrsjslltpnwjppkoopkrsnjmlvlmkrpsm}mlnmlrnnsmkllroqhmokmijVimtmmptsnnmkoshpqjkkdionrloposmjuikomt{ptmnmoqmnmmpnopq|nmzrnooorWmvzkoylpnmqjlloqkpkommjmoexphnqonjmpebomlkhckfkmqsooloqmqnpdmrqgolnimoroupnn_sppklollmmrlmibnunlplmcielllvmsnmonujrqnjsmoinkhksomckuvmilqqnn[kpfiknpumxpnomjonuhoknookntnpmtrnlpsojsirklodxjlmlmvntooopomvoinlqm{kmnnrjplhqoajnqpiokpdolmlhjrjlhlljchnmlpnominfmibtrbonkqntltnjopmqkoolo`icnopotlk`bplooqmqknoumotfoolmokooitnlqsskplqnnjlnjkrmmovpkkmuoitnqvtljuljoodkkmvqppldociskiunjmsqnglhphvsfknokztmlpniqkniwrnolruimoontqpnmeppirtmohokpkrqhiumpeqkplokjpezqolmwoglmrjokuyonlkspgqjplqthoppgsoplvsljkouqopkqlmplmglnodgqroogjtmplnlhrlsogqninosnkrhxjmllhminx}opoihlguoogmnknypkqontrippnorhqhkltqoioljpqnkljnnnhv`nekmkmmurqfqho^ljjzqnormoklpklootMmktsrengvwkkloiojjs|lnkiqqpqmlvkononoiimqhnikocrppl`mjodjnonknnqnoosnqlninlnvmnnlomsynlomrn`vvmwnumpfrolmnmmsqpjkkfnvqnkoroknuiiozljlqommlongmnnnkonnjojobqnnspkgonsuxknpr\mtmijlrdumrunkjnroskiiuqkgslirlnoeolqijnghnrsmmnhfljdpihpqpjpoknnmolpkwiionmjcoimplqnuhnphkjghouklpmrliqmisdrjrimolrsgpkworqniusomoompljpphoqnjjfimpjmlrtpnrpnleqtoomolnlslunlfnonqkojjiijilpnvkojomslkinpnmqgnmjrsnoqpkpknhngomjmkolomkmgneqnlvlhkppskksrflpitqornirjtwcuqjpfbokpyqgpsuowkljrnjmrknsmsnlmmkpnqoonj_shmpnjjx\odqpkfkkkscnmlhjgvhlmmmtmqikpimqnlpjnqtogplnnoorntixnmownepkglgmqnrqmimhqnojmprmhtnspnglqaipmmmqlnvowu`poqtooryhjrlhy~omcqpeqnnjvkmwlnlionopjrjijmiqskqqlpzmot\tnkpfjbqmmnorjqlpsmsllnnkmtsqamlukjnkqltsnnompqonknrlsiopmnonnmtiomdnlkqnqpmmqpmqknkmhmglw]f[jrykdoplctmwospmpqikkmqynfrxxhnr{oljqohlrjrlojqnznmpmtjnphoqnnlocomtpellhpoqjubqoonhwvnnontmlnmqoinnqmllpkhynnsomlnvnlqup]ps`}mfmokjctnnTqnnoj^lkmmojntlgu^Lor{kppmpkmqplnilojlnmmj]dkqkoyomzlsppqntmnxnrkn\_frpprejkqpimnipsmmkqlljnlminqiousunjjpslnokfrlslrmolnnsomooiqnstlpqhbvgklunuphlojingqnknwmxsgponscnostzqnrqlrplqoismfnrqooqoeokjhtpyqprptnpkkkohnplnkompnulkqpqqmpmshmnpmq]ornkrmgsmsqqnqmrlnoxopkrksnxjrnntjopmnkndmesiyncqlrmmpmmhomlnmjnnnnipollokqonnossxqnomsrmoltmqjbiqlkqlpprhmn}nhkmnmmlnsnoqvklevkjnovonclkoinjqmolignjnpmpip}ektemtmijlronooljkkrponnircqqnqmnmllrsoomoynmmlbjnsojnsolnpmme{ronqnjmvlnnnpnmmpmpqrvcmnkonmuqypbqmnrwhiosnnmkiwpqmlnlmmnnm|jpmmjitpuemmljolnllqkowmmppnxlpneritnmnnolphprlpohiorjljkpokovdmhoupqjtjknpjkojsqqnmnjmmnjnmkknn~imlinrqortqgolknntffjmplsknimkljlkppnxnjmrfllnjnmoomnljmlkfkinhokilkqfqmp\knfnjkmqknindomjioppqr[nnomlonbmkjmkmoolovmmxqrmiqnmkocmmooepnkshmloonndmncnmklsnomyrqpkrrislukomonqqnqnslnmmlnnlool~iumnnknmoooilnpo{jplmjoumqfmvfkropzprunhnilpjmjnpnkkqiojnopnmpnnkonkpfrndlpsfrkmmnkgjuopqxlqmjmork|om]pqpjphpXlhlopskbvxfqmfmqkormool`mtpullpnjptlpotjrpnmiakskqklqnnhnxrxmopmknklpcuotksoplmqjqsqnhfnsmo_gpoiolmiuoluxkoqjtqqwiiqlli{ijkpjthoqposmoolqmvollsnortptlhkolqzpnkqppuvnmfelpmhwliolqnjrllppsrtjrmunookrotnpkoxnzrlrooqhn{pkospisqmncqprlhirporfvlpmorsgiokpnojupqpnqjsohitplmnmnfdhrpnqtloonkimglsoqpoootpoopinlmorpqjmmqqlinqrnnokonvlnnplvsmnxrlooonmgnnnloptkpqopdsrjnusjlkpjlpyoo]kpjjoxmntgqormgnqohooopnsonnpsnqnmsruuwkjopmjqmrixkqupjeoompirmoromojprsnpromdlmooynnqqiomnlnjulngrmmlhappntnooytmkojmiomokumjloVofkqiolnomppt}oxkdhnpugjnvqqoonroojkpspimrfnsejkqhngqnonqruyhknhnltfklinsoosioominhmlpmpn||pmksnbmmqkmjoohjjjni}mqojhhoohmpqnqucqifomtpnqqnjoonmmrsmonpnlrsrpthononqthnklsltmhnmpirjhntnrirqdjlmppxrhrknjioljlrreollompmltqqjo}uojmmnlpjwrpomklnnioolphfoqlmpuonlpmjjnlnqmmgqrreolnplnopormwkmqmnhpmoqknoprjonrnmosmnmjmnfjlimormjnlrlnlmpqljkofnl{jltroskpomjljmnnmotooqqknmpxlnmnokjnijonoslppomkxnxqbrnoptmjmjjnnrhqnmtmqpnnmqnikpmknnkljqjpsilxikkkszks]qfp|mnpfpffhqpnlntqmlmllnomidpopvwvjrochhnppkhmpqpkofqopwwVnpifyrkoqspshsnhdoosqqqnpklh}rnoleleojklmrjokqoouupllokovisjXtqlfunmdlnmnfnulrkawgpmqwqdpmqu}pjgiotkqr{otgnsfjlnojgioklolfksjonnemwmonwkmtlphqdi}hjknutodmZimdppnj[tqqlmpsvprmqnuodkpskntsoonphrfrulmnnnwprumiloojolcjkvmwrnvoorlch{imlppcntolopoppt{kipomlmmsqsoktqlnqlnqlooiorpgmrjbqjnpkiflopjvipwnpkym}mtl|numnnnnposqgmlqqjnkgnploqorkrnwm`pqnulnupkquoqslokoqixiovvoilmoxlmwunmpmqunnmqoirfolnsrhmmllfqznmolum{iluljjrqpnpllptvodooppuplhkoqoYlwholpoiommntjpnamqmrsormqnpnoyjvnnoompqoonnkkomrdomcijcpqjlnnqohnttkmmmipnulqgqxktopqrk{rpnmmlnhkpnoohodmnprnlnslnup]kminnslqkmmsqpooksmmm_mimnoppnnmqpoomnrrnnno~cpkmlnqlnpoqprxrdaukrnlrrihllbrolnhuolnjlonpjejj]sk]tqlnomoroqnmmmhmoqnsrpjppnxmnkzonmqmlmqpopkbsnkprdnqpnonjfmnlllrkjfqmnbnmnlrlkmkloomdnimejqijiZrllpmonrmnfptjmqqgnjojeqbjpnfugnlnmokpsikhlpmmkjmpmlhimnwqnqmXmponpmodkkinforqgznqpn{ninspmnkqjmnnnmsnlmqldpmnommqhvncqnwqfrnlxomnjmns|imjrmrloummoklrnprujjanmvoqrknm{mqoonlnknu_emnfmlloerjimniWtpvh{jmlpomqhipjrrnqvmknupoflzjonljocomlnrksqpnmnmhplsvu|niocnomkkrkniisnomulojouorkhtssuklsnlooruo`lxsnpjjdmjomopmoompntrrapsnkfcrkinmkneuolncdpgnnmuttoqmnoojmrn{nqslmljonjkhrpbmnfnvhjk_mnmjuwoqvonjrrtoqplmjooptonnnkjkppmonkjnnnollpoonnmoiwjjnrnomt{lolnqfoonoqisnnovtnlnikjpkklmmmoqopommfkooonnqoolpnmthocqoopulngoimxnplooorqjoqlsonpmmeotgokpdjkrpmhopepokpgkobgiimsoonpiromp^knojnmmskopmnnppnpopngsypoonmninkpnmlpkorlpkxnmnnoqntqenmjqZnsnnlypmnoqfnpwnlongsol]npnlgphqslnnqopinmrpomqntjmmwqopx^qkmmnjmlollnlnmmlolkjohonpopjmpotnmkwnhmhsthljmomppunnnnlnpqnluqnwqirrptnfiptjglnqzomknxlopmkmtko~onxhmp^iuiqlhkosugi_oklhfgowmoylo`ankvzb{pqknrlmnhjoksflopqqrulmillpvoopnpphkgopordqlknkklpgpnQtlnnnx}msmmmgotpnwfmknospppmkinrqhlroknmpnronoogoonntomakkosnsnkdplloyc^kooluprsljlinknpwlqolqjnkopmmhkomjmqnmmulypqnqponjmkx^lpsmeoqiwpkk}ngksumgjiqmlmopgja{mkdrghhkogknkmjpmnlokopilvslqgproogmlmrmqymonmsrmlkvmdmdppopzuoolpekunpsqknfpomsnmmamqqnmjiomgmorof{vkepnqqgqmpepjostkpqrlkmprket^wmpfkmoqomlloollqkirqlnpminlulkolrr`nnonwnnhnplqpoqojdmrpkokqrooloqloowqnonupgoqqkjonpnoqhmkklskfokqhoplqntpyjmolmkjmpnopopzo`pplgkoflrmoohxnrrqimmmntpjkonnqjfogmvjm\mnipkilnplqhqncjnk{ucjnonqphlhqnknjqnpprp}tpmjplrcnsolkkipsjhmkpmlpxhlmutkomfdlrtimqotmsiqzhshmmjojklhnnoqnnnmmmmhr_qjhlkmmhkqloimeoqompnpxklonna{jkzspkvmsmu}^uolqmprkgmdvhl`jnqajikkmuhnoieqfzdndpiwnmompisihupmpqmolrwulqjlsilmqnosjmlnjWhleckjknginnrdommnnhlqkimimosja^pgkgghkqlrisnmnhjmlm{sgjhxmpmtmdhoilkjmojtkhflnpksoqsmquliqqSokillglvvko~kjmmpooqoioqmjmqeardkmopchoqepkhlrfjirinkspmokqkkmujnntlqpuqqiamnomexaedokounrqpqnmmilpmnnojlqaykrjqaprnmnlliknk_fmmokmkoklsnotqkiszwpsmlgojnmumosmm_g{llhpimmwcjnmhjg^oxlhkwqlpnmur_sqpoprpvnqnhstmlonllkmhssmljhonosihibnnnnjvknemklmmrnplrqVjk[rqerngpkgpmoneilldskhhlnrnnonmnnngrmhphmhorvopnndxtnqqipunpexogk{lnftosnimpqlrfjrmppptnsl`konnnurqiprmkorrqnuncsfbuiymksmlqqdljbjnsoppgnqlorllvrrvxjmksxmxulyohffmkcnfnnhjqhiolhjjon{p`jjlminootphqihtwfpmfnkroykjmhprlnvl^mvpewpikqeolkntiktk}outgnpijjwplfllqjtpsnyrmdmtstosrokivnqpu{gknohboninootophgipqnnsqbugokrsqirisnljqo|wojqnnoploklinlrlvvplubozormphpionolyknmokjxrlt|kwnimlksnnhmmlnmkmphohxnhiswjaynpmqhlpdrmmwkmokmpogonuoovnommkllgnvmmksjuntmpnl`knlhbeinfopmnookmsoomponmjmlopmpmsbnkouqqlnomgr^snnlihmmysmlomqnoaqnikor_qvios~noqnnkprnspllllnpooxlkliqnenkopsnpjlcdllngpimkmqnqqonjooickpmtonkqwokofmjznqpjkmmsokoslpnnbo|~opnrjvnqpkpmlldmkkspprnnmojwla`wdghlntorpnbpkgokpp{nqiljkmtnnnrZpoionknionnrhnlonknrleojjmtmonhkkkommqpmmppockolpopomfonvnrrotolmtknpldhrottmpmknmlrkmnlqogqhkmnnnnlmkkrtopmpmminnonpqnhplomnrrmnmqrmvhnqmomlpgljwlxjnkr|ksrkqmvparppjmqjlnhmjmwqoakgjpqrwrpioklsnjn{wcomjsnpjlsnxnetpjmslqmwmlojrrgmtq_ndohqlnpnplnipestgipkkwjnpyrslkopnsmulknjpkklolmalpqoonuevrgmnoxnozpjqpffnkntqqnnnlhjqfojprmlolmulyqngepsqtjhuiihmqlnqwnbtkqmsplnormmmrklnlpnookoqwpoilpaoknrmnptowdxrlnkjvgslwjpbgpqklrnfqnmlpqeogfljkjicnfcipfmilklkopq{mgrenongkjghiomijrluplorkymqbuhkjhmpmh]otv_rfrjnlgfghmglnnmqffpntmjjfomiomumnUnkkmsgfeljonpthllolmlojlurtsrkluisknpjvjwericugqksqkckplexhSdmgpmrlskipsmcaem~sjpurruninvlfimjtjqqhljoijniljen^rhlnatfogr^nvfhjqgepjdojlfefqshtkultkjovin}jxx|xlnpommlqcpkjlnnhcndqeniobompstpmtsoslqpfnpkkqpvgpyifkYr_uppfomtssqsxpeudqrrsrngmrkgospllxlpnnmdolhuhwqmokyqcsqlhknZklmzhflombojdgnrnkipbpqrlrbjrq_ummilkkivhklpsglgckjwskqppcoths|yjdioLptynokrjiqlpknmdolkrnm^jtpmqklwpyonomtmnnwrffYlgtkngksroqhnmkgmnjtdaildsmpkkthmkpptkqbfrjfjmirhmoZopSdjmmtvjqohlmcmpqrknooj_pfnnylqjrvloimemqnmotklvllmkjsonkkhlripimmnknkqFinnninmijqvjfkiklkxhlm\oliqooljktposvohpolpmqqmnpgpk_lqkfopjikkymisngpkvmmighpjpjjrymjrkmmrrrrrppsihbnnouilrghokjgsinonpjqksqjjjlolbosnnjnnmvijmpjoihjpjoltollnkgp]kpucpvlfmmmehokmnnnpkkmsmivnlmm|xukpgoojochj]lkionlkprrknsomwpqonkusoommtonto{mssffpmktuloloqhYprsliohjorqpr|qmnmopowsmndsrtojibmkjoqtolnnkonlnnqpokonimhuopzhmotrmblnjpmopjkmpjlklo{^vnqkojklgopmnmgngknfg^lommiympmrljnkmmnqrmfookpnmrhrlnmjkoommonjolnqmoqhqjsnnmqnuiormjpolmnopoumf^objmpwpentmqmlpikupioooepvpmmimjmiqpknwlnqqlmrnnknmpkrnalrnz|{no_leo]kmgknnqpompooldnmnlmjuhxmgmqnpy{xpwjononrqnqoolomVomtlmnjnkrfsrpo^oqmnpmkdpnknlomolopjloto`ninoxqYoporZonpmonoghmnvos}orgbqntkok{thnmnlsqnngmqhnmoporgutpdnnrrocjoqnqqqljkQopooldrrsgjpjlknkhtogmok]zkrtncdztpjrmwhjpm^trrhilpeotklvmqmmoknrgmlqzpirmiqltlrloymegqlzonn^pirzqjlloknknikqjrtvokklvphoqmpljqtopjdrimnknj_opnporhtcqpqaiiqppjiorqojkjqtlmjujtokqskiiskkgjomqmmYnz_qrohqpekr`fpmtlolkinnmommoqo|opbrnqluolnppnsgipgrscpkelocm]loruimojpmkotmjik}opltornxlkonfgnhnlqsvwnpovuioruiuurlbqrjwnpljglrklhnpssmotjqqmimjjgimqlvhgkuposlopqjsogfoklpdksenljlimoqoqumhjrmnpmsnmiulptqtkfqmqgwltmfl|ormwqklptlsnmglommnrlskkhkqrlstkjlzmpplospospptktmonlnjwnnvprnmsnjlrnlpnooliucjlqoommnexjqqnemhsyulrrgikphhoepvdkouq}cxrxmkgvqnreyrniolquyplonrsksqqnrbon`nlqqcsmhkcprn`rnsnjtnklnook|iqimkqllkkrortsmjugppitrkomrpocdmmkhohqntumujlgjotnmfjorfvnojr~ioidpllsjkiolniqlfolmplvtqoqkbklapiorqnxvjkmlppipmovpnmlklknmnl]omniutonhdkmnqnrnjqlmlpqnqljmioYveiqmnlnklclmwmnonppmorlkunsqmn{iwgsqnmlkVimmvhnmkjnplotqkmqpijsoosvophkooonlonpmiqomlt}qpnfjlmbnploknglisunoqflnkklm_tkn{moaqebkkhloponummknmjnoepmkmqlnfnolp]tomlmboonkhnsoqflhvmlmprtnmsmtmn[tjoopikoicialppnojpvpxhltlllzmoiortnpjmjmqokmipqyzqjkpmrjnvl{momlnwstpmmlpirmqrsouqqniiisorkoslpwrlopmkrqnupjjhjnmrqmqnmnppvqkfthiolnvotilllppsoqftlnkzwornnmnjrurqjiowolstklttmwvqjkihrnjloswfrrjolmjqmmnqhnsvmnp{slrzjsfqykosptkmfmqnnnmhrigmlqrnrqnpnoliclrvqlnanmsrsqpnljqphnnmluegwoiqmtop_teqeolnnposjkfkoqg\mjimnwmmhghqrpnvqerkkqmqlneriopbmskomuqkqppkkosnponiimgwhrhoinenipivjjoghivmtfjitsmsmopkilnnmaoprhmkofolllikdqonoorrqolnjminkiflwljmgiltnmfpriljpjemorkrniUomrmrpncfkkzimphlimrkqjkmmwquqkorsjmqpjskpnqqmjqeqhginlwpopjkqssopp~srupklopoptm_tksqnnkotkqeolnkmkkklliksnloomugiqjrqorokoglorijlmqkkpdsphn^qqiotnoopmrmhvk|rromnuufnvpkjonpnitfvqkUmjsqqflmpmrmlklino[mmhmfkkkkmoqmrmwpjnjpreqjlmmlrqemmdqmvoklopfqnghkmkqomplkrknvlnlmtnpoevqkkpnwqnnlmnlklommoopmyynlofpeqkfvsmnslvpokqigoqokkrqmjkqnoklojpkimqnctrnfmnjnuorknmjmohimjnkmoumjpwpimskrhmqlqnsnnoppkjlruponkqr{jmppinjptmmjunmmpitlqmnmtmiqoitrtk]rmqmsinrmvmkolpropnomlnhopqqolknmnqpqkqmsqfninopllujmbnlhoonjqfjolglhqojlkkmtiqmanpnnqmxqjqomonnjonqrqotopmqnromoqiqkkjornmmxjjsnluasqkkjnoigsoojqmillmolspiqxxnmfnmngippapgkjnurijmhoiqoknmrotknlljnkpvlkpogpotngrorptgmntlglhoopqiukimslinmrhkuubmfmqioidejnmlmhlulogpjsroieqnwcqlolojilowpoliolxmhrzjqsmonfowrommqponpmmqnomtnudqhmlsmnpjonpgprruiqhthlsrptknWjmjqslmnllqjpkolmknsiqogemqqnomqlafhpyqqrwpvprjrtlpiltmlljbxprhrnjlhnickfdfheoqqokj`hnqmopphqmpojommyqlirjjjkkkrjmmqmwtnlrmojmpplrilosnkpllrsigipgvyrnmmjlqopqmomnlilhqtuhufpomhqlkprjwtnpjlvnmufobqnpzdsppr}jmqopq|gknlkvrnnjghxlqctnhninqpiivkpuslqrmipkqhfghkrslvonhlvopkrnimtqnlllopikqflpmpvnkmppnphqntcwosdtighjomopomkrlmkmfnlgqickmgqjkimhukerpenrrtpfjnrowonofpgkomtssklgpppsolnqqsqsuqndnrmvpq}pjktnsjkntprwncnrfoshoonmlrghnrsm_inpom[mklmmpvrossqlnerlomlakhurlsfmvmtpkilnckfkpnowrslmtlqchmkmlmcispnonrntmocorlpklmmnikqlnhpiuolektotlkqmnoptrlmmlorkodwsuoqqposojglhjitmnkuhnjnlnlnivngohlgkomjkmljlliphrqslsxpfmrpnkmlijtgornpqqfzlhhkynjjmoolopomhho|pjopgrlscoqnqlqltooovnoonopkjolummpgjgrjohfjniimvrjhsmpmxnmllpkqikflkhqgqlnokllmfy`kdqnomklqhmmn^hqglk{omqmsvujkynprnmfkqiroornngpklhnpnbqxoupmkiqmkrrmmkopmiikofqymlogbekkeoskqlivngjqpvnymkmtwqocupqnjvkcllomdmpcrpqmgtpqfmrkksumudobrgopnkrmmjorootxdiqillolnmme\tqjbqsppfmolo|pamljsstgjtbkmpn\Njwmplsnwsgnohslqlmef`mvq|obpnxwkdojmvhkko`clqmndtlqktpilmuifhqlrqsljq}oijgmoosllnkwuocdn`pnxlVoapmqqslgjftlowqqfcmttwmmrmwpikvknpjSll~bpojgipzf`qlnojoeoquqmafgcoionmn[Ukdqqcgt{ohtkmblhknqrZjfnkrkoqkxnorsjqojsqmmonkmmqmfnlXertznl~nfoiknklnktymnmnphelnlvWsxtkkktojnommmqkjusrpprvwupknigelksmpmmqspnlithloqiimqprrnfZpkmowmeifhjuklqisjrmvoinflosrksn[lqjonskjnorgnmoqmkhjnmmimbhnpsovppnhhsiglpkklljnfynrqskmhotoflmsmripiplhjpgqllj]qo|nfkrooihmunnlnmtndqrmnoolhqokommopjopnslzjqejfmlwjyprgrmorjmrknfommsloommrqmylokpqmmplnqtnmlhqrpqndlkledqsjjtlYrniknmgptnqujkpmhoorntdl_kirtlqkojmbrjo\oqmrmqmmnwpkkqnisojxpgmuptqqnkerpjnmnlnsfjqmnunpkarjhyqsomaqlUjqruknpaopnnmslomljfaphpjlpfqkopihotlmlkksmriimkjlkmmiroifsnqjmiljrsmlqntoojgklocfwngpmpnmqf`kbsvrjnkaoamuwfrtmmnrcmqipjprrgksnvoojllpwpmlftckilyf[sprlmtbonpkqnqulsumppgsommoqnlnpnmjinmonlngnqjkknpjPonrWdrmdondomjm\qngoplshurkrqnnojqmnqroemsnmlxqunptryqo_qlrmsoohlymnlomqkkllkkgadn^nqsjrnvkmvsmrnhlmpnolkipnijngmkokonggoqjoguglpwojqiohkomiomoowermpprnvkknmytomigmilonovnlnqimejmsjqsnjmolthprtlkhltmmjkkqnlkji{mlionntnmnoknlmko~lphljkojnnppoohrpnovmrnjozpkmijjolqqllmqlmklijkpsnlnqlrlljpqgmpmopqgkunrhlnrbplqprjnumlmqnqnmpipneumllrlnhlqomk\uojkofne^qvhnfjkomootmnrpmknnlomjmpvdkikgtmmkpklljmTodlqllo|plnlrmk^mkiqshj~omionwmonnlmpioprnmilnhllntkofmlookmknmmymmjknoqbryl{ornntexmlpmokqlsgbononepmltmmllomkmoyoleiljplhlkntlpnoljlnohrtppmrmmmtkjnnrpblmhkmllkofpmouvlqrnmtoppkxowmnokmoqopoiiqtpqvjussvhponipsiqokontmrunwrpnmkmxcpjfnnerrrkpovqkooqhqjqgtrmpgliylpoodnlvprrsujnurkpnomsjkqnthrotpshppgmthtkq{ejommnqmhnjrnpqlqwfmpooikwpqvqlxopovikpijhnlgslmnnqqjxen`mskbniviofkgkhoiqqihlmnhqppotxeliqokqlommioipelhlhhlkonSklsopqmjpmonolojpoqpneqnwpooloilnnjQqksmloooikmkioksnnqnoocoxplnolorleaojgmwt^gmlmroplek`phponrloonknnnkgnsmqng{lpnomlonotmtrfupnmimdinlnmnkmolkolrljlqsonjmilnmnisnltkmknhgrlroolsoennxomllvjpnblnmnppxmumqllkpjmnolrnppnqnonkmmqzwnlooxopqnonnkp~wlymfnsrnnopkpifmkimkqjrc|rjl}ronmnjqllrnmjmsonkmr^fitorkounnntnptnsbksfilnpovipqomtonszkpjpnkpnoqjhglhnholnkpfmdysnusmkrmrppolkkqpkokounslrqskurmjkqlqnnjllosoxfjmlomllkmmkohiomthiijghhuvmnphnasxlillgsqos|kklljtvlnrjeojsimqqbn}npqqlzqnpttspmkllqpnpgmqnnglnmepknlmqnplonnrkgmnninoeihlnnmtnzpvmnhjqmnslajfqknotglkrrpm_mmnvnmxrpnnpkpm]nemowvqnjvXoupplokjlumkvnhwfammnkkoqoqjlvtnp^pomnnsolqgnmtagsnqizbioso]rpkljlpmpmoqmqovvokroopvmtnpprhpnfunyioorqjplopmilpvnl~jliomtsgodjrsqjinoqnkoommrrjvmllccpkk}pslnjlwopnkalkqnnnwjpqnVjmhnmmpppfqmlhqrleulnqmodoopnjrlqopklojjrknmyksrjoplqolfnnljmloppnvpnpowhosgl`mfmpvmntllunjmpsllkpkpnlqlqnooimkilllltsnokmnljoronjzmvimijsmglqjjpntnkokpotqohlurokqnmlpqqm~ilqvsnkpwrrn~oqoihuokqpmioqnkqiblmeqpqlpmlsoonnqnoslqlqftmrdojomou{mklmnhmrmdkpurnomiloskopiivkmjqltsrmnlllqonjppoqlmosontqmqrhifmsrtlpqqmukwnlnsjmpqjisnqrsmiqlnoprlftrqnqsopnlkorrjmmnkqmkumorbptonrlonrmllqqolprmmnmnrkemopokqmkonnoophnkfpjnlqtpqorkrpkljsoqvglgkkoelphmlmr{pkirrnnfqnklvhlnqkojocmkroolqmlqojnrjnrlmnlrolkqlirtompqliqwmmojvdqnkiqlurevohrmjfhZnjlinqnpuorpkgjp}mommmjqqhkpmtpjhqkqjmjjlnpaclnloijskjlgprgorpolkmmqloqvlimplu|fklmnuvkopjpiwoqoinlnlolpjjlbpdrknpimjoqnrjrpprknolk[irnnonjjnnmnpmtqrpnmqleilqmmkolunqrmmloijqipiioh\lrvmqpshnpmmpljpnnmkmttnlojlrlnlqmlopjjrmopsolfrnmlnsozulqtklqpjjtnyomnjtrcndllkhminmimjdgiomthnoploitnb[qmokikimfquomvrpjmorilnmjilosjniqeloteosjdkmpmonelgolemlsrihjimmznerknqkklnxnquhpnhsskkiomokmppqnpowlgoelnjtokqfntzigqkoclozqooutjoorxnpvmmkwvjllrpnmnlgqppimgvirkqaheqlrnroqlocgomugglkkssfnqhlryomkcqhmjlmp_dtjioiepqnmohvrlkjzoilknuklmnprrttp|opimihismdmllprxnqirlfpnmmdpnolsijspnkonoerlknnqlnfprmcnliklqhohoshfqskmjjkhmmpglmspkrjjvlumtnjljsollmolpnoqgimqoslrkrcpojkssojoekomplllmrplulnlmnnogrmhtminmkjnmklspgoqqhmslvmtxtpsgjljtumpnnqomjqjpnqohqtlssvppnimoxqonossobmmsoigriuoqrjriioonpqfkyolgkvwjormpnhqlnqrjpruoliprtjoxmxohvqqqnkxpnjjrakllmnsosqoatnsi]iuvoigeuomnipjummfllhijooucsisoqulqumkojchkprnvonornggjmtdqnqmhlxoorobpqmcfkeprjvsoyrjnptnb|ngtm_xm^rkqljpommjxjggnpnmhrfqmtmnpbmpcrpjmmohkqftlgqrujqkjrrooomjjphcxocormrypowelmnuononykplpogohvosnjnuoyptrxptwxqmtusnqlnprnmfjmojnsnmitmjrsleytqelkskmojrsltrnjznrjqvmmkgggpjqjpozimflkojnokiogwlvqlwmlpoiookkkglzrilhfrlyiin\hqmpmomllinhloilsrmnupzlgqjmspihtnropptompspcqkiojmhsgjjlrdlksrktijypnolrpnplqurivirnkxmgklompmlnbtkeprfjmml^okjsksklnrojpsqox^nlonpjnhnnoqskqiorntn^orhmojnklldpmoflmpllrpmc{mpflolppwkllpmopitqijplrvpinnmkhmvilsrallWrphnpqnolhoonhpomnYpqlmtniozjkpplnlnkpooqrunjonllbkqnpmolojgdiufnlovonmhnmllo\jkmmlmoonl|\qommnmhqpnynumnupoqmkpicomnotlnhosjlrnvpjxkvipjkmphhmmnvnnmzpqmninonnmnn[ermmonnlqnnlioljkusqnnmnndkwmloonmykkpmpnokknlemrynp}hhngpmromlmunqtlosqnkopmnonzmplunponkdqwelqkinvqovoqlVomnlqpnplqnnnlsnjorlpeXrnsjmlsmqlfiinoxomrlppjinljk`jnqk{vmmunnnklmnroYlnsomqqnsmklpopmppjmpmtqarnmlxlm^xqnnlpMnonq~noqoglqmlhnoiwqqkhlnfbpisnflqq{povopqnohkjnknpjpmkqqwow^skqqmtqmkonpomo{duihnohrpksqmllnskkkoqxnoqrjizhtrsrscpkqwnrpltprkqpjjnmnoumpnnoomlnqqumkpulnsxprgnjovlltjrllmnowhqnsptpunjehfojmphmjnprnihsmopoohpngnenpqonepjjctpomnmdtotomppkkltrjqllqnolsn[srrllooxktoqwljtojpgrnonmuqlslyhppnnmlsxsotlnlrjlntojrsvhdnkqqkonmnmpmpnbmotqriqjsmkloonkliekqripnklmxozljlqnmjrjimyocroukphkqkoqcohwnlmunmsmoemqvphpkzmjrqmsbdimoifpsjlmgmoljhnxrmpilmikmltowofmxmnplglnnpqrigmopmkqnsopolfqqntrnamrmmsnurorojrsipnrvslmnrigm]nnlno{ohjvlrwkkolkifmpslqjsneffsntmiiopsjhxosnomqqneuojsorrmmpqmspoppnujwkohqo|kqpjnueotwphevjkqlkhxuznbnpqmjcitoluunnlkpnnqzpqo|mlvjmjooqqyclrfohrqtnkppnnsrqtmqvnpgpvjgfexolmmpqhnlmfnmroylkrkgnm}sdll`zpqnoofpjtsuqtlmvsnqlnnmqrrnvqpbqmkpiqqkkqqmgijxqrpjpkqrmorhpyflrsolynfkjofmukfmummlljgpljljnntolfpjlouxmigmhdnrfiiomhklplkqjwftlmolnpqokirzpmtrv_pjnkslolhlkphnkxjlnlrnssmlvkqnhlqnpsxnqkpmmqpzq`kqlolbqlppoqobmqtpqjkmpkjpnveolnmirghlkohrsmw{qlghpjhqnonpjgdnnhpkviokmnunpntinkxpnlnvomltsqjsponjnmlompgkmpiVhoriwqqjkovrglpnpqnkoinqroqplsvjkpjelmcmqpmupprpjimkpqpplsronfnhsnruonpjhosmsrrjsrmkorllkosipqlionquiuspgqjpnpljtmuyqqsllnmnlnskljwqqqtpsokkmqsnoqrmqprnmknopsqomvnZoqqnhmiumnlkiohtqlnshtkjkqvpjmoonneifmmypotopjtncnmdomntuhqsmmgkp{mjqoqnjmmpmkvfiuippolrrpsjnorrrmsvkmqxronhpxjpnhmipfplaujelqrpmmgwoqkrktlnprmgfkudmtnpfjxgnegooqneloiifokhummkmnnpluiopttkklslnqjkrvkrlrotiillpnsxlqtiomnmp{gmtqr]uupknlontmnpfqqrntlfhnntoloekgfjmcclkefwuplkoqznqjvrpfmqbbjrolqnk^vopqnldlltnpvmq}n_ktjsoonkismmk{ohnwpkokumkmolkloupmglmqjqkhiqjtuoumo]pqqlqimnlmkbjivjnioqonpnonnjosrqrrhkuusmprjsowjmgmmnloumjhlinbqoojqpomkgmqroklmqn|pgnqhynlkkymoiompfposlnpjhnnlkclpipopxrrqpqjrjtgisamnunkmfilqomhmtptplqjkjpplyinrooihrosqnoqqmoissmojeocdnnkllpnmnlugoosjsmnmmrwlmrlorlvopolojmopsoohmmmknjmoomhmqnnrrpvvftspoqkmookokqmpjqurnkqnqqrmprpqomiooqonlrnvnpmnslikqmpnklqqnmemkksrsosqojtpmllnlnjnnmokrlmvfqnpntomkknomkqspnlqipipnnpmikpmhoomosmhoplilklojnojtriltmmlpnjnmlnnqmqqolqlqjphplsqulinoqhnoomrnorooknpgpnqlpnmmirkiskmhgijnnmomnnopoinlmmoorlrrpovqqmrsomoqoniqqmkkleojmsqhl]jnlrspojnrnmmjlmpkjnoniomkmluvpoqqllgrnjworofpmekvlnllnonkgiow^mwrvsnzpmppognhmdqonefbnkkommn_lkqrPlqtnqen|hmmosrtnmpgnogfllpioslhkpomkookmprmkzWplmokorypolhprg~sncplivj^omizmjlqcmmdgmqimm`gkqp`npjmnlnknommonnhnmnrokjldkgmnjmtlknnkummmtqijlmncqnirmnopgkpnonrimmnmothlulmmqopqmnldvmyjionqcmngqrluompmln}nknppmmq{lgrolfxlfpuljnnkmlpm|kthllmfgohmksjpiqnmp{ngrmrllqanmrlqlonhopoqbhsnrpiononlnnoholqmpi`fnppplntvrnpkhns{punnnomoorrpolojjporqkjhoqkqpurlgolqoqnlpnonkpmjkmlowlgknnrmmnmmmmlmojflmjmimrpmnnbpkninm[oso`iormismn{lhmqmmnojvpmim~plpmnqayl|hjbptono`pnimnonqonwm\um|Xqkmzzrllpqmjfrdm{gopmkgknqmorohousndnu_nnvklmkkopmjlngokpgthmnZnrolopipnilsmigkUololonkguofmk^nntsonlsruseq{jppmecnn_qjrpqniauhkgiosto{qfoslppomonsnLudmnfmhknrsoprqldvmlzpmpeimqmjmnfjgpjnor^vyiqmjlmmcnpyowvgq{nlnpmqgjhmhrrgnqirmlqkknynokqsrplnmmrspynmldtlqvntp`qusmqxgismqko{joomigifkmkqrbkopneqlsglmvrqopjjoipp~uknnlxmemsnqpwrgkiijgimllpeqhrlllmornouljlopkj]nnpotgpmjoqusuqkpuorklniphrsuhhnnmrmmghkqtiljmqnnspubnlphsmvkhrjqtqpzprownqrinrlsdnkps_nnmklvponnnowsmonjkspnrf}kveRnoo]nbmlnncpmomotmhamnjokapuruwporjmoomoant}lqpi}qolpkqnlloooalsmshdmvtlloYmqpionkseznwmfq_otoeljmrumktpj[doltppljlrovtiqnzocqnoim|yntvhppoujpmqsjnnrnyqzbojomspmhocopjoomkprmnlrtspnnloijpmovnacskrkmperylqnlfjkkfqrgnimzurnnlrkozgikmvxhvklyrp^oqfmhlogoafsndozp\mqplsqkknc{epqhqrvqmslVpdjflmqgklqrmj_egmma_tvpdzjsolx[fllitoxahYpfunmpcmppknqwo~nx{njbrnr\infteqn}fjogtpnnlknpQqnmkukrejos_sfdghconlxpwl]{nbfponkhpi^]jnxnpvtmupnut_imqrppnnpkbvmhhxmsfmjlkiqn[f|onlrcrmmuojaekpkrf_rqionndoidkpbrfljirpfjyieamlrogpqfkmsomtjn{mpqoeqclnnlmnimiqiqmlsrqkepnr{qckfnlm|g^oupojmplwoasphlmbqmst|lmfjupllklpnmkofpikuitmnnvhlrp_rokkeqyukononl`vlqnlpkrmn`pngnrlsrqolhnnoh`in\keghpbiilytppkmvplemmortofnpmlnjrkuhlnsukfnoi_rfpnrqtoiokWmjkhiprvkhiihvjmoqpm}nulhxzhzol^lsgntfrlhqmolimhmrkypdop~qgk[lsgijppgoljoprttngfzphs{lmspnd|nn_ugfvhnmkdxgqmlqgbklilktjleoYqkshpimt^onlrlmqqrfnpkpihbmpnii{llvqpmlnknvnjekjkmqkidjqfoelpwmknnwnvl[kjpnjvdoqwzk~gnknglquslmoohf`lphryktlmpyjpmopwwotkemfkjnlmyznqrxnon`lmllsqpnk`pnqotmnqolspjnrscounmtpfqnqfmko|mtmdrnbnnlokomnjomkqvino~sps\lmpnnZnrncxmpnpsmmnlolpvisqnupmfoo~p\eopt~qthnzplmbcpmcmfmrkv{mmmumplrnqxopkrop^iro|nqqlWu{kxnmnm`gnlKdponjmlgkkrkeohmwtgmmoiilalgorkpmqlqnmp}e`jpnkdppuhumojthhojmyllpmnsekli|m~r}ipkss}tpuolvpahqvmpryqyfnqnnrqlcilgpqlkjgnznmlptqrlroolijokaqfyoorndqqfpmtm`sgvglvqhjsyidpyykrqxohxtmsptokwrmuzltlqgnnkpfgon}mmljrmrolsjjmzl_wukkqmlmartpxkmkgnlyrymqkjjrl}ncitntjwomknugsasrgynjqwrzfjnkvmloreqofkpimmwynkovqjjgprnpmmljmlk_klmmpondm}mjjFlkmrjnjlsninn_thnmopnppfoklmltplxp`Zqytkcnukmn]nniuhnnoionlnmqpowokj}cqhjrspm]lZqermmmqigjsknqnunkoilnpkovlkinnqtnfmnsojmvizrnuovn^qpnlnntwqllkl{tloqsunwfmjo]mnx|jwlnkpv^muavoolzoqylnqomlmsi\pllnimeofnlmmohhfoimblV{rklollxrbklkcvjqk|pgqomme`qqpimnmbntm^kqspinmxtuPopljtlplnpcovslrpzhpu}o`lpkipvupVsjomnlnpwl~myfowpwis{lkopkhmNqilmnopaqsknuloomttqwkipmargvlrnpnjlpynmlqkonnznrkzmqdljontpmjnpXkponnlfjiommnmltlttcnmlipXl}eplpp}YnqyqhmpokfqT{pmxpmwmmtn`ojomslpknjopqykkyn^ioniXirsnizoumioqrfsmtjnwjkweqjfxghstfujjpqkq|rtuhqsygfoamjqkokjgohflnqmhqkottqnpekkmjlmigjoqomkhqnunejqlvv|lmhmpfnhsrkkmm{nlgkpmggofmftqjonmqmnlmpdflsr|nlijpixsznmxixppqkmjozplnhdlnvoghloirchkvnswinkdniksmikptsikjgjrqrqmlqlnskpmptwfmtoqynnkpejruopdjkhnphmnmmupjjnirwq|sijpqoqklrllgjhfnuiqltnnvjqiofpdunsmmhxulsfumjmmrkulfuotlslznnpjypossnknmnulupnujpqmiqpwotijxjyfpsenrnfqeknubnpkqqszknnjtpdhizmeipnummm~gpsjwojkolnfpqejfkjrpugohmjkZ_wtnjkioylrtjpumkmoljyoeqqqqipurqiioUmpugqplrxrqlimeootkytqnjpkgxnlilsdheotrolkohqpqklnpTkppjljqmzm`ommjntkpoouo\kroejuqqonrknynojyslgqprkmwt^pmwn}odnmrogilljljnkoqoin}q^~lkkinnqjqhpdqqnhkjkejhoonmolfkkhcojijnriwdmoipotrranlkjlbtooopmnhqzkjngjlfhhr}kmspnhkrhekuinpl{puinlnlmfdckqlmpnsiplpo^i~trtnpklilkqmnusknqvovlj}noklyignpvjpqmmimwvpsjngofmogml`qpvpmpnsptrmimjwumhukolupofiptoutlrjnlxlksncvtmv~lnlfrl_tysmmomjvlolhopolchxpysmmoounwop}mogszrtqpt^sbdeks[nl`xmknlhlpopnk}pljooddwtloquvtohuopqlemhhehpjpmqffmej`n~kkprqphlgnlqookisvsoorgtokartgmsncyoauhdonemifjiosinyjqkqmpuhuf{ikppqwxrlkml{slqtcnvmgigtpysmznlmeffluigsouqufmo`btlvmsmhsmrso_rgksq^lwbm}toomoghnbqunzwsnmlmtjlj_rqpnsmmenobrugusqcfwjnnl{mlilhqn_ltjpnrTlpomkzduemmpq`n]rpmsmvTnqkhing^vsejuotirrqt]wopqrmnq_uqqfkbiakjelnrur{nxnlemnmcqtqj{jksmuujd^Vrnqnginmdqisn\hqmjhoqsszfnsiljnoioloymmkvgodnkvsknqgpglShjpqrfqkipjtixsgjsoxsnpjvuqtxninr|jkvitolnsoshntumikpkgjtmtnlsjqloptqwp[qvptkxppqhesrxpoufffhmpnhijkoj{kcootpmnqmohmjksnrmkokmilr`rnhvlbobqfxxmqogiiensmkoemcilksonnmnjdqrmlhptuwntpgdup]_mbnqljmwknfi}lelinjplZnrinzelqqqmqnpwnkqsjjnmlqfoglhinooogrnsodoiqemsnuponpnjmocknmpsnnuknmoioxncqofmh^rvcmqntmpo}mn_p`oonplmslkuj_]onc]mnqkpnlqinnsmnognoqrnpqsl{qpqmpmtfoneognnmsqomkpslmyqnoko[o^joeppnhkotmllZonmonpmulpshn`k_telgompnbjnkcinmprpporpnoqppwrpgtkpnmmlhlxnonlnmqzqon|lqnuk`noomdllmojwoom_qcnpjlbusooeqskpqkmpmpjqonjm|qtkomomkmokmj~ohimfo~XpsmkcoSmkntvmymmkpplnm~ojsjjn`wCdnimprmm]ngqjhqpkqkloopkipntrspdmbppkhpconpqyndjm{snil]XpojmxqnrukklynkjimodboltplnlnrnwkqtlwW~orlmrhukjxfpjl_zprzmojosmf[^hxoopqtiqtqyolomoolzmmojydvn}rinoQhtnnvrtqkqqrtmgitoqpuwprougusitpwtwanpktmoyitlksoppomtonqqeorgiwnwogphoojpmqzpkleppifd^avjixunrwkdpmmgpk{|Znpvpnrojcl`paZXjmtph{kukolqkkqklmntr`lleognsqwksohreimlEfelqwsqpjkqf|zWet`srkfvgsnkompfsocenmngyilkknjnq{lahooulquakm]trmhlqh~mXgipsfkmmqqklMoZatSRmdu~ckovnjiqfmonkqlplnodjqmilmpkpmenboetlkffslnrojmrlrtmqmvmmnmutopngxgrwqciqpillbunkrlovnsknpitminmeuzhohtiom^yhjnqlxogbwptqqlhsjmpmujrnmlgpkohlrllkmhtjmnkqimkkrsstqmixppjdkgpnormluhp}jueqsmlfoqgqtylxhotniwrenblmnjkejhlfulmslgslhpjeqhemquqkomnrpepjusijklxs_ostntmolpgevjiooYqocmqjhqb[tmgohhusi]m\[vnhjqlvmmhaonnltoejnrslo^jknqgljpyrjmjhimktufookn_okdgsjkbpmoukqmi}co_khlkeoiqintnrwlldgoj`gisibknoikcivkmnbmspkhqlbqxfshRpompm`vnxhkpplgnxpnrlirshouxnlkqlpnmfmokjtmlqdqkmenjpjqivejgulcgotognmjqexptnkeosqqujopdcfkqq_mjmbkoplkhoumcproBrqlonprknlnnp`nXnjnommpjooWjnkoqpomopprnppnlkrunpijljomkpxoTpelnfoVijqomolmunhnVdmoklupppnioossnrorlhmn|nrhmolcm{qmtkqnMoslmvppnYlkoopllpmsvjq``lppolrqhroemmzmqlymxnmkknfnf\lomnmanmtnkpojlxvm^igikmtko~qjmknqpmlrklp}~qmntroomurmjhnnxklrphlnupmpomrqp{oolbhqjuotljljpelxxkqmjowyonqonlphgohpjtppqltomoppilnhqwvsmqnmveptsluooniRkumionjjmnnplqhqj`kqocpfmmmijp_pqnrqklrtesono]oqkuvqootqjmpokq`lnrqfjpnpyhqopvnln_hglljrxfkghmyorno~hqrnrrimahooksnwrtozojjusjqnfcuoliijknpjpmjsplqrndkqimyhoonomjnpmkopljhqstkoln{tozdroridjcVmcknmlcpmqrmnl~iuiotnogkzspkonrlsnbifozhonorwkrsnsgmqmcokmhpplqqq}e{tjjdtxrimavpopesYrlmqmyojoplsppojqipofqrirmhcqeuoknmqo^vmronnnmlsj`dslomgot^lfqklnpjpppfkwmlnlbqpemkqnmnkomqgvnofnqqnpkqkkeivsnddltpkmepvpsqpmrrtfmkkminlmmiolfkrnmliryznosmc|sv}fofaedisgvqrrpoupkqt}qvskunrkqlolxh}snnqlhrjjlkqnggplrcwnoomwmvqphnotnihqcowxmrrijlpsrfsuqpbe}lquopmmtjmkhpnvhqunusnropst_kqnr}mo{ojlmup{oornylat}qtislflqillmswmlflrmipihnrytncfghnommhmysnznknwhfqolfrjqnsnrntg~quibqnhqzmks|klh|wtklqllotwbhrhrusrirpXmkmlnhqorjmwkriej`}lihnxohqnehgttlhnkorcf[simknno`tfginnwklqljgilsjhmopcxgiwiko{vwjpdphsdhh~mnnsVoenoSsnplnpeuloewrmgtnmmpzhp}q`fewksol`ueqdmjlkriljbfsmnfsowrhopn`lrppdnvohqs{jennndicotWgkmonmksnpjsxs|sqp}gnokicrsrimenp|sqrrkifrstmpenqg|qqnnpiosnukroznkmtqkim{ukmr}lnonnroojnnnl`mhmohq_pr]knnsnppdnoOmmnoknppeqlMmfcqiXustnormr}ln`oppsrqlpqpjrmtjtrprsumoap^gmsppqbnnkqllxinvnummoymp~lqmhsojplpVymoipnndn_rWklymjbugmnspm]kfZtoqq[fknqrotoqrljklplyoqsjlgq\ononsmrjmomsdlshwmskljp{prmqgntlminoqmpnherlornqltmloriqtowgnnXemlnfnloliknq_rm|rlznfhrhvlhqpmtnchnsqvmjpfpofq~ogivjYbtyrnkosjjozs\qnnll\omnkvoo_jruogmxkoirp`nomwlgltnmnmwmztjzjlq`lkukqotpqrmnkWwknsonpioqp]ntmltfnwpljmn{jvugprijhmpdrpnncmfoobgm_oltln{rnnkmmqko`pnpyknlreossowlrmnktjn\oasrqdfmhlmnjqrvqtqmmioqfmpimopqnimskkhoyllkgoltogloojnnnrqpimpknwnrfokjqlkgqolokrnzrpnnYpimXjloukooqismtkuuujkgoplijppjpgmqerunnhjklnopjiwrknqmmtxrkmqrjmhriilpgonjjhntjmfqolllnqsrmchopimpjnkrorko~`mmnspjk_kmqnlqnklltpeq|seimlwonoopqkuirplsmnrvxjmowkqosliqlnanli]fir_|sodchpnestb{g|iiongklhismqcfdnubnorr}hqtnczlhsrpprjroirsxkmp`thro^kiZoqfoqmgimgvumm}psvzmhm^ng_nospmlbmokrg]ndoiijrnhsRkovFnhjn|qtxjormkijrcwXogem^nyh]elpo^iqjpmxkqdsznhYolnmmbeiookphYgrjqpxrxokngmkwr`lyrkooewm`kgormcsvqmukjvqjnq\ptjmooBm[fopnoVknokkpqnrpmpmpololqomvobqlnnlqmjpnkpcnmiojPloMlepntqbfmiqhmqkmopunognpukxe_]ojqomlmtplmzxmolpqmmrnon{nonooplxos|owdmkpVnplklkki_qmmlyljovmspkonnrnpmrlolosqjvn`omim`xfoojpqpspizqnmwYmm^fnmntjgbd]viujpphkjounmmpqlmpkmnfvqrpcormqsnVknplrmovsdmlnjvpjofmqhuelnckrstsoktopmnm{qnzjxtngklopoqokrfrnomlqwjsjkntlbiphqodoghohulonnptokophimisinlwifpjmmksmnzwkoyneokkdnxoqljkomnprmmnovsmnoyopjzlnqnqou\jhxm_gpok{pqqqxhl~llmnmpnjhklmpqojijooisqmqetmopjrwjuzupvmgmkomnijkrmpzjfxlu_p_nvrlkonmujhpplmoustpngmoqvkXllporsqlkkqgeon}vami~yykmklsplg\uhvyoXnonnhjjiqviogqoppl]knjykmkufhrokmmi_ulgolbjosmvpUrjpZf^tsowjq|qkvssY|kxmujxqmii_jsuopmermbmrvj`csookflqkljkcopaqkkz[pmwhqkrkekX{ooosqa|kbhmmmnollaorqgspqikjqmldvgt]oikupshsl|yRqekmerfqsr\upiattpnqo^pnoregtlokwlmprqbmkwklalngrtjolphzrmsklqnknuipnourxpntojnnj`o{bkkkbvvxqolyk|noosrlcolmhxhutfoqnjmgmrnkynnaylbuv\pqrcmtYgjedm_ckmghqxlfgltpaosnnhkrnrtqpwmksgwpiaje|i`o]rjl{rimlfaWrmkjhjofjknso_lwpt\losirnwnpsiunkUspjidipffmqenlxqimaqiqkl{m}lvkfilqpjpnwmiqsozlmpmhlssqlkoigltvonorjrxpnonrlxhllrnispqnsnj~[kejsimkpxujrpk}prjsjgrnvmnoumrmznnnjgsgnpphwovlikmcrslgnehnqnlqnljrvlmbynhnkff|olpgtfpprlhhlrlrjloyvqfljgsqokmogerxofhlrqvrml~hpsmelkmpmtlwjmjownoupmmph{qontthj}mh`kqjpklfqjpcfefllunourjjo`h{hmsojmhpjmkltokmmpoflodjskoildvcuikynseqhglltjknrgmenfioftkliijlslgyubsmficnrrfcglkqmmks`lmcxofpjih`ipjhnoibndrnojhlm]rwrjjlsfmkqkllizjuculhkropn_`mvmrngslnolommdrjqorlnkjmmya`ldpbqznoohlqlqtxnpfmiwiruekppqhhlqejrpqoupcrmnhfsjsgtvtwlgqcn^ppqjmemukrshmsnhkjmhntpaofrrgjimigkjqi_slXijtmrmmjlqotjhkgfqnwsnorqmkmkikwmfnpmdolmpjijjul|hnustm^rgmj{eom{xbupopqlYmeoiwspuirjjgljonnuhnmfklniqppmlmnjqlijlqcruKnmnitlpkkmuokskpqlappmznmt~popolpnvolkjme`lkrpfqsknslbo[nSb_gmqprokjjs^eljketmk]rpwvznxnhvinvgssqlii`nnglkimutlnZhqfskmbrj`kullcm|siqnxtlhldmmpbrosu~npronnrnyiqgdjmpjnqsic|Xn_jjrj]kpkomflovmaulk_mc}sbjblcrmsoqnkbplcnnskirqeoklpsolsxptWcqrjjpo[xsshefognqqdkimlkuctql~lo|jejmxpmrmoipvnombujmoovqzlsm}edynkoiolnehuqmmvilijjmmrsjhimbmifboovi[qjrulpounpfhPumupPgcmunkspZpmcll|srnpjurmilswim|mslxqpjoo{ibnmovvoltkqngtmrwnllnnkkkrn{pwkpqmjlsqqvoqmrsmptsonpnomnnnk`gnkskqnndrjqqq^lklwomyispgtpkprtuijdugzhowkrqnlgfnigowqkpmpr`jnsrmhjmlmmtrptmkoroqmqrlrritwyopmmvdfilluppoooemdrp{memtgrhxpkZvslinvpfnpsnmulppyov{urnmngpsnujpmrnlhqrcblqhonpnlrntjrdjhlwnkkilolnnnmememgtnijhiojhzkrtopekljgirqhnkpolrjuzssebnrtmlnnmtiswqhkkcqnuritrqlghlluitlgquonnmi|epptmpeyn~ilwsrwih`chwgfkhkfoip\nkkgl`nimbjjmlsvmlrnqmmvolmnmithmltoZ\ltlr`piopuqhotmdllinpkqrhvuplkqbrtpj_cvnlsfqgrcfhgst_n~knnhmtkdmtolgfolqnusqlpdlmjn]osX[rnmov\pep_upocskkhnonpdjnnwpnhnmnlkmopnpCjkllopmnolnkmqplxhsrntlbnqlmnpulpkkosmjsfqvmikqlmmhkdqhnjnjrqronpjsvqjsxpp^lrgpuprhqorksnjktokm|mnkqoommkmuskkqjpnrnqmqmmyplmvomxlxf^oojlniedqu`liqpgrmkunmnmjifonenq}kmrnpyovmjpmkmrikooPspurlnjjmw^lnthmomsiqkkhuysjnfcmnpdnnkrmmjqs}gmombmgosc`f_nvju|ilncti}nqiliiqoahf_jxttsjnlbihkkolqiflotorsllrxclseproilnfrlosnoyqhlykqcolqjd~{nfijoh`pqmunmulhgnmhekqoffbarq~gztgni_hrojihWXiojtnawhjeblrqordxkdmg_pqoiplkjgsaflvjpkjkekmyrlmhsjwnrmiiylqqnpvnpctppoqhztomhblkosnjpnlqon+nshmmsmmmpdg|eXkljal{tmknpllkhqslkrmpmqotskenrkptouryilooukmglirYsrmpnmppmopnnoon_qkrkjnjjjrobrqf@jrqlmihqntgkpmnmelwofq}snamndmpdop4lehf#lmko|mepvvmonscf]ntrppmghssknmrjmmgbohmyjuigk^mppm_nemnpsijmvhtlivgu~mZiktEnpjtl]qpmamlulepjmlsohmlnllboepforoenqqklpq~gnmfrjnzk|rpodnjsxpheswvsilljlw_rqin{nsimykpkoeommwqlrmomhqqmtomkmoqnspnnmqgjopskhi{vtdtasnpotmasrqkhspplmotenpnxnmoiptjowlrhonp|zonyilmlonurllnhiigmkunonobolillmneisglpsjxwmijsokqvVe}mprmqpwnhpkkgstlimmnpmqpnnnwnposqtrqmwihmmnnoplhdsilg^smnogxqtofmooiofo}lqmovhnm}ipxpmmlonmlpj_lo_jmprglmsejSmlmuntmofifnpnmmpaonRibxjdk{cphkorlotlorqols{sklnqqohtplVsesqkrpcnlroonhnnpqnkdlsnljjonopjjnnnkgksuhnrnijlpmjro\eqm{e[rlkpjqdro]pspljafnllmpnlgnmewUkjjqrslmprsoonjthoukoniyuqjslmy\ymowtpttam`oZpqpn}vmlqnjporrpm{mpmsqtombsnfllopmfoipl[shsrqupblkmSpolmnokuomninpnmlkhmnemu{gcd^elsonlnkkq~hnfmmwhqygmnmkqZ{hiorpjkqtxnsoptk|nsvmkmomchwngppkgsl}lpordjhjjpyampjmrnsfoktkjnomsv`ipmfmnmlk|rnmxhqkmplqmkg}{{djqdsqakomqonstlrqrdljmuermlnwgong}hssmk\qsxvqfjkvjcqjpji{lsnjovntjgtrprovhgfmkkqlsivnsesimhwejllsjosofnknjhmpnfnirlouqcnolfjj_okmnmpjjlcqjozqkklpgvnhtkdvsbotkmlfpykrjftmuojmmmkqomtgjnhjnmmoqnqpmugluorinsnfrjrfZbumhpmtoqnouljmqsm_fpwkmgyrmnmppjjqt_nrerqjduygsiviitlimonqkmyjrrpkwlkuomrwqoeqcqksssimxlgwjnjjkmmmggtokwgfmpjloeMploikmmoknvmffmlsnqlpfmlxjkekmyl~k[moinYmZromolkwqocirssWrdsogksnknxaurdhooeqnlzjomo|`rlokm\konoqwvmmukouhobvsmfrgulklkrlomjlkoagvfqdprjmftwukn[fmUuhtlxolqkknqy^y_oqnlukrUomvtslty{ovbrik}eoitvlklmnYvordllkxpqwpoqssrntjeoonqj|nllgoOclqomorxpoluumwn`hooYZqyoqnrosppmopkhiojsm|mx^lzoNoqm[qnoipnpoppmwopukkqkdjo|moomkkndppgkooolOukprksmNitimgpmjlqlno|lotlnqnklllpdavtlpynsorsmomninspollQoqkpnp|yimjhkoof|Tn]pnppzdpkjnnslvlmqqqnuogkWtpnjtlporqoppdmjpnmomroonve}xpnopnnSg^onsrujnhl_wyonjlivshneontlrnpjgmqhigqlftqhlsrpphtpmvrunqrdjkdheg|mkglnnmhrmwswprtvlphdeosckiokkirojgstjflhnq_mrnnZjijkjnlsqhjolujkhmxoeljsjmroohnnnsusknnmmrmnumnequkolhlhennrrpidqcjl[ojpmotkkqnlhpqns^spnje|okhlqolgmslrozl{mpfnssoylpskioiduiqlxrqpqqqkxyxljjqopnjutjlhkosnrzlxo_pnqoipqeqnliognobukapjmomqqpopf^kppmrkofrjqkqVnqmfmn`okjiomyn}Ziqipu{ZemnlrkplcnpqRlrpukhnqsrqkos]npopfynpramlnmmiokqkpolmlhrpmlmhoKmn}qroqmriomqsekkorpr^o]n`immn}uijxinor}qpoaqksltuootkikonokxssiomqslmmmcoqlpqnqtjnlzYZuqkqkpmdbglllmYl{o{nVtrlnlhqrrhnohwpjmjrwoxinngqXlgiopqagmnkzmwqm`npuoV[mgnnfp}lmiuqromgon^mmtpgse]khhqmlrolgxt}gQipofleirjlrloYvkwoRpirmtmqqionldncioqqqli{gpnijrnmmjjomthqfojohqmpinvoiy\ohnYnxoltmtmrolemclrqnkqhouOlnrohq{yndzjvtlspp|rsppllypolkooa`bpmhpelrz`|prtisin_k}pupkmmRfqpk_romnmmnkpmjp~}pngoonnpornmqpmp|omooozklWgqxmxmtn`nimmslbqroqol]nzikvglm\qrsupkmlqsinmfgmojpynkvqgqmrpshkknfqowlb~lqppnZqldpkog~knfmSrcnkpplknmrnkjoOrpllono{kfnslnwq\oqr[mmphkosemopn{znotpmvm[flwutplgnmoqlppnjmopqmbomo{rnuktn{kr[aUjmplb_mnpynznlop{hnkklpooalmngmommnkpni^nYlkprnpjqnp{lnhkm|uoVpshlfppnrnkmmdorplllmp\pskm[jmsvklpnjlt{ojmxtrlkj{rtoplmm{vskqwnhvoqlniqmlopoaqnsmpmb_Rrmzmtl~nqlornvonqnps[~nokpkpisnaql`nmrlpiokmrkoqYplpmspnonfqktM]nxqkpkmmkqsomqmqjqqmnkdppnvm`mppg\nrzmidphrlnwrpknholrq]mmqSmoohhlnmurmnVzlvnpnnrlolmkcOozqksoubofkoprnrkepmsojpmookmZom_kwfqgo|wrmolqmjVjprhpmpnghmloononctrk_plnlmpnq}pjr}pXlrvtkndxoqnkoylzlkrokmhjpnslo}{nfsljmas|ndlkdlijhv_nmooi\ppymoolg[nmprltsno^Zr`~o]poxlmzognsknqlmwqnpQr[srmkslmpertqnoluljlxmjlinqorycpmgjiutmn_sdXhnnllptpokisllzln~jtqlkWlbop^krtlmkjnWrmlqcuqmthkifkgtjipkplgkmscjcjulgmlmuuqofgh|hd{ikhklsxperdpgqsukoknir\yrloqmrpuinropktmijgohijolcmmdq}fnkqqloellfshejjqpfmlmtboouemmqrjlhktqjnlnflUheojiqhxktdppsl]mebomhulvksopoqoqilnpnommdfsknsrnqrlquqpijoqokqokofonm^tjloinmoqpomllbphrfspuwtiakbu\lmmsnblmtloklmkTiqolkfgmxkmrnjhllhnmnvmrpqjqlpzhisZugqqmrm\pmolfljnltllolsgrmwnqkqos]nmnsosglohuujmqqnrhy{r|wl}lxfolonokkzpirkklltvmpqnqq{t\cnxll_moonljprnjmloonhplnQ~qplplZkrWdgisk`Seoqqoujiirqmkjkoqwrssztlnwpwzdmr\llpoj~lwgqWcphnqvpkjtemsroovihiolqu{enil[iqrqqqdumhrkfmrropnevjphqqpwfxkszhmrk{XXqmtmpjjorktnorxltixhrpnZskcfqtpnqqnmliqgbpfsqkmhskolmmnpfe^{ssoqeqekqmsnkfjgspnsnnqtgmlnpeipsfZormsnslylpklbglp\ednmq`n]mpmiiljoskgmykrtonqeiyrqmpmfpfqphe`mkmwgodnWlkmqzknvaukqzmixokffommqeldnrXsiqidspmknjhltmonpgpknfekkpkjrqopmmsopvhqswlvomjypiudqjj|f]fppodcsmgs`jrkhnoq\oqnihnsklmmlvmpsmrqhkdergubrntqkkiqbhvknsingmWmktpp[ihoekmhrqfcofqnvherpRqn\lpqrqvltnjkhmy{_imoiojspk]nioonmrukfymlatpupk~lmo~prjkp[pmpokpplbjklckplot_nmenqxqlnposqnpjkgo`tientSw_gjrQlsp`rpxqdpmlnlnppqjd{s~{gjnolqlmkpovskplovrtntqmpxermmekn_noyr_fnqnqoampmqklizpmgptpfkmojlkqtknqmra}lrmsno^wgnbxnPq{fplsmqleymq\oonpiapnwiloqxi\reFrj|gptikcolnmolnloolnf]istkopnxvkkslafpyltunnsspligyjqqqlp`snvrpupkolnsqknuhx|jtorzfmjugvkopotozpnolmosprmngqopqmqnvkokrwkzgrrkljfrnswztvcholmntivhqdmwhorrvhnqlkpyqqmknkmesnunqqktppjqomztirzvnkst_rfgrzikqithim_mqojqnvllkjknknqjvlnniursulmoflg{toj|qoojjxmwlUv}qfslriNprsgipkdtelpkgvupnmvipspthmpqYoknkoqoqlintkgormhoprls`mm{ingmkklpqpkmpk|moopxqkov]mtoqnkqkmllenoorplknygosXmurfqmnkrimkdspjqkkmqg^ktnooqjdfqrpsmo~mqgr]oknikolpoernrbpaomzsmnsnoylqnqmgjunopbptnjqjpdokjnqmyp`rwomnpgrlgejplokor~niemfp^unvlioiuroyronorqrpnwlmnskzppoqmpw]hoqmsngszldncgntntjplk}pooonmtmmuoxvlnqlmoiplmnokmntsnemlWllqssVmrmhnnlpnntkplnokmmvluroc{kmwz\mklrnolklbnwmnmkpeplnlolmvbljoZonmopoqsgnrnZmbootpplfUhlmol|n\npimpppplhplnumlomllolhmlqipnt]wlwlllgnjke[hppqmtmotpolpmjsi\jjrsnprijtnfnrmsmootrll`tqnvmtmosnToqtm}]ohrmtklmppdnkneuqpwvllatqllinln^qkloqnsoljooromsoqm|nanjtsnpsimiojzo~qpiljnnpwr{lk_rkjpX_oTjpmmjrbnulmposjswpoonjogsmrsmr}qsqtumpspemspqhlmg_Rxrmojlunqslokpsigpnmd{lklompizpn~gjrolc^lynmngruhxxtqpnmonsxqmkpijhn`tmmmorjksvrpgompqugpmomm`tjoogpoheoktirrgropokmniqtmnononojivtpvurbpjqpmqpusmtluspbfpfkspquxthojrsinmioqmmmplnkrljhpntqjljplpssrptrgqtvjqkulotlqoqhpnkhpnhkjinumepiarzrfkpqmwoqmnglnvinjgoplhofronnmylbmpkpldqgrninYxjnpprmsrnmslhltnmrljmnlkttlrtsnbmj_kkvkrmynststjkkqdeonohlmmlmldmjkokormxmhplmpmpklkrnTmsqnn]knpnilmomjmmmkjnoghoo_kjinnnnnhkonnojqpo[nk{m]Vj|jposqtfnguvnsllpmqp`xpVli_ojqnkmlomnivoacrquojkmootsqfelpqxjslnkcodojk_lmnnknonyfpokmrmcsp`phomhr{lhpu^njpmlq{oobwr^n[|cqejnqljep[mmiok`kqcpljlslajdkttjlwjqkkvnumrqpoompqdzfpshmrop|vcotnmsqqcinrpf_\jnmqpopzqdl^dioircwqrr}oklffsoqT|`copgsprjvortldpokwlrvmgnllqepnytqpnu]nqlpppnpmrfurjq|poijjsyaoXpkmie~isn`pnioshhkpqkldTpljmhrhYblnmhoopoqj|frj\ykjaltsjob{nkvaqsr;kq`npurpzlfnpdkqnurgmveokmrwn^Uoltuko|qsq\eyMxmjvgunhkjriOmtqqnmmv|tkiuoifjozlpmpfelo}prjh|uelrdq`ppj|niqgipqrijpivmfjnqjrzrpqd|tknbelncukitrksnwolthremqkjlintprnojifTmn|gewfks|zerwnsilpqlnklilrufvjqqzqinouxhrnlfkixhrtebupetpmhnXtsjoljohq{jcojfrlnlellgnifmljrsonpregerinmwkfiolsmhlllmlnqvpjolrdr{chwuiyjlrmkkwjkqmmsgjmcqinzqlomg`kwkmpscrfone^mtbviplhimqjfopnmogllreptsxb`nwqjmiuhzopjlpkftwsprjo\ptdnfvnkvlmcyqgoqhwmugyoiiexnhylYkvih^ksaikj{nmwni`acompsepomqhmmkpohoov[phloqmrpomojzrc_vjuepoikmqss}rhpptrlmqutunmgtnmdhkaoxqjiuppmgm_mzllivnrjrhlniYmvxpokdokyj`pzbhvkpcejlkdwyuji`rpludhJseZmmnkisopmxjnkZoqnpurpmnqmomnunplkntppohgfoonkSn]_okdopaouq]qmvqprmnlqprmynmqpobnltpunpmnkamaq}rnpjoSpkmlnnndltlscostknkpoelonmmfrmqojr_kbonymvqftiqlomvplppqnxamlmlmq||zoqkpoYdmqiomoikelublloopmmrjqlpnmlfobKre_mnsmpsqipqpnnmk^komqmtnqpokn}nkltnlpvqiwpXojonvbpnnrkolvjloprqsn^moouinclqonnslpmmvlToodvgpdlonpinqnmwnfigmmmkprvmghm]ckuioofnpnmg}phlyqnplojplnjhnnpvvol?rm}mojpbdkrp]nwqr{lmlqyqowmpohnvdlmoonnmnkljnnommlmmyp[ylamhofksllonnpkbbppngonqwqpsp]rkmwcrlhnpjkjrplmtpilopnplpVcsncorqk`ieilvrNrgsmkpnnmunpmkotongpkornxlmoo`sanlmjmtmknpis\jlkvt}jalbsrmkg}kpdnmpmlhlnhnnkhVgi~hhonormmryqMpilomm^sojmipqhrjnrqomSrjpnjdpsqqnhmonokinpiokvmymoopehnletpmvhsdnrnqrqf^eqgkl`ovoYn^lmqm~l|xspqmqmmmmjqqliyox^fkyrpegkfobnhnmmmojmmjri^oipwml|q|hmnptnrovrn]rlnq~untn\ooo{nllhnolnyjpnonsvlqnjoomnmkxqk_jjbj{znjiftzqrlzqn~qepqljnkco_\o{bknt[grqnnpqibk{p[|pmwuhlponlpoyqqvnjqjipknl}eknmin[nnnokqcl}kollfnosnsomnhfpqhlpvnoklojon}bnykrSlmimn{jokh`am^zwmlp`hlqNonumbwckvj~pvjrvpnnk{munmmkkqjntWoisklhooqgeprrumpplldjirpsnqbopmvnlnwhloholmntjlomlonomnionmnn{jvlnorvjp[kznknkoonuprkmolpllns{rpsitlWimlpjnll^lml[tnorq^fkkqjsmo]nmlo]tlpnkgjpqngndnlbllhmkvmmimhjvpnymjkmkojkkn__nnqlpmnhrnSkkgpYnq{lpkigvppiqpnikmngpjrnqmitkrjplmmfmqmmjnoposvo_llmtogypdoojoh^koimvxptrrguqqnnrqpjmlrjnjoqmllpqotfpngnlprrqolpomnCqkoltqvkjfpxngliqmbs[lmmqmnvoVng[sdnpbo]qlrmnjqtquxlqhswklpmnlnvdslksqsnllospnqn{pZqlmqhjqkm_mkpforelmmoooonhpvVpnrrjofyplllhn_zvq_mmnnfnlhfhkol{vlosionpiVq`ligmpnjkskfmflmhonymnojhfyoqkglpgzSmtpons]knreoqjnsjnno^qkn}sgkqknkinlns|m\promnlkvpps[rmpi|pfzrnjnzlnmso{qnupynqnmoqmnrvn\qpfjgxnporupmjvktdmolmyinjlpnmjdspqipVlqlp`\nio\o`rrWqqlyvVmmipnjkmqvmmmovlnomltnljrjrmlznsdmpoqujlemmqjvglihmlnk^_klrlmun{pmfehdblmxlpxkknslqnmodnko[qYqngmiolzjoknisbonimyklxwmnsspcskxorlriaruibwgloklrfoxclgqirqsojijeikfppsmktpsjkojrgimmolflitsnjxkhiqhsllcluopmnuqamoilsdmvohgr|kjrfkqnxkmldfzklxpoiammootmilpgoppnjlodmeloslqninhhqogq_fjdvjmhjirpwngprnhkrpmntmhkuqqfoonfikq|grlqlmrmgqjqldhklnojnqo{nxxgjhknjriqssjqlqgilollpqnlksrpliyrml{vommslonvnlqalqonehflpoki{aokscsxjqorrel`skvowochqppcilqpoukntqvfkvqvS{qnumkmpoulssZrjosxfyrtkgomsbggtqveimrfp{}mriopronolsnnznhojmknmvrorlmrhnpkjmljnprdkknlhkqsunpgnmplk`uxmgX`rrlncnsckl}qjfnnu`rj|lmsktdmepismpxtatlmgdwklowsmqswnomiztmeqoopgnhxnpsmklqlugnolnoijvnooyiromolpnmsmnmrpknrmuphqqmrlnrmmojqoofjjjpjmrjnsorqisqsknimrtjmwnpjqmqlqpoqnlpsipkirkjporrvjsqnmrniroololmjmlrktnmmotnlnpskrmfnum|rntomnjnpkkrnlhnsjmrijnkkmronkmmooqnonnqsmgmfknjoio}pmrrommonoolmqjinmjmollqjnsknqmnosvlnkmmnonmpgyrjmj|okhmhnlnsrkqSqulnoxonvcqpoqrjomqnlum^pofuj{o|ull_mqmumnnudnnroontpjnroqufSoploqknYmTyx|oqescmnpolqknrnmi|mjilpvlloqolloesjSnjobc_jlrkunioidknmpootkktfYomjksicxpnesqcmgcimYjormkhnllmnmmmqmogtnsopk\nwl~comqjlpmxlqllknknpslujppmgnrqmotmomvrcatilbqernnmjjqlm^kmmeosorpnknzllonnmunllmljiklnripnhnknrjumkntnkinbo_mqmkqocmvjkfvhi\yhnglsqonvo]ok]onnm|joolpjmkbvoo[ps^pmjnqxnmpwpkpo]pmohmjonymuorqjclnnlqrrjmkTmlnpsnl\Wlomlon|gklukolk[iksyyllnlxnnwpitipjppcuigmnvjkhkwopqmologjiorvfsmolionaqfmlnuvrsnlwsngmlsnibnqnnckjvummrn[wimsqlnjmymg{nopsrjrklrftodpnmnqoinrkpkrlbmej^nlfhtlfutlwgonqrnytgppkfndmnsmrooorlhiihiqhfivl^frlmnttchfrqyikf{vomnxrlulmjcpfjqlbsfpmrtihjnfc_rimonisdfkiohqohnvjqjsllkjnykoqqlmcnkqigtrnl|mujzujilsmjnmilxlwtqikkirlnksrvsmeulprmejfinhlkikjojjhxnlqoplmprl\ltipnmllkpqkiglqlhdjsigipkqibrokrmjnlfvvmmvimqoaiq|ktjgnffvslyzahapuikkxixsskejilnilhsgwlmfmrlpoibeqlujhsmq^npfljn|haiodmoojtijo_pxlhagelomoisrjjtqouwjoplvgjdqqnf_ipkkrkilpsrknqonzmjsvrlldgxtx\uv|njnclqnmqtummgZrjpivuoslm`fmtrfojnnmlqltsnjmkekitlklaolmo}nllmmmfoyk]igmrql|msjnnlljpkklgmaukvegkpqxnonmtmkuhgphrohjozqmlqfn`usoph{grouosilwhUeofsophiinnqnqntkqxsfofnegn}kwlqnmmonksojyphonmqconpviokdomsllhjnkioleilkjqimz`jofoirk]rkpnlgitaxoorrluismiio|emoihwlnenfnjtnnophsommkwmmwnqqfsimuloqmlpnolajihgVgjfmpjnpplprnpmpkrlohgefrmlglorkpklnqlsmlklknkloemc~nmSiimomqtrsuphoohmhkpkmewspqjoqpocnnksnsjmlhkkkmrloalmsjkgnirukiratlrglrrpihoknclnpvkjmgnhhqokqjmlqplrnmkoomoqrlquhptpmlojiopmgompmrjkchidofmsitrom^reikplkm{hodrrsnriodkknnnkhieiuqkiplilppplmlkmkswqrnphop`slincjpnicoqnjqnlnmonlirl_njupZopo[kyo]mokcjnfoqpknpmlvpeomzcqyxmhjkqnocl[mmsnlrrqglmljlmwiojtcquoiuqqwmlqqn|imhnlm{t|uoolqpPlkkpjnpptspoqvjplprqosvhoatsnpdlXjegplpjfhlklkopp_lrqqjuogkl}ghhqjiooqhmppipnqii{nmmybmnrkn`lp]\ennjp_rodpXlXnppoyqnnvnmkgoonkrlplinlokmlslmnomniknnqfkvoovij^niqkqrhnumfknirwmqlonlntYiiqlkvykqynhpkmbowoomnogr}uqrkqlmjynlklmlojjsvolol`otmmbrljoomWmcqYljfqlltnvwilph`lmmojmjpunojmfpuyzo~qorjnglqnlpmrVjrmpmunwllumrlm^ipplqriioippmnrmtlndhjprcn]mokvWlnohTlrqoqmcs{ipujawnoohrjfxknikzvnkqnetzlkkjjmrhqrpnmkhjcglpmfihlmhdjlhlrnosfpoeYnhquflohg\hvliamtjunrkfklp`khgiujhqdqpjlpqtsojhtsqlhgk\npmmhrohoquwnlolohnpm_gsxfkkwopikmrnnksunhkmpfivjl^kjshjol~theomdgdbqpkmtwukjhekjfltprq}rdoopciuhn}ph}mggl~olmfdkcolmyplgpymgu{huupunioqlesuilfpjupktvlonofoglnlrh`ejuroglnzppavgfokopsqwlmjrymfpspgmunpjvlproqsghjkohqwvm{vk|piaypymhtojmxmpgqolhqkkiuymikkslnjqjhpgurilzksqjncnsksalymngnklkpnglcjhjuhlmlounfqpppwdsrpiek}cffoikoqljkniislwoumlpq{uqkfhhmwqomjhrwkgqp_ndmnckgulxfpupkljgpf}gfxljln`qncuxovkcjipsilmqqphmepkipulqhpurotojrkm_{exrrhlaw]mepyxonuiuknkok_msXfop{cadurmmkoqozno]tehsvrkronlspvqeilmhq^wl{m^lvowklmjpwkjlhnotmpmomhmlkqgm]ojjqvipqkqrysvkuslkpoom[fckbvkjoossscjjrnbqlj_poos~hpgozrfwosbjnnq]mhlplmmoxknmvr^rmpaspbooektppphoolujnpmmwtnkmsulppqknbnqkrrmmogj`lqomrkfonlknnqnn`qiLhdomdosm`gdroxqrsmlnn\oxmyvjcozpmnornkMlqktvrowwarkpnumnevfrqrooopngrytptnqm_npqwkopzoo`nfpemqckpminqknjlc{nnjmjr_mrckdligppionpdsylslpqkkgelkgmmrpblntpHhmpnqoim{opqqllqjupkloqlkn|ntln^ldlptneop]lPlhvkklopse`nuonjq]eigiaxivnplskpymssipospiitmua{e{mmoorphcnkfoclwknqmllfusjgptmsqlnsslutomimqwbs{gihuruipvctkoojkjgqofopvmjqlqlmstrhopxj{krdotjsfqinqsynqcdkcjbjxordia|wppmnrnlnirsdpblqap|pklsmomollmbhkpqnswqtqtylofWilkkqpemkcr|ogtmkryghqkouinrillrjorepzf_rl^smzlteilsbgnlohodomkoljmirotluhlk^vggjwrdjjrkljmfjogpfmjrju\mjom`qqgpmjglq`wp^hhpjerchsiciqsserqksZvjfuehhphsggfsYlih\lqomhnaqekiqqijejsuqfrfnsjrvqo]qoomq}psjorkxsqupuohnqhtmhkq_maljtrnu{pmmulqqlnbopzcjpqmkugzimsfenoemtskplTtsamjmngenypfrrjwqfknprjpeobrrjjnzsimqmmozpml^inmtwsiosemcmmonlonkmj^pmdrnkswprtfmvovnnogoowqtnnnqpolotjpPrp[psrvjmrpnrtr}lofnnpngigmlijmmpntl|niFjl~mlgkkmhn]lmtnnnujrondmaoUmoxksmltmpqmnamknklop\ho\gpphqboclnmqkjoepomqltnq}jkik|hieihmrwnlusouqymvmsrjn`kqn}|mnjrnamqyuimmssvuollsfrsolnlammmgplp_npoqgjmnYvnoeekklorgkjhknpokoinpenzjnhsn`l^nlkrgnwrckmpmpnoolrehsu{lhhmgrmlypolqqnsoyjljnmwm_qojmnocQgjtoonponmzekslkm[u^lnqoulgureolmqiyolpobijqprmkmislVxsio~lfs_oqmikrsgfmmnw`mp[ohrnslwq^mpkblkpmolmynlopoxmqkmmmptrkyqjlnoumpjqm[pqp[ng{hqqqmkokjdguwllth_ggjlkmpllvncgjs{pqprojchfxYpbmkmmjimcpaklkdhmufnihkhnqfmknkukmfgZn`i|ktl]hqengzfcbhYSmpftifqamhmco_kRnlrlkmkb~mveupqhekiyojlbhp}fdboumdwymniijphlknjhktljnjmfnms\eiotjoecjhnkWtoqpqigokk`olf~ytpoptvhjqjmozttdkknrmsilmoromhlklndiZjWlfjPriirwrwlqsdqkpn_ollioonjnqilf`kdqkbfumnojkVerZps[lunqjkkgpnrknmmoklklonknjmapgmeksjnmhpnomgmohxkifxfxrqpcomjqqjrlumgujmh`pommrmlfjnnlpknlltahaflslnnotkqpprnlilpsxjhnkbm{crndkvjnkkzphtlfue{rrpijongimomommgsloihxnjprnpenpupnjuljjgmnmkufpkajkhomhllousp~ojw}jjkd|kfrrmpxxmp{jzolnkmhmrlirgtyw}onpiviiypfnmcjhlpjppn|nspnmknnojjbnrvtofoxrkpjton~dqqmnvxcqnow|wlcuptqmnnqcznjmtkylppktjspooqksmujrpoqlrlnqnnl{nilhsttmknspmjkdoirpnpjnnokposkmspmlfintolfonnqonfoljannopmjkrsoropqopqo{orns~kwuknonlhpqokwlvpklilstmuulriurojlgqkgidjhfipipugohovtnshigifkjkbtekpmfh]qpmhlnmtnrj^Znknforqlsntikugmscjorkungapqirnrksimcnhnmrghouprmnlcokrhbinstalnouigipplokklkinemogytmxmfoqw~mejplqgmsulf_qamw`rslwninfkphlkjnyy`djmnhix{nkgslxurosk^nqkrmpnfmpmpqqnpnojjqnrup~mjikrwsgkntz|olgralfnxqonmrmlpkrkkpqlnvjpmjqosltgbpithmk|mkptoqkrmnmlfiutnpqnamxrjloujlmkhriombimskkms{o[jjolqkpmqqmytqlzbn\ghpppqcnpekmkrjktkxqkkjlziktbkiomllpjnfv^liellor]j]pvjkkmiZfmwlkyolrp\jonponmoXlqrlqnrtnonggltqc|jqlpnomyswhehlmhklxlrjorkinqjchocprqnmuognuqplphlnnlqkonmytqrnpifkmmtorn{|nksllxmcqfrijo^VklcmtkqfprjjponikpXnqimsiqnhpZqqisknfxpeoocnnmk}mhifptkhnnoklmfamntr`\ktfqinYpbjrkgtsroggmrhqdilggqmgkqlihjhsWZjfjocnbonojonlljjc}jknpalfoiksnilslnkrkompwiuwnlkbconn\qlwmrqjwmqnmZ^qqreolp`rikm_koVnrvoopilrri`rolqpxmarhrglqnondkjm`shssrrk{riunoknwn^nnkljpkglqflnrrs{ocljrpkrmnoqinsrnmimpiksihlkqjpooqlloollx}oohptyrknobiiknrrkmkfmndhvokmo[pls_jlpewmlnpllkpmqlvnlrqrprwmqomrzbpngkmfhsjnmnlkimlniwkmowmljjprnrgj`nlsnlmoj`qnfmlnirspelpxcowhlroftkhkqwojjokmopjlplkknnpltoenygxkrtlqmorhX[uosjmpcloujmomcqgtkgXjwWovklzonlz\rrlkbpimogqkrvjpq~sbikleirmjveppnljvurmf}oddmruyqnqrbsyhrc}jpoorrldoztvlptqlonslo}ljpqsmqnabghlpn[gjlypovdqoirnnljefcnnopl`lgciouupgnddlmhdnpqxgqeqrl`\n_lvuomokvejeqityomcjvrsrmnmqoXkktgyglxfyifnkvnnoijrnnnpi`qlWgk^ukroiZmtsdjgqnmmnlspxw^jgmvumiqttljsfgrosnnqucljorrulhjpqkmzuumpttn_mlnmrbtsvojohoj\qgnopytcymjphpsmdprfinjtotrklqulimqoimolqjvwmtiesojhjdineoolxqghknnklopwmwjnhn^jilrpjollcmlqsoudn_micqqpondrijzutkexvjomtlwqtlmsnwpmoinpkprwgjmosqehsoaqnprnq[nppjpnpnmpnoprtoramnmndmlolmrppoquvliiqr\Yqy[mdpXldjnrnlwnolokmjmgtis^l}eXomgnoprmnoBjovpqjrpskppnljxrhm~oipnlrk~kmpvkvnommhlvvdqmrkqntokeklnoqonnemr|mjipnnjn~lyqjTmn`upomnpir}lpVlpsqhrnpdllqo_ltjrqmfYpnwllfsenqonmoptnlnwyysqumjpM`gnokrbqoep\mrjjjqloealk`lkpnmpmflUgokhrhmpnrlqlXsmjihlrnpigljrsfnkqonpnmdnmnllhlnlznkknfnlpnihplofnmijmmryoigdniillmibmeuc{rmjdmklqhohbjljjqnoqogonplmtqwnpjqkpx_nj`mp_qjoipnlkiqrzgluqljqmgopjpoojnjjjkmomnlfltonoydlokp}rmonrkqerd{tknkidahpndqrmplsrjkmrolghrtqoopqmbndmndmlooHupnlxoqntlonimmlporomimjvnnpoolpmonDynrorxkl\orem|pvmloorn`qxknonlopldOodelzhSdlinlnpnSnaohanpkrlmplomlhjropvmbllmmonflommtmnslomff`kllplrhpoqoklsmhrlkms^nlqlqmjvkm|gnankizkqonsofloq{qnpnulnnclplmossg~hjnhrnqlkkolmoopqlrepmnl}yuoonlp[ijllrrpjzn`poxpdkptrokrykjoognnhqunhojowgsqknqknmcjnfinl}ifnjjlhmliwzwnipp`ohfdxiohkmdm{pkqogmrfhnmgbophlgsanonlywnolda~xprcopgrtdlpasuqkrjkjmnihsp^mqmhtnnflmorsondomkwfllpoqtrnxkinoenjognnmkhnmtpllkn~ksrgkmmjiperoxqmivsmrjommeiiwfnrnqnw]kootuntlnjtanjkkarrmorrnaqusqkrndznnrqsonusnnroonqemqprrmqlkqkmpoqmpsSpfkf\mnRqeopzvVmijtnnypjonnrnoell~kuxr^qPrnlrpjmbryn{pjrqqNqvomlmozubpsqoHmnepqslpk\nnnmanknt{Uulqk\pvonbnnktrsqhkos}nkoqkppyqqefnemziymimqxtemouinompmrlppnbqowrrkenknnjn~nklkotkotsjknTirlp|lnkmTxijlh`xoomsomrpnQplqmwkmmvnnokkrnp[ynnxoqbqmlkmqqooqnliarnslgwrznvpsnrmcmmlfmntknppmqjji_plVl_pcmlmporlblcrknlohphnolln]yuoptkm[iobotuqonsmlmkunpmjyrpjoro_oq`oplgrrtirlxrrulmhr`celdrnnk~enoxonpsu{lsycnutgwouqjopomhjrm^jreqpslniojnhomims{lnn}hukn`nrpmjnlpn{brvl^soqienuilxnnyqlxjeqmscjoofmnmpcmdoskuk|mnmpvetoholitquhnphmprq|jthukhpzlppnpnotp}umhttnimkpulTsquqrkpooptxltlrfkoxqlxrodvjjplkkfnrlgmngoqrinknmqmqisrepqdqnljqqohprrklnkgkotqllkkpkwnggggomokhqqtvommmonfvenvomnpdlki|upxkptsoolkklpnxvfgmfbkonrptmtkelisrepphcnklnkxhuotowqiuiwn^fyblolpipkmjtjnloybmcepiykikjooolllatnrjmqqmtqfoupqkllmtpumjqpmo`unmxpgijtoruoaqmllkdqr}lfps|tuhrmvnpjwknn|qspa{qfhorsoflpmq`mturfkn]knmthhmtgiyxcrnmrjqimnipnoiikpnoojnirmfyqjtjtqhgemktlqrnaqehjrtiqkhdrnkilp_kylxpjkmotlmjotfbmlmhjnbihkqjhquknorqfcvp]tuqokDosjcyokxm^`neovxqjcps\o|gniopWobbrzkgpan`kptnuoptelspdcgjo`inpkbiWfsqUonjjnehsjmhhdH{bwpirokmjgkqsklbYpnoomqk|efdirbmmovroxdpsckgguiZhphmfblvvdqmpndmzmmptmhgo^mpoimehWwgntUnqg\zlqonmntqnkmr}wonmfpppxnqsstpiulqomsvpk^lhaonjenPmwmuokpkoljhzjorkntsqpqpqcrnmlooospjuiu}ujll`sugpmmpioscmfrpouookoipiglinflkgkctkkqllpqpp~okhbjom{ggmxhunpisqbbrkppoqboqomlmlwknqiiqdnghlolokindptunqr`tqgbqbr\lmspknnrjjawntiljl^kipmjakqjljonrpoqbo}rmnlhliXso_noqloxstiimloupmywqkj`mqdsqflrjnusgtvnohnsopnsmfnpn^mqmksmiold`smvmkmgwikmonmkkmpmnqxchwcnjqkmnpnvgijnoTuohmiodngonojimymkeqohrhhqfktrvhphhujnjmmwkhhngdjn_fjtgiwrjgiopnrmeqzrtkzhoillpnsighnlomosjypnfumduupmsonlniqqohuimgrngkdmnmmtwnvjxbkmloogrylpmoswyqchhZhmlvlteyobeyptmrfincqkmtbilqkijkksljpfmtnmmkmjvpwqjfjorlekkl`nlhhqnqgt~glmhnhnpopjsg]quhkpmmhov`qlpkijdjlrtnqfojnsipokt]ojskjooqokrpjhuohgftoqpsmbknoeeojm]h~xlrpmflqjlllhmirkghtppqamrtjpjrpipowlqrusjnZocomllfcpnqxt{~cgejmkqommvgpmyplhkqhntpjflsksmurflionhprhkmjmep]tznroogkkql_qpemionhnhqhehmtrhlllrsmq_pkjnlqqieqpmdinnion_nnmloqnnz`lxnjlqmnlkoozekjlhfkpfoqsoyo}qopaonrmsnlklpotlYqqldpnpe|orjojpmotqlilpskanrnlnkogckpl`lsZopcpz{oqocntkowolk_kunlwnaj{no~ommkqioqnntljqkvpmboqmgmhol^eiotlsoxukn]slpqjZlmvnjcmwjkjKploiooqnioqplmmonigopmejrpn|jvmopfomjih\sn|khlrklrkidpjm}pmnzmmndolorckom]`kmlmmlnsrmlnsmpnkdoifopnXj{opppqopxkklronmmmkihmuir}\ijglosmoemlsppnim{jrrmrppqyrnlwnshokZsxgmmnbl|lnynkrMrjl]msqkqkqqnpsslqlnkm]lornmpvjhpijnpoxu`nnloopenquSnkniylllmtnpgnnvmnUrfpknuompkvnhlnppn]pnlgwYntkjwnmTpnoppmEqpynkpan`qooeemomumnJh`p`n{ssrfcvpzkrduqWZpnodmmgrblnekxdmfvncpfnblQsmqrbmccunsompjpnhkolkknsWlncnogkyprw`qqpgXyrqcqRonnoraohkjjnhqqr`ruqePrloenq|rsw~oiPujosnmhklon{jqvgkklqkp`mrrrkepjqabmhdsoh^kqmmpgnohO_mwmqlojujnbiPujsm^i~tyqsxeTfmqqnuklofimopdpoutlpdi{o_lmlqkmeliudgeuorfnlpmgokj_rbxvrux_hnzoqitqxpfqn|lnsmbwnlhi~jpwqrewkpgjnpqsopYppmnkjthwv}nsoyqlnldpunmvjjmjinlmsudpmhlqeilt_`qkpxmkpfqlnrnpnbmnrVsokquabosyivhipdnhqmmkmmo`lslqk`jjijlkfmqsi\nromlmikkjnrkqlnoyqta]lrrqlqnslojekomiqqmbopjqjhjsitolhoplnhmckpjqglfmlmd`exudvrqxk_psmqpqsmijgkx|zsoisjqflsomsokojlfpkwnrplgjmnnwzygnegjjrnjurmlkdwjlqjwdx\vqbgjkzplmqrfjodagrqtwqoggmgfojoltnontunuzk_ignosuilejqhbohqkgfjlpfpgrmuYdrhxpgmmilrtmmomidjbhmxpprhmltekiouofpkevqqk^pwsjneo|mninilosonjrjomlmrr`mnkkmgwsmq^tn^ojllrujnodolmmljmqlqllcinmohhhoijrokkxmlqlk^ng~eyotm{mernoqncnnrhnmlnqnllwaixu{t|[yiolmqldpkseqnqnleqqqoqvowtkkrhmmfronmjokotnplmkjjnj\yllxmroZmowminpsnmnhqlonknmghnhmokbrmlpusnaslqnlnoopnnnlamq}qlblxpoijpinqrqmlkookjrmloxsnqchhmuqn]oofePjqqltsnkqrpnwqjknrqelixiotsemoujoomjuo}mlrosumnuhoqolpzkkfzgpmnmxhorqmpikdstovstitrspqntkkppsoylotqocpimbhxo`kmnfgksucsrqkpsutouqpjrrpnrqrnpdrkgnixokmnrmqmmrxtssklmtyftokqtylqioznnmnersmylpppjiwjmzZow{qqnornsnsrypl_hvthqbommy_gpk`oemokf{timlzqpqvhqqourqgooqmqstrpunhyjpuoq|llX{hmntmkdryrhhqqpptmqbnqi{otniiqlaniolraotsjqeml`nymuneqiqpikfteftmlocjpmZps{reyowmuuconfere{mgirgmoivsofitqolsqijpoj\qgsvrlmoslqmtoq^mrzldmmn|inqpjlqoxklnrtqngupbimjigpskorjmlyrkgoonuu|jisu\pnvmj{muhzxykxfjxtoxpjgi}lijghjsmgibkfezqknhl}mslormjmtkhelpcwmjvnqpsshopmpokntrsskk]xkjowkqrqhpmjkhmppwkmjlinlcrthsqrhpognqgprsszmmjmYmpfle~mvhsnlooyookqrmkjlnqjqglplgroqlnlploknnWkoryjrmqqnjtpmljeptglgkqkt|nhkiolskoporvnvpjcqkkmkppiijrpnjtqgmplrychwhprvojnnuomfhokorqjbmgtjngdpmn}mpplqjpripjermnnmpofngrf`sgnllknpkpsrgpkqifjgprldlmnnxli{m2qnhoogofepnpkonbklegjlmqsnogjknijlll_rootnctnrfrmftkpaicqnnujmcuupum[rzklonbxpyookjrkjjkpspikakl_npioiln|lkl`rtroquoqrrakpxcslZvpnolejoposvocsqlgrknsjhpjtriss[[qjbjmdqpjrlxlrgaoMkcglqulgk`ieenoVnnnnsnLnnohmlnitbnqq^vlsho_}ounqnnqYlnpvwotlpvjmilcnjmnqkgimnoo~smlotqp[mkp~nppWknaomoojponcow^ktOrmuxpptomtinnkUr\qrmtoOwsohonnosmtkPrwuml]nfnqrlqwomvrlka`frnejsqXnlfmomrnmupjqv]mllmnpx}o|foqmgxrudoolkl[isrrnojslmofrmqpisek_hlmprhknujhojmkojmjrmmunfhu^k^nmhnuinptkuosotpmlklnTkhpnnpqr`vmonnqnppfnnt_l}korpnpkpoooyokrnnRjx`fdrvmritmpqcnnomlqxnbghgbniff|vflqplrzkr~wnlilkqmpnilltxtjsqrd\oogomYotoknnvmkrgpmQalnnp_parmvqrnjpovljqbdhjmkmlsnvopprlz}ryklsod|pukpoonhpmllllqmlpwoqzhkjfonknrptnhooknoapmni^ltroeppqbqksunbppop|nknllojemjntonl_mtkionmqnsnosllmoqjnmnspnltunjqnmreoptgqejqnqkdrofm|jmnlnmtngrmxigknuwnqoopnirmem|nnokljlpknpmmgrsomkpqjlmppklmorqnnkogomolnimncpjq~lksknlkotqpoq]wnnloolkkqoojlclltynnmmnptmjmwioonikmommoolkjxmdspqgjoonmqrdolnplknroomZiholgmfoop{{nlpqomlnkuhnjkupollsmonaosnqepkoonoplnpmnlpmkorhuhmbqntkemuimkkmmkqmpkoqq_jtrhnrkonmjmmolmmtonpjbqojimohrnlhnomrdnmhfsvmttllhnrinrnnqopmmfiocljonprjfnnrooomskvjqpjokpgoltppnmokospjmmmlmtk^llprrknhqojkrnlthljopnllocmphopsrnpkngogjqriosmtnkpprfmphrtrnnqulmjsrrkrmmitsmorjstqgurnpwjlqrmmnpkpuntdqomlmnnqpkjkomnlogorrlkkyrri`nrsgmhlsnorqqnopqoienhjpmepkqjxrpjinogliTmykmsksimnmsoplipsigmopmkdlxsmpobkwonpmluipmtokjbnynpbpootpoppml^eomsoomopqppptsn~ifuqpqnvpindtlmnrtonqliqlplrivpkngsmonlrleokjopjmnmnpslmslzkpponhnqqpnapnimmknq`_nrqtjuorfnlkgtqpPLqomoovonq{sphkssmkmindqupkipviom_p^kkmlvroohnkjnppnolqjkormlmnl\izm_ojkhnqokmc|itklsOphxplnxusolilknlqkdtpimufnemqloommqrlYlnkqshmnoxngnojuq`rqplvnmolmmq|rpoenikbrplqplfnqmqvosoglwmnorlnkplllnp|qorpnarkjolssjknrfgkrojnaip^qplimjpliklqobloquklnkuoplilplimhhkjnjnskhnkqlqarklpkfkojjgnuwnforoipnqnwmonlrnnimiqmmnnqlvopnqpjsnnmvseoqnlmnpljqjjgbmnjqpkrrhsmnmonomrqokollmksmoptknpopnfiikrnmmclgo}ofrhjenu|sitmpmqfnrrqpaiqmqdqmlnotkxropnuujmcsqhtimnkkimlpqoomjlojhpmknvloofqlinikllkljnnjkqjiljnsjgjjltijhltmuulkqoebnaomhpnrnvoavjty{nrllinplnilgooppninioinupnlsnivqqlmkmqiltpmxorlramostsqndiqrimj{nijlwqZufrhplhtqoihrqllkngkfsmjnkrntgonipmvmhidbqorefioilutrklifmxhdmqkkmikmcikqlgqgonmvklnijeohoalnmslppjdq`mrqoqmrnhlnikppmjlkvqksodnmoipimmiiemlhqelvnnnnsjnsrosrmoppgnmonpmmopflnypjqnomoonponkpcmspnoskjotinjp}nrikjoijlnnnmnlvmlnrllio~qmqeoonoodowjarkkulnkpoplqoymoiomnpjpn{k`fpkquornnpnppvjhmnblgpnmmlpnnnnsokk~}oomprnjionwiqpo\prixqmkn_jjkXioppkopjinlkhl|dl~slvqpkomlpgolmnlnmpnno}cdiomogppwnpmmnrjmlmjtlktsrsnlrinmuirlrmppsmuqmjjldqirrokqpspenmerjknujnprrjmplvnnmgrkommpnmmwqmlsnqplooknorqqkqlpkpqkhpjmklmlvmqompjmsrloummbjpirtllpkslrolmlpqjogimkynntrwmmmpwp{kjomkpnonnntkoqqnptinoysukrpsjkprnijormlomoujjwomnvphznslpmqwsplqpgsniosjmoskrjonqnqqntqrstprjunilkhhnoontlnnpulmiWipklknrqsqknjdqiomnonnlinmloionkqog_kxzlfonnnkapnetmomqhmmrotnnhqklnohqgnoonrbqglfpmnoplmoqqmknvnilkfmrrkmtmhjmmqsommmppllqpxuolmrpgoqskooosomnnmmomnqupq|sknymqbonmwlnlnlqvekohumoo|rmomkknmjqnqxmkqulnfnrfldomlnskkionmjmcsnfkklnunblmrhxonqluokmmnmnemnpipmngpunglokopxpniopYonnkqnprms{gmpplvivrqqznioonloqpp_jmknpqonumwvnqmovnomnwkkoolql]qnqkopogqsjnojnsnrprknismmepjtmnmrnmmmpknnrpinnvmmmrrmermorqnjmjqinomoplhklqrplkprkskgmnlss]iuhunrowhoouootorpmn`trlrmmlnpojfnkoooormmlnqqnnmsmelnilansnlorosrosqggeqnmllgksimqloppmiljplnnkmplogkgopnpklopjrolrkkignmjnvtnolpmmotsqokolofpjoppotoluolqoleornpmirmorrlpcsnlhnptrnhpoiknmqimoookcmcoomohrniqppmlkomsqtpmqliijljpjnlopqeuhnojnklminqmoqplmpkoomopnqjhoqnwkjpbpmnrqmjrnnfrjjkrptjnppinnmoiswpnnsmprskkonzlnssplpxqoqqiarffopdorikitmlpk~mnmokmboftmflqsutkpwpqrorolologmbilnoouqeno}snqonitismdtmpxommmrnh}pqvrvcjpmprresmqqj}nhoullktukhmtplmhpOeinokilmwhkqmnonrrjwoqrg{rtlcjbtiophmohppniomoo}knlrpkm_nqsnruskolrlnsoshXhjmh{hprcpoikpmrprqpmowjmipjrslloocmmnwpotkqeqovqnp{nmjkknmkrmnrhloljmmjomotqkhlnhiqrnonokosgnoqsihqptoossl`jnnumllqoonomnmmlnomoj|olqlfxopmkpkonmhp_mvjjlrjjkkolntnrmkmjimoflouqpfnnknopokgomqlolnnporjpnoxmpopnklkloumknnnmmfppoyjpqqupltppmronfciykprlovnqlopsofextpwssnonurqmljoeommmmpspluqnlgrliprpkopopmhspqlnrkljindonisqonlunpomkklqmurptqnonlllqjonlmxrprqmklhqojtjnr|qnmmhnissoppsnnulnlmmrnkdprpsigooiqlrmqrlljmrnsmmnhohhkqqfoqbmnpmndnmqnlmprpmkqjhrtoqnsoslpkojnljivlllnqqisgkocpdn|invoojhlkqlppksgjnuhqqmznnhomukoiblp_ynkinnllglspjmkulmhoijpanhkknjnplwtmlpowmiqqmpljkllkq~lophdippmiopepbptkmlljlkjn^{cnhilpwkoldfinrkkjhmntlojrnlnkpmluvogpjmrloomsksnnkngkoombphlhkm`rsjqmq^mlinoktq[qgaannqljmfskominknmopmpnnZoenliplkqngnnkmvmmocpmspllpikojmrphkonilmfniqmnqijnkqlsmhthjrgugmonrmmo^efqsmplmnilanrfjummellspsjeoqnhnklnisnnkomXlrlmnnrivgjiomrl{mimncjlkdslpqikpooqkkonjhnqtkkolseomnnlcnhpmglqknosiqnivptnvlsikpnpiomgplqnklqghqsrojrlkqqoohipliolonomo^jiqqqlpgnkojjcnhmpdljhnmtokpjqqolokjhjjmumhnlkoymllmqlppspyofrooppnonjoltmrplqhklonmqhpjovjpnfkrmljmnlltrnpodtmnnqpiosmjnljmhmqomplnlpmrolmcnmmmjnlprkilgknnflmpnmnnqjslnlquihimnpjhqntqmqunooxhm`nhnlooonsojlmjcjnb_kovrknmqplljjkpmllqqqnrlmoptokkqinbmmjorhmqopqyknqolnsnooomfk`mlennnkknrmom\mlpokpmtnmqnmimbphmooomneqnkjimpnqolmlmoknsoijlskmjlommpmouojqomnnvnjnyryoppldkpomhmmookvnpnhhimnkpgqspljknlumnmqojlotmmmmirknrlnornlkmwzljqlnorinqiokpdmlmrrmtnllnqkmoumykpkhkeoUhqmpoolocpjoiomllogomnrgqpeqnjpjogkonkoljoqmrogklsommicaplnktlxmoslmnlnskpnpncltorrllhqnrllsmnmopqmnjiwropknsmfwmoropjnqrie_jrooootmsvmunlolookwomnfuhtoxqdlmdqvqosppmlnnktoovonppshsimnsjgmwpndnbqnmppppsioognjnnnluo{pncsq}mjwmqgtmelohmsmtjmpkknjmf`gnpmmqtsnjpoimnmlpujohpqnpppnethn^evhnpioslnlpoppjnukqmrlojihrnloqnslmnkfnkWobpmmnknjkqjn}_hokqknrnqmmionhnnrrdo}ooqssslqkllqpmonmpkpnpimqrksspmqslmejnpr{hpvpquropsqosdaimmrimlmplkomkpoirnolklprpirmotokplljlppqltnohlksnfijosjpmqrkiqlooojommplkninvsnnlojoolqmqrnmpklsnknpmmntjohqplpiprjpuunhprnsomhommpnfolllllrqromqomrmmsttmvpnjmnrlrmmkkrkliiprloqmjmroolkmprloompkmpplpjoqooiookpqlspinmlzqotfemnnipplmhhnonklronilrlrilsmohlpppllntllqprinngtjmrugjpoflkjqzhnppnkijkpjlf^ojmkomprsvnpjpvhotnqskloipxopplsnorgrvjolqmoehomrrlijsnoprsomulntbtmokjomlloivnrumxokkmkklfbmgkvuoelcjpqomqkninrwmfgrwpkg\nlilgljinkhoojklxljsnoqnilaromwtipldnnjolssw^vozpjpnnqqnpk`vvtorqukfprlibopfokjmrlopkprlnnspovnqrlnlmnmtimopdonm]onlqqmlnnmjmvfobnknppjsnolellmrnqnmlnqrqlounmnrmnolmolmmknqldtphmkoq^lmopoplmkpjodimonqsmpomqllvtmnmomklnqorjnpmjnoqpslmmenphonpjkamploknmplrsnlehmooporsilmionwojpxlxrmmoonnkcpnmnploqtmmnnpnwoodhmkonrpntqrnnmommommkntwprnpojmmvpqmlmlnqmkoplnmjoqnqrmooxknotkjpzmkinjnnnmnleojmkskklsnoojlkipvjjdomvqmlsnolurqmppprplpkqmnnnnqmokponmqanjkbjjholoohopsmrjkmphpqiouppnklpnalojlrmmlpqsspkljlrnmrhnktpwmmklyfuumrjooklolnmotlnqis}psnkkmljnnjlvkonnhnsnwqouuonqkjpdmjqmqljkuomfofjlmnlmliponqwoportcnopmhmsnmgj}{meoteululpoojrlwkufnmlnloinlnpjjogjolrilp{ipttpxrg|prlnmtnlqqcrxnpuomnuonkiodqqcpjugepnchlqrqkhmkepplgadm{{mkliklqjnnstnlkrplrqznmnotdmfeopjjupvjmoyl~j}rgfkmooopkfpkjkqtisgqdgsqolplnimlpnnjgmrhompqrsonqkjnmnj~gqlpiorkbmmhpslnwqlqhlmngnkkolkjllmjonokmom|bqnom`msyopgqkujjktrrksklojpmlnpqjvpnhqnhsnomglomntrpnlmmqjnnnuiknpnktmttoorjjsrrqnoqpxpqklfinoqoynhooqpjwmmpsfkvrukuqnpnpgnsnvrlgvkkvjospolkswqkksjrj~mbrjlrgtqumsolllmolguhlkwponnrqkuokqfskpokjmid{ih}nhhtfplksvxtojwl|qlojwlqmuqmkirmjrsoqkprmnkjklnqtrokilwtpkkikrgiosoogpnqjjpmsngrlklphqwvnrmnrijrjkmkilmkmljmmmkrnptljklriqitiosooqslmmromqmo}mgqmplqsp}jnshjognulnm[lonopfmphnoqriopoiimtnnoqpnnooinnggormlkflhwmpmgkpnmnqqnierpfmpmlcmqpnoponmiqslcjijhfnnpnqsloppnrlnlvpqnnsmvosijnojqognmmolqtnmrjkqootklnorllriolotmqlnqhnrvlmkmumlmutipyxnppmokksnhlonhphlllphzoofmmownpmfom[hnlnpolljnr`llnln`uyorrmomnvkrqdsmntnojnltkooqksqw{lpnmndsdjnirnodimnrklunqnoummmroksonmhqmsmonXspnmooofmao_kjwnsjaogqmnpoajl^ppqncllnmknolmmfjinqntkqpnpkn]ocnlokknnpkifmqlqnommkoqmlpqkrnljnkkmolntloilqmpptoopilpsopjlnjjpqmmmnpjimnpilizjkoqhoslrlirmnqkhlmkqrnmqlkoipujmnqndfrumpmqmnmop~p\woomlhllnojookloukiosrmmmmrhnlrppjkpokniwfvnnrkknirpuknonpnqqkn`ulmpososqin~fnoonqlooonrsosnl{inqmiknpmnrlohqenslpnklillovpnnmpmrmnhnmliklmqjnnppmjuormnwpmdmkrpfukopjimmpmmsgnppgnslrklnoqmitminmomippmglnkgoiikilksgpspmqmmoomdprqjtntqnmmovomlnpjkskspqlpenkmvlrkunwmhlqhkpkntgfoorpqkoknmdmhoqmiogmlsnplnkmppnnoimprujsqhoiltkkmqljpplqmqnlmfrmmkgmovpnqngokkjqgmlmmjmsnljnlosmlkosekpklmrommrtrmmqnnijsqjsnposgobppnpmhojspqjcnhpniunigjoeblrie[opnjopmqpreqi\lleoiotgjxmnspoipikkcqplknhoopomontnskinihprgnlopapulsomnrkknnoikhtfpbzgprlrphvnmoqkgqspsqatlfpgnoqTdnriymorogjkxhngqkqdneitjlnrq{llmmocknkgrypufosmwjrqmomfvhtqqqlmhmwmrysumpjgsgpildmupognkllgoomkqjqkpltrqtitmk^mqnn_oVjbgmnoncglkmqjoqoommnnomkmnnnwmnknpllnmplpovnmdnonmjZunYmip}nrnennmplnpnspnxkriopskrmh`mlnnnkmsnmo{tmnnlrolmoqomuoopooqmoooxkpjlplamsimmmmm}hyonmnukxonomookqmprnmsoioorniospeoomocrjltomjnljooysplmtcomkjopqpnichcrlqllqnnmmsnnmopnolomolnnnoknplnnibonsjonnsnirkvlpqholspjhheeqfpnnqspoolmpoglmtomlqllnwlprkliinqpsrjnlnomouorotoinlsjlohnlnsomirmlmkkkgmqfnnomqvpgnkniqkknvmnqopmkronppognslepkmoglphoujskpoitmmoqgontpnlkiovhlsrsorijhkoqlprjqrlkzoqmehmjpmiqjnmmjumtninsqupljnlqllnutimshmzlsfnioorpqoofkliqslqnlshpqnonmhmqqv`}npkiypiouolrmroohehopmopmtmtpiqdurmptntlqespnqZqidnmkmm[hjrnqilomhhgqpiufjppklmmlmqjVjyjcntrpnjywsorlspqspmojsllmmpsropopqwkepimgeipofmponqkdepghvjo]jphhmuqqmmsvnlpmhrmq{rrmmnemjlibphrlsgoxoppjwrkkwmq_jpkvpeomonskmmpqhmr|mnnhnlutovtkrkplrona{konjlpekip`votkoinbfuljpmpn{njpophnwnlomorpnvvtpdoqpo\swuljolliotqonmqfnjkoujijmqishulpvkplsjkkktbmypqivhkvmjpjslklnlqrolshfkljolkwjdmckmljslklsootmlnopjnnmnimtkcnap{m{qnjsicesmnokonwmjmpm\kzm}hljknrqqtivnkwg\mroohomigoomgltrkmgtmjlmrloloqniloqplsopolmqotqmnkbltqfmpltioomvlmllkvnsknnjjloipnkryohiqnzittjooqotivoppjnmchlptnrqkumtiolmpommhlqjmrk}jplpsklijnwxmolqnikqskigxjpppojrojeumupsmhpnppjhqowkommrronnmlppaptqrkomhpgiltworpskfihlpkknmqkorqnnjknkgnmkknvlynjunnnjuirnklkmptkmeopokooopyrlpkgnspomloliprmqlolmlskpoomjknhkorumgoioqiptjckcnsjgirrstmflvgnogueljrkkqsol{ebfomakfskijknopcnp~ihrtgffelpmjlrgiijqlp~morolepdcnymtjuimnt^pgntkrtnonlqlpliojvuopncloifqdpoqmppoknqobpemimrjggnkqrdu}tfjljrkqefvplrlmeoamqjrllprrnlqtkkrfnfmiqjlgi_kipzrwqkqjpjrsnnqpjoqqnkxipqnkqjfpekqkjsoaqfokujlxopkqxifrklqknnlonjmjnspgtmpmmoiumolhiknpnqlvqqrloepinkjfqmwliolnornenimmuommkmmnjngjoopppqfqlorqrriqmjsotlnkvmjq_oizmkqmmjqmunhsnmsqoqqovojmsolpolnjonpsikneklpshmmjopjknhmahgnmqnonlllqdnkkkjpmncrppmqo{otwnqskponmikfnoklnlkqrkl`pimnkkjnnnmsmmhljolqmyqtrrapqkgwiopqltm{uhnm{simqolnflidllmjulnjkinmvlrjokqowqrgskynrnphrvmqlejjrmhovonppvlhjhlmnnntokhknkogmnpjglisvokmgouplyjodhlnljmsmpllsxskmvonqqm{nmkoolpgnvmqnqmplnmmkmoojppknoomjmwnkhtkmujnpon_opmqjgnnnpomsnpmmojpotgtnmukymijmpntlnmnsnmoqkmlllmmqqnjmuouthnngrowkljhmqklmsrnpprerropnponkpelypnknoinrqrksjxbujlqkvosrmgmlolvnnnjukspmjplqrjflkhpklwlornuodaqxswcisooopglhoolkqmkihthmokpjegmnupjlrjomorokqijooolhnnjpkgntlohnqjkhqntmnivyilbvjqjdnrklcrqhrojokon_nqjoj{iyorozptomprkqto}sstqpnenmgejlnisktmwunmlommknlrkknrlnormmfgmmrkpgommeqorolonehnkmkmnoomhnshrmnqpqmjgbnrqnmnnompipminnormqmsmtormpsmpkplnhmlolkkefgpmnjponhnvurqnnonqhoilknnqmpnlgponthlpiimghnmkuollmorklpjnilpmfomjkoijmjtjhzopmnkrprlkmqrprrkklmpmojkqsjnrkmzknofpinmjhsomlioqkmmoqmxnsrojfiqfhmnimllgkkojkmwpognlloocojmcooneopliooophlnmxqpcmnmppnnkonTjphqklomqnpmljqnptmnmnmojmnoknqwmrrplsmrkjkjunlnppkmmjlokqqkgpomopkmurpluqpp`mmmmqoplnwoslnpmnlxnqom~kmomnqolnpmploqmqsrnnnookwtumoonyonl`pommohllnqeloonhloiwnolnjiekrpmlvononoqoqomnlnknlnnoXrqrnkmlknueqmrjllnrlokpbplpfqjfqqvhhooqumqvpujqglgoflmvgoukneqkmpskrpyorjjrgnkrdiknjktq`lmmininnmjqjerenoumkndljklo|hqgqltqrjtli|kjmvkrjrkkohjvosomhffpqlmlklipelnoglqptmgsmquqrqrsiiprthvhdafnpoxhfsmhgdlulzlpymfboigtijophkkknujmdnqpqqelwmhrnpcnrdllmqkirpmmkovqwmruotultqqkmqqmpnlmnqljplyloncjlovnqrnvpqlpoolopinnjyhwsplpnpvorqmmlhillnqnpojohmnijkqomtnnoohorqupqnnlokkejinfxwhofuRjlirshbmthknjdrmmsklmlpqu\skplllpornknplnkoqmipwljpnfmmooqkkjqrjmfjmkmnnwonrjuumnniipiwpppl]jononrlpioronmpqlnnkoshqntknuslmnqmkktrplfnkqpqlmmotminoltmjr|pkypomlktmmoeomrnlmspmkkmhloosmpiqptrsnmiuojlllpnjsrnpompppopkhnmjmqprmknkokolpjflkqnjlnmjojlnmrqnljpjmmjoiesrrnnolpjnnohkmmpmhlnloopnlortomknlnnnmsslolpknomgmujpkxompnomjolkumllkmhllmumlijnnooqmqmmrkfojoiqrknoqpnnzoqnpmlmtqjotnilnlonnpqunqormjpnrjkkgnrmjkrsnolsqpojolqomklwsllmrkmnwmkuolmqnloqnjnlkhojiokqtqlm^nhmrltqlifikmonomfoobnhpijkvdnmplooorlk{onjpoxopmshmpmtqkj^shprlomimmnorojlmsjnnfoslmnnrornoqnnnuhstnkom}nomopoviqmkjpyptlfpmlpmqfvmdjmmondmmmmnmnkgogbrVmljposnkqmonjokwimmnoqltromqoulnsfuolrnoqncmdlhlnok~pnuolqniqjoltjlfiuolnfqlkoknnhjqrnhaojnpmuqaktoekikonoinfndoqmmmmlinojnmsbglghoqpmlnkmozoglqknpsskkrppqexnmdqmjjnmoskhmynyjomohlnjsikpniimmkrmzklnjkukhhruhoonqsnumnlpiuoqmmn`koqmkqpkukllltgjnitjqpkgo|llnjrmhkpkmmpinoyqnjkkkmizwnrqgomiwnsolhcoomtjj~okqeqqonoqpqjsqoooqsnmjnmnfnpnmlnjrhmptistkjrbhoubnlgqtpoomgqqefomnlmmtprhlqcu~npgirugnqnloprjpljrmjmjkmgrtplrmlgnlqpmwquqhnclrmkokhnxojmnomtophtlnjntmykkinqdeyhkkfquijqpsmmklouprtonloprspfrlhkjoilspqfukpnps\pwiqnnnmqmsnhmlqnrgqtrmupkrnmqxpqislopomqqoqjrosnlnlnkojiotookipojomm`lnmllquosokjmpllmsnlqfm}jliplihpljmhqgknfjjkompokopkmpqurgqlmllqrnlkqkvp]koifqkpplskvlrejpjdkbinmjoqvmsnpnoijgorlbekumnmkljnjtllokgq^omlnjolmrslndnn`qpklqzsimoovlopzlxcmrnkqoklmrqnljqynwokimoolmproovkkilgqonotnloioqqnstmskonfjirrlykmfoo]fnlmxhmmnloopqnprkjlmhbnxmpmonrlmnlqxmkpomqrsmsckrn[oqp`ponolppmmpoqosjlokmfjmtrnmojmnilymolnotn]pnlnmooZknrnhnmrmupln{mnljlrjopnmligspnvqwljlosnsmopmrqmib]msonlmtsgllhqrofobscsmoqtimlqnnporjollnpmqlkdssrosiqmmpohndoomoommrlpnnpqtojnlno^mjomurpkolmfssnlokrsqmmjotqlompinonjqnmnpoqmqnomllojlnnvqjkljifgmoqpklpnlmhkmukloppqimmojopkpshmplkmngpkrorprnnoqhobptooplntqlkkxmmltknjmlqtlhkkspjpmluomvmmkmjqmlmjlnmlinhlnirnlpmogsigkflrkmnwlmqpnolnvlmdiokjj}njqnmkkqmolntsmwjnnmniormolojplipomltqnlopjmlnpkknpprgeqpoomnqnqxpokoflmppkpkilmopphlnmsphnnnqnotnolncjmrnzjrjqjimylinnntlnuliplmlpnqprdnsnlqv]glprqnkpeoqq_mojqsmojltmlpqeoopxjtlnoepvjnmqhqkimmmnktfpqonnkk[qmpoqmlonpmjmsdlkonop^nfpjlokowtloukmmlxhnqjtnnlnsnmmmmnlmojpp~spqpolokrliosnmommrjnmxjeqljprpmkkjolkpyfqyqtnetnmnujslpmqqouqpowmnmm}tomokpdomjmlsihmtdtjnoicnqwobjmljtlqlsukfiqnonmomfmqlonnlqlrhrlpqnmjypfUnnnqmdlqqpjtnltoqp^okeqkkokhmqmnlcjpplnljqdrnoikntqmohpnslrbqlnjpqpluqslxgnmn_ospiofnopmoenmsjprqrdmodpjlpnruwmtqjrrlkrqvloodnivonkpppefjrmipmllqjonlonrmnfljssnmldkqnicphphniilomkowrkngqqropoponpknnvhkpqlxpm`lnsknjpnholonnqjlojprl_nwelokhncrsounmkmhnlnj]qnkklykloojtmwnrjoloi}kpxlgtmmnnl_nkhlnphuwkmll_pjmssmnnooqpnlq\upmnpnnrifpvroopgrwtblnrjp~qofpnnpqqnmsmqnqakppvmoohkjtopnrqnmnoqopdmmnyxrsnsnwloghbmlpngiojoroskomquinjmonlnbmpnkqnmptjonkfkclrplmnonolumnislumnkrsrpdnmmpnllnbpmomqlnqemriojljsuyxnonpqnpnijsznommmtlrnrlkmvrojwmokpknlmjkllnrngmkklmlgkhonulsnxnnsmpnppoopnqewmmnrmmktnkopaqnnunpjoqqqjmnZwnomqumnqmnpnkq`dlsmxknilnjnlmkpnokmtnpnnxjrkojdmovheqoumjjlhnlglpokoanmlrdnllbnmmimpnpmnmo]zjtoomilnpmnmj`nqvmrpoolg|nnjjnqjdnnrlmlnnmmjanraktjimnztmpqkqokbnupmplnpowkhlrmqlffpjr_noonnopmupkvuocimpllnlvqonnpynsknrmnnnkotlkptvnomrokkptpemqkmjphr`lnookdmmwsnpoh`mooolmmkmebvjvpcpntlkprfnloorlponoo\qgnlmmoloogvqqpmhokklrnotevnnqqdxmfyippmlkbnegnkomtmnpohimijhwlfpipufdjhmquoqmmokpkjqqlonproomigkogmplpxloloilpmwitmjksgmqjtjlkrltkhjhnoomjelhnoolpos{vjprhkmmmopivnlkmn_jlkknnkjlinulnsulhnuulonjnjmgnqjtohompohktlkcpjvomrqnlnlcoofrinopekoqoqkkrqmmmpxmfloqokqqfolpiqjmnnkimntngqiimohoqoroimwiinqmqljqlimimloeqjpmsmnlnnjomuhokpmuntysqjmgmdnlk|pmepmnoqllptmw]nt{lij]mkunjmlfjifqujlsopnormqnn|josbnlrmnlldqonkhmnlkjlnosrjqmqpokrjocqlmoptipkltujonnondrtpyppyn~onpjqnhp{nirzmqpmqsmkupqulyoakpwlqblqomlmjpmnmllmnnokm[woqmok`no`fnlqkfdfmpmqpnpl|puigjkooilpohnirpbnonknmogpsrmtmiqsqknonnknv}on|kitohnqkjnmnlopnnjktnpookgosulnpokpqz]omlrmyooos]rimnonbmnsppkfpmkuilqqmnpekljljennnlokmooopqpmksmhon]rgorpwjlkpjchlrjppgptrmnnqkoqlqkmnlssmkmlorohijrrlprlmqokykomqllongmsopknpolmkpnqsnmmlnpuqtnomoqmhnukejpvlijngsfnmklhflkxsmvmnondp`qkvnimrrhpknomniku|nklbonpojnsmsmmulmgpkpkfqjinhqtpkrotqjshriolkzpmulZgunocawmjsnmuehqpqhtnpmintghmqcnkoqikjldpnjkwsgfjtvnlrgqzevqnlhngmjqnnnmoxfnkhtnlmp|klihonqq|iqspthfeopicjjnpoqlnjmmhhqdmklmlkqmrronwuqlhgionkqnzejkqg\orhntjhnnbsnjornqnimjlglpoophmolrptplmpnppqoirkrisjdkoasfqltqcnnpgloulolpomokqoowklvkswnonxokmmnmn~qoojprhroppplrnwiknthomlnktmeknloroekomooqjwypodswklkojmnolpmnojng~mnnonlntiofpmamyn{qkumnmivjpfmkptkmnolkpmjrijkgVrnrlntlojosmjpqpkosomqnbhjirnsprot|omomdcpqnntqmeipoki~npmddptlnpojpmhnrnmlnnlqsqp{monpproseptloialpiolpnpokkmjpojtopmrsmlqoqnjlnpptknlfsokgkrlqkqmrokhqmxmpooowjpomkqoimonlbtfmnqrpkujmsmonklomkrtlompcnddpsmilpwmqgnkmkmnqupnommmjmojtrktlhkmkrponokjrasnwipnllqlpp|lpmjnoznqqoyjpopmiqkmljkslnrmmlolnnunjrixlnnmhjnjjlmomklmpooknmsjlnuhnfnlnqmpmkkljommrmumklqcpnkmnnqpnprenmoromhmsippcjquhrplknlmkfomonrllonbmnonnnolgpnnlomrolplcnnknkmmnkimpqeqflnwnqntpn{kmopmfnlpoqcmrpntkvgzmrmpmpptjn{mmrrmrok`sllolyopuomppenxhoropqokyppsojnpmmxnlzmqmrsnppmnponybhpqoqmkoslfmhmplommrnmwpmp{qlmnppomqrjntqlpnmolnlonlwrnmtp_mkmjngmspsnomnqmmfrlopqnmlnuspjxpptx^tmnnqmnorojyqjnnmklqopolopepmrbmnyrpmmpdnjrfnhomtopme`hnomlurjpqjppntnmpmlkwvmmorolorknmqompckqpsjlhiljki^kojsqqorrkomnjnnmflpminonllqnnmlnpkomookq_linzltnpvrcpnppvfnjnkqtlkpqugnomhrplxomnhmrnnhljndplpllmmoklknrsrlnkipmjlnpjnkojmlrkrmzmonlnnnquptkrmiijpZhqgmopnntnimlkooomlopkqmmmfnloorqpompnkqnomqjopponmrmm_rqlmovkqnospnmlqjnrolioipnonoowlpwknnoloemrinpgsvksoqmonkmmqrlorqovtltdomrnnoqmqoooqnmolnknnmjlftnlnlpnkhropoonumrjqkoguopriqzdkrepfonoootqpmlhnrolpmhkpnmtioskqplnvqknompsnkrlnmqmomhhimrnrnpzsoemumujqvkslnvqroohodsmlllorlhsnoqopplsifqmkpmjohjlXsloltonknoskhopnqqoomrolsp^jlglqoqwpnqqi{kmoqsnwvomlehleokuonoqliksiojnooihtqnzonjooulorxntrjilzplsqrnlpseomhrrnpunrrkmftomlljpqhlsrknmoniljkrpomnnlpk`kgjoo[nmnmoomkloqoklnkunkhmj|p]^oyounomrinimrnoqknmurftnelmiqkrmonnompxjxhbiqmhqmoljjjtmohsjoujjfnrap{hmsnerkimntpksugooqnqp`qmcmnomhvzokmxcqpnqnkxuopdxkdnalgtmmnqkmfke~hnplkenjirkimohajhqpl{nlqomopuonnrsolmprmrulrpjnqlopqlqpmmsnpelnonptVqnllloot\nnglgq]l{nnlqlknjopdlrmfqibniqrxmrqpohnlpqellopr_lkhonqonoljlhkconkoouq^liiljsumjwnpjjkerdmdmpmysokgdqnnovhlmmjkXkpqo`lmhiiprlgqtqljkmemndoblckro{moathlt`tmrUmlqmutqnzlllfilnrpompgnlpopnbidnqprjoolstViyZrkvlmsjslmmn_prsrrmpqkklpmmmfnopnbl|l_phfjqujmykll_lpgwmproqknklnngrmioolgulnkmmjrnooohqvphfrrppmlkilrxprqnvorlqromsleimiqipkornhoxjrmgoltakmsinpgmknljpqpplmgmonmp_jrkphlmskighfmmprnshlhpgfpqmlmktjkijnknllooqmknqtinnhpgqptprhsknprropmnnkqjwmonooqimpjmhtpnooplrqnoljnhloivnmlommnqqkqmomonjgmonymvuphiscqumapjk`ehmlof{olsmumzovunpuposrzth`kwgqppgvlmqkkkjl}kknnljgrfcqktguoltmrlromljzqvkjnnl`spspceo\ezuiflloomlonhilmopqworlrhmkm^npojlmlslsnhzomimtqgotfsip|nllkgonsppirotononjorgsqhnihqonmqpvgdimfnluqojojkuhwvlmtmn]lixkjrsuiujsnpqkiegqpotbrrtjrhIqaalksmlqokntjnm^nqkqsnlnotmnsznpopkoolminrchonon_pabqm`ovljonlhooqommnooomuppnlirncoirlqpmlnofnfh}tkkklWrqoomqmimsmpenqsjkqmplonnkplkspolqhicnntnsmjoojpmokroslrqwgpnqplntuuoxnln[ijpgonnhnijqlnmqntkoplpopmqljqhVol_qnropopjnimnmioenpmrnulonlsnnwvrnltponopkqpfgmmnrdmipsmnnumnlpppmjcnknpklcqmmnrpmmmrrk]nrhqhxvggmlnonrpppnkhjknpnnoqnjlmgdmrm~monmqnmiwlon{qlmrkjokosojnmtonvSkpwmmhmiklmocopjkosnmozrpoyonmmppokmolnnpnkpq~jmooposloo`uklpgngnmnnqqlongpnqollnqqoqqmdumnoippmklknnomkmopjonomnmnxbgqnjoppngisnntn]skjoroiijolvnqlkwmnn|njlyjopquoinjdqdnqhmmsklnomxmesnkrtzmgjimrnnmtnnbunjmpljohnolocmguhvhrnqoqpmqm_rtunnkmeoqnqimplriqsrlogpmjmicmnpnnejnlnlkooltmnmtkmnphkmlirnmiimvjkoouulcgiolkkmqoo_njknplt{ltpnqopqzpokmmonmirstenjpjncmpkplnlnmpmjimonrhj{omsslpzmxmnpqomnorvnhnsomvqqkq`pnulknlokmkuhonsqonnqklpololnrqmdpmgmwvsnpgmvnng{qnriglpolpljledludlqqdhoronponnmuo^snlqkomrmnjumrmpjtgoiolmopwdlmmkmbnlpmmphcyknlpjlttoolknklprsnmsmnmlnnnmtno}mrUpplqnwlmko`diismrnehmmcnnnmdtbjolsivrprrorlyolojriq}nlnk`pmrlonknohmpnsompnmnfmopomnmjrnkominwmonkjoilnmmn}kn{nmmlpqqflpusimrqymjjkuhkomlnmnsnnnoksonhpognnqrnrgpjblplmnpnobkko[norqjfklkmpnmqeoop{kgmppmrjomqmknhnjeqklmksonimjlrkj|lnlkmsqqmkhhmmksupnlrocjlho]ivotooplkxoitklnlqlqtpkjmsllrmtkplpokmklplonmpmsmnmmnpnkyqiqmlopginnimvtlunslomoooktnlnknnoqollolonnnhmmkwmwqropmkomoto[mkplwqt~nw~pljumjsoqneqcknnmolumczohanojpjocmlqnojokrmpkmhntklnrhrmsmtkotjnzomjkuoloqqodnlnployilodpnknmoeomnpmmtmnoqconlrlmwmuqjknimfmnihnnnljiljoopnqwwopwoqnmrl]jctomgmmmomtphpgopfliuoooioomjqmjmoorcosoo{olbjjmlmoopnnookeqnkyomllmrpjrionuwlionomkoqmmqqdqnpnqijvlkupuksnpnponlkrrnolpovpqloelljliwqplpsoo}pgqikmlqrspnlnnkmigskm~no^oneqhanqpbocinapqmvmcqniptmknrvlmommptqkluspnnqpqjnvmrhjslmpfikmlvmqpjndpmpnaemmymkpntridijxpljowjntpqolnpolmklmndmetnhmkpounnpmnohrojpummksiomolhukrqslxprrjkummgpoiprogjqmqnmyogokmjmkrnqsbrkpqoofmjmjmnqlpkmvmklnmminlrnqofrptkrkpsgmpfiknshwjmqbiloonmlrqhlmvlpnvpkfhpskylsqnsoojomjokkmpoqlolhqnrpmlkijjfojpioiimnmlqqnskmfqenojlmqrkplnksjmrnmprnmjnligsilysnjnomspnkppqvlsskmmmonokoqjelijoplmptlglsnlqixsrotlokjsponqnppnlnmogkllpomotplltgkpsqlloobliontjpnjklrmnmrmnpponlmrmlmmsevqklqkonolvqkmenkkunhmppjhhmojjqmpqlknphouvonotqnmnrnnpossmnlkmmknqnorpvimmmnmmklqqrokuujl|lmvnujfnstomhomnjjinloojpnnjqonljqopnrjooomqphnfnknqkrmlpmonbpplupupponsonmkyuqkvqpmlsnmtmollrulfrummkmosnukmnzmlmllkiqoploopppookprjoqlmlnmlnmjhlnorplnokmrwnjprojljojjlmqqllpqtkrutpsmlmmrqompnlmmnsvononnlmqmmlmllmnpjtmorqmmnnrmlknnpmqnolmntnoknmqiomnjmonkmognuomllmmqlmjmoqppsoqonoqmnppjswiqrqokmotmmmmrnqpolookkpnqjprmqprmoooyomoqiiosnumukpnkmglokhnmrunnm]kkplkpknhjpwrqqmnqnlmkuzofmllpjumulnymdnomtmnklbmloknpwmmxkmqkikchwlopnncl`qttmkmmfjmjnpnmnnllllhkjlsmhtjjmkohpl]mmohhdkmnoxnbjklmmolnlsqlmq^nmnopiashnhrmgkkghi`lnlloiosppkooqrnpcmlqhvteotm|nknuomoosmpllkmllqplvlqpjhmmoompkroupkiokhdnmnponajonmaloponpipmlintlooolqjpmnmlinjnntnk|onnowvpqlnjhltilknekgknokmnimtfoinildrmqlnopplnlfpbinolnvimlrfnmteqmidnnbnnomlqnqlsnmnofonmiollnonqnlmpeolnonnqjml]kmpoqnmhdno}orlozjonrinonfmlqptjkolsmounkrmnojjlxqnknmtnoknqqonoqnlkmnltyhsmmnklmjkdpqqqvoqoltnpelemvmelerolhfvqnlvkxqlnjnqpnllvlprnshogrlqnmoqknwikrsprjsljpsnlposnjqimojtpqpjcnmlljnlnxjnisfqlnmmersqnigdwopoqhqojpmjiqlpmrYmqknsmnqqsklluoonmnokmhijnjpilwopmokumjbsnkrnlptjmqqpknpohlokvqqroktpknfkcjmpnmlookmwoonimlmloo{lpfkmjpmlpkmksonompeppaqnmmqpngjdpjookjujjwskpsliilrkj`hilrmopktqpnqjmmnvjhnnfhlghrrptvoimnjnmjlnkgfmkjokukmpjniklppsjktfmoinlpppmmmjignhsykjlhjnjmjopllmlrprpxpmqjlmpnkqsfjmmilpktooesjnsnlmkkprqokpqqhqlkqnlasnshkomtnihlvjiofqmoksoonzpigprlrlplhwqkfspqljmakmpnkproml^klihrplmkklksmnvosollkskienkoitmkmVoojjoqpdysjoinpoukydnmpduolhwqoqanopnjmlgbqehlogmbnnioinfiimuhoqglnnplqkhmkgrkvrqllpxm`djmvbgmsurhopoplxj`klkimXhmSsipnhialllonlordklzpi_p^oWjtmpsxpmjomkrmrrikwn]qroclnmgmmrmqgjqfpklq{fmqrjpjstnpnrnnjp\gksorapoqpoqa_cqhooxltkon|rokoqnn{odlrsfelnjnrimgrNtninmololhounjntnkmjhielnnmrfljjkpporskholqmninpnnmulXjmjmlnjrppqnohjrqrojegxjtosiqtr`lpmoqjknnipojlwlnvlrqmpnoqoojpolqkmknrseopgipwhksotl{omjqiskklhlkkljllohrpnmmnsrqqokmnhpminlegomnipenlqkcrgevkpmnobmejnpmgmbnkopnpmfnikjkpkjgkrltpqkpnqmmmwlkkm|nnjqurqropiohppmnjiqoinklpnolqloknjlqldomnjcoqodptqinlqhmnkonmljpnlrorqnsesozwonmjpnngnbnmpjkmmtljnonooqjmmrnpt|okunk{ljqlounjjnopprxmopmtsanmnolonsnylkosoomnqopppjniunhnondphonmolihlnlllpngnolmmrkhghs|fnnoinvmnjrkopmskjpsnnnxblmmilhnqgedpopojppcl[nfonqnpvppmxoopknonllhkmglloillwqkmonooknoqqlmkmtmqbmmpnomgoqkfdnokrmqmnnl~prbljplpnxooynjnmpkosqzmkhlkwmlolmnllrnnkomm}nljoqonqkgoqmqjopktrwkn^ngmamojnlnqmtvnhojhnommokmnlmqlnjo}n{pxsokmkljnjnpmnbnmvlnnlxikqgnloalpmknqlknjpnjmpjmknfelpogneonascppmi`pqrkrqhjtjlqmlbqnwwqplqjmrmYmtolngpmpqrknkkjqnnsiknhikjrrmkirnmpkjgsmqknmlqicjjnnjpphpflpimtmrfpplmjrfhjhk{fnzjkrnirsmtmnpllcmnsvlhj~knqmejnljqhsqolqjiusxsournymvgkgppirommqfskrhpcimijhkrimfsmbnkoigrkmsjioirkiujnkmnonolmnncbsqapsmlyqnoriqk~skojkskognqnonqro^pmipp`sniuemnuqgqoprynsoqtroojlipnkpkiflhqmfrqwkl`ohrehloppvmjkxopfywninrlrjmlirvnoihgnokmqrpwypskenvspropthoummfulmloml`nmkpkjmgmjolnoqrumfpmtodpgsqllcmpoyfkfrqipamlnlpthpkmqsocnlsgvopoiqfn}iimijksooklmilmoynwrlpqqqkhlqmp{rtjmhqsnikrifkhlelnpnvikqilnsfmjxhksmmlpbrjouvksokoeqnnnsnjqin`rqknnkmjhjunnhkvlkiqkqwmqrlgqhnjroznlkjloolpkknmfmpn|igjrpkrikqsuo~n]ogjmplktnqmpojlglomorgrrwjinofupolqkuoktptmpmnsvghkljonlmqgixlgsmntmtqjfnomxmnlkhjlgcvmknnsqp\pnloeporfmqlhxnshjcsoskndqnopcldpmhjltqoplmr^oin`soepffkqmsqkrllpgqknnrrqomsqoqqqmlhnmkoxnlnromhnnlpnmllnpeqolnj_sc[nilmjmhnfiermrm~mpqjnmipp}nvlgltpwohponpl\orjtspnpnjnnoslolkpgjkunlypnorqnmlpsoconnnnmovqmofmlljmlekmormuirnpc|ommqnnnymohnhonotkilnnfrtjmujmqnicnlqnopkjqorlYjolonmnrtpqolpnuhlonnpgewkjvoonplqiomsnlhncmZlrznhmonmgjlncykomqgsufqnnknglkrjtnkfhqppllpuninmtojgpqojrllmkqrmi_dqljlnzqppmsnrvrhprjplplljrqpgpqioqkjseehhvmmjok^lrnnqrsjipm\motpsjjgrosrmulpqpnnmjmounnjiggpdmplpmlglvnmmqokkljwmlqbpiilq{mjphejnpmfpfuormsiqoonqli\klnloopoglrsmnqpkjsdlpnisopjorjokoqhmxmjlykgvqnsqnhkkeqippp_nliromlqprjjenopfqrkhoonpiogrjopjphouqmnommnqvoolmochsnogsruznkgklppwtnrumnlnitmsmriitk|ekkkhj_ijmnmnmjmmoqeprltkoindjonlmmjnmmsmlglmbmhpqtrjnojgntrspojonlnmfqjen_qlimjzpmujoiooosgkujjkpnlpmonljlifkjumk~mikmarrhqkmmfifkolioumjkhpokkqnmdprlklzyqglvnpowplmhjqnpsnknwhmdorlqorommresolrrroqmlrsmplunqmgnmnlvnmommpqmrin`unbrqmqjoppmppu{ooilpmigmoponmoirposxnlYmmwnjfmpmfnhollkonpptqnhlfpcrmrjookqntmnmhpklnpqoodjobhmojocmfjmjljkskllsqqqmqxmlfnukmgogkoqjnmmnrqtmkopplkemmovpnopsocppunpmsptqonmqmjljdlljninmogvemrlnlqkkdrmnejqknkrllilmoivolikpontoqjrpjqdopnojmligolmkmqsmj~omggtq{rnmqhkpmqmqpokmtrrnjnqotpgrohdtjfgpjnoorokkxmtmnnmllgyemmflqmfominimwlupmnmijilmsnlsesm^slmptllrfpoomnnvjsmolptemkjrnqkpmlscgkmdmlminlqqmknmisowsjnkvnrnupllnwjprrlpjcmmn_nnwrmrfqkfsnkuq{flnqplhpnknonlovnqoiljsnpjslkikhmfiviqntnvqqlronolqglninmnlqmjfhp{gmkmtlhkmqmpnpfhnln_upiihnpgsrmmh]upnfpiqlmnqjtkkkegpljnhlpkoqplkikroskpoplnospljnojujoijhnemgnpfkqgmmnonlvqpgkahjlnlnptosotoinpbqesnpxoknumjhpoenumvqokmocmhmhtkiviskjpnlfmhqumhqlojgn_tiourskiposs}omnsmloqnlsnhlkknqqmkhgkqxckewnc}egrkksnhmrknnomhihluhnkqjmofhjjguknmocdgtljiqcnxtixnqfqoplktwrnmwunhnomzpqunlqnnmskgmipknlushvowumjpzoujnquslikhyclrkdmZmsshnrnwlywqognletdhkrrke~pninhrpmgnkgjogmititlmmoinsiqsqlvlvojihlqplktklkhjwpzsuofqlookpjknwppomnoj|nnnmmjnirgvlqnohn}nqsummohmtuloullppnrnnlobmmsorkqpqlgunsqqorqjomhmlrbjwloqvlnoqjxmupkooquonrkgrmnnotnnppovrpomerlpsrkpntpnnnwjgiqxzopnwspysmjlsljlplnnlhs{noneqilnnsonklpqkpuopommnnktmkkmsooknmkmmqfiknqnirjkrpmuptthxqlooqmoruspkjmhlntspimtoktrnhtkokmymimimekhpsrmkqrtpoloonoplhhrmfpqmijtmrnsjeokrkgfmkpgnpmmhmpmrollmgprmpfnwienkpjrmionkrmmplqt]nojmlhohmsomnqltplqqsphomromlplnnnfknkmunrjkngp}oeiooolhqunhiqcprekqtppjsdlogfpjlmshsrgnlpjtpjpmlnplhnffllnrqrkmeiopnmkmpqknokrutwommnjntqlmmqpurpshoolhrprlxpnshohonjnlprmmopospjjpmlwrkkzplimpsgoiilqelpfnnnqnppmlislnmnjovvklohklfkronokimokoohhgwwplvkmuhfgnqrlopudptmrgnnsmnmcmkjnsrlmgoushinklmpokgglonioiihplnqlmjnitqquunqvuikrjigjljfnnwkmlqtuoqlmjhlvprwnksfkppqlljjnpikrlroqqpcilkbojrqpnilpppflmokpxnkoglp^zkmnqdrkoufrjktosornnsxlwk{pomiqpng`kqpsmwqrmlloimkogpurmgq`mjslkoqfieqesoeokjmnmoeolgWm`gvpmgrknirkhsyopoknmsiwidlwelsnlonkllklrgmgigsoqpkohjcpenn`ipcoflpnpnksgnrckoqmlhmsmrlonollmkfnhqmqrrhykhqigjjkqoallkpqvrsnalklshitmm`rqprlir^mkionohqrpocnqnsqlpincolkjmnolekjhwgnolqlsqqqlqmpnnjtjplojikooonnglirliqhyrmjoosmpuoqpnkonnnpgphnjmnpopjollomfzlntlpr{qfrmlemsjlgogmoikmzfupkrvmqnkqsoqpnjkmunllmmoplrmpomnnjrofliu}holripkj|ktpmmijegpiomng~ovgmotosfrmokomtjipnrmXqlocvoljnipkpinnjnkplqnloollnrliuloqnpqilkmmmnlvmxmwerjlmqqlnijhvqktmcvlsnljhqhung`hlkeulpts{mc^gvjqvrqgrfkhociyopkjrkrndoklhrrpnepszswodk|ipq|qrsqo{fmqrrcvosimoqskoo}mplprniqunjsnmeumkmokihonhlijmmlp`pknwjpioghnkvpiqnmlppjkmslulnojvkinntlurcllookoKqjeurqnoootjgoupxgomtoooeldoprwoqdpsujrinuexkkkkwmwkypqznnmopnelofonpxkqvdwpnlknnspmdulwruzhjmqplrfqslqrpsjrjlsksvmlloqsknqgoepoionqpmllumnplndksshpypenjtvrkjmm]vjvoj|q}hnkriinqjojmnopmopjmoktmmmmvnkluvoriqfomjltuflitmtjonpkmmoonqtjofmnknjppmnsltwhnnmumVqnljjtoqjnhtngooskgwnoshrnpqvhlnnuoptqhoopomikkpqohmsoatrmookbqmnimkprnlnkqnkloeqnq}njnoomonlmmksqmrsprp`dotXoinbnfpisnzjsmpnoomoonskr`kof`wlmpkmplloWkrpkkkm}ormqrlngvnji{rkvoplkiunklmmtnokjopmhirnsmrnunlknloompnukmstpnmoknlnvmypnanknoqmknpgpskn_rqooimnofhqpqeooivnoldrninnmojnonkrmoonlqqxpoooynp_jmqpkohrpjncnmwpcqiqgtnndthkkoqnhl`pkltlroqrsqqurcjopynojtokqmnopmhoknipkvpxoptknpkslnmophpplpmnmlnjpriomsimmisphuipqpnninrnlr\mukllrqqkpnnphqomortrjoqnjommpnnthlrolknlnlrupkhiplqlonllmpjlphholnjqoqlnqohmpglnmosqkoqtopqpmplljjqwlomlomkkknoxoqqpppnlknkoikppjmmnpmlxmspohnnqlXwnmmwksrknsnqnpkppsnnrlnomooroqokooPmluqpvmkZlyiovnkompnqniktooolnnnmk]liiotl_hmjplnon]mgogmnpikxnnonnpmqlnqpuqggmploolnppwnspoqnmqhkmlnkqhnilnnonmlnlsmklofmnpommnmonrlpomelqqpponqfoloxonlnwmomenkpmomoiwkljirlnqlppininlplljnnnpxvolnn|mlfllonqoonuncnjwuolvprsqplllrmfnntbdqlnqomjqvxpnooqmrljlrgqlkrkjolkjpnbwnmlmbnocuhjnlolgmnulpnaqmonjjvieqsqmrcgmnjkqymnnxbsmgdonsuofumjglsnmwqnmqnmleekmmjnmhhmrnrmprboofahjnmkqoounhlkdppsipqognnoommrpmombsinklmnmtkxkqljuqzmljmkasoqmvobqmsobkrmpnmrqlpthnhijmoqnottrgpmlkoqpgysnnogoompnorqonnjlmnrpqnppolnkqonqjcpjnldptdpksnrpelkkppm}okolpumoimktmsummhobooonmmiincl|ulhnqZprqnqklkqipl}ooZnpdmqronrbnnikgplqxyZmmlodkolnipkolrjjimnkrnlptnpktookgoioumpo}mnjrrdloumpmns|mlrlppnfsuopckhglokppzofonnphlmolim`ilspupmnnhmnmokeyrmqpquknlm^pnmpymoqsnnrlmmnnftnotolhmomolksoomqmlfrpuojwqumnqknprannijlmonnpm|npnoocoq\q_qdnllpoplglmplnqoppmknlkngqqoprlqgosgmpmmnoqpojqsmmmskvppkqrpgmnhonmmoqrnnpkmqomningfemfooplzhntprmknrwmptgrmpjrnpoooookhkpniqphnklnoolbpkmmolprnnnolpqnentnnhutqqooumqslcrohodovnqfllovjmjkmonhoopoxpnoloqjktrfpfmqrismlyihonenhnkfsqqvqtpotqolqicqlqonlnqhqqkqutljrqmnfugkplkilrhlsojoiftkmolspjmpirrikhmnqnpiunkrhlljmprnkqjmonlp|pnmfuhrqkklostpnqklmamprklippjpjpkmpjrkbpnhmpvnqxqmsmllgjthdoxsnpssotpmfppnmojtkmejonppnqnjufmmsmlonkpkvxqgqkpsqrgpsojliojqroerrnmvemmpnmlolglojhkkpemjnmvrixoploosowlommplqtolkkppqnnjlmjslqemylegfrxrjpqmtmdlieommqmmltomskksqtnnr|qpoqpgm|hoiqlilnhnsulpoknngouspphlllkqskirmnplkknrmkmmlmkuhmvefkqlvvmqklbtihmmhtpsomiphnmsjhriqpmlpjkniseknksjnmkfmlmplgkjsnqpgvgmen\osllhsosfvlssjncprnjpjmjmqmohohjijmninsonmgnesthhkiplekohkepokojrjgakqjmkjqr[hspnjowfzpgretlitkltljhlsxfrolmgttfkndpboeomgelvomgpqhdihnsqlknmtiospmfnqjljdomqknthttpjskolhmqinnlmjjnktnlomiinlhmimhoipviktgojhglmlqqjikijlmmlqqtnnimjnlmyoqnektli`mrnmp}oeorsmh\ronhgjtlgprjjnoghhklprpnpdpt_qvopprmgpthlqkqnqygnimmslpqcsonmtkqnlenjthsrlqqxmonnmojl[lxrqjloqipuyrotohrmquljljurqopnskoptfnshr`omikkiknrnriplrngidemftblssxkgiwpbg~vntjglsoloqpblpmolpmmoqnnwxlomojliamlnrkoonmqujlbjlsslnjrljopnekocskmonuiiluoa{mlotqoipiojrdojqoyin^slqiiqnoibfllpmoqnpgmoqitnjnsksilvmjjorfoidrsvqoooinrrplmqtjknlnrospqornoormwqnmmqlmnkqn^glmohdiqjjkoqroiilropgojpsrnqmcnlrpmosmromjojsogommnapnoqldrlkntuusioopinmjoirqqpomntjlopnsjhrmpoyqmslokhjgokmujjlwpjqtolkkkgmlorkllglkfkhogmjpprppqkihoppopmjvlllbtomdtfnhinmnf_rhjqpkovnstqkoslrmlmjkl{erqqgrmkjmeiomoobonqjjnlZnjojpnmrjjmjjpfotmgnjrmhmfookgjniumq[thnlmnvjmovitncprmouormljknmqlmksononlkklmqgigpslimnppsjrvpdjoiqinyqlphqnqkmqkqmflkopjpjsroqeotjpnlimimmpjqmrqkrdnkknqmemkpjilmgomplhmvlofoplipllhklninppdknnmkljpzojlikmolqrnmsfnuoonkhonsnmpjnjpmkjsipnjkvkpnnkfjmvmnnonmnltodnpnkplsmwnqnnlnlijzsplmlrmdknkprtoiglqifnkbpojmqqnonknknpqmnodnnpmnnjjsonymoonnimpqrljlnonojiqmollqimfmflupnsloroplslrojalotlmloshklrcpmsnkzlknopnolptnpnlmmcnpmiqowoopopnonjcpmunmpskqolqmnrnvknmunomiknoqlhmnffnyommrpoqollklnnlommffqo}pantnppoioislpmqpooonommmprlufnmnlpnoqnnksxmmleptlonkmlpjoppmzqtkrnentiornjmqmqnnmn}^qjndqmojnlpoknrqjslonp]mkqqmnrmlokjotnuqiolmmppfjlvaumrjmsoqnonlolixjr`pmooounmmnposlpmnkbplpgvdpnijsnndlrqnpkWpjwinrvzmmrodlum|mpcpmnksasimqlkknozplmjmkpmwsuljkghxpmvog~kjnmmuoomnrjplmdlcppofkrovmnkpposqZhqmqeosmrlvs}huqcttsomytpmkg~qrnpoxaogtgnojloqnqopoinxppqkrxllphp]duponblkgfyjnoslJsoikrprfogcmjfphfrmnomnjk}rUhldlpjtkohmjRqdifkm]qnkrqpfqrrkqzommmvlgpquxmlpmnnwkfrkolopmpxhnnhhogvnqnlnljoknpmvmluqm{xgvm`npmpqqlmpoeonooqoomnpjmmlnplmlnknnmpnmoimmmnikmfjmtrmlojijpmqpwlpjmkqlmowhnjmmmljrmpnZgllntnlkljmqnnnqlooojpllkppmikjostmonnkotlmqrppsnokolokolfnnl{mpnolooonrvhurqolnulpkqpzjglompqntnkfmoknkoqjokqknpnmlnoqolntlymjncpogmkuigoshim|q|mmo~inmqploqtimmrqkyrtcmjmipoknpqnhlmdgslxprkjlnp]ljsmgshqlnrokqpjpsmfjlpflcrmwkhninotlkqnmhshllpljsppfjommmjqqklrgrjomsqmifnmmkmkmndplmmopnmnmoqlwppmnnjnjpghqmmfnpnlonjinlerrpmrplpnmlhmskqcsomipioooqtqokfmnnntknkopkmnnpjmmkqookijjpovnimkvpforomnqlkuempspmilrmlrjkhopimpiomnmqldkopoqoommskxnpnokolpmnjkorjlhppnpnljthnwsprpohqmomnooknhqcmmmkkfqtoqqnpjsipscnnkpopmmmnppqlunnmkpnqdqnopmqmemqqmnpppklpkrnommqsnjfhlomktknunnqhwoknplnkwqmoohlnoxlnlnposlk{qnolkmqmqnslolmonnrrpmdjkklrlbmnpp_npnlnsomlpokilapltollpmjppspkimkdkrjkozpivquppfompojqqptulvcrqwmrjrnqnpeljpknslooomrrpmqoikcnjzropofzomkkfrvkdmlshmmjmjhoqkiohwnsnqgmoqmkfvsollmkrpnookpprprolmqppnotmrzdmfkvkoouqdoomnsijrprkotrujkqpn\kv{jostmjlunlxkimoksnrkllqlprqkjojoqoeqolmnqllrppmipqkwqnnooirrlgoppsmhjpmmgomilkhipk_qrqdqrneshuieglglirpokyighlmiheogjkmfoibqqnqnhlimoikinompkmnmkknpk{nlslitxmglurrqxkmmiqknmof{srnipzrjlnn~lutmirmyhrmpjmoqmnrlp`qulYrowvjhlkfjrkzlrnmpppenmlhqsqolnooqjqirsvjfomil|m[qq^litmonkko\kclljocjiyploqtjqxhwhmqljqlkseunlrpkqyt|shmogpkkimfnfk{xqpkzlloktkvovmsknzywmqoqlqkqa{oinkdnshljpmlrjxkpptrnmqgooopkqtonmsr}omutsrtgohqmhsxlinmwr{kmnjppXkylmnnoqsopznionhlohylmmmgomsponr}hovpppjlutkgmkmjiopkolnumnnmkqoimgpm|mmsllrq|oolppvjjstloskkknphslwmqottrsqllpolptoqgoilrjnpnssmkjpnokmjujmjqktmolq^njknkqrmrkhqdkomqnhkvthmoqorrmqgikqhlmmmmjhmqmnsnnqimymjnjrkokhlnuhbspkxltrmyploqqtjwpfilqpmrpkhmljnmkhnijjqrlgtpjromhnnnkmolnlpnfovonvmmnddprpoimqngnnlnrpmtoolktoknmloqlmrmnnfpnmmovmhncllknpmpojoomgmqmonvonotnllozmrjmkkonppkmiimplurlnmqkjmlkjptqqsmpmofpmproookZoqpppnqpnqjmukjhmlllohkmnnpynumkmnotodpinwoosdgpejoonmmmmcnwcn|_qosrlmonjomkmlesirpmin\nonpoooknmmnYotgmqflynnqroprgrsplnumhroinpkankemnplplvmlqoflponmoyrwo~kopnhfsnkrmrhjfinspopnronmmqqoollgonlqinnllppojpomlqknopmqpnennajhkonktqnqnpqkoowrhmmon\mlpnnmsoljpmonkqojhposcm}olmpomnknjuykzmjkrxajqkljnhnpmsknxpfkmoimnonb`jgfjnklzolpmlotvnkyonkpfnionmiilhunmjlqj`lprlobnmpgqqnjmlnql`ijohphijnjvnnonml{kklj_kknrmmkkto|omomzl{qvkmmtejotmnkmfroqppnmkologjpmplomspomosmonpmikiopo|ihksqnhqprhomotmguoomvkrqlnptiriojmlmikommnpooglonkhpnnklmjpkqpmqmmkmrnpnospanlpulooinnmlymnmpmoumjnktmnonjsmpmqpnjrlrmsunnmnmomnmkpmjpommhppdnkumnoloqnppqopoooknlomhpjpppnmqmhjnlnlmnyonlilqjonppmoemjqvpmmnknuokjrfkqmmplnkopjnprrkkqqphrnjnngptnpoomnmkoonbggjqhllmnnntojnmpmnmkliojjmmnpoqhpnmnlqrimpcinprqmknqsninoqqxmlgjspnvqsihoiondknllnqoblmpojrnnsmfjmrmrnqmhtlpnshkpqjsqmpuokqjsojoodtgjplisogmksonololtgniohgkhkjmrpwnsineqpsrohnfklnjonmmppltkqqmljgmsqnlmslsmojjqknpqmkppmkopwjhsimhtoryknnjkfonprhopnphljismorqslkmopqphoqorsnlknrjolmlsnmoumqnxmqqlqomppooplmmmlmsnoqmqpmonkooopvprgltoph[mlslnkvuponopmoonohikmlnopnlnmsjpomhnhrolqvsonfmoitnnkllpnmtlfnlmlkkntkpushksojomipfonrnmpejvmphkipclljqoqakolnnjkoqmmmtmopxvqnpromirkllnnjnplmnnnnrllqprhspqkmlorlrkpmnrpplmngqjmkgmkjvnpmojolkqqqhonngpklskpnskxzpobrnsmskokrinqonqolqmsnsusmjphipmjmnmhqnUrctnlsqo|oxnrupnjvhnmipnpntmmopporqjpnmknlp^rhlmmkpsfdfrlmenlphqoomqqqorosmmmpohqnimjjqlnnohpjidisstnnsaohphqfntuhrqomjpnopspqupjpuinnumfmp`jopnqnqkfpkausnxssslmrslnmmmzifemoovtquktosngmjnnnmsknkmknoppnq}kkoqljlmoxnrlkirmjptqnipnpmwkmjkjdgjfoysgjggqklnlzoe{kjmlnlmwmghglmidmorrlokorrlmorikmljlmkemnrkqokcmjljmkiqkpimjprnlptmgmnp|sjmgnhkripjjqrmgmnloolksrmhnkozkrqrliktpriooqkkprloopigtqtqmvjkoqpilpromhompjsmninclflflxionokmoomfiwkpnmrnqtoliimomkiqlklolqmmntnumynknksqnamnovonrhpihpomplrnihmejimhmmmprmkgopjrnilmmmopjwkvpliooqmsrkhkqswllmkwpmunqmvnimdhpjkmmfpkmuggqtlofnonjsmaqkpifmnpznsqiprmpjfrlwntlsomrkqkkmppfqrjivmfmo|ofomnmmwnitjippkoplngklpmt`mnknrphljglgrkonlemdrikjrrmpnkneminnjnkklkntnlqnlmnfjnoknkmklokojnlmpnonmprppnkmsikjqlkomznojpqnopsqqomvnnolqkpipnmhnip|morknndgrlrppnq{mjprtlpnwsjqkmqppmhrlljnlmqksprjnnokhnqptksmhonulcholosntooqpnmwnkonjqmmipvmokpkpnnmmpynqnmmsfnklrqpqpkoqhrsmlpfnnmboosrivmoionllmiumnttmpnmgnqnqtmnpmmpoonlnvnknjklenqjkqkmnmlgonmpmvqvpvqjulnpsnsjkqspluwosjmnhnloqnjpnqklkjnqnlhriipjlqemmulknjsoooluologjnhlktjqotqpnqymjmlniiqlfmilm}nqplmgqopgznnqskoekpmsrohimsponkshqrgjmmniomrvnljnnmjqykapnnrnpoqo|knrpnnudkiupqoonioqlnplimnkoonoqsqmktivponopqnpgqjqppnlmpmmspkioppsvknlpoqmqnpqolioqongsnlnqnpomloroppcknonkorpppnokinlpnnmmljnnonklklokmphooxojponnmimmmqlolrnpkomppsrppqq{hnjmoqoqdnhotqppmoimonmopprnpmkkooqjjlnpnlpoonpjonnlmtuqonnmrlmnlmkmoqqnlooqiulppoqlqqhoympfornkpskonruaonenlslzmmqolllmlpnouvorvoomonjmgmrnmomnkpppjngnnslqmojmoomrkoonlnvrouknlhlonqompmnnklonhorponnonnhmoprqpomlkugmqlqllsivosmompnoqqpneqnmmptpnknrmnsnopproprlmopmmniqepmnqrspiolnlqnmknlmtoeooonlolpmloqqkooqspooknkrrrurmoponrmqrnqmhoqnpenkfjhnkpmlprhvkqnllvmjnmbpnjktroptmoqnrmoncoqosrpnnqlmgklponpognmnpnlomplmmnqsholkomsqlsrmpngslpnstjnrqilmprmurnnmrpmonpnprowpqlnlnojslsnrpqqfpmnoqnmoxoyoookposqsiljprsqqomnqpommmgonmqzdmotrdshjsnlonispjjmimplmsqjnlomiimnmkmjskrpogpknlillmnmiqqmokmiqogqnljlinmrqrqmnoipnrnimjnnloklsljmmrqkofmsrmhqmoosompqvomomrqwopjmnpomnkopallngqknopjnmokoqqtqjqwriqlszxjlpniprpkmnywuknkhhloooglto~qxolnlsp}srekxTlqdregppnnulpsnoqqfjumqkrtjkitomrtlqvjppnnglrkseytqprhqkojlqnsrsnrpounqplfflposgkorpprsplnoomcnrlqjttsiglhlilllrtspoqopnrmlgqesjjqiiktjksmssqrkoonpnjgvonclynkpikoronqkmokrmnnoprhqonpkspoqirrnmsoipqjponqjwkjlonoqmrlmloigoqmolopjbklnnknpnpllokmnlnmupnlponolmjmnonumlptxnjpkomqoopmmhxmnsjaxpnllnomkrkmjhjwllomljpmpmrpokmnjmkjcqouotjnnoqmqpiijkskrihlrlqhnolqoopunojgpnwnkmtvikomllropoo}xntmmnnomipq{kmomlslrhnmpoikwmppnptmlvlqkonokqokqqkpmomimjmpolmpoqrqoslrnoqromlqgnolpoiqsprirponmlirocpnnuprnpnnophoonkjrpxoqlmkqnisqmornmrppngukkopqmmjnohomplelktgqqkjifooplptnmololnorifngilrlilkdpprlkiqpmmpstnqgjqcojlnonoesnhlppnkntpoqomprmrmnoejhoxnnrqzromfopiumopqpkmppixmnnoolhlnflohnrmmklpljnnooooqpplrnofimgokmknngskknnrlijoskjjvn_npggvnsrilgbfpsetdotoqoshhksmjoqoqtqutkhkmpmqnnrlmpprolnlkrphsikpejjljnirmsr{kokomkopcogpnownnmpbmqkjntoishoqjrnkipptkhkltatlqpljjjrolkm^ontjopjllrsmgqtkmtupmlrimjgmnlpom{llgrmclgmnpprsohloeplprpepqenpqospjnqlglqjkpppnokwmvotqlqoiolljjplnkjholmngprjphpjtupgmgqkmqjnoonmnkojqklklmngnoronilkoortmpkhlnrqmoovqoikqnnlilkplkjmipponmqlnotonopanmollnsomplsnmonnpujjhopkpmlqjnoihkopnnijmnjprkonpokpnonnplnojsjlnptoiiknulplomhnrlnqnornnkenoknmmljpmsokmqikqmmjgcpzinxmprrmrkpqojmnphnojlhnnklmnrhppkrnqolphnplmnnnqllnmoknjmlpollkpplnnoooqosoklnnqjnqnkmopllnnorpkemnlrngjqhmpmmnmntrmhlplnnmkouojlmkgpnhnopqnmmnonqqqtqlnqkpjomnnopkmnispkrrlrlmmgopnpnqhmkokn{rnqnlnlnglsimopollomsmwfnnnmonnskninpgmjmmnnqnooinopmjmnrslmprosmlmmmssyrpiknomnmopnoopopotqomsltlnnmpnplpgmnqmkskmjkmmnpnpirpolfnlmqlnoolmtopnmninnimimommmponrumjiopjl^oppokommmkusmvphklnjmkmorjpnlqlpggtnlmsntkljnjnomlmkliponqlqsomljokqnmhpmomopvnhomunlphkmlmopmmqmsppnmmprjqnoklnnlqoplqppmmjmlriyqpnooqtsrovlmmhjrnozpmiknnhmbhnnnkpmonrpsmgnllmqvonnkugmorlrlmnpsjnkp{nkhqulnoenlmroilsqjkkjhnqnulsrsmmzsokorjmkpopnenqpkspnopyinrmomhlqnokovjstpnfkrlpfommsnsouksopnnkmmpnoolmogttmmisnrjromrpunmygrqklomilojqjlrpmlwlopnsokljnntopmipimkmljmlnliooviqnvkmpnolsnknnqophdrptqkpulqotnrkpkmtrpnkomqlnnorrhnjnnqnojmmosrpkqnnopqpsjopmpnmnqgsnqkeikkpnxklnuhqonollotllmnnnpqqpimjnttlnoyjtqqirkspnovnlllnnklporojlnpmklknvglmlkktuklknpjlmmlrqkkonhpoqxpltmmpmmiomnnrqqvnenopvspkjkojpnrrqknokmvloirsinkmmntmpnqlqrwujpholnpjnpjlrmmrllkjolntmninnrkoqoiomqgmjkpqglnulqmnpjljmlgmmhmomomfmplnipoqmkkmqqoimmqrvooxeplkmdppukpnomoohjtjqnnljhmospjvmykuoimjntulkiopjloflmlpmijnolkqgmknjmmnlkmhjrlphlumjqxmoiustpmimqjuosniemjkopmoprmlqvnkllo^nrpnnumfmssgmqsqqmlrlfmspmmovjjkmkjqioipkronpmp{lnmmjppimgqmqrpsrkvolnqlgrnbrqjinmjlnpljivrrqopqoptpmkkrqknojgophonmnmmnmolmsoppooimoozinonfmllbkopprpmommjnskkfqlnnoklmonhnioomnmpfonvnrpklojminrrnqmminopmjtlmonoqgmpqoomnloogrcmomoqtpoolonnpqnmnujnirmqnolmpoilnmmqommdquilrmnnhmnhpnmomplsmpfmlqpnpstkmnkplpmjprjspoklonnqgopplpmmnmrljnonnqobmononmmlnmkmknnqnqrklmryrlpmnsjmrqnnonmftposqlklqkomnqhkklinhwonkqhxmorlmlmerohnqmliknnnlqrmmmjnrlovkpnmmpkkqokuqikqkkomlrntnkksmmqrnmnmlmkgqmspnmosijlnlmooompdrqmlunorossqmkqlolqmunnprooplnnmkonmonnumoqsoolmkkokkplonmsohlnjtmskrmflmjkmjjotnoonnqnholnknoolpirkqhmmmnqoqjprmklpqmokmolrkpmlipvlmorklqmmoqpnqmpnqpqpnupnkmnlmmqlcnmomkmljotpnmokumluomrrkmrqpbnhgxqgmpot`ooksqmpnmooniilopksumwqpijomikdrtinkppgugmpljhrimlrilgomohotitolijkswjnonogoimoopljtlqoionjobidmfkkoiqmmosqknkmtmknljlpimlkrqpmloonlmrjojiooopqomzgjmijnofqmjsqvonkolorgklmkmgpnnmnooelsljiokoknoljwqorjmmopukkoqdpknlgqonmlnrkvpkknnhpmmjkgosimfror~qsrnnmnoprfoktknnossrnnopjopkskkngsnmmqkinovsurjstjnpinfuomhpmmqkokhioqnngnmnlpuipgnpprn`ljorntsnoknqwkrmcmsplilqlrjllplknsllnqnrnolulqlnnmkodkmomnppqiqjpvkjqnhhrpnmnpqioinmjoxnomorlmpopmrmsjru{nlokkqpsoprnZmspkrmjommhlpnopkpsvskjnnnkklolpjpunmhmkqimppmmqupkmlspnqljmmnmoqnodlmnompjnhprklopkinomtunqpmooohsnmmmrnmoronspprnoopmklrliommolljomppmmdmrqqmmqnpoonhplpjpplmkpinkopksknnpoqklsnqplptonkrnrommmnqriqqkmkpokmrqkjnlknlkopnqrirmrqnnottqxoqnvmqnnpolmpqnmjlnrtmiqnolonpvgmspnnnprnklvooolrnsnllonpmompigkonkpoixqrdomlonmmnknfpknpnklolksbnnkslhkwpupmlooqrljpqnjqkpmmnpqloilkmr~lsimsklnmplmloukprpjoporjnomonpnolomlppoqppk^doqnpjniofpkjnsolhjnnnonsufllmjorpilmpjlkrloimkllskopklqnjpcpiomnlnjqpmhnjprqmnllknoipnmnqooljlqpljoskomnnnnornmnhonvpvomngjnmnlnrmnpknphmmtmmkmjoonnmoptmrjkimnqtomojnpnorlpnkmhfounkoqnnkqovjkwponkookqoqmlqhroqnnpwppllshmlqoolmnokqmononmoolonnmmkqmmonpmmkdummnlpnmpmnqhhroirkpomnmoomlqykprpmnnqimormglpimiqmgmnrmnrpsmlnnnoqkpnplnjooknmlmglsnnlorkqgmjoltmijmlkshoptqjvojpfilnpqlllqoqpfnkrkttkgposkusllmshnrqnskonjnonlmoktmimolonrmnuomjnmorllnlpspnxlrkknwpqjrtppoqmntotjnnpklmljojupgmitnjlolqonlmprklupkjfonlglkppiikvmmrllnnmmklnnglkklokojpimtlnqspsimlflowlntmpprqmjmkwiqknrmttlnnpqfinluomxnrnokmnilpnpknmpjmoow`rnolopqn\tjooillojmrlnqplppqquslellupkltorucpqphejpqjmrlnkmqposokoqnpmomgipknmlmpklnqqkpslkttkoqkmmncijpmnktlljsplmvlnjkonpksimrcpjraiptrhmonlmimqjnhmilljdjsojmsr~tpnpokiokmptlphtrnkcokrloipkjmionoinuonutkskrfscmlrnksnmgjhsnhirplnfnfkmopfhplpkjmplpjo^jahummninjsmomoqrplnmpmpoopnnvrognoliqkplonrnpiipmpiimkcmkmvnomplomvkklknnonnphomjtopljlonnpmlqponnvonqipnljpoompilsmnnompqsklkooofklnkmlllumvpnppqmvplnnqoklkourqqompmonlwlnompsonmrjovlnjolkksorolmneoliilopkrqnljqrnmoplmmklmomqompmnmnlmrkmlllpnplippnmoppslhqmnkpqlsl~molqdlpgopnkuprmmlljjgnliljtolmrqjsfikohnwcqmkililnlrnnp}kkmojnomrooqqrgtqmnolmehohknkkrrnjmljllrmiiolqpklggrlmrsouqnrlojnpfrmkoqihimnnoinskjqnrvpplerjqkntqogtgmnqvoojqupluqmnionlimonmnlmiqlovllloiniknijmoonsnlipmjntjnpspoqmrjhqnprtnrqtooomnptkooxlm[innnjhplrvpnlmopksiknlnmpipkolmkkljopsknknikqpnpfnpqktnniqnsnplpmmhhnqpnlkopmqloioollrtmlpnmmplqmhhlqsfjumnllpplbooiipmrplomrmmvkooonroonionlonkpemprmqonplrknnmomhonqnrpvmknjlqnpqnm{lommohlkhjkllogsqirnmrkrlrspnkoolqmlmtogpnskispnlilrlphmnllhoknonprlpkip_rooonm_ijtkqmkqqovperlolnoqmqnplotqmtnkqvhomyngkimpnmsvnomqktmnuosllckuoqoplrslnrolhrllglmpnuhljtjjimqcoocqomnnjkzpjqpllpkkmklonlvhlfqpksklllqjknmqooooplppplrilmpkkbymlpipnjlqnoqdjsmtmolunwkoolqniqqftwon{qlkksrmjhtnompwmnnjjpxnsompmttpnptksmprflplohkmpmunkgmnnnpkpktoppjpmipkwnrklmjonljpkmsmhqponnepiqsjpqrlutjurlosrjnnpoonksnnlppgkmojonmqpljmunrslqsonlipkohfpmmgponsowdimjoqmqqkjnmoplwmmrhnhmnnklpnnmlmmmroosmomnsrqnnlqksnlnoknqhojowzospukmnijpkkkpnlllkjmoonmlolmkkmnmpnomqppvolnoolvppniokgnkilmqjooolhgmnloloknwpmlpgqmpuhjbugjrnohqqrllnmflknmnjfljnpqjooemqpijylqvmisoplponqpolnnmskjnqlnkllokwmnqkonmknkjpeqqp\jqkwmnmqhikottjolhlljmhmnmkmnlshptkrllmlolqpsqkmjmkonnjknktnsmojinfrrmnropknnrlpklmrokcpodrmhknmqlipmmipropsqokgnpqosromlinplnpimmmpgjiokojnlttaxlnqmotoopgllmlnkknlpqmspneooppkmnqrnnqmmunpmimkvsmiojmttnljpljsxoljmnlpfrnrmnokrorojlmqnslpskpsolmlipkpmimqklqqqlqrolopoolonnsorgsorljnnluoonnhuhmqmjssmqqropoorponpmrobplinknqpklntpmgjnfmhmioktlkvpnqnhnpnmnqok]lmrlroorhopjqnnponqqkmsnnpnnponmiqmrpomjlomqplnpplpokrnmvjpnmlkkppqpjoppgqmmmkqjoloniiqqvolenmhnjjnojooupnrvlmlpkqnm`pgnpmomnjpkpokpoqnqrnglkjpoodkinwnowhontmptohmlmptkmhqinpnpsllnlllpllqjinmmpljilokpniknqkrpmtolmgmoofprnhfpnipplnxmnjmmolsno|njjpqmouspoppjfntknopjllonqrjlplpmgnnrnpmtqmnlnprnmqmlpsmookrpplkfnnotjnglpqioiklonhjspotjsnjqronmmpjmjnsrokgmolnprkpwrhrillgnpuonompncpooonmnsolgknhmniknhtqotmnpnroglqqquosmpmkqoimonknvnlropnoqfomnqplnnlmqkspnkmnjlltrrphnqwlpkprkllltnoourlnoqoimmjrhncemokklullinrntjpmtmqmojvnynpoktopdprporpvoosonllnrmojslknsqpyqqmmmoqkulnogosjdnvpspnr|fhimlonlttuoqpogkftqjilmmremhjppmixirkojonpptlintupqogojpnrmqrmjnkmpuqnsjjjnt[mljrnfptosammmehnvjrmqlmlqnknjzpgnnkeftltvgikkqqfimmkqomulroqqsnqnngjolhmqrlfkponmwntoppgsslhonqptkonqoijmnunumrklltrsrqljpqghpjowmokqriootlmkvmllrlqnqjrsolinmnomtjjpkinplljqhrkslmhqnknonlmqnoolhpmmjjkgpnn^gpoonermslnppklponjphnjmlglnimlsoqhonsmongolrqjinnjsjqomonnomnkmsjononqprrmqkmonjtmommokrnnnmkr{snpmqolqpoopolnpkpmlpspoohomimnlnonpnklsmiqqmniojonkninopgnomunopikloopsontnmqollponmnokqqmpnmfnomolkmkmopwmonjotprmokjn{qocnhejl}kmhmsqomkhsmmmjhiepwqkopkjnonikssksvsrkcpurpxknlgonqqjmllfqiqmnkkilnlmlnoqpgmfllotrfjnkrvlunotnokpsmofllpliipoqlmijhspmqikjlqorskiiulollppkonplopkfhnqipmegplmmqeotgpilmoomklqmrkomkkylpqplqiprrpqslrljgqoglrnnqqnfopsqspoqrkhllmotnjtklsjxmqlljqombntcpmmlnknonklpolmnjqmmtnoqllgmompsuroinmoplgsrnilopomqnnpmnjmroptlnoosmmmmjpmpqokkklgnnmpkposqnqppojllmrmornoillmpopmllrjjmrommnmnhmptnoljqopnqnqoqsnllpjmkorltnjnplnomnmolrpnmqgoljqnmlqnmlrkjkmsllqpnkoepnmnlnrlsnkqoomnrkoronmmmmmomnrnnkpomnpinorqnnillkuikqjwwokolmiospnoonrlntpommimlmopptlgnwpmlmsnrmhwronmlmhmntmlojlhnhsmplkgmmppnkkptmpnlmqlklkmlnoiotlnqknnpcpqlppspqospmnomqnnokokjrnouklgkqmolljjrsqprtppnlmnmmgounekqmhprqnopookunmijimnohkltmpmsqtnrsnloipsjlmnrrntjlmninnqoqmmltrompponpsonnommorkomimppnnnnkppmupooompvlgtlqonmonpoupniolrkmqkimnnmsjnlpmkhjookmkqommhnjmop{pnohiklknlnolpfokprginkolkmspjro}mooqkpqsokpmnjmwvoqodrngqnjnjrnqmonntnokkp^nrommnpqppokpmmhppoonjjrltpmlo|irohlq|msnmmrgppsjuosoomirggnpmpopgllciplokimpuklpnloplnpmqmolofppopqnqnpjhqnlomhvrmoinlkimowiltlopqonnqorktlomoomkqnonqmmronophknmkmmpshkipiokmlnlruonitqnknhkqjmnlmpspuhfjoqoqmnnlmuoprplhltnqotqonqoonmonlwlrmqonnsopptlpkmnmokomnmqmkjnlsnlorkrlknsminnlllsonolqlt}oopmnmholkkotpklnnoprkodomtmmwoqxpkpgonenljmmnqnkmoojllpszjpqlkpnpmjqknjlhhlqothoriojjhqskmxnmhuojmxormkkljmlrorllsutwolmjnslpoqhkpksckki}ppmknlhiueqnponillrqhpjnmbqhplmglilydhlmkoloonqrnrtmvompoqnkjmunokjlnikmoqljmqsmojkopppgynjojmrrkhjiodlliuleiknimnpmbimvwoqqsjmhpmllsqkuvkgnlwnnsmoimqnovgppkoqopnsnkophorltmppvjqqkompsrolqmsppppsunsnssplqjmeiomlojnpnhnjgojpommlpummmmnnlpnlrmofjkplpjpooooojmknonnjjelopknolqigppokhvtoopsqolnmlspfonnmmumkpqmjlqhnnpdmgipoqjnulnomrpjnhnlnjomgkonmnqlqnqpmolrhqnkojlnptvm}jlmjkpknqurnnjorklmqungnmkrpnnfjnmfkksoywjglmjooooqdnvmgpqlkqomklrmonmlmmwoktoupfljoonoklnolhinmktmoprorpkprmmhmmmgcmynnllnrsonmoymnjprniuutgnrm_npkbtnqpmlmnompomlnokrjolosrinmllpmpmiooopoiaqlkmtpnjmrqjqsmvnqolmrmrlsnmlpjinnihqomtproqomvnmniooornmi^knnmklvriljmorohsflcpnkpqbpnipmooqpnnknojmjnlqwtvmnkmiomnqjomnmpnkqmmokdsslenllqlikqnrlknmhoilvmcknprnkqkoosmlpngqmogqjpnmnonnpnmpqlqopkuojoolmhksmonlmonnjgiotollolrjmiljnniqkhonmkimlslsnnttgrnltoflmmunookqokltmmvnkqolmnongoljrlpknskokmrkoninmslompplpqmmlxnqlpnmpmpnolstkonrspnnkelzslfnjrojpkolkrnopopltmnlzpmrnjjmmnmmkmmqksnmmislmlnklnkklilllsogjpkkoqqnnqqjolgrqooomnrmnlpollmkomlpnmsmkoonkoenkjkqlllomtnslilmntpnvplnnmionnoobptimmrgiknrronnhpjohrpkopsooouwjnojnosnmopononuimmnrmlmlkkmnpjqsnonnnfqmrnqnkorlmlrjpmnmoomfmiocnmimnupnomonpslokppmsmijolhnogplktpjzqmrlnppkmqmmoplonpumpmqmjpmnoollsmilqqrtjmsqtoopbjnsdqrkpqlorlrplmhomrpplsmnkmjmpoqohnnkppmiqpksoskkmpmromqtpnnikmknqqrqmmonnkoullnqmkrnomqornhkmpoljpjjpllnpmmslhpqemponlqnnmmnjomslqjnulpopnspsokkopnsnnipmnjfonphpolrnnlkclklgnsomqvxfkrskkmqoinnknmgmsjkimsknplmlpnqsildnjkooopppijmnnmmkonimlmmkmlloksnplpnolojnpkgnirjlmnmqmpmntpneqntnoomqmoknqttpmhkrmmdnmllonkmomprnjlmllkkpmnmuhntpmmhpohrmjkmmtrtjiomlhnjnjkssomhqoopqnhroosjhwmponngoohkmlkvrnnmlilmlmrmmnqknqmpmenqpnrllpjmmrokqomromdoolglvporqoqlppoprolurdsqiuiopkolnmmrommjomopnjqmnvlplnrlpknhnhnqpohlkmnpqttkporloomlljnmjoorojwnomlmjimfonolqnooolnmnkonjkjjrpmnhprmopnnmjmkomomkphooknimopp{jonoqqnnyourrpninrqmqjrnnmirpnlponhnuonooplnpnkniniqlgodkmsknlrpopmqmkmssookeplqmpjqopmfprbnnksojkooqqpqognrqknynosplukmr_qpukpyolenmjmjopomookolqnlqmoqtpqmnqmjlqrmjlpgpnkormnomoomqdmmojojnhpoolqomnavonnnmllnnoljkhmlmqonjgnkzmjjpmnpolntnmklopjoiorjknnnnpmmnmplpnigqqkhinosivmpnomkjrmnlpisopoopmorokmpmmomnknofxqlmknslppmmmonklpnlomokmmlkmpjmmo\kphnnllpiqnjuijklxnnllmkmqpknglnhonnklniqlpporrnnpnolmnkompdikmmqonmofjrnonolqlnqmjruniqgkomsnpnjpkprikslqnlmlkkjmmqmminkynmollrhljipkvp^sphmnlsosnluqmmomlknqhgrqshlqgvnmnpyphqlitiopoooqlnjpqfntnmuuqmnfkjmmimnsnlrnjmnsnihlmjojojhrnmjoomgoko|mjoppfjfvuplkpgphkoonmspsnvpnomkkomhnmujngtohhngpstkonjrqgkpnmno}lgslnmlpkpqssskknmndomuhklnlnonoqkosqovjmjoomnlrlnlpmpmpnjlnqungpnlqqrlkopwklhonpilhnpkpmmomoptinokpompkmmwnsgmrqnnmgjrvonrpioljtwnknjlsojloqnnkskrofjlppmlphspsljnqloljnlilrknqlnnomjqnmlmmqjjqqr|lqjnnjfqonuppsoqntplpnjpnxfkvppomprnnmsoomnjpqmqllfqltmllmpnnqmnmtnpnmgomvmrnrnqtiqktmqjkopppmoi_hronjsjnqhjlrsoliolrlnnqmmlqnjnmkosrklnkqtnnrkqninoipkopnmofnvinqpoogsnmmkommmknnpmompjkjnorgpnlmjsqtjmkmomqkmlnqmmiopllosqglmklnmjoslhnqnpooiosolpmmolmjngrllinsnkklqnlpomrqmlrpkrlljonjunrkponoplnognsmoxpooorxnnnoopmljorqnjlrlknohukljroqqltoqioplqstmnlmqj_monnhllptkljtvppoldjmkqnrposmjnrnjlxoimllpoqrlmqdnmeqkinonpgnmommpmvlsmnnoomlspnjroolptkmjngbiilkrsolorjpgoqqmemkjonrmktnlkklsqiuongmlmlogmomnhgpnlorntokljmenroomknpornlmpxlomutmllnoqngqpnolkjqqipnijrorvlmsrmrlrpromknniqljmkkoirmimrkrnpnnosrniomsmlpknmnplkpmiroknjoqonmhoiolposjkohknloqmjmpmqnkitqinlhkt_phuiqokmonnnnxllpposonmoh|qlmhrxiprtnnpomjprrprnlwornpnpomlxlmquljshnlrllqmmupmjrlolnmiytmmjnpohrphkloormjqpohwllpnmroqllmqncn|jopkvmkrmrikhlmnmlgnomipjmrhhoo_niwnommqpmtojonqkqtjklnbnpsonmnnmssoomjejpxomsmlWeqmmqykntgbntjqnmnzommonfmrpohltqrsrmlrlrltoplopannjlgmoopp_nkxopsofkrqounlrnhriolpmqihnqloqpqinlgwqnmqqnholqnqpmiotmulnqoonhklkoqpitjnqnlmmlpsjrnjjmowmolgqlsmqqlmjmlkoplmjhqlooxklnixnoiqmuohrplpowslqjpnkrpopsnprslpljrmopnlntoionromjolqopnuololnmhmxlinltrnpolkmimpnnjkkopjlpsomiomukniohmpknoknmqnmqonihoxnqckooknokz|okolommmqninunmpfmprhnrkomfohksnmjsnpmrjllqomomplnmjqrmtpomlhnmpmonlplimlmgpljorpnoqmptpmnonipmolmoonommmoqsmjnojnppmnsnmpumtlsunmpnmonpusmqpkntopgnpmmmknmnljnllornpsonlmnhnqlmtnoshrkmqojmpnlmnqqnmntkoqmuonqrlnmnnopnosonnojnnllnnqomrsrkphoplnmtjfmposnoilsnohsomlqmjgmnmmoormojesomkmokmlhkktolkjooololinrkqlmdkltlkoqngolohonlquqkrofqjmonnnqllmnmlpqiklmmrjmnpponurlmqnqlokltmuknookimngkkprmloorolmnnhkkhpnqtomtopmopoipoloqrqmmulqpqrpqmmnlilqnnylnplmmsfmpqimnmomqmmmljplmoknkkpnjkippimpnponnnvomklhrklnqrkonpmlpnjpmrmmnkmnlqkmnpolnolnhllfnolnkqrqknnooqmrpjnnoqolqmhqmnojmrsnrmnlknmlmmqlopggponnlspskkpnomioooqppnsksmkmnprrmpjommfjjjvpooqqqkqltorlkoprkpounrntkmgjlsrnlpiqqjngnoqkpqmmmunjmmhkporssrhqonqolknppoomqohlyolknvojlliprptoolmkqsesndmsnslslhplmryqkfqufkxpounqoho|klunnrrjmqrpnrosphmqjkympqkqqpgqnnkokcwlselnhmprojsxqjodnppmnnklronmopsgooqpkkpoonkpulwnppllhmnnkqmlssvlondlrmlhtmhgikoqktpondnilsoprimowpk|klqtrioozjpo{msmlqixnhmqonmqoljlntppoqpyppnstomnmmom|jmpmllnpoknroojkomlmoskpnnnmmihnqomsopnonjoosqnlljmocdrolxopppoooqojompnmlqlqmgihmqloomqosnsztsndnolkiqnomplpmmjqmnsqopnnilthmmnmojoopnmnuvglnnopsioqhkkolmnplkrthmropjr~{nmhpljnjolqjkotjodlkpjokmgkooqmknlpkfnlhnoumkmnmmopqqonjlmmnonnqorkpmnpmqmlrgmousoiiknork]otnnnopklonsmmmhlllkoonomhlnmqmlnqkmgimljmuomomdgsmnkhknlnjnneslrllipoljxjmjqistmkhponofjdlqhokjponmphnnntplriiohohqjlurpighmnmqjnfjkfmonnonolnpknomolpsofktnlnlnknntmogmnsesiooqnpmnqqpqkrnrmlmnkjhkmkmpltnssirofpoknmmsn{mirlnqnmpjnnslpqmqoklporjokmmnykkkqkljglpmhmorktoloriljotonnhnolnmjjmmklkjvppvppqpqprqnelstnlmoknrpkolremnlkmpljpnmkqjslmnbssokxinipjsomhpnrhoninlfvhjomssojplmoqrlsoeollqpmipnooqjlnmrrsommtqkjqjhmhsqvnipqklrvopnrknutmowtjpkomnoqqpovqkmkrmkrlnxpinsmosoltoninplkqixqknpqpmolnkpkkrlmqorkkkkpukoxnluplqplooolokontpummjottjklrrchmospxspmmjmgopn}pthoioolmnollllnjqyqkmrsepmifhpnlhoerrnsqcpykollpokllemomqmsnncnmmlqkogpjshnppstnovqnmignnjmxnnonpwlnnmpsktsrmirfsvnmkonoslmtiknkinrnkonjolhqgjpnkhfmnpoupkpqnonjpfkimqknekjqpjqlsognmtgvqnmohpovrllikrkefclobqononnonosmgmnnqompmqnqniupqnnkplnmonsjopiksioohlnfmulnmlnlpnqqnknlmmqkqnlkjhpmnnposnnomsqqhlqpmnlnbppmpohlfjnomipomoohmplmmlnppmrpllkplkpmpmjlpolmonnmlmnnpm{flkokmjpnnonlqsnkjppnrloorfmjpopmnmsmrrmoiooploojqkekmmmnnmplnnljmrlnoppjkrppmmpnipmmlpomrtromwlqomoogkrorqnnijopolspnnmmmmijiphlnnolmnoskohqprlkyojinmowmqookonfllmolnpmonoqklskkrioklqhnjtlooulnqqnqqeqpmmotqjjseonhmomkkjomslpsqiqqpmnqmlnppsnmlmqjpkkppmnolk{nrknppmlsmkmpjn]pokponkohymnlopprlipspkpphlokqsjmmfrmqllonoowqornokqmnnjnlrommppipsnmlhasroopwkmmnn{nnplmnoqnimoqrnlrqoonnfmennpnkmsqookplnnpsqnxpikooskonnoolrnqpmljppmquqosoklogsqopmlllphnnropnpdljmrnmouthopqilbprllkgqtjlojlmsnnnklmsoroopgjpppnoglmlkolvjotlmnpkolmqkpfnmndlklormpqkllmpqropnqerkmppooqvmsnnqkgmlnkomnppolsppoopngmnljjlpuoskrpmphoommnopnlo{trqogqmnqlinniqnppkonpqlronoqpkjmmnhlppnpullhkoxkjlmoonvmovqmlnkpnlqngijnjumnemqomlnopkjjnnkmpmnpnoomqpmpjlnolrlvknopmjmlomnjolnmnnjpqqnmmnpmlsponnpprrskktmnolnmnmpknulmdnpkorslnkrkjpsqkklnkmmmklmnnjcmnqqjnqnsmmpnktomoninosmkpufrppilnmppsjqooikqpmlissokpmnmonmsnkouomllmpmkipon{kpvmmmoqmrhnjwrpqnrstpzqoepvngmpqvqnommpmojmlllltjvujnlllnnrlmjpkooh^qqojpinmptnnkmgmoryqgtmlprlmmtmkmjlmhmgkotrqmpkiktmnqllmikllnnnctnmlqrmnkpmbqnmoiuuqqjotinwpovpnpojrmpjmlkoqukqpikmjpmiomprjnmlqorkjoopssskolnlmmmkjlnpnqpkomnlqllnntqknmprrqojlphnomjrmpmptpurnkmmlktnrpdkimplnrshqznmmwlilnomhmhkmmljnmokqmqfqikslmgqjlnnnolknknnmxujmnnonnrmrkpwnmuroplrmklqtphmlmnlnurlqmlqnmsmtmonofpomllmnmmqmpnlpmpomlpgniqpiknnjsjklpeonoqtsmopnnnjpkgpfjpkhgminlrpmnmommklrnloqnnolqnppmskekoqnvmgggqnnnlnnjkokmjpnopmlpjpqsnskonxtogonpopnrqnoojmnkoqlinmmnlonnnprqinmnkjnmpmnpnqtnljlrgfttmonsojvqilhsmlrotrnonnnpqoopnymngqqjpkgnknppnlogkopumfnnlplmkoqtnlnllrlppktxoromntiotopnojnqopjlimoowmiocmnmrfjmomnnnmrrpnpmkkhnmooonmoomnppnnnqnpmoelnkmknollllnoofrmjmqnlsslnqkmlnluhpkpmpphnhummlnlrlnmhoeknrhompkmokclrolnpksonopnmnjnnjulmohjisnnhnnonnpkkpoinonnqprronmofpsolmmpksomonmkijfnonpmjmqprooqlpqsskpkkmnmmtrnkimrnsrjnkmujpplolnmkjinempmnsnlfljo|tnnimfojrrpmnmklnqostmkjpmjslnilmkstmsmkmpqnvqoopkukommkpsllrkokolpojmgnrlnnotopjonnpenvoogqorhnnnphktrnmmovpmmksirlpqnnniqinnppqmkkomnebqmkllknknnlmoloftslsrpnelpovjrjrmnjlqrpppjlrwkmpmrllfkommuroojmmpgjomrmjppsnnllrqnslnjndlhqoskjkmqqjiosnkmmmpkmunkppvpporklnhjnosqhppilqkpoclhlqskxsjlloophlqnlpqpnlmmljrmpsmmooounhrroqrmnqpminoijpsqbsononjpmoknnpljknljoloopkrqlholrkmnkoskekonmloplqooklnnqkgirqlmmkokxqllvoullolqloopmttlpqkkldlnntrnqmtmluuwrormiqopjlrpnmsttktmpoprforqposquunlqdljkrnpiskqkjkhmumnjplominqslsnilmomokqinrmkmoxsijkipufruqnqnmkmsmnmmloikolorknnhmnmqosrlqlvnhmplkmlnosmnpqmunltpoqmmplloilmxmqoomzjoqnnlmolgmnkssppijwnqnotrmnodnvmqqnspnmlpjllmnnvrmonplinqloonmmeogookpklqlqnkpmrknropokollnrnmhoknrwrholhlonpjellnnplmpntnnohkoppnmmmlnprmoiiolmptgosijnjmnjnnlpnunmonlsmpxonkjsufqrvnntollqoojsnpnolnpomnnkjnnphmmormrqmplkgjnkposiplmmijoplpopomnomlommqnlmmnlnrmjnoopshmmwlorqojntxroxprnpornkrnkkklnnkolpmlnnnrkmfwkpjnoroommfogooolqqomnolqmrjoprcnojnnqnmnnonmnnpmhmomiqkhnnnomkllpmlnoomnkrohinoqmppjlposnrpmmromqlnqojmqoqqnqrqrnminlkmonjlqmlokknmmnkoqmnommmjmlnopsjpomnnmpimkoppmqokmlnknvmrokoktnlksfmnnknqntumkpnjmnrlpksnpjonfqilpprtfpiZpqknlnnlomulnznmkjimqrqimorntlllnqkmouotkgmiqkqig|lpkkm|osomprmnonkvmmtpoooiopngnmdqqpopkqkomplpkovslrnlmcvnjosmnplvmnmolqgonqqjsnmnjkppnijqmpnollsulerjqqpplmnvrmqskmmfnoulmmnpomqlnsjnunmjqosopommjmpnlnpwnronphnkpvpsipjlooldjmlogilmhjnnimimlohohnfpnololouzkjtpoolllulnphmljlvnnqrhsiiogglhsjlmkoqiloowrgjnlqoonmlfkpnglmlfrlinlkhnpmqwkqmlgonmlqkkjmjlkqwkohronpnlpojtqolpnqmocokoqivjmjlquwpqurplhjmpmmoonpopqnejqqpkjkpowooprlnnjnfmmmntqvppnfmogknlmnlpilnlmfrpknrnppOkpkngfrnj|ikjlmnnqjjpltmpnwqpyly{npxoirmpmntmdmpcnl`mgngooqhlmolnojmnolpjpkopylmonpkonjnqmbkgnnnjolthoqpxhfjoojkokmrgqnupkqwgompckljcnmpmlolqq\ljsmlqmpojmktjoomcgnqgpqpnjp_mlsnnnomqfpnlnnnqhzkrtpmhrjpmnemprlnroomqvrokjmhnrzomqmnlrusiolnqnlmmmfmnqmmgrrlmxlkk}tppnpokjRmknmilippriklkninnlslkogopmppmpnohmrqlpxjqljloksllunm`kkjqkqsmqpjnlonrnqqijljrkhlvrpjxqqkkmqomqhlrimnnnikimrqqmfnmmmukpolikpoYmmlhmqkhonmjkojnmovogndpojysmqlnnoloqmknnloplplmoirloeqnmktqhgojjunnpjkrkrekgjlmnpmuqmkolnmkkqtmnoskkmmlolkloqinikvommpmvplknuqqonllmfnoiomkpmljlnnjnllkoqnnpsmjpjlojjqoipqnknqmkomoqrmlmmmkqlqqoohnpqvuqlqnqlohshnolniiolpnopnmniqmlpososrnpnrqoqnqntonillpyrlompmmmcnkrmlmmoospnsommoknmjnpnoeqoknjndmlmnnqninmomppomknqihmlnjnkqzmmkqpmjoinpomplrlmlmomnohjsmjmhnpmkoooppcpkiqfqinmrnnspqoqojokpooqnqjkmlnolnmqojnloplqnkuompmpmorhnlprksoomjlknrktllllmnsoncjilipmllkvonpmqqknmqqlmmmvmtnkrlplroqornn{qpplsnmookomsqlknmnspplgkklajphmpmlmvrplomjmnmokqikqnjopknquursqonmmkohvkojmrdlnklmonvmnlksoigrntmmmmmmonnjoolnomjipqlfninmpjhnooodrrmkmmlgqnmnmojokqgoqosmmjjnijnhmholnnljnntkhnhgoqmgipmqjqhnunnxqlmokpppomlmsqlunpjonndptkmrmfnqmlkojfokjqjcnlldijilomqohrrmimnrmimlikoolmmpmmjpwipnolkxjpoqmnnsllpmlgxoljmoknoonmhojoslijplmnorklmnmpgikplopotjjpmkookerllnmiponprmboqnpmpmnqjkkiqonjmodriuhononrmhmmiojhnngnoiorrcjsmntnpwtlron`lspnemnqjmkniqqrsnjmoozckpjnkonomrsokwplpmtoprmmjrtnkmpmomqnopqrmtvhmlsojpomomniqltsnokypmlnnlonlomoplpkpmnoohqohomooolwplojrxmkjsqnmdnonqppnnqnmsijpmrojdonjkmjpnhileqplplttlnkkmpspjpmrkkzntjpypnsmloolhlmonnoohmnlounhmiplllpmqpsqlkonhmknwlntmqlhrnmm}moolniioollnjonqrnlriokmolgllfueonnmklxtmmmhfopooqqfqokjlsqvhsmojorpoppmzsmjhlojtkunmknkknjrummooutjpdrmmvlnnnnoollipjlmlrtjsookoqndpkhnpqxljmmqnoqmmoilmomihliizmqlptokgomijltmleomlfxpjinpndnlmkpmsqiniponklvmomotvklkqiomaoefpnpsornomtonmkoponvkrmoptlqnjopirrrmnglmqrqlpnqommmirklnromn[ufpjooomkknnmshnoojonniojwlqmhoskrmmtnlpp_klnpmrqmrdoghtokotrjkjsqnxlolnqmnplrqmkpopmnkwupnjknrksnilpljmqmprjlhnqkhkohvlqvkmlohmrlmnpojtqnntjpomnhnmnrptlnlkonipmppoelonllnnmlnnprkookhpsnnmsnokmmmlpksiqgkeqotopmhomnnlrjsmnppnlqgmmkmmloimkhnppllimjolomyi}jojcl{vllolmvlenohnlnomrqlmltrlplijoloqmnmnhknoilijrespokjlttpqplppsonkproluqllooqingnkrkwtouplolismonlnnhliqellpxjsmsoeokippndnlmmvrokmkootlnplqiplnnmokqnjkjgrlqlilnnoonokjosomhoqrqmrrrmqklliqqtlorplprkroqmpkwfnojhm{mqjpgntgopdlollonokqlojtqoknnsnotqrojhmmnsjprqpjnnmqqomgtjmmlfkksnlnmrnbfmpkknnqsomkdywnnoinxqjmoioinkomvqqlpjmmijloomrpnpklmksmlmjbmpqkhpojjommirllpmxononmsqkomnmlmrnmgpgijfnlmntojimoompppmamikonpmoqkllngtmmonqloyphqkmoopomtlihlpknkmpnnnjmpjklgoptplonvqpmoqllnkopniontpoonnpkmenrnlkrmllngnnqrrllsnmpflmoxmpolwoqlinnnkmmmnosoknojtnrpmpkjpkxutgnmmlijgpoonnmpopnqntmm`pinnmjmlkmoololinofoqmomllmkptnnjoionnmmngkolommppfnnklmuphoonlrnpohvnmimonpksnnlolomujnkklnompklpqonpmjnmknnlooossokllnhmoootmmomvrpkoikrnklknmmpolkkpjjjmoonlnhxknmlnilkononnnokurjlloprmktmtojmnoppohmrmmnommmmhjnmqvnqllslpmnjmlopqpqmporllnmrnqoopgnsnldnkhrnpnoonrlqnqolmppljpmtnooktqoklpknmnokmkmremjkllmolmlgmpmmqkokoonpppkqpvomopqnnmjmnnpqjmoounllnnpkmiqpntmnlrorolnnmrnhjmkmlmnjopmnteptnhmnumlqpokmpprfnpoiojilqrokiminprniqphrjpn^plnjukulnnbnqkkhnnqhoenpigmnlhsnjnpmnhrmnkimdopnemtnppkkqnjhsrmgipfrqrnmkqykmrqihppoilqoipqiohmmernkmpmnrqornlnmqkfmljrsjqokxpproklkohgoslorppljgjjnsnipknlmnhvljrmo}oip~oktsnkmpgonmklnepmptlnoooloprlgnplizpmmhjiqlnqqe|inmomjnjxdttmmnnjovfpjfnpnkklgnhpomdogoklklowujllf{lsmonfnlnnlollm{llhpmjiyojriopikgoonmlvirntfp`auyomieiurnookdqqhrnmmnolfoonlpkrlklpgmnonnixkkqqlopnqgludqxsmtmmpunlnnmm|lmmeimmknvtlqdrjnhoqolqokmojmrjqnpsnihsplpipmmmsoplljqqlsprmllknhpnrjluqlqlnqnynhkmkipgmnfnmomopmgomqmlorojonlmlmpmhjlrnpsomjilqqnmpkjnrpxsinniqlj~oshkgpqhoolqnollqmrmppmplpknltmnrmomhnjrijosooomnelrtolljsmjlrkjhkmpnqosqwcmmqroorqpqrkmoslnppsmqkllkiqnpmmoknijrtnrnrplnuoopokmoplomnovnmvkkpompmhmjmmmkqnmklikspkroikjpnrkpopomtpnlqkmnnspqpoupnpromloojhropkqqpqpkpomuojrmnohioinooqnmmonmpmsotkpoklmmonqnornoklqrnlsioqlonknmlpolmmsjsfnulonngkppolnqptiiojnonppnplnkrlokpnntmkrniqrplokjkpukkmlwovmrnmjpoiloolppmtjlnpmokmsjonpomioqrhtppjgoummosnipmqmqpknsnjomfogkpnrljjqmkmpmmfnzjtlnkkklo}gnkjntnnmphmcpoljlpqpsimioimqpvlqqpmolprpnrnlnkltomnspkjqlnqq`nnolkrnnlmink`omqiikrpnlrmooilqnmnnqmkofjjppfkmnestlenrppoqmpqkqmjinspmplrlmolnkiflkqnqlsljnmlvrnnomngoqnhrijhmlkjeqomkpgqlglorpnmjolpohhlvnohnmnpkhoosmnsopmuprjwnuornlqmtporpunfmpkwlnolnuorzokmkrqopmopqeqkrvnlkqgookrnmoljmro|qmmooknmspmkioglimlonplirmnnnmnnosmkmmrooonotmnorklnmvolpnqsmqnmroqinnmoqmlolnontljllronuiojoljojmppnpqnqomlqqlqrnojqrqnlopltpomnpplqinkroonkrmllonmrolmmpkhsqnookcpkknkmmooqmmlrrjmlmsollthotnnpmmkmpnowoolnoopljnnlloosoolpmproqommmmorojiqkljolqjjogfkpjqnzhuspkkjiolqmsojnimtoztpio_cxfsklojqmktmmsrplmwo}qm`jumojkqrmkmplqdmpnlrlirxrjftmjTnmzqpdopsmpstlrrpqlmprnlrjqnjkooynngoojollptipppmlpgmkm}hongmoqmosnholfkkptsmhokvk}priilnhfhomujsljqxgkomnlkhgqllrmtoloktokkkrpkpopppkpjwlkrpinpsmmuqhrslsmvdnpmqtdfqtpjmmmrlcrmprnpmmmjmmlborhmgllooqsikqunmdoljroikljjjpvmpojslgsiiligsqqnlwqrqlnollpxngqnnsslpprkotinjnmludiqurulrlpfqqookresgkskqqpliwqimffqprqononmpklukeonjlumlmkpnlqpokzrmliuqkuoljndpmoqrnyq`xomonnlmhqigpqorurqmrollsnuoqsomminlolvppl_nllgpolxkrpuvrlfjpnhppimpomqqhegnupmnolxrkjquprnkmhqogqqvunvqupfpsxnpoqnzomhjqlnhhlnnpoinrjqqqpduinrmgnipinoilvgpiesm\nnskmvpokonsenooomhnsoknrofqpjnpmjlmqunspjoikhmqmmmvrinsrinwnklrjkxjllrnnthm}rnqoikdqhoplntp_wpoqrmnrtokmsipnpiqpmpkoflrnlolokqlkllmjpqhoksqtjlkmskhtropppgnrojhkmwjjmoomujrhnoftpnoonqmoltnjltrmiprmngvp^nikjlknpqowmpommsonjqmrkmelkhfsqmnmloomlmnepoorrkolqolpmpojiwjkqpplmknmqrompmlqopprkonmpnlloqlolpnronpomlprmkosmplqvosqofmokymokoulnmnkfipnigkjsjmmjnkkmjnsokfppolnonlnqlmnoooooonvmnmlmmnojpsookoflnjppqrollomplwqrmhogpoomomqullqmmmkknqpogsoqqoskmlufrpqomndmigomlcownmvlkjlhmnmppllgijnnugplomnlkogmuivllwhmllmisssonowdwokfphljokmqknnqlxslpmkjlkmrmoukmklmmlrrkovitptjkojmnlilonmwmnqimxlrnnqnljpqrmshokomrniqjngnnkqjmlhophijnqmglllpsqlrpoqrwknmmlmmkonknlooqoimoeonkmiommmhqlmrjpmpnnlqnomnlkkqnkolomrmnl^pooirhmthjriprpnmmnotnlmtomlrommolkmrkpoufnoomlqoobkgshumnokvmlmqqmlohqrlfpgplnmklomlosmmqlnolodfqkmnmmpimlqmoolmpqpqqmenkomplkqnlpprkmkiuqkopmrnknnqpmnlvipoipmlpmntpwitpnmmpnoqpmmokkmmsnipnphsmoomwongkgnlnk~mnmsilmornlqhrkhqgoglpmnlynhiyqnlrkrtiqpjpsolqijmk[frxrqjppiqlmimropfopmgnioqmijqoimqksqlyiwqgwnorgckspmnrnlohaiastlmpmjgnopgpnmorolukkummlspgjonjhnllpuhnipltlsu{ilkkfdjnnkpmlmnnmglnkkeltqlppjogmwhnjiboinpurpemlknqqplljolfpn{p^mompwrjrmspzsmvkikmirmir~nosjgknnzjnntppnomsmiqoonkoopkqgrinonrpoqoilppltnooqfklkhrqteolopmsimllsmmrlplmmopnhmhqgrqsqktbononllelpgnxvqpnjhmsksqlrlpkmlrkpcpoiqlqmmtgnqfkkokqqnfimsmdqsmnlmsnnokkknootlorpkknptmipmimmmopnkomuqhklmnpplswpnzmmlplupfklrjuoliloooimuplmnqpmorjhnqssmnipqkxonqofoqloqqikmnncrppnoqmnsknmokorphnnmoolnplnnkmmonmohnpnsknmsmrvnomjmqpknnnjoonqnnowojnnmlpkgkjrgnllolrpomnmnooktooppnklpnpmsppmlmqoknmlqmloljoonmormlnnpnrknppnnqolnqplmnprpglmlrenrnjospnymqoprmppqvolpnqplkqnppmojnmllonktshnmnnolommknnnornomlonoqmgmummprsqlmopoqnlmqnlpsokioumknoimqmnorowltopmimnlgqnnpnmgmnrjnfhlimssnqerionqmrpmmllnqppphknoqqnlpjplmpnmiokmqonnphhmngnrmkshkpmgtplkeknknkmonooojpomslolorjndlnmmrmomiqnoognllrqspioolhmuelomnnqlliqmopkoomqoinmkjnrnkoqpmtnnmoolnplqjnnorkmnponnqkmirqspjjnrjomnoqknnqqnmoppminpne|bnktniplqgxmmomnomromkfoqmmpnhplinlynhjnhppnklqiokpnsqolkmkmrglnppolnlolnuumqkokqmnmnoqonuqnslkoqfjjqujplphmpmnwolnkjmikplhqmoofomrlfhmnloippsoghppjmhmkpuoiqoqkjpsojqipooriklqpokpnlsnooihvnwjnnmjjsocpronmqllopspkponokmcmnpopnlqokmmrnplolkpnkskpqpniqlojqrzpntjonmmittokimleqkolnnngkkpkolhmlqjnrkmopjfluooifxpomkndllnqerojmlqimmnojlmemopmmhorempllmqplnpfnnsrlmjsqjjqqsponnsknilqmonnoqhmqmntkolonmlptjsllpnoimjlnhxnmklmrqmkolpnoplqxmiifinqllnkoflnjnllsnnlqenpioninslnkm[nklovmgoosqonompjhnkqrmiqodmmolmmhlknogfpmWsmprpmnkoynooqnnyohjpnpolivnkrnkflmomhjpkjhrnlik^nhnkrkpmtowntvmpkqhflsnpnsqmgpnsjtpkqjsqngpfhjoojxnrifg{jkjmnpknmmiltqprplkjorilslnvlmlpjpognhohjprsoxlyplloiiulplplklmnlpmgmmonqoknlnompkqpnqionksinnpqmtkokuqwmpqlqlsmmlwhlrmqnmqmlhlrlpmgipoplslmplkqnrogop^ppipjprjslyljoqfmdkmpqpiplkpwlknpmrovumpnjjmjloXpdnpkronqnooh}liolankkmmkkqnggopnkmjfglonhqprqlllsrhqejvkolim~qgkltuiljromhwlol_pljqmlmkknpkljllioriimrokautjoiipxkmqmkqlhtskzphkponelmmqlotpblormommptomgomqqnkkfo~nnrnrnskqnpvltopljspmmjfkqlhjcrpohjhmjmkljrvjsojgrqgrqnoqmpummpnjpneljnmprjkhpmmislnhohfpxvkmsklvphyiznpirqmnyvlookmrppgmqnkrqhuplvokopmsonkiljofewjgkqpnuslmilmplnnmskrttsmfquhmlnnmnrmpmlorppkswoosqpmkneslkqnnlrjnkkmltpjoxrlqiojskoiirmrlmqmlnjnnmmpnnrn_miitomcljnnpltmmnpnrgmhikjqosokkmomwnmnlnknmpkkmomiminrnolnijioltpmjirnnmpjmlmknnopomolvlqqsqpmimonpmihmrjoqkmnoormftnmliollvnpnopnlpktohkmltpjnroqisqopkmjllnfookkpomponoknlrlnndnomonmemtrmrlonlmmoomkjcmiopjjonpnrlnimflfmrpmqnthjkommnomdnpopqvotlmlwionorlmolnlrnkmqsnmolppklrlnmmqkpoqqppokgonqkrorljknkmjqosmkkrpmljmmqnmllnqgovprnnojmonnkppnjkpikgnq{meplntonjmnookpoppkrmnilqplqrmilmmmlpooooksrkklovlnoommlmrkqjuropqmimnjmqmhnsontmnowapnnononpnkjolnsmopiokoimmoqkmooongmommrohomonkmklrldsmqnqolptmmijlopqmbkmmjmonnmponsnonoqhnlpiphpmimtnmooomrooaqorlxlli`jmjpkoprpkqotlmpoiieoqgmmouonkoqxfptmgoqtugmntmqokdphkpooshnrmrkno{kspmjnlsllviooelpjnmop}kngnlmmnknxqsgvlnmowmpnolnnmjnnkhjmms{kojiolponmlppnitsjmipjojjotjmqjtllnhrqqnppqnnoqpjiqnpmdpqrijlrkknlqkmtmolopsllmoxlnspkhknhrmllioljpihqlmoqstpdsnfnoqjq^mrmtmuxeollotnprdiioglmxqmoignllrjmtqmdpfrpylkkjcinimpkjptkhpmnhjtmkgqpkknnkvolklmiikjmocopjfntocqwlqpngokgrmolistpkujnkmifkmnnpmplkkkmkjuirhqntonomvpodfslozlnmukxomnmelkrmoqnipvunpjgmlsptonwkkqspnknqnlmlmmjqupmpemnmqotdknijoyqmjlqliloshlqtqpmrnmpiqonokpimlopoorllpjimlkkoxsq|qpyonnloqmnonnoxouxugjlinkttmompkphminljuqppnrolelnnokplqkmromqnpminljssjpmoylihsippnkljssinllnnloronnjsposinniipikmogtnndnvprlpnsmqmlnotqljindkmpsmlmmiqktopnfkhrnpnlneionnmqqpprjmoodlmjmpjhrmpsnnuorpkmksjvmrnnpnomnkpioklmlsqplgnmpnwprqpnsiopooptkoqeomopnjnukmwlkmmnikqhnompoplpnltkqmnopluhlrrmcnlnnolnnvmmnonlpngnrjnvtrpokfjlnjmmnmpkmjkmlolmnqqpoqnqslnnqlolnssmllnlponpskolllhenplsopjalouomngqmiomnipknknmnfljopjsinqomnlnnjnplmntvlonmlmoummnpon{ns}pomqmironoontpnpnoronnkspkpnngnllhdhoqpolrmlqtjnvnlmokpmkjjolrlppkohlomonqjonoippsqsgpolrmvpmqrrnxrlponxnjpikorksprpsnqhpnokjooclnnjmnpqknqvgokskojdlnjpofpimkqpvopnnjgupujpqlsqnlukqlllrnloqnktpquimooqnnslmufrptkmpiqnqmsnoqpmmrunnourrhinjomlrqtnsqrnikmrljtostpnpfonoptojpmpqpniporxjfkpjslpkrprpporlnnnolnmmrlnomhnqyfnllpmojlojmrsmmnqsopossgrjluqmimglrmonrnjsmipohsprormkomnsgqimrpkpshqkrtlolqmnqnuoepklniXoowlsyjfimohrnpnrimorpooospol|orljlolpnmppmektqkgodmpprqiknleokrfqrpkinnqolmommko{rklslskmimjrnlgvpknralnkomjsplgrsomkndmnjormqkonjkhskjmmohkrjckpkmkooqmrtQosloonkmqegoqokppmlumnmmfolpmhprkolgnesnoqmzunoknplpnhnmljoxnm}mmmkhposmqqmpkmpmwjxnnkomoljntnjplnutkimhumpkomvgsqplqmonollplllmjomiqilqmlolmpqottklmpkmkmrlsmilqolioomopni`lpmgpnlonkqmlhlsnqrqplqojplokmguohqmmjjkshnllnlnpkpnnnmlljmnpmnmmmnqklrkmqqmonkkuqpKlnqpoqlmrgjflslkooptommoemkonnqjmrumnnsmrjtoqkorqkmonjnolkiunssijomqqoeplnnqqhnkohkoplnktltmrlnokxkkojooknlonmmtlppjnqrlknoggnnpimnttmomniplolojrlolnmqmkmqqpmotqmjopmhmniphkpnoohoomnolikqsmloqmmqnponmonknonumxnolhnnnmiomqnnmkmjplpnmqjnmloltkonrllknnlmnpooilnssonmnsqmaoqmkvmpqqqonvnlgnpmmsnksnjpupvolmpmvpg}otoknlpkhnjkukknikpknolosgmptsporokplnflgomoolpkdppqpplpknonq^uoqpmmppoloopppkmnmoqijornnornmmlhopollkrqnmrammonmqvnrqnnkonjnjnqnnrsmfooitpnnpiknllqllnrgmjtoliokhopmppmtpmrnpkonotsommhminoorimoplqpmmmjnjpkinaoiolmqlppihmmppssmnnntgmqmokjoojknknqougmnnueprhpmopmqlpinrlrknmllnooghlnmoloipljllqontp~mqllnpoipplrnkojsnpoqqljlqommgmnqkqnkjilmsregolmpjnmljlrpmvrpskqpgilnmlmomnpoylogluswnssonsmtnouonopkolmrpomjqronprrlkpnjqntlpmnppqmqjmmmqlitqjmmrtkokllsmjsnmqroonlknnimklqpjnclqldrnfnfnlmsopusnmolkknomlolrlhhkzmo`nknhonkeknnjwonnhnpmlb|k|ajomstnjkopnrgncvippnmssnsmpvim[ktilbpnfpjqllqnklpmjnnijhndsfnnepiqnoqknpnknnjoo`wojqkokrpqovnpdmouqpvnnqmpvnn|pmqohoolkorpqpo{d\sklcnmlnppoformmooljkoo\ghflnpqkoiysootmrfnlflprxiqolkkmonupppqmjtqmussjmlqnhqolomjmeknniuptermsmlnmklojmmmmriokisqjlnqrolmtpnqnjnnoplrrgpqosjltwomkoouoosfnlirnesrpmtkplmmqpljmpmvnkkmnpqmjokqmiunrnnoptolporkllpnjnooopqnqngqpjhhkoonlqoltkxnqwtqmrlgsppmnrqtpnosnmn^pimpoohqjklmjfnmjkqsnkooprkkmqilljjvmuomulhsmopkqnrdktloootopelblnnbrp|nrljjikonpmkmsrnmqpmpgUrsndpihurpjqionlkiobkqlmkppvglkolomhpnnlehkxmoklmoolrkulefminpmormoievknkpjrjinfmillumhognimsjtnnhmkkoilnmkeppnoofohkmlqjrmsmjrvpqkewtqqwkopothmoojnmrknvrvuloxpomqlookpnkltslcrnovllpnrmhlktlwqstkuclnkxpeoltkikmhpnqjlpmpmnk}ponlrnrtrnkkmsjgjvnvkfmhmrlorovklosxlhnlujoukhtqhvinskghmkoomnomemij_qrldhhosopmrkoiqdzmopmnimiokmouoemkkylmkkl|qmkkkojqlpsqptm|lopl_pejoimjulqiqohelqmpmhimtnqmqkndspoqhjrotnlqpolpsgxpjnlqhrrhjhigfmmloxmmqpkpsikkilmrmilnimmlilikkllmkpolk_ipolhepjWkqrrrklpihvjkpnjlklhiqocdspn{mltsknotmkkoriqljponnvqtjlkpsfgnljloepmjorjlrnqyfpmn^pykdkmihjrkqtmgonjjTXopmnnipaoqqdjhhplqlnflldmlosqopjgnnmeollmmfmtrilkghngpiltjnrmnpipinqmkbnmhiqxifoppckfkqni{mjukrrotoenllkvqkgnlmbjljjlmk]cmptuo|iomtlnnnootjkjicjqmnntnkkdlrnwgltkyhinpjnmgohenumwjvoqpornvemgkjakiarflsqjmrljynlhqgbmqhorloih{sunlrptzlnkhfutppe|Vkipijdkjthmc_oojvubk~tqmejplqiqmrusrhsepojoniicqglkelclrrtjjolkdpytkotijoocknoaokowdomvnqsmonvlkmajkSokdoppiolivpyoqoivmvnovkkmflcmgnhtnunplprpqqoofq]mun|fnlomormpp{lopmmkmlohkqleonprqonopmonopnormnronnhjwjnimlpwmnnhnnanmlomtolsnslnnotmteoldnolnqdlptlqppnpulpnlpplwppmryjljpnrpZnpmnynoqorpjqzljqnhmhjoojnrmmhoomqlqtxollqlijlkpqpqznhqqlponpmarmqRkrpkn~kojpnqmnhzphrmlnoopspqmimwpsnoomkpnqrimrloiqmxoujkhlkiolqqumqmjmitrnuloizijnrqqhuqmgqrbkmrdusphwnnlnisqtmnrkmxlkpiljjjknsyrosljrophmnldjmlnjinnmkoqllpjo\qumdkqzrrmimnpqulsn`pnqonpimdwlyninjqmsionjqulfnmnomlrlkpbknoukemvrbqrtlgwprrmomknlvvjqpglpWpuoppksxfnomolquzonevrmqtjmqjsirmnnmgqreowjniiiom|mimjplplkmwontlsnjp\goqpqrmmopokk_pmqrlqkqplomteogpolmtmsmomvgrolpyrhboruoem{mmq\qogomlpnrop{olro{{orn|fnlmpnoldllnblmrlkkqolmnpkpzkkmjmmvoqqkmqormpmanmrmnptbygppnmraiqimonnrgnsno}polnnkluxdnol[mnozhoollosmkqdtnknsjppuqqkirhbs~kitzklrqpinhpknkolrgoooephmmnlmrotlcpkmasompnwqdronoljnsofrhqwkspojnqrlnmnspkgploikqnmlosgnpkqwpznohiolnqmlkqpogijmplnnnwoktjyomlrsjnumnopmqmhkghplnokoolqrknqimlpqmpxofgkkrmkrhomlnlnmnoiqgmuknmnllkolompkrmnqgqnnkqlm]meobojdnmimjhnnpkvdop^pnpozmlmgqlskunaqihnmwomomooogmmpioqrorpnhlqiprnhooqeanmkj^smnomkshlvlrqcloq[drkppgpmnpsmoqnmmesikkighdcmgnipuwnnlowkppohefphlnznqmqpnopzosgpsefjrllpjlmlqztxrqloreiushif{mlnmnqjobomfnokhnnohqllqhscpoitmerplmoksoknslekpoqylvrwqqnookntrppherdyjprmantmigtqmljkinlomrdbjeksozpmtfjomq|jnglknnflhpmhl\jnfbplonvmqtrlppgoqhjriwpmuqllrn[tn~rpo]esjky]olskojpqzrmdhrumoiwkduzsinuyj|jozplqlmkkq`llnqlgvgqtojlpapoljlvcfpaljrf~qntw|{eksfniymskjypknjrlqrqkqqhvnrmmo`iiomlegklcophjrjmlxqtmioghljptlu~qnjgsqquqlipmo]mhulkdntiolunomthppiovforlurds~bbofslnfxnbpunpkto~kzmigqrermcammpmuqvqQsihinrlmonklljpljmommjqllnnqoplnjmkkmmnplmrmjjqrolmnfxmqqoopqjgomfqlkrojmnpdhswvl{ljkqqmpmqplfpvumlkrdojnppplqcojlZrsfojlrvnmrlnmvkmfolmifproqshrmolrnlopmlinkqvhlnklpptolrtlhgpnzloqpmmhpjpsyinqmnpnhisnsmhlypkktkkpjphlmilpmltrlpmpmoikmiqmcppsijpgjjjwqrpktjgkolmoiklffintomopmliqdsqnmrniigkmklnpotqkppsherfisiposm|nprhspepnnnojlrimsghoospdzrnourlminv{juotkZsnsplqdm`^ccikjllpljjpgnooyimknomho_kstokouprjooljod^jmnmriwokhqlingkrlpsomynlnsltcnmkluxpmjnrqgovqfqdmflftnfjrmsomhsqosipsrnd`oorsnhjolnmlnupkmjplomsarijmniqthkpjhmknqiinvbnqglopomno`lrvet{pmvpnvgqjpamrmlmnrzjqoskynpmmyqlommmkitkkj[uqqmilisp{ttmyumnnfjjvull}pkxrp^mlumpxkmmpslekmjq`mjqhrnrkrogkornusmkhm\oclxvxljmkfoomunowmsalmnlklmole`mnjnovmjnmufkkdtpnxpsrmwcqpiishknlknoloompdkkunpdjrsiwk~sefnttlken{k|qnh|pmkqopktqiicilknwqnkkoqjmnoopiigqmhmuqummutkogoqmjlnrkjnkowohjhopkkrjiuhrjhnhniiloomiQr{gnmunrrmsjuonnpqjnlqlbqnolnok[nioqrlqdlgkljkqjiqonpkjlhmrwmllnpqipnmnjsmkgqrpqormgmnjnlkkioidoqfqahqlimqilumwrrklqnnolmmommlrmlkqjmphpsltnhppmmkomooknqkhnqkplqpllojknmo\yojpjpmlfonoqkmhnoknnmkmmolmnhllknor{nbokpsh_inlkspinmnrkngrlsoorjn|oszla]nqmijgujnllpsstoypnnqmvuppooooqophmgopmnpoqhlokqqlwlnnnlouxmmpnandmmnjonqmonoonvcjlmlpqjrmmroh[kasnokmnlg^kniclnmmphljsromsoixq{klflmiklfoulqnjkpsxknnrj|mpmnfqnullkoqmqzlln]mglkjmimopn`nmnhmmnojkdmkployqpsnqonlkpmnmwlmeemjrlYlrvlencnlmkto{oolrmkklznwvoofmmqgtlqmnqnnelhnohnompmtnnorkngtsilfpkhqnqkmsokmunorlvrlnklgnnknmmsnqqikmkjknool`donmqjncmhnnqnmnq]~rnophcxnllvnmnohimnrnnznrjk^hooqzmnnnlpl}lnmnpmtxrnmhogxlzopjnTjvmnsowvpmljprngnmoulntontmjoknojmmq|enmsnnwmllmsqdkmmtipqqqnoqtnqulolgotiqnouksnnplmnolhkgfjioxprhkqmqoiqoksntlmjfswmnpr`plh\mmtnnmnoemornknojwsppmklummlnnotthtwpfloe`knkknsyollqlpvcms^rtqnvhtqqlmhuus]pwwlknoknjxionokspcklhromlrklkonojjiknqptlmlvltlomkojdoqfm^gmuuqoooqlgdollkqrgOhot`ejoi\ztgnmokp`jggopaekzrpgqfssoomjnkhjnmbxqljtdprlrvkprpnnkptcvl]hltmckpvj|kus|gjoidhlejlgpohcZgtrmlr]k~nsoonpmoiorlfmjmjlnnmqogktmvokrhppnx~qvllertmqcktpijofunsfkmq|[nmnnstaeijuibrvrUluprnxn[lqixqjmgsligskknlPoctppsigphlitjtz`kltjmrwmtkftpmpnknmkqxolpgopnsepkmnoqlypprjookrmninskqbepnlpgrlrmurmnnlnppuokplpnmnmpiomnwlmlujkstkjonvpnplltaitpmoxynnjrrpqugojmwmmrnolmlolhpoqvoinlqlkrkktonmmspYknlqgnkqiskqqqsmoknpuslhnquomnjioxxrojojoplqrohpknpdnklempkqlrrmtvqmjlmvqmlhpsmvnglotkontksonkmommmolwnpollrjnrplmppXjonomkmonojnhojfpmlppmomoocfommpvmmzqi{pkmnnirmromqulnmjlsqo`xkpmofk\noilonnrvngmZdopdj~mmmoomnuqkmo{kpomqomwmnkkjosmlprmqUuornjrrmjnmjorofnmsnllfnlomknjqhuodmqtnrmvrpnoqjssipdnolrkhmnonogkmtuokjrpiopqoplmnnfplmpnplookqoilsnopnvrmoihlmkroornmswinpsqqlstomoqskiqfqolnnhmolomlnmqnrpokopkrmmonksrywqokkojjionboqsnompttnnosqdpklq`lkftnpklirlplliplvkrjyequlnninnpmqrmkmmsolnplpogjpmhonjojpmmhgrmnonhmmjksmrqlnqmmtltmmmmmeltjsrooongopitfilpponpftnpqplxnsmrpnjpgmislqnowqjgkpnunlnnkqlmnlkllkjkonnosuqknmniorpohhnpnuqtmkkjosokjhlpljmnmoiilesihojltonqnqbkfertmliqmllokquxposgimhqpmhloqulnptlnrnhnlbflyvitlvqvxpmuokgoiqhokqnlmpipimnlumpeptopnojfmbmrnmlosqnprjymkhiimpnmqepkmiwmqumjhmktpoksnhjhrsmboulkkrpotrpfgjmiplipmllmhnjnmmnekphotilopqflgtkpnlkpktholmhqqmtotqokqksjhlpqgfhnjahnrWrsoslgmkltrn{iqannnnnwumuuvtoiqqrm_vsqsulpsfpmlkfsumbwoklqljllpnoxqqvt~xbpqhpXs`jtmmneowoTnuzmvremuos{ftppkssmlnbpxnjrmprpqwqnhnugdlw|qjqrgdtwpvs{tlwwnf{sqoeosTpnrzcgdwmotejho`psvkmnhnjlexriorsilrjmkqhXicpkktnnpnztmkxaqsunoppqowhmrtkplqroveclillnkolrkqrllnuquknh|cjoimnrispnrlvlnphmrnknetjqojplnncjplsllqlmpipopjjpjnonrjlpmhqmutlopmktlponqurckopkqukoipovjprelmnlkjmntlcnnlsvlmmnnfo|sliipnphrtmsmtsmlsonsflmpkjonumhgpmilrmjslrlompjoirjqfqqpjtzmolpnpdorkjvnyokswkmujhmingmjhnlotmrkrncgllnoirpmqkipznsiqlkhmvwnohvklkipqnljqnllbmelnlpn{ovWnolpnmhpqn]lgrmomnncnpclqjlkbl}owmmonlnmmvitnoolnqkookpojpsjjzpoomlfngnnomingiooonktkummslqrsmnqnkpgskroto`ronrmis^pdkankxmuffnqrmqhtcsmlnonlkjmkjpnpqsjnnjrlnprmlipllZmqnnlnqlllnmpqmnvktqpmuxmlipgmnkmjtjhqjlhplmqjpmmvlunrkjqprcpp_omeopnjnnirpqblowqgymlsrkepgmqmuncnplonlqkmnojn|jkpxkkltoojolqqkumvrffnmnvlpkllpio^uqlilvsvlmimoepopsmqnsqlmnqhwhoroin`lldnmoornjhpp`uomnpilcjuqfprlitahvnlgll{hp|fmsmldkjnrqsmmling\of]nponjmgknlnnokolmqonoxnrimuppuitoqmptipikdpmlzulrlrlkprkqzfhmojkof{klptqgmmijopk|olnqqnqtllrmipqxnrqnnlpmsmrnpikvrnqomjqrrqrynrmbilr`nokphekmmnvrfmopvuwljjolfsoqmvnlpnrkkonlnmqogknjtqjksorplylpvmopmtlcgirjjj{yyjktqllnmbqlhidlimsumltomqjtonhkrnilmjqypjrtmgkegjruqpfqgpnmnsqnonqjllllkpjnliqslpolhomkpoufawospfRhomuooyrmrrvgqeimlnoiidqjnwy}wpnkpqwqmxjiinhikqrpopok`ovkominciboaszdgqunjnkkflahskfufnqpwsmfYjrhyqgumn`}nflzhqjmvoiniqdqwpl~d|gmnlourqqmdTpirjkoprnujnjsrd[dpkpp{imlokljlklonajlpojviligplou]skblkemxthioipw}}ifwnbjtpmzjls|olmielkvsqqosnuoorpmojnfkoqok`unpplornnollpokrqgpnokmkhpopokylkmjqvpqqrnlsgik]nkllnphnoolmkmrnnllxqmilnrjdojinjqknolylknmmkloklmhpplsotjlosopqljnyluholmgoynmhoqowntrmkopk{pnrnmofnmnhlnwkotommouikqhqlrok}gutlnjonlkg}qoor{doqonltmkonmi_kn~kmvlogosomqlkomopnmhiqqkjmopnkqmjjpkpkpmnmmsljpojqqzpfwkfmqklokovnmmlplmnrqfojqmupojvnrkktlnms{rmqpsjqpkpompmmmmnnmpmporomiiqqmprjnpgmiqrpmpjmrellqgklgiqppmdnqoqqtqlnkskvbooojnlnniuqmonipkqhmoopqoimjpnlpppnmqnlioltigppqqoshnqglmnqjirkvpingqnmsijnnkfsmropsopkomqkpdmlsjjknqpoplwsokmpipmmmkiuopqklpjptrtqrmlklsl_mmjvvhkkhzrknpqjpgmlnnkqdpspqpprllkgfprjskwncwkjmlspjjcgoqjmhvlkplqcdrtoskknukvohp^mlpq{sq|sipemhknoatjqoivkoroowhplgl{pk`mqkjnsklgpmmnflsxksqvjksmkkkjlpngnnhstlksilsmoekqsnomuijrro`mnokpoup^t~mlpmmhnjpilhonpmtqslmwgqrmgospekhncljkjskoqkplsjipxmpmohmcnkadqr^klmkjgxipopkqiokorkfeluonsvjwlpkeorrjhlqkkllftlpvijulpifkwljnajroofithippumkderwmnqnypjqnpnqpnnjk_glolqdknborsiorilortqftolggmioklelnippmolmq^lupmmlehelgfmustfrmllsgkooicnsmhigmqmppkkkoqf~lxhttefvinohrfllqmuiqkoggirisjrllokpojdmpnmhggfnqrgmqkonkvjkorjvrnrmqqnksynmkomdlppnpljkomippmjkpskfihhjltpokvlhlftoljtluhqjkfprnpmlnmojujlgnkkiinlhffqlkqrpsmfsjofglflnsmklom`irpqyoolgrqjvmsrkvomrmklkdgomknmunoqhuqljhtgnqnhoyrmgjhquvnoqlilksissntonrinhmpskrumrmnqhlkkelnmronstmmqrlhmkvxojqllmmllsofpmmipnojltkmhdshmi|yg]]zmejhkgi}pnnho`jjpodj`d`jkqvpunlmoqigpbo`kulmmoeprmtjopdknmukplnhmomokxoaoowkddpuptlldmpenrrnm`nmlmpYnlnmpkppnfjpfmlqqvpnfp^hrpklnlnimngglpj_pjlajkmmeihinjpsqnmmkjgzqmtlnqhqtzl_mknemrlhwyq]wkwolpgnllnonkmnqmpklbrmjkinjpil`llssrolpkiznpbggk{lttqgqorklnlvfklmknnqomqtpknn|knrmoonmkklmigpqorlwuororkkqjmmrllmkjnojonmnkmjsnikkrrrmwhpxgnngufmswnqkgdojomoqnhonmlsmmbpslhnnkqnrnonkilnjjpkqnqkloqinhoqoirmtjoqklqknojfxmspbkm]oirljqglrhlloip`omilnqmnmkqmliqnforlmjpaknqrfokmomnnuknn`nmorlojsjzusmqnrjnoptsjpkeqlqhlpqszxjppgjowesqcmfjrojskioficobo[lphiepppopurgsr~jnnktpwqigdlncqvugnncrnkojom~lyfprnmjduwxouerkroujmxikri[mgnksnkVqpkvdonspkn{gdpmjoonloltlspmfpgnlmqjxsmlynsmooilrgpmnulunknqmo_ujnljufvmmqfcggmbfkrlpprmnnnip_lmppcimheomqmesmjokwplksmuspahpkkolfllkoppjulkvlpkgomwpttulloxpnlciqimeopnffkinnkqgyppltpopjmjloonpmsmnk^kmpnxmojhnlpmdhqfpkonxgolqrqvqpupkflsbtjhporrljpgqmqqmnpqlhwcpnyqloklqpkopnkmmsjtntkkoooctmmrphlqmhmpstolppghqnnotjlnsjmmlnf]pqnmnqpsoniloinnkyuppuowgnlqfmpeihplkjhrfyjlnnoirmfmlnwbgiolmrpzjqbmqomhdsk]djepodik[^hlposndjdhqrgenjspmuymmjikikgnmnoanslhnmqkmktjrgepknjgXgimjpkv\lrijhatqqpql_olniqioidpjNXdknencmlmpmgjmjodumq^nukfcnerkilfgfhvlmpgpnsllsiandlhnpzumonmhnoVjsmkBrsrffan^hgkmiglq[zl|tltbjepupjwnjjfjhcolkek^unifqchnrhumonvzgpnilhj|ig`mkroccpkndiiifjjnljmkpgmpoqinnnonolnqjnn[poylnrjwwkkdooopponxkmqolqmppmltpkpks~jnhxnosrpolqmojofoimlillpmpkvnxlpjiwkmsnpmmqprpnzmqhnsminvniovnrlijlljpmopplllqlgllmpqmlpetploynpk_sxmmhgghkykfjnnnqmqjpkhtonflpbglvllkrmpnznmnqlplfkqljjmpnmniqnpgmqpfgjpprpprsrnlykmklozfrqfrtiiofsmopnltpunmfem^punslqpmmqanlkoenqpmlmpnunqokmjnjtnjlepiwrvxoiq\lnmslghgqwvjopzhjplqyserlmnodplpovmhmlllsnqnqhonmljpolmgrqlrdhrqrqkynqljytrhknlejojvuhslvonpoknvsoikrkykkfmntltlpskuiolhoqojeoxalfkoventpqrpuqhliwqmromkniqaqqjemklifnwkjuu{imloquklfprupqqojbrpikhotlsokqkrnowsiplqjmkosnnmjjflotrjpsrsnqrwnloemoohopmtqljnppxoro_hdlfnfovomwwomsuikpunmprrmomiqmlmmnnnqoo}ujqrdkolrmmfkmjpomjjlnmmnsjoqlmkoxocxtpqnnronhmnvollw|nieknpjeemllmmrvqprnsonlomlgomorlanl}kmimvrrrkwlnnpbogororljmlqiupfqgluokmolsfqlmrnqkmqlpoullponsnnlmmslrpghmppokwprjmomolqmolbooomlnollspqnnnuijnqsllnprj{ppjknhlsksukjmpptukvooksssonpplosjojpnoqulnlqrqlhlmomqqnllljnlmmkjlulfnqppppnqpmpumnloumhjnvrvqojljenmrnrrmllptmnpkkomohmonsjnpllhhmmpjnwjpmmmqnkpmhkpioonilwqrhkpkpmsqlopkplllkwmkn`kkp`momoomloklnnxlprnnlnnominjfjnmohrqdgkp^qanmotmpmofmloqnklmilyYhjrhkltluknsrnipo}nwvoopeljrmnnlld|olm]mkhoikmhipmjmprllmrnjbltloqlmoqnnoolmhimocnmm|onksmqycmncflzkupdrwkolgjlmhopmmnjknlvmnlpkqwfnfmgkjlpmnoomonmnklotgmllm}wkkn|omqbvlhxrtupjjdldonrjeqkpmlhmomiqoqsimmjpqpjqpjpiqloprnnteqqnqolqhlouentmdlnqrrojlwmlrlpmjohkntpjxjdpilplslomlrvdmkqrqtmrpojdohwjksupjtoonjwvmqlroqskommojkqngmtnjnmkqknpmnqlnqtlnonhglyrppwpj{qejgleknpkkngmeuunothoopmpspllvnwrkoknpomkinrpokmlkhlnnnrjonompsmokhlosulbipjtnokat{ilnqpienkeoimmmisnpvuqsnplglnho|htfkkhymvyrdnhptoenky}pnooqmmxuqiynhqrmfnkkotmmlulghpkmlflvwkkisd_uhdoojlkeoihapspytpfhsjqzkukjp|lfrhsidginnprhfgpuiqomolgrvjsmishumkfrq~igwpvnogqpngcsnpmtompmipnwrmnmlmiklnjkhrpgqfwu~rqjqxllngpjpp}qzklhqnoqkmudjksjnmohuslgjmpomglodrjomjqkknmnhrlmopmoqpmmhjknoqkqt`ojpmlkjqepvsrnjpopogmhtoijjlkjcmmohojjiqpmrugjmgokmjvoolmqnqnrruotitfqqmgjlrpjojsipplnjonjnjomhmolnpneonkmpmiuqjpkpnknomqmlkmqpqhqvolrqkifmqdnllmnbomkqfqkkmkjopkunqklmmpjxlkxnnnnlomnvmgomppmiikmnuneskhrrsekmvkkwpppmo[iojq{nirylmmtkkfkikko`bnpoumilnjtmpiqkqnnkmjurrpsncmpmfuononkpmonlrmlonkoonnuunlomsogenvp_oommqYooppsjpVosnohqoxllqpjtpnrqmqkopoqlkailntoslollxnnnjpnpnnnfhnkpkir~puppkjompxelgpmpnmpnlomonloklpjmnojlo]onxorfnolnpqllmooqimnuoolrqwnmnmjjnZs\omonkmmfliotglhkcrlplfimoiqiojmokpniomikpdokiksrknnml}pgkfjkfekpvkmkooomlemyixqoilonjmkqhdlsofilugnvqmo`jmwk_prjnelsillhklpjijxptkkmhlskkioomihpiqioyhjjnonsoimkokqmhmnnjpmenlmgmllphjssljflrthjrnpkhq}njfpnqhhnpjdsnmqjlvqpsldprtusnyoomqhmklnqmqnorulojqowptqopnnmsugkmgsjmmlmmrprmcpkmqnipphorowlomnmofnhoprqnjmiiorgvpsrnjplrmtonnmpxqnvqfnlplipnowlpopkqyefnomrlmkisthmklqljpllqlphlthnnrjilvkrkm|klqmrmlrmpokprjmolnnloekmrmqprrpjtlnupmloppkm~hnnmpmnxtpplkmumtfqremslnofomjlmmkloiypxtkrlmjmlpqjmpprpmmslonrsovohojrlmmqnlnnvenlqlkekmkkqlkqnrqkljrplnomqlmusobtmonsokmmrwnrqpojkfddrslk`qoldmmfomookiolnonieiqnnol|wkmvloljrqkjhlucqkkvzojmpnqnlkqoejcnpgmfwqnoomrfmkornnoonulpnsnrlzmjorhoirliipsemnmullkiljmknVlehijulnlngfknkumronmjmilmxoxdupjuljnorsmpombmlonmnqvnlonjjmpjlhoorq{lnrlkmgolulwlnppfknon_qopnrjookmelnrpnenploonqinllnoyxnslm{ip`rtpmsopoolvimsommoophmgnromwmrmfnmmnnjqlsimtpmoknplnjopmnnotlopmupjxlkqk`splmplehrppipbo}vnindlhpmhomommklgnp`qnmnnlpsknorqn~nnovkmnnoji~nqkfnqnrqmpopnnoeksuvpkplkolnlkmsnpolnnmdmoppigompn{np^bijojincmqksipomropmkrsnommtlpnppompklmnjflinmlnqnmrnsurnmmmrttplj`omkxoomjsmripmloonm_kiomfimjrzwkrlpkpmtrqljqnmnixnppklkoxsnljwlkrkoqpormjpimhkmonpobi`loonmoumpsllouknmjoobqnkpnnpkinknrenkqlsmmlknllllkorpowpnhqnolnrZ]juilrmolqlmnrnnmmmonnlomgkqinolbko}mgkrsojgpklnrnimnntookmajnnmnpoeloiltqln[rnkmlnkookjnpjnp{olvksZjkxlpntmomjlmprqjnpinnbnpnkqqmfoxxnooqompanopcrnpnluoposqgmuppjniooloqglsvpmmsmpnopprnfiolookomnllpmrlhmppopivkmkmlmkdvtojllsmnnmjhrlllt[ljngqsnsnojioqplmrjhmkmmepoonnqnhmslmnnklqmn`mdkopommodmoormnpqpnmtqmgrfprnpvjlshqiwvhrfsjpqmnkhqlkrkliorllpsh{sjsojmkplnbjupplolrijth~jolqfkqmimllvfepiu{miognlstwdngpryhqtmqnjglkopnmgkssqupojfmodjlptvltjmwtormmjrnrkponqnlmffpnrkrluifgmhoknrmrnmqpioilmgsnmmkgvkmmofsoljqfcokqrgfspmplqnrqmoopllsl}ojnsloi~kklnjuljqmutnoliiggniolomoqprpjjmkokonrolprljpmnvmpnnopnimsoslipjqomqmnhn[kslpnomwknoljmlovmlmot\iosmmkukhqntqoqlkqt|nnoofqqjppspprulnnvpnjjimm_qnlpfiknkokjnlznimqnqojnopoophonkmpoptmnnklncxnltorzmnfogmkmojrrosjnsjlomnfqnmmonaevmnjmfqlkmlmrmnnlnnqmjllkdnpqonjomenopmleconlsnjqkdgjsrhenr_wljyfdliihxjkuerporrvkrsfgvmpnqvmttqhnjsjftj_jtossiriiiqtpsqqgvrglrerprnzmysurolgfsuvqlogpzstrgvmtkrfdpojqtoqmndpenlp{mnj`{luilnisjmqhqlcnpdodmiqmusjmjedtmpoukmlnmsmpbfniocpkonsjidmmjzgnkc``qrmojrkoppolodiklpnjpgomogcjigqg^msmms|qrygkklmtoosgopp`tomttinohnmmuhjxvvunooomohmugjggnrnmqfuqhnuqenqhjsmrjiknholrhpnmqntnrqillpotolknnspoknxkdpqnsspukipkoyjpjhkoklplmmmmonkkkbjpqnylprkvloqlnlmnutosnmumkmfrfjpmogpliqsprmpwp`kistovlkpbulnfkimm`jmislpmncvmjllnktnkijwjipiprgmidpokrlmjillnpmmqjpmrnrmlkomkpmznnrlpoqljnnhmkkloqhpilqtenofqogoppnllilnqhlnooijnt`mbcrpnionlgrponooqmpkolnx}litoqvdnt}orqpnemzqpisnkkvlmmmkhkdgoknjgodlprkdjnosqmlllmoonut|gognonsqojknnfmqomppnqlsnnjo`xjpmpnSowjjkknpi^uno_qonokgnqlklkmnliw^Tqm}onkqmnlsoqnlqlpmopm_pikmmnuqmvspprpxnluslorsijohlqbqnnphoq]poindilpnomkkloznswowvlkjuixtxfwojyltkjrsmppqenikplmtndtmgnmromdqpqnxoijoplpbpeoolrj}uarkerrnltr|xnnmpjtnkqplsskmodkppjilirpelmhkrrolotxn}ojoeqoqvysvlmlhkspylsoqnpnlpm{nkvogipxtqgnmnsnhoomskqpiphu\rnomyosroonlkrpqkutppihjsqqjjpgmorncmkib{oomotmqtoploojnopnjk~nsknnqjnmnnkpmoqpotmppmizqkwnsdnnqpnkm~hnnkjqmjholfn|bnm\qnovrpolqnprfksnxhomsvboonnpnrciopuenmjomomfsrnqjposntonkbvnmnplnnmmpppsnrlnlmoqrhnsmojprizmbnorkllkpnlnnhhqqhoqmqmmqlqvlqrpjqz^ienlerrfjlsluorlorokvooocnmplmkkonpirlnijkgrroiqlgjqoxhmlkskmmzmqnpmmmpvwmormqmqrpphimmrykposn`hlqlskoopuokohnnomqposommvnrqojvngtpkinlnnkjnlmsoqmpuigmqqmsqisknmganqnhnpkljpmnclfnnkpqpddiimrmnkhmmjmlnknrlnunrlkmmonpngmunmkmq\rjtqnjlnipo_jpqilsoknlokoolflctspooqrsmsmmmsksmlmrjnnwopnolpsonuuknqnpvanhngo{nqllkspuqvtjqmooojjexqkonomqjplgprpvntkrmqsoinelkmnocpilponlkponipmknmmk`luefdjqfttmmckkuqgrlstsqqkqomoilhsmmjlogkbmsojdrmlnqqsjnojtlrmocmpnmlnyjwpltkhljojhppsnxnsqpnsgsiqrpq~lwmcjvlnj`lsgopnmqmoononnngpreteedkpojmslqpnonrnnknsmjmkqdjwllqnrlhrtrkmksrjnpkrkrkloqjsmpprtlmslqumsemnonmsmgnotnnswdlmpoekpqsqplqzknkmpronnszmlmomnjloqjlhxonoqsmjjvioonmknqqhxlorjoinijlomukqmqypkoapyokpmoqnspmkinlnpngoponmhominomvlxqqpsqgqwormmpritjlvptnqnttprmmqrokokcmriqrrqruhmfotnomjnrsgmm^likkqonpllnmoqpnmmnmqojwqrvnleiooyklppjbnupmmgrksojpolmnsohqqooslmmgoojoopoorppmqibqvmlqpjvpdcrrnoopoopmoipmnqmootmfvndruekognlpopnszitscnomoiepqqpnlnpiqhrunlnmscosjnpqlohrolnowy|rlnjnipiggdqsmmnrnpoqjopqphmowwlpfql_lkwmmpnnpmigoj|mpnnjnonqjqomqleojriisnomqplosltlonmpnnqmgoslnnrlnm}xamonputnhgnopdgpghssmlnriflwgtspwafqpntlkdpnh|{hbhammjrtritxzigip`{jonPnqzxmnsjiljiprkpqoqtrmjk_nrllrsj\thmhPmtTkjf~ctuky|udjvh\osnojvrjqbprghuovrpeoksnmwsagkhtjnenYjptr{xionoomqiuppfpkrkjlimshmrpluetvjwlhrfjelkojpaohsuxql|trmrlpnlqsjintrq|njqiolptoqnsro}k^iNqsgnjtmpcqrbminhonmlenwnplrrjbqjkrrljjknmsmqkpojonkjrlfpupoonoyunnjqlohhnnljpnsnsrjhklmp~`vmnsirqskocqttolnjpnorsejqtpsmhrlkmttmkknnoqkgmiqqllolrelqvjnnsdkepgphogpmtnjljnmsjmkknpeqqpdjv_ohjmportvptkjppnrwojtpsovkqojhgnlonpwqfrmpoilkrknrpipmyqvkgoulqlqsnrkqmj[rmmrrVnpRqgesqlopikqorlommcmmmmhnqtoogrelksmwmnnmngjogknmgprltwjnkpmooiojprmpipohlrlu{qgtrlbkpkkmetllilajkonoglnjhnhnngkmmibkomviopvxkvnqnjtrqqebprskjqtntniljlhfhntoqcx`ptqkljrgmnpqqqhmgflhbbqrotolianozsmjnruirym{vonuklpkzkri_ukrisnqjqrumjueptqqkwrmmoqaiphowqrnnomll^kqmiontpkrqnd|ovpklnnhnrolxmlglgZklikllkxqanppipnvormiqlloppportftopklmuoolopoohwqsnnmr]nloqmhmqqphogprlrktnljpmowlopllglmYeluntlnphjpiornpqsmqmowdlnqgmmsxsmontmciloillqkkcineenoojvnmpqomprlgngknh`rniiknopnppokpnijmmgjrmlqo{ons}pnkqkiqpoolnnlmolrbllqfilpvjskgilimjolnbnipnkollilppqwombkjfpnqknoklnoqkktmhmplmnmipmliioijiditlnpornkknqjholnpohelpnmikkirmlqWmlinmimcjmmnhmrfnqqkld{shotlnnhnpspqpuolilnliopprlkbgxpcjnomionjtlmqjp~okorqqnkpnmlmocqhsmhwfvnblojqmpnqmqmjlrmjlqlmifqoilonmnglonqp]xllqzmrppgnyilln{tppxkontpfqoqknoikq`nlnknkiqorvojemonnwzpfpmotollosomrlpplmnkhnvpngkpposskxlmqnkmoWqsgmkspconkmmumqkjlmkurXlivnfdsjompkmmqnlmhnigmmonlpklpomkjnqirolxhlopnnrkjmnkkqilgqdnemmlswumqknplmrmmqmmnrqirmmnnoqhnmnmllimtmnmonroookiltnlqpplxitnlmjsxmomoifmpnoynkjmbnlrvplmojkpmkmnommnoonljjnloppvlrcmohju}tnnlmompoynnlnknnmoondngcpvskrq`hqoqnkjplorpoulntkknmkqmnmvnmonhnlnnsmkvmltrgqkjnkjlninzlmqqpndonpqmmnoonkonuhomktorirlnnokXpomqo{nmnshgrfkmlnklrmpenmplgqivtkmqzlnlpmhopnjmlqoqslonwenlpknoknlgmlrkruiqnhgpmngkoxknlprkqkrrmpkqjfoomlnmmsmmomuimolqopmpomprymmoouphnoosinvinpqssnjulnynqnolp`jormmrmqdmitgvlnjhhpnnlirnvdpjl{nispimnkllqoonklmollnppznnmkhmsjonmmpompmsnpgjjloppiijml]kpkm^owounnplmmojqjplnnjmlroqmpnkhlopiimrokporqcmollmnmpmmnsokpmiojnoxojoljmqyoqpromrlnroplnrgjqmoojmpnlwpmopnhxmvmonnpqtpnnnWmmqqrknzqx{jnnsnmnjsnqrennntnptobpqcfpjmknjqpnnopnolvwljmntoolmnmqkfokimooqmnmottoopzqilqqlon{rmogpmistpikmpqrnpmpmh_mtmtjlhnsdmmkoe{jqgmnmhkjpqnhmposynkslnnqoo_icopmhqohojnnjoioklnpqlpjpjjomqnjpne{]nqllypqhqksljqlmninpojonopnrnokokpslnnoxo`kmnnorrommhkllolyigqurbolokntousommnnnmoontmmoepoiginmrjpnln{ltpsfomjpumplhspnlkoktyqocqjjpgepnjjnikqilrooi]pmjlppkrmkkollsnhjnntwmmplpmfkrlrjpomskkrdnmmh{fmohemqlkhkprknjkrnvbnrlphomknnsqnnqonpnkmpnpmjfppgmkloslinrlqjoiirknpoauonokankfmjjgkjksgdpljlmqnnqtrmkm^kcnlgjkplej}mlmljplbkrlsnkpotdfmohwlkmgtfinmhppkgsmhnpmirkllmpfmzlmngqknprmf_bsnmrcjsfyokqsllodrkhgllnmimjrmnrmjlpessormnqlsdgmmtpnoklrdnsolgftginoh[qnhqptonlosmhvllyhmxqornoluiobonllkmpll`mioskfknonojqnsojrnnkknnkgofnlstilkqnmipmenioneksjkmqckqqjgkpgrjubqnolqwyq~cknhrfoXajtiroclehowjuonnpflmllwetrorytnripwlomiry`nngppgttgglzpjVh^dqufhphhsouqmnuksfutlipnpwflipiiurlsklke`kpkorpqhjlrqotWissrmuloomkgooj\pwliatkoklahmqimq|nrpmlgkivpomngpqxmrjqnyn]flki|lomwnrnmqj}qphdtmlnwkrmchljgnftpgotpxq^rpjkfpsnommkuhsukoneptqmorofkomfp_nshqksnmlujool\knpfnoonpqrjjo{nrwnnjjukmiirr}gjdrjhelklpsqmkonplrnmvkvookvojj{pfglkgspsooklkvxo^unqsvodpwsmjnurnohnqjkqonnekfksmuskjqiijmkononlsohrrvlvofdpvilqpmooturjmfjlkltjoqjqlsllnnrqtrmujonnvkiputnqjjslppgqpnkn`llkaorkoo|mnfdkzmloljujmojfrmekrarmymq}myrimolwrnmnlqononmrnitozplhjf}osmpmnmak\tgroolukqrnnmjnknvml`olflorstnnqoqmhknjnloajjoonotmhmnmmmkktooinlgalqmnqtsvnpnjiknwpglakoqlmdopllnlkoknkopkmqoj`pwwssqlnolmkwlolmklqmknmgslpsnlnnnexdnqzosmpkkhvkqnpnlslnlfpslksooppmppsplmoklzononomqpppqqpxllnmwwrr}nqpsoumhnmhghnmmpnokmohnlyqncygkjpnlqlwsgmhfopjryqnlopiloqnq`mpeqiolermnopokpmhornkmpqnyqlmnnngmmnomrmoro[kmqlonlk^gn}pozlomllulmlm`rpsvlnplhuqmmkornjrmmkrojqqoonljoqopolmooiqnotirpojnmknlpknjotystqnpsouklmvlvsomunpnfkpogbglqkkkukpnn^noofwimnjsiopmmonrwkgqmryqonn{kpbirnqjppkthmglrbomlmjloospzokmrgunnj^mhooqkgnrmmnaulrkqkoonkitkhnmptngllfqlknifoxqtiiloltoqojsrttkqqjskonovrqginmrosllpsojpmpvrg[jkoqksnimuokompnimojqisrrnlkoifmlnljmpjnrgjrprjuqrqjklskjooorhjgclnojolneklrithohfowkjonlpohoclriffhpk]lspoklponcq~iqdqojjpyopfknskinouhze`rohkqlnwlpzupnhjz|btplochmshlbkirmncejllokjlpjvkffsnhoonmjhsbjrnklnpemtlipmipjjnouoqkjijgoonlr~jghkroiinknfZkfokpejmqkopdqnfawmpnnqrlhjsmxonwmemgjppkgokmglpijkjtltruqhhptkpmcouosmnrylpqpfrmfillsomjpi[sinkmokotrufnoogjmpqlenmkoknlpmrrrfoltkqoqriplol|kulmpsmmnlqpmjliotrjjplfmpmouqqikpprkslousnloikplnoqoooplosomlrtsjmuoprpjnbsntrniqnnnjhpmkfmfinsnonhoisprknvqojolllmljoq_vomqpqhrfnnslpmrqoqplrwionloqllsmoouptikmmespmmmskntmpropnkloonpflpomjxnyqXllgnngmfmmpmlonhmpmogjrjqqohlxreqnorjgqvooolohkoonyYvsiclimportipnknsmlsgoimnolkirstmnkunrsgzllpchpgneljixlkmnhimnumponllnmjvmwlklmnilqjoqknpjpnixfnnjfodsqppkkopylupqhjmnuijxhnkfnfpmrmicnippknsfkfqmqhn|millkqmnqjpumnnngotopsmronhhffqtolgtimhmwmjmm{lkloknrmhpkniljppqpomvomqlmniolomnrlfolroiq\wjkfmmqmnqnnjnfqrmorropnlipnmlpi{tpoopqqmpokcjqomnjnoiplnqjmjmliscpnolklpnlml{mpulpmlp~pvrnkpqn`riolmomnunosntrokpionxtilftr{nxmjhgjmrnjqokknlnnkjmfnqnmmfsmvwipkpstoroonqnomnmmnplonpjjgldndprsjgkmknnmmgpgrelknjo}lkopmhkokpnjllhrrnonrrptokooomqqmmlomjnnrkpknmnojmpnqnomoolppllkllylliikmtnmjirnosppnngxwinlnjprtjpomjninslj}skwommmoforsklqkljklomysoimcmglnlmnknnoofonneomopohpmooikoglm{oowlmoikfohnlonmabmmnppuoqnoulxpr_mmmqnjpdnqkolnnpinnupnknhmdrnnzcqooshvmnlhundorxnjnphx\uo_omdmnmwkldldmlntikkerjsqutsukaunonpgplkpxbkhpmdkpxqqglsuumxgrj{d}uljrXnxrplkl^c}rjjqochlnlw^cwdiupnrllemtplorhjeiqqgkokjfimmpktfmpsgqmugqlpmkezoklghj]njcrgjjsqnqmgvtholupgxliouimqlmektoiq^jshinilrdq^_lnjkujrekrlnroljinltnkiiefhrskk_sqnvhhmuhrifmlijn]cgohmjpzr]rkmjnsntnimpmmqmkmpkojqqjowmphklqknnnnkonkbovridopgpglmrhqooloodg{sgpletglmrsoolrb`hqiqkj`\qjprhingmoksnnqgnqnsckckkqonummjnmjp^o_nhnrjnkleemrnhhmmiloerohgqdpnlfhlofmvlf\olphgrcpr~pxqqmnilknqlrrjdimlrrplnojgslspdqmmvoljruksksvk`nfqtlnopkkrndqejtpiklmoqhhqjrpnonkmoqmmoomllnmtossjvruekpcploininpmnukiojomioflj[ksontevnppnulolnlgoktlmjnhlmrpgqltnoflmrr]nmphfookqglrinpmnrhwidnnmqmolmpjomcmjosroqlpsmmomjjnphnbrnkhihtrlmfnkrlkprnoqgnpikllormunofslirkbqposlnnopimiuiplmmrhlrmhvmmmknnuopwlmskjqjmkl|pqsmkjmmwnnlfnhrnkunnogliknmmlmtqmkoirjskdovUokokmmoommjroppsllmlln_jn|iq}knwpskpnvuplXlnwltlqplemqmqpkngqhklqnnsoqkr|pmrqtmjjpmmnohrlmphmjocpqhnmmpplomssmsopkooqhtlomh`molppiqmnnstln_ppmmkommtspknjlnuv_rnzoksojmqhmpnlrmpmjmkrkvmjqluolbvfjjqlnnpcr_plmjmglvqvehpkncplkmnnbqlrnoktolnpkqtrolihfvqljjo{mjbmmilqennkixnumolstfqrijphgsmslhmorrjqfvhfqjutskpcrknpnoprmstmdegkqmtrlknsiioqlnzjnkknsnoukonqmvrnfnducgllqmqnrjtsnnnwionopemmnlpdwklqcpgisixjfjkimsnlntqmjsnmmnoqpjahuutpncsmhmh{ogmlnrhlhwuvmlzbqxuptslmmhtlqckmujjmjofnjjlpppqgbmlmkosoioonortpbmpfpskdohlerhfnclpdorqohdpmnlmnrngkfofpcoshntgjnqnopqmhojrkurfisrkljnbsmopmenpqmeiglriompijpmdllliqjrqupmnojsiolrrnonpnjkrjwnjnmgrjknqjqmclttrnffonkqnkppjgponilheqgmsnpernndfkzrqskqkckknipooycrfmpjxmloorodrppljmecqnkouuojmnvoqrtojpvkrl`lnomlskpmem_pmnpmjqlnofsjjilljpqm^onopohiltpqnomnmilmjoobogrpnilqokllpporiuqi[knppgnlqollnooloppkmSjdtjrmnlqjnkmloinncpplmfkjoksmnploqommkopflmpsrmkocho^prmru_nkrnonqmmuqmnmmvmnplohntjrmnloqpnnsqnnkpmpmrspmgsqntpkhmimhmmktnmnolommfhlhqiiqmpinqopinnmmknkmkemlxkmcgooolmjplipmknonfojinnill{lhmkpqopemvmlpqorlm{nrjrfqqm}npjksmliloautnnpl|qmnlfojmrlmnvogUontmnnopoznumnyjlo`linlomomeqmnnopmroskmomghkriqqjhpodjoioqddlimolsnlsoubmnjxknjononrsjuvijnlepqooqmloovjmtnltomnogqrpppltoumvpiklkdjvpkzlgltpeon]ojpowlgirrrk`tloqnzjaqmlhdcsdpstghhmfpolnehosmrlnpominosjjku_uomnlnnmgmtofklvptualjhckepfkjwvklrpihmppjo\zmomdsul`jorfnrsmnrknqshloforqjslggjrxksotqioljpnmYl_|menmimripqmheqqmimmspnldqumtxmlvprwkmrsjzhnjmntpn_ulmplnknkhusnlkjqkolourljkhxrmktfjvhzjrdonlms{nmgngpnjnmyfnvkojlmjjnsqnqqq_vmhkuqrprpjnk^nhfmfwsnmreotxrrornyljlrluugjontqoqoxneqtpjimnp{dqjhvmkknkonlljknqmhismmksljonmhkjihozmplhfqr}jumhlpnlgqvmosihhmflzflhqilpgrronnosksdnhqjqrkfnvsonrikflmnwlpexurihtktrsjlhmkmjkpjkrnhtjhmrdpljnnoerssojnpdkpqtqjjkkrimxuhoqmknooyunommrmiqndplmjjwofqnuqvmmdqdslrntfnmksj|or]qmthopmqvptpglrkktogmpvstzqlylokpoitjuwlmtemqnmjslzosqrjoklomnumsqkkiqnmkpwmojpphiwlltr|osnrirtjsnljmpfmkmmnrnosskuiumvpjpipmmjhymkohnsgtmngopqlproinugpnossjpgcrrqislqfpnmloknpjlmncmnyitsqq{xorrnxnmulhjmkxhmkgnpuqoommrqovslmnmlllpulgvfjhimitarqlogjomjluojshlnmjmotlntmqklvnnsjmptmljpjotuimmmennsrnfofmmn`skqo{nlqlqhohponjmokosfxijmlqmimreolpkjwshkgipiqlinlthnqpsxhmrlmseiinpmkfrtkpkriplkprgingiptwonrhkrkmenhntonmmipnijikmiiqpmvsmioypnhosqmvkjslqnlhwsmknvthihng_rlrrpgtumqojnqndkoqjh_gnpmtglhmimfjemikptinldl}urhgzlkkbliqppbmldjpftgmnp_qhjinvoqpsfpmxhpckgkvqlT_ptjohrnVkluhpnkkhojjilkermnolnlnopdqjlzomognymdljmpjjppqwnjnoolqnhmknkXklvpllrxonni`qopqokqmffppljmfjnptoqslmnqmocijhjohgjsquimrnnjkpom`lrkkjuqjuopgjiKinofxole_uolnnqlpeokanmgfjqojplubtqiekjlljlrbqpormzqiuobgoljtcunpknpYoqopanlzygjchjmkkr_lktae]lkqko\[ormqsdqlmjtfhonocoijzkvmmmmgjjrowiouroliwpuvqjqljlm{ghpmkjhjgmokpvpfr|`ljomhokk^nkicospfojznjkmmippp|nmonikuspxifpOsdsfotloupsnkykvsrtjvkjm{lwneohppjkpycnjwooujtnqrkqmkpokpkkqqawloonloonoiolmsmvnonqmomkeomlnhnplmqpkbrnlnlqmlooopnnmqpmjofnnpcmiinmoqlnqmj`krqitmjkpinjlqnpkmnosoflslntsqlpmoilpmykqkmvmlinqqkqlnqpkllskprqortmmpjpozojiomqlqphkfognikmfmmipnlpjmkxomyqijoqlomqkqjplmpqpqumstbkqrifmrl\rrllnkmlprnvqlllrnpjoauplomkniupksmojcdmirpiqhlptqo}ollnnimmqnwpltjoljlrmkorvmmosmkpp]pmvfmqnjnroklmgmlkonkdildkmbZolphgnpfkomsnnqmfqnkgjqilkmpmpohjopqpmssvngmpslnnlmmintopoqvnpdpohkompmjgrmvkpwtmpqjvZttoornthnkkhtswgqknkokmqmplmmikomlfvktnrmjlriolooq^rljjqnwtjmmpallh{pqemonzs^mpmtmnosoq|pmplqmmmpnrpnwoflmnloqovillnpjopmoqolvlisqkshpkuipkojlmkgmgpsnqpqknrohlunzjkuqdnjrmqhrkkhoooxlkpohjmrmpigovppynkngplmdsrnsjjziqfpwieotrvpnoqekmfloqqskjktlnpdmmrpoqovrihislqnimpurlpimp}pwrojtkmognqhkgkrggqpkpqmrivfnmhjmsknsmlkrmhcmlofomrqlsnrrnomoommn{rjknnlqnjnnphzmenlqniekthnmpkojmnsolwspjknplm`~jqmsk[\vminpnqmnodshyrlnnysoomtiphvmlptok|hnronnnqnunqnqompo~njkopnjqloqirnmnmlimomluonjlpolonoggekq_uklnmoknmjpaompldiooaonmnlntojnljfmktlngmtkulkontoklliltlnlmuon[kklmiofmqoojnnrlioornjnowgmhnhtmyqwqomoljmkvpojpklhrnjudohampphwsolkmkdqltoqmrnijmlhjkmkqkpplvomimpnronpip_jljoppmofpnlrmjrhnpsqpophrrpjfnkdolotqmooorunklorsookksmunovpvphhlsmlklpfuhmokhqrmnkmqvwonn}mpgpfopmonnpkoxqmhrkpkmpiklnnwqbolnonnnlnsprqmkqmmemnnlskqnsslmjmnqpqvcnnmp_slonymmmmmmmijpmlumqngompkkqpokpmmqQtmtplpnqoojgnpljmontlngtonoomklonfasignrlemmjmpnlp_mhnobmnni{oqnnpmo`folorqmqkorptnqlksmqknxlonkscnnonijnpkknpollgonjpmcjkioplmwnqtikjoolojqnnrohpno}mnomtmnoclninnnrpqooqlpmlnmoojopmoqnjnoopvwsnlqm{omgrhontrvssxnfimoosmpnk}knmojdknmmoprqmikmdnnwqfllkmjqqmkerfflntoi_t_lniurowrbnmlnrljdsndpprfskktononqoqjnqjogsrjkpumeinnujrjbhoposqhurrpinqrkehompepmmlfynqmjkqmzimknqmlolphotphlmjglnfhkk[ni\lskqromnopsbltltr`ntmogrlkzojiolvsllkslkllwsqlknikmksjrnonnwhfqumlininrtkmnqolsvqwhlnwnojrofnldjommpmrqrioostmqkmpmkkilovuhlonnjnojmumqonjnqmpqnsocpnnpijln_mfpsmpjh]jqlpmkpfipximnoobqhpknpoxrhjk{piYkngivtnhhblpmomphopsdsmkldosoojkonrnlumiqotollmnphllobrnnnsasnqfmo`qfqiuirqmppnm[mosrotozuktjmomeqmqmokiktmmorqqmdjomjlnlokdmqmofmdomqpmm{lqlq\ppeoijpqonoqkpprpnvnnpllappnlpoklnrrsmfojvhjvlqksrlosngookoponjmpn{qpmprlpkatfp`kqlmmmlojfhonpqyklmqkpoXrrpropj^pplptrppmoohrnopol}gtnmnmsmihlvmrjpprommlploojmirftenglppltlrnslnstquolyepnkmpoolplilqnqtiilnhmmppmmmunjlmmomqoqptqulohkdonf{voqnoqhssnmilopjojonolputhvkpoqrqijjqmmpmkkmupljtpznmsjmnqkmlmmtpomkohnlkoflrephpmvosqpmmlksugnqrommhesjkorimjoljrorqpkvhpjpnkpkgtuepiqnmkokloonnpdjknonomqokoklukliqtpjpnmnqurrrofwonrktrtqoloioolijgpqil_vjylmtlqypt~dpfoonqlkjpithyrllsfhonmosrhropnnwplnpltmlhmpmqmknmnhlolpmkpqurk{droorrnxqxomnflomjqpflpowlunfjl}mmrmojqhpgjohjqjmlpnmfqgmljijpsmmqiqroonjgojnpmnknqrrppimulqoqopllvnndbtoojpjqmnnpjioojrurfjlpsgrnnookmgqjiniphqlmnrrtpkhohuslkurktsjonuomoonxlqmlrslokmnoounhjjlmhojplmjqgfsmoolpmtlkopolqqkqorgppktnvmnlpnlmijpsmyjhcooqmonhmjepljvnkumkolpfrnqnpanitgyqim\pujoeizkli[jgjrtunofnqjmninlmrlqhkijnofglnsqnkollcglcgpmkoqlinhndjrjwoljullj^poqnnnhckklmpplxiojqrlmqorqumjmrgmdntkrjpjiiikqksgbmmfjnmmmhkormmimvkxnog`hvooipohj||kehmogqllthgulsnllonospmrmpohnfitmpoqm\kgiqpkeqgljinrqoonpmtojmkspqkwmrobdmjlnmnqsnozqnmrhnlgnormujhlnofkktqhplmikykpphnhtjqqrssnphu`nkom^vlroqyomnomonowjmipwdgqmqnmqjtnpssvmxnoqyoqijoppprmgpolmlkpqpogklrnlhnkrijrsilpqmqmlmlrmcnlrlmpiunaplojlrqnlrrqomnglhjnnlqornklkixoolnmmyrjqjojvmonkqmmllrqgihsixjjqljqvpjmzy{okmprjbpmjnftrmxhpqlmlngjmiobnldakulksxjqbsrnjiurlplzqqnjtxolitripporpomqlhfgnjxvqnqspnqvofnmfky|iukvsfjohkrdahmqsmqnsuomogomjwqq`jnjmrknn_mpgmzsotoxnkpgjukkilqdlojrosimojpvpqpenklpnmqnkpmtpsinennisum{plkipfkpn\ifplunxjohliltjltcpnnppnpotmwppnqmkkquotloxivmun{lounlfhrnnfuxwomlliljjqdripvrttckulnoqqkimcjkiklrploohmkjmprjslpnqqlrmr~hkojnnqskrfnijmhknttcuqnougeqjlupukqlmhvmqmnndiqnr|nirmlolokoqspptjlhjxncnhovfoqqjjehfvppnnkltnnqnnxnipnppughhoootmrsphypklmpmjpvrrpmktfgnoqnxrntjvliprlenmqmjlilhmoprpmnozopmnhnioosaonnfnlkroopknlonovpmrbqmnnpmpktppt{mqjpmljnmpwmntmpmqmigormmlkojkptq_mtfhurkwompmrnnqxftupclkpssoqjmljlZnngn`pmmnifjpsohpcnrmpmqqrecpnnkmitsqjqppmvqrnmtkvroqqknnfruqrpmnlmbjjyloopwvpunpjmjtcnlwrnlnuqkn~ejnqjpjppoltlmpkkjllnonhrpnmtojrpnqrqjnmnlirnfjpmqnmhkmplvglovmloojpnonjlnoip~oqopnilrnnppmqokjolkojpnfptnlqoonnpmomollpgnhgmqmgo|cglkppnpgklumkpomjowsonlrpn{umumoppukmgkphmmmjlwppvjpow[nnndkzlqlkojlnrmkmkqoedqjsjonsnpnnprnnsyhiqnmpokumfbemlswlomfonqnlwsingopmsnlpplqonnnmlnmjnmnrp_qlqnwon]smpmmkdimokvkapyjtokuumlrigmrmrosvjsqsonklkflulrrpqmomprtoipinoqdplxljpkmak^mtikpmpkmoqooivmpuonipmrmhmkgnkqppgmpjknmnupgqlilqlzenmprurhmrnhmjnrhinionkpklnronkrkkljrnklkorkmmkqmnputnmoiqolumnqqqrjof~pnmoitllnnkmthokimqnoiksqtotqaijnqhnnsmpnohkjnljppslijgm_qqokqjipjoopgkssxjjiokooilorpjkpmr|qoplpmkjjkukppjmllkkqrqvjinqnnloqodwlk|onon|qpjsohmnuhptlkkorpidokkmkrliuolnorloskmeptkmnmkxpjtmooqmmrnqmlnpmrrmiqpilqinltpnqrjkpwrwnnnihoqjqplirikgqltlrpmpmozoqotvnmjkonpfithmvusrjlllitmjppilmzkrmksq{tnnmvlnqnhxptlonkknelvxplmrlqqqjcg^lpkolp^lqUnpjwpknkfhoqqqqllinjopmcngdlzkimirlqonosuopnlspmfpnqvnhjurnsoigvqkqqnlglrin{nm{kwvjkomlhfmdlegrhoiko^lmpnuppkdthsloqkqnmhksgngi{okntpbopprmqmqqozsonhoqxsncqooXnngenbkiajmqmhlotoktnvgpumottmQnoznmiylfivkbjmqpnogrpnjhmpinkqhmpqolqkonoksmrotmkrmslpnqjemlgpfaejtknitmonogmnphrnjkpopknpmmq{rjflmqojxmjtppltpinepnrmnpmnlmmtiksmtlisouqoqovrlrnodtsokqmjnmnlmqsmmlhajjnqykmpkklpjorlioollpopnqrmmmponrnnjmnoimqoqppkomlrtmmgnorqsrlrvnjcqnpfpgokrskjjlcnnqpofwetoqk{tkfqlrpkmlymmnsnnkklmoigsoknmeokpjVsnlkmrkftkompgoloqrmpnxwopdbnnkwupngpniiommmopotorlsmpnviphqlqhpmllwulnjskoukxlpqroojlprpkvrkomlypphfreqlhqsmjtizpqtpm{irnupxuuulnopopnppsmokrjrjmoimqpklpljkrnnkqmpanlvnirmtnwohunpkolvmnzqwjl{rqmssprmqmvqorrrnkinplnkhmjstqtulmq`mnlqokqokksgqhnmvpsuulnomnuopjtnllpqqoqjqsjlvrupsqkhpqqomoqlsjjpmqelhsifkmmvnflnpmmo}rxnpkfl{dlnknpmssknmukpqppmpnpstoo|tlusxqsspslm`rruiopfkkqguhpjkqom^mnodnfimojmctpmlimnjyvsqohqmlnmruoomrmvnlmjgwltpquprqyprpmnljolnpiknnunmtmkqptnpthrrraloumplnkwpyhnjvpoqoppmkoulvdlqqqwmleknjrp{tpweomnf\nrm`nptkvoqpomi{emogvoniqsqlkmofmhjpunostmgrgqqostnsmiswiqqnvqlkgl|lh_omlhkqljyjtmnkgnolmOlrkppuimimghqpzkcklqqcqmflmshtimomnmlspnkmlpsoilmlsplrullqrvphkrqthnkqrhojpilhol`jsmlohqjqkqimomlokomnfnfmqhrhpprpjqiqhqgqmlpgnmdvulihulowhrpwisrmrlsvooitngjkphpmiinkmdkpntqinjprydmhejqvlknbrskmskoqnjjlxhlurvmmfotgihuoqoopidhpjmonxjlnjgngnoltklfspgplvrmln}nbhjollkoufxhlg~noqhinxmnoqpwlfrjgnhjllmjopnlrqmhnooioukppmlrlpkhrgotnonsdsqyqokkspmorqmtmwwpeunrurpngpsqogkpmllhom|dnclloookkhpjhvljiljxrmnnprlmrjodiqptitquphlpopopnckf|jpmkfvmqnqimqanoksknnlvulnwojlmmijipmqoppzmssmnlsqnginremhn_onfitqlmjlmhjmij{fjjsuyp{oorrklneud}nnrdgltpqnkmnjmio\mnngjn|lkluokriqgklpcbmzninllgionnjlmnhnolkjdmnrjjkrvq{tiing~sifknohthllVljnkoknlfknpsorlggthicnmrnolmhnoolmmoihmolvjfkgmfpnovhlosbroktlsepjol^mlltpmmm_nmmprjnttipnugmsmmoppxlnonjsp|monlxWnphiknxmtoinomkpklrlo~nbqldbhherusfounomtkqrtmlmjptjnpjloqqoimlogjorhnhZpmjpkkpnilppycdonlqcpjlokoplkporolrhjmnknloxszrlmpow}qvhmnkkrnonlnpnmhnljpolpoyqo{|libmllolnqqnjooqmociok}w`jknklrkvkpkrpqofpmmvpmkijolgomkoqlojnqljqnkphqpnrnqopojmmpklnlttpjojimrvrngnmlpnnmktnppynnlimpopgwlufhmjmolkoonmmplmpnponkkvpsoloikerqosirnslmoporlpnppptqknomeqlnmdpfn{nnlppopknnkkklumknhlptlvnppoimfnysopnpprongtplinmrollrsihoorhiopokplnloklkmkmommrqknoekminjmqomhqwoloqqhkmlokuoqqnpooonmmknmppnniwqmlpnmgjlmmmnpupphmspkmmpovnnnsjppoqlllnpkouklnmqklkkjqunpurppprslmlnomgqmmolpqcqrkpqnymmumnqqpknnkrpsooqnjljnhtnpmlnqlonkskrqlonljokomnomjonnkqprmmjopomlnmpjiollomoqqmoppooojpmpnrliprgnulpknrqornnnrppzmmonooskpmoknskmhpnostpjomlonomspsngqpqponojklqtpqnrmroijkonnplnlppmlmjloljnltmlnqptuk^kpnqnnmrtnltnppnpnnkkhmsnkkkloppooonolpogmlkmrqmsolpkqopiliiflmnsnqirvlkommkplploomlnpkminonsopmlpnoiolprnqfmnntjssnomlnqqnynknppomjrlrlxojhmqllmplmomoonlnrrltsphojnommolnppojrnmqqktmnonmnmnrponqoioooqpjue[lloqlkjnylmjorpkjglmllpqlrvtujnijmjopjliokhptlmknkfrbrlolhnoqdmlmmhrsrlnlhopzporqcq|pjkrnhioskortqqmmh|\pnllmgsplomjqqrppojtqlojdonjhpmifmpnriqmonuklerumormmkgdqqspojnlhpvvsqomgspmfepntmsknhrqplnmipolnoonqipppijasmmlmohphqnlrmpmlsshpnpllneprapnnnojkoiqntghompnmlhh|nqqynnrkjmkkloemxlmhqnomlsmaorllnpikqjejihsctmoroelokokopqiommimqllckpomgjpqsjsptoilmjmnohnkmhpkqilnngpnmjxdlwoonqlkqjmnnhomgjmonlmrodmnqpklpnrmlsuqjpmqmqrqojnjjssmjklkmmlommqhmoji_opnkhojnyjlnmqpgrlmxmntlriwmqoopnlkqosiljsnomomliiqqlonjlfkjlinelmoqnodomodrpfnorso^soirnopstrsmvrkwomvjnhjiqphmnhogfmokjmkonmmommoppqpkmromor}tnqqxs}qkijpngdqeilrtmimxvckfklmmllkpknnlnmilknfrjkmommkqokpnlruinh|pppnktulmomrimfllmrnmmqfknkqnlskllpnvqiwlkkovqqonhkmismodmiogrmron^phqgrnpqmpnnqymmkkjefqokoojokkkoljnemnqnimnkmkpqppoomsnnmmoonllqimmrqkonkopspkmmktnpolonqllkpqqlnuoqnljnjnlmmonnlpoikonirmvphsjpplmqlmmmnqonolkplookqnloppnprnspkpndkoolqmoqoqpplqlkrnlmknoplnnoninopqnnstmllknrjmmooqonmmmqnuqnqsdlmm`lmpkmvmornnpikk{lornnotnrpnmlonnnoqnoqnootljnnonmplxltlpjkloomosmmpmkmdootserssokglnjgukokomdqnvomoqusjqmjgpnsmqskpoqigqgemponmjmtvgjomrlnkmiqonldiowoqmqlrkujqtlpcmkrlpqonqfsnqonlfxplllrlqvrjtkrnoqsloonqqmfoimsngmlnpnmkpwjhmordjpnmlmpmmkrovnlvnnmsvooblntmqihlnkmkmsjkjkpcsrheorslmirpnqlljmqnnpplmmksnvplmhkloknrqrrkmjooimjrplnpjolnrponcnonqmkpplpmmuhnnnqlluklonmosnplmsnrhmprlnnppnohmomlknnnollrnntonuiroodlmlorlmkrjhnoonpmlqqphklnmopoljrlsmrjlnlnnlmoifonoopolunnplpkqmpkmrnpplnoompnnmnpmotqjovrrhojptslnmnsslokcrlqtumnlomljlklkttkpmtmmqnljlgnrompmpnlnmjllqolnlmnrldojmjpnlpmwolmkmnsjnqplnmpkorlmlnlomnpoprolmopmlnnonppjprjkriupommmrnlnmnlnntlflplrnoonoqmopnlqtpprjnuopioillmlmmqjnoljmnnoiqiloonmpkmonnmojhpoepqooolkrposkllqpnjpqmnlipkmooqpolonnblmpklopojlplopmrnvfmo_nkkoqommklkmqrkjohlootrnrnmnogmolpmnnkrloomnnjmljnnopmpljjsqmqpnmlllfnlio|fnhapjjnmnpniqqqklnojoqkokdnpqnimisippnookhokqmmkmnmknmmqpkpnjrmqpokomktsmrhkmjstkplmujifqpcsmroopititmpgvgpmkqnmtmiooqolpklqjqkonqtotruoltkkjmmomeroklimpmtklhrnrjnqmoqinppsmpfgmroslrqijpnnpthkgjrvrklriqjml_nnomklnjkrlipionrsoqwnnpnqclpmkoqmogkloqjyfopl{rmkdnjzeoikyksjkijlmmsrf_qt|npnomnkluqoykpcnmlvlnpplworkqhroegpjlnijkh|inllmuixqWoqm`nyohyVrjjuvllinomuxwntglnnnlmjWnuilsfinjrulnkfotnnqnyrcttjfhhndhugsprjvpoohtlvoseqozlZkgoktloqlkmvmhsppegnilqlomop`iqajzjyiqwts^urujl|ipjpkqpitvppsr]spqntompdrgmknlsnmqojljjllmomnpqqnlmiollnonnrkmmnlnvpkkrkkkpmlhmojnpnkqmopkmkoprnpmpe|mluqjqkpimnnpmmlrfmwpjlqqhsknomrpqkmljbptkkqpornnlpnmyjmmnqoogrknuosjinpsnrokpinlllqnjlmknqlonnqlomniqipprmmmldnromksnoinomrnonjgrqornsmjqlpnilkomonoonnqonmjjnlqompojsolnllgsnnpmylkojmpnlnleompwnmjlkllnjrnnwtmhsknlskproikrpprlftjmrlagmiwopkpknko|nrjuppsmjoomnjfkipilmprmnosunrlminkkrqjloiqbmjejnlnmmkpvoennptmoinmklmkqrlnnnqrpommiknnjeqooplypolnmqgnko|lsmlloormnmmhnmohwwiknonokllsmjjkinfitjkrmolmiqqnilmrqohinkkkmimkinmpnozkomnolmkkimmqmmmniglllpynqqolpqlnmkmqokm{rnpmmgooinqoiomsejnltnntlpljlopmoojoooqilhjnqnylnnjoornoooljlso^imxrrppugpvlnbwlqmojimnqinpkgrqovulnngioqnsjjlnnnqplkpnhrkklmvjtliljnhkuwkplkomqshqjmhonpolgkpljnjmjkrulqighskjsmoqnimpmqguloniqmmnumokkslpnoeqmnlklqnqkmsoippkpjkmmglojkotritqmqniopqomipjjiskivnokrooltqnmjgmnmspimmptiphdpronjpnlknllvhpknkjolnkuppkkqnrtnljsrrglook\poulompnsolkjopkkqklqopohornkwmlkiljieelknpmlljoguloomlmocoogbkjmprqpkolrqlopmjumnqymvtnqkmillonrpnnlrmpokojiinkiwtonnjorpmhoqlgqroqtjnjrtnprlnsllooninvkpnknmnjtopqgppmkolmnmjmnknolpomroklnpllpnmuroklqopnhlmjnmkiomowlmgklommhonlonmimfnigklmpmkomlmnylnoqnousqplnjkoqmpkioooqokmnojnoooovmllnhpymplmomhkdllgmnlinqplomvinommlpholmtqlinrtpnqmnliipniglpqolpmlnqohkmmkms|lkhnnsnnnmnpommnonnmlnnnompnokmpmomllplpqtllkmklokqjpmtnhonotolktjnhmnmnnomlrolnpooomornmliooponlpprlmkgpmmppmpmpknmlootmlqokmrkphoprqpmmrjslljjnkiqgmjomhrmpomjljonromplrnmoktooolnnmmamjnnnnnmvokoonmmlnmpoodlnmnlnokhrmeopsmliuoponmlutpmrlmnqjoomfpqmmolkkckpionnqopokuprnommnwomnmqmlnrpnlnblomnprqmnlplouislluuonmjojhqmkjnnmipsklkkpkqmkmmlmmnoktkmsrmlrqtsqumimkrmjqsm{ilmqqmjovmgjoknirspnkmmokjovlnnroolnepoopjgtkjmiohijlwlnmnonmluipnimmpmrmrkkmjntnkqtinqopjinnrmvminmkllvmjonqhknohmmiomloprikxnltpqhmkuhminqltnsononmmppromvnimmnppmomjiklqjokpmqkqnpncfpplnkmlklpypnkmfsigoilfksnmnmnllloqnlmuimiqllonoprgstmhunusjxlneqnonmbnsnrlrppkplopmpsj^optmlljljolkjtjvpojwhkooljmmnlnkkkpkokiokrsmnplikvjjlhniqqldorhqlvpllqinxkwkmljsokhmqoiqhpnkmsummkmhpipshqjxknwkekqknkxqirnmgnmltqonolxkpintnomqlruljllqpmnrllplnjmqtkinniqnqkruqndkmnpquqo^oljeqorpnrrospdkjjrolniohnmrpirpkmpmsnhnmkqqoonoktqhxrmopkjorqtiomprloqpmnjpunjlimxohopngnfhlhqljlomkqmommiknnkqlntopieqmwklononokpmmnoiskhpanikdmmlmollgoomqopqldollnqjnpnuhmqupmnqnmoqnuotrqrpZpjohkknoieqlntqn`nnrnqmnqokpkhkmkisnlpmqsnphmnlvplrlpmnrlnrmhpml`plonrnopknmnihnglknpnpoonlkpojpqjlopiluqijlolkqhnoovlonmlnnmfnpmnlnidmmmomkkntqmpbhpmouonkplqrnnrnloylnvnmomrknlokmtprmnlmhmupornkmlmnjonnmmjqoolhomonmnpvmlniprvompojtonlpoxnmjqnnrmsmpqmmnnnpsrnnpoppolonmjpomnnkonkmmnoplrmrnmmlupnnkmnnjnnqolrominopqhopoblnp^minjzqlplnoljlonmnpoogovjsppplpmmluoutmkqmnoknmmsnlqogkqvlmrjnrhioqqyqketojljiqplnoljmmmoflmkppmmpnolpprolpkonknjjlhipjnqpsploqnrmnokpmnvqsnlqlqnpnnoqtnoolmptqqujkpoqndqkjnplfmqhmjpjtrnjjnpkrmuinmnphnpllikprstomkoknpsrsjlkkonrkmjnqlouqqokmmrghnnnlsuhthqsorrkuhznsnfikplkpljpvpqprfsjsugmnpph{njkphqqpllilmonrjjmqnorlqopjdqpqngoapplilvi{sionmsjsqkaqspvlnigltlljumqslngjmqjkimrhjlllimqpgbglqmhqnnlrpkkemramlifusloprkchngjroqummklqlrhrnlmliqmxpoeljjpkdlgnioWplmnojhohinumgpmqgknqloolrmqhpriiglmp{oupqrentfinorwkmlrqpnqwtqujomostkmiioqlpungmjsyjqjhntjpvksisoquroorhpoqnjoromqonjnknmklaontyjfqrthkkprpjlrlkkrrifpofstpopqni}rnhtmjrmolnpmsipqcloujolsljilovndpikonhpnomnrmsooumiqpkskwqmlqjopzjrmkespnjpkojnkqoolhdpmuvjnvuppwnmpmkmwonlvqsqimonoqpomorfnmmloprnplnpgspptfnlqp^hhcpklr}xqponqkoimjnrpqgmlhojnntommjnhomriwomopluosjrqorpkpponmoloikqkmklojnnphshcpjonpelnoipjhjmpnyrekpomoromonkokmnjknldovnmemknhnntrplqrpppnqlnnmdnrotpqlqmpaovpmqwnsnrnmngoiknommjpmsvkjfmqqplnorklrwqqmhknomvhmsrupruvopvjjolqqjltipnkpwpmnwwgrpopmnlionopsmookonqkoqonnqqkqmmnqqninkjlpnkofqkwrnhpnmpnpmjklgmqpmlnnpkmoioqmpnfoyptnnnomlomoirmqnqpplpnpmliqolowkmkomfolnkmoknlrmqlrksnqnntnjoimkimmnmolqnnohconnimnhqgldnnkmsqjlqonrmrfpkiolmmkqnlloppmkqpohkqqknomnlnofllllnnmooppqntnnsnunmlvrpirngogmmformsknrpokppopoujjohmpnpmjlmlllpplonmqjromlmnrlmomlyttipmlonojijlknrollononnxfmmpopkrmnjmqqmqtntldmlmrorplrlnjmhmomhkuonljnnqkonoqorlojmnmphqkmnoktkprjntnrrklrlnhqoonnmkqnspxlnunpxknokoqnmukmnilunkmmpnqrlllntmoerhhpopoqmknmnomqnkoppojmknnmoqmmpiyrpqqliijnmrolqjlukqymjkkpsmokngnloriomkptqlolpuophlnnqngsmojhmmuknnqrpmtmjnnlkmqoqkmokkloqlntwqqikmlqlfjtskinlpsbpjphnrlillmprpjrynnjhntoqkpnmqkpkmnlpnnkoksnpqmnfgquojofnklkmpoosjompoqmpknlpksngmslpwtmojshmpktsltmslkoqlthrhppngkrooglvrkepqqoikymrnlsjnipqoknjnpjlnpnonnlpimqnk\mjmvkkptmltiiklltkqv{psjlmsumdpommio`onlflfiqpoqnslilekrikrnjkliplnohiptqiqqimkmnkunxi]orljcZpantqinimpqkbohmnpjmqqpnnnjkqmgqlgmnkjlkofslej\iotmnppq{tiqpqomfepknnumm{sjlppjklnqqpjoomjkgotqojsirhqojromommm|nxwpmkwmnitpnvnquhkircpiiupmjrrmpmnlslnhnrlnnoogjplmlqmmspolqpojlipmnppmmppoospmnnlqqokmjimlopoamkmmnlinlnmmnnooqlmqokhpopnmrlkulonoqmtknkqqnnnipolpoonmplnokqqmnnlwqnipomjlsmkkkomqlrmmpkppuklnlpnmmlnonpumnknnllpqnokolmnjrlpmnnhoqhllsrnsnsgmlrlmqmmmhkoirkuooponkluoqmnloqmoonijqqnmnmnopjkpnolrmomniorrllnsklnnjqgmhlmnolqwnkkknmmjonlqimnjsoilnsnmlqsnmonnolminmosnoonkppnqqolooqolojmsqpmojnlniomrulnlnmwpplinoloqpmlkilipomnkhpligonnonlnnomlmknnqpokooopnmcnknnomnkplmlopnqmmqrlkntkjqknomljoompkknlomonpqnipmpktnqnoonlimsrolqoplnmknlnnmqqplotpoptiljmprkkrmnlohh`{ploomlxlhmwkqpkogpiripinglflngcqgoootp~qikhqipdmjirmlnnwihomhrmmismlmoimnllikrplkojp^muqgpxispsudnklorklpbknmgjnolqoogonj|jlnkywnlvtqoqfmrgllrpenvzmwkrlki|ohnmjkdoqoklpopmnsefninbklqfkijidlmmolgjmhmqaoppkpljuljmoklpbnuvnrldqoipk|grrikrlliqxokmlkojnik}iiojjrenmlklmuookoogmmpilmormomnoqdinojouxnimmpnnuopmokfqnnphlqcqljooppthenpnnqmpmqcpkmrmjnnprhmpjobomqmkzotmmqmdkmpqmhoyoslhomkqzjmjotkonillmolgminiooomgnlpkjmjllgnsurrluppqlllftomnmjmrtkjmeknoqmopcmpjmnjighjpsonkmksjmujnlqmmpmkpjqjmmhponmorsjkkgheonfrmppsjvkioomqmnppjloijjljomngrqnpimssmujmppmhpnjponotqjolivmnjqilkgrjonpoholplmlpqnpvqmqoohnnoqkmgomoouljjpnhnoqlllpfoonpnmoknorqomn`hokppmphhnqptislmlrmnsmlijqpwvjrmpogqphlwmlgnjsvhhlmonmhlnqhlrqlknpqnohrppqmlwlprmmnnqmmqlkontnslqnllmprnimqnonopirpmmijhqlniihoorslvlhmhljsepkiujuopqmkkimfvlhlirrnsqkvqqhrkphcqcinjhlprpkns|mrnmhrqfpipmdprnnuimnjskmqkfq~edoqwkspnmnminulpprnnns{priokukmpiljhlkukkptnqtrlkonlsvplmojjnunnilonilumtoppdkmnqmnqtnejoprrqhwxljpohmwmljmrqntksnkfpnostgmqinpmkmotkrsykrplrnstriifsmogmplqmtmonmkmrnjppjiofpklooofjkrlm{pnpnpmoomoqmjimlqqopqpikqrokhjpojphnnrloooqlndojirkmfnrmmlhlmpnrhrmsmpmmoflkmhnirolkqlkwmkiqjqrosjplmpplmmnkolssrmrqnjskloqlnlmnpmmnnpionmmmqmonjinllomljpnmppoonokgljnnolmmknmmmjojljohmhmmpknoenknnmojmnnoblosomokommloopolorkrqtomopmnllnglljqlrypsqoquoqowmtlhhofjmrrfpompjjqxpklpkqllvpiutlqovkqmkilngroojlnnrjgkioqjjmowhusrldlopl|anmpfeujogpoiwsoomqgmxmrgolprk~lonttkqoqpknqtnoimkrpqlumdnpooqqmnjrlmloqokrjonkssllrfplmnemj_qjrldqlm_nosopseqmprlskmqmvaljmromlrnomjnfnropmmpnjononpolkjlkmklqhrpnudsrmoltjjmlrektonomlllkmqmtoklkkkillqpnvno|mokqgirqsjgmtmgmrqqmpcmnsmkkdholpikmlhmtnqqkkguljnktrlnolojoopjmqjxjhkonpnsokothpppgtompnonnlpioponimxokrtlpqlxulkmjqqlnootspmphppfnvjlmqosskoujnlocmthkpjipmmsoqvllrlomkqulrgjmpnppqsjjoininnjndkdilkrnppmpmomhnknlingknrllsqkkxqpmhontmmppgpooqmvplmmmoeltmpo`llhqgvorqnikpoonrjoloomikqkrjppmmlgevuqnidqnjmnjznnkofbntnmimcarqnqrflmmjlgtokjnjnnktmffnfsmyepmqkknplgilnnnkllnmkwunnpwkjqlnqnglposcltrkhccdmosmojgllkptlpsfmpnphwpplonmtnpnonoppnoslmiloknplkmwjhlkjdppqrfoilqpjphnhmmmlpopolomokmlmwkoolmnonlpqomeqpwmpnqp}omqkikinooklnkolmnmmponomtroxinjlomrnntmqeojqmommsrlljmpoqoplnmlxmobolmnppnqmtoojopmmnuomloyooonnoolomjonmlmomlnlltmrlqlpskprnmpdoomonomnoqplllmkunlppmtojriluolprpoonmnoonpnqmomoonpbmlpnmpgnmrmwslqmlhmppllpsqgomjnimoyhopqsrofrooknhkmommqhcmjbnpoolt|mlrmipojpnpkpkmkpmvrmmlnmomnoroksmlnxqnoq_mdlwlhqjrnlhjlgpnpsqukomrornjmpskqinkphbnjolwknjirnrlogprnmimujjtspodkhqlltjjlnjiqwsixmohpnrkrlkmqtqeukggkpqqopswdqyoqkpqnlemjkgqprpinuolirokjssroremqmgmrjmmlinkkjklrknobvolimokjqpppqkfsplmojjaqnjpmhhkiqiqvohpquiqunlgmonwumdklonmbpuogkmmoopeslomqn`jqtn[iknYpqmdm|gwnmxzjinljmnvjllo^njoutolmhplvjllnvuki}yloljnnkpoinim{wmlslpoymopnpnpkolqlfjwlokohankqjtplmqfjjijnlnmsookzsetnnllmprp~msmojnfrnnmpjkpjiiiouqmomohng{nmpjorkepemklklkmophrpzkopriqcjohlnpktpunlkqlliehlfnlooqqngpomlmkmnmqnoqqljlliulhmmohppmoojrmtnhmkguiwpnn_jlnklcokpqkhpniknljnopnggjokpmt~srqronpnmosmpnqnoqkmlkmjqpodmxoronvvkinpktqloqwkoskkklkkjgljmlpofmqonketblcknormpoosoqqzehlmsmtkqmnonkhklonqlonliipqmp[oloqooatsrlsqniqokogmoqqnnrppokjkoonunmnonmonpksnjtmlookgnlnqrnpapkmmgrpmmknlkqlolknndoqoonotoojopnllpozmrrnnrkrnmnnnknlukpqinkgpklplmnpoomlijrjol^hvmmomopnpopmmoolorjnnhxljpktotgrmenl{msthpqlopnlqqmjonrmjmmnqnmjmjqmloknllsopnnlpnmhnkmmmlmpojqospxmulnplomnqpiskinelhjqmmplmkknsilupqmnnolnlnknkrlolknhtnnnnlhsmstprrhlsohmnqsomnmonbmwpmnknlmnqmmtokrlkmnmklommjpykrnqsenpqrmormnovnovrnjlognpqpnpppmqlkjqmlkknmnkoqsinlmmmmlpqrolqrjuslkinppompor|olomoelntmmlllomonosilnhlmomiiwtwlqoktmmonkponnnllmjjoppuwnrnmnpknjikpknqhgjmrqpmjsjjhlrpngshskmolljmvssnimkmmkqqdnpoqkmllxmpupiiogrell|tnpqokpjrlnkujruupflkhtvqnnvenmismgcussjdfnp`ljgptuppmrkcjqrpqktnnsgimftiirppfnhjemmertqfjopqhlq^qhm]kmloirrfnrbkuownq|otmntqsiqgqnmnmmpvmkmnsqfmnpkkrnloohunbpjwszomjonlmnhulrr{rnepllsopqssnlqkqrongposgqkplqgpkkokmjhpilokorqomkmusmmkpmmoqnnkulnmmrmnlmlokkhmnqqjemronmpkumogpmqnsonsknpmolpsimgpppdrnnpknkqdpwrpokqkinnlhporojollmrnjsnkoilj`npmpnnmjlmvksnllmgopkjijnolllknllqkoskeutmljnwjmllvwhlknpijpohmpnmwiokxmslpnnlkqnojkoogmpmnonpnnnlmnopmhshoktlhijuknpknlpmbhpmoqjklpojmqoncnnnmnkhlrqllmolmmnpownjppmounrqinnjknmnhllmmmjpnonnpnmmkqkilmlsmnonlmonpvlmnonplgpmnrklo`pqkljrmtmmnlmvlnnpkqjoonnoocpmnslolnmnrjqmominkkqhhnmpjjoxomnnjnnnlneoinomjnmokomlnqoinpimmqlmjfnoqqphlnmlpkoinpmlkmltkpnopsloionloepkllpnnqlkoippjnnlumlmonllohmlnjlrtjnpnmmkogrlmlnnmlnjnwogonmlhhmoimknomlolmmsluqnljonlmnvmrpoqgrnnlnpmlmhnptnnommjhmsqpzkmmsnkkssnpmkrqkkmqpnnjhjjmknqijlnqmmjknmplnmgpgokoqiwopnmmlrrmnllfflkrskponwkoqkneopoomqnrovopjjpvrptkmsplsmmojwnhkpmopqmnlmpvmpjmlnnipnlsppopkilhknusknqkpkohnnnqpkmnmolmqmkmqmofmilnoskqoqinmkrpomqknpqmrlpommpomojimnnnnnpmogorlkstnjsjppqmmlvknimolqrsllnminlukqmnqmktnkinnllpnnlpnmjnkmloponnnnngonmnmoopklqkqqlkmmpppjolmgpokoplvnnjomopmsofmnmnpmnoqnnknmqmvtrpmnnnroqsrlnpoponmukmpsroqmkrroojqllllooloqpopkjnjpnlomnorppqolnhnopojrmmlpmlnkompmqmmrismgkkinmfmliorknlmlmmnhlsoqnrolllnlmpiqwnssoplnolohqookrnoklmjlmpgrlmnhlmcnnipglppqmonioqeomlsoksltmoonlylnlomoprnmipoggrqohmipmoozlpglkllppqmqnqhjhfppmqpiojmmkinqeqjmunmopprnporjlmpodooopoqsnqihonkqlloqpjnmmnikookpmmpnlonskdnmpbnmlljkljmrmnlsmppooplnnkojnpntlorolhur{mqkhomkqpmqvpokmlmlinjllnnkqhkqnpnnkmnqpntomoljuqptkokmlqnomjkmjsjrqmeppqmkjhjpmjlmmpxknlnhlgjnknonmolqimpdlgjmkkpqpmntoqqmmlqljnnrhjtnmlgnrlugnmgqnlmhonqnwmlknnomllmqmpookmmipokqgpnpnprnoemllpkmmfnlkomunnqnroompmolmnlrnolpnjrknmiiplomomriqqpksnolqkmqnjosgqjktnoojpmrjqlmmsonhminqjomppstpooooplrporppllqtskollmonlonnmomnummnmojnokomjomnlolipgnntllpopnqmnnqmonnrlllmkpopoxnolknqemhjrkmmnmkonrkfomnnotnklpmrloocgnqpkrmmnnokrpnlnllnmlmnoklommopolptlpplrnommkjljjhpmplnmjnilknsknkootmmrqmneuppnmmlmphmnlmnqpponkpqjj{olmsnonlknsomoppnmmjnrlmppmnnsponmnqlnmrommqkolsvplnpthnorqnkirntnnnnmompnmmeoppmqllkrromluooorqmoolopqmlmsrmnnpongqqploolmjjnnkpnkjnfksqnmonlipkionmnmomholongopnknqmolrnoknnqnnqarjomjlnomokrlpnrqtnrlokukjuokqllrmvgnekpjoqnrqmpomfiiplilkormznnqrolknnomvipjjniololpjongokmlrjoiogknkrkkpnswmhqkkpmlsflkokwrtllqnmeplnql`emrsvoolgjlslirtvnlhmpoknkkollnmmfnyxmunlnnijonpomigpsmrnnnnnooilkjmnqinqelfnovoptnlihtgnqllsknomnennolnjlkoprpmrpmpslokyhioqmqtntkvolmmkkhlgqrlonppnjoohmntpomokljkmnonsnqkonlpmpnpnmnokokppppogncmolmopkwkmqonqnoppmkosfqovmnlmqrmmnoolnmeqzrkjksvmmlljrposmlkjmolqlsnhpknojnjgmllojpwqnnppmlnnhlolmiopmokppomopnqmftooynqmpulrolqoqisumoxjlsqmqmooqnokrmilmmiomimmpmnmpllmmommlonmhmkllqpjoleknlolgfmnommpqmpolqkwojkiiktgmltqmoqjolpmknppllkokxnlroqrqqsulhymrpmfqqnijrnqqqmnooonjnqmojpflnuummmkiormrpktpkphaimnpekrpspnnhrrotqiqymnmmkhlmqoojnotljlmnipulolikpmpqjnqopnjorpijhmmnshlvopmqonnnljqmnnmolcipkolhskktrtosjqmmpsohppltplrqwnnnkopmmeunhknnnlsjkxjpnprnoikumkx~mkij|kjmhopnjmlpjnkprnnotpnryopti~rmpjmqngiprpqoftsbonqmoijogmrjnibokonnmpkbrlqnjrgj\qmpulsljrpmovrngtttunmpbqspnpsooopnpnijoZlncitlqhelprohlntmsjowmtigrjoflurjnhsonmnoqommlklpnlnlnhnqriqzonlmkppm}ppomlmjjjmdrmnklreqxnlmnlmkknvpslnlqolsqopolnljndowjrrljkofspoonplomimlljrqkqimlqwooopoooskoollkoqojmklfmkpolkpnlmmcmplknopmonoorslnsjpuknmrqooktnpsrmgmqomumnnkmonginojgpqomhroglolqpqhpnkmlmlrrnngmsoqrjmonohkhonpqmxllnoopkonompnhmvouliloqmhsnm^pjoqoqopqmlmjoplrh`nkxonlllontnilpqmoiompiokppmptpnqornmmnrhkrlpoilsnplmolrmmhZmqgrqoqpnrnuofmsnmmmpnpginnrneoondoqk_lvoiukmnumdosnionpleqjomkqkqnplmq|pnhnoohdllqqirvJnelsolbihqmolqlpiippoooroiikoloqllhmkmlmqkogpsrojtnxnmhlpmpqmhptpojnmoollnqipsnttnjxqrpodnmlpqpqostnourvrropimnmo{nploentmyupmkvqpkcmhikhokknjptjnnkmxpemwunkposknoomnmplnopjmptnpmnmvmqkonmqpnmponsofpkorllomokkjhmpnp|jmokmmljorohopjlmdnpqqqqiqrpmpiqpmnmompokoholmlmmfnqruqjpnnhqinmlkroqsnklnlgmnlnrnoovolpmonqmnkmoknnkknonrmoqnqoqpnpqnptjnommnsnnkonlnqmnjnppkhsrmmtnopppunqooonrnkqplpmmnlnhonoqmllkjmpoloefpqnmojmnlnwnopnpknrromnqqphlstmnnkmqooupnnmnmvmnnoohjkhkrromorppmmmmnjomppqmlpovppmspjpljmnlkolrlnrnrrmnphmnnqpmqljmmllfmoqlnpomnmmmdnhomqnqnhkllnmmrnpojnmnnkmnnhmpxmlmnmlpmnjpnllomkioonmmpnloomihoqlnlnompovlpnppgmspmlnknqlminnlokmlmmnl{ipnmqmrloopbrslopgpjjooropprkpomqpnklvnnmkkqsnmolnsompljopsjmlnprnpnkofmqiprnmllypppnkmqfnmmmvsmqollpjikiqonkgimqnnqpriqomklknjokopmnhoiljhtmwsppprkkrormpnqmjqnonnimhorlpplonqnmlhompipjlnnnkqppkmuoouornhmsnnqknsjkjlknnmpmnmmmpjoolllnqmoqnnnmlovmunnkmkmolppjmslkpnoliltqlmkksmpllmopnjppgsjjonqilsloqot}qopknvmpsohmpgnmmpspjongmpqkpnqlopnnnqouomhmnqmoiolopmorpskljosjjrrrqnroqqxllzfmipuojjponouhmpogoriojmpfqqplrnoqqoqkjlmmnpklntpltrinjisqiiwnsmprjprnmskupmrqljimnpuhnlqjqmjstqppxdjosltpnlnpljmjqmsoogplppsqrniqoklkpmonmlquqomlqookumsmrjmnmkmnmnlknnmppoomrnrjlqmmfrofmknmnpqpmnkdpulnlpiunfkosqxnooknnmjrnnpmtoulmujmmqkiskupnpnmktlwogqrothjsoqpnmonoolsjmpollgnsknootohoorplqxmnknonqmeookmonmlrppnpqerroolotumnjrodllsfnnmmsgiikjqkomnlklmtpkjlrjiomtnnnqonlnnotnllpmomnlnnmsqmlmmpolxsknnqmumqknotkmvpponnhqkpcnqoimqqjcjskrkgmtqsljun|enlwmkhniozjhurnnzmnqnpzp`muqrjoliijhmrpjppwpmspqoiosojjilbmjqff`vUkccq~bqnmepviqmj`pgnrlvtlmmcjnhjnkolpjrnoint{odkliphnmpcqojposomjlmrplhnvnlmcoflyrnrhoovm}hptptzonnikwrknjljogglvjl~nlkrrtolnqlmqknhhqonhnoppplmkspgogodlljgmokoerlilrlqgopnmkmkkrmpjmok`onlnkxojnoonpsplokojqiqhmpminomquknqotmnjponnoolrjommkjtyqyjfonqitkgfhlpmedpnklokjthoovlotoojqmjskjsrnirkkoppmqnnmpjmpsmulmltkkpjonoqoolmeqnkslnkpkmnpqqpoppntpghnlqkpnjhmjkplkqmnqlruhqjnnnjzkholinnrlklovjnqmplojfpjmjcrjorkpmdeltljwotqxkkiwzluj`imlukpokomnlehulto|jlfhlnpgklfmgrnmmojbkijptilkjqjmdongpsnlqmhq~nmpqlushkfi{nnv`qnxljjhqplopjmjigzroummkpfhukyqljvkkplpokgqrmi]onxhpkvmurhuigtpihknieobmzjiqkmomincxqjinbpn_jnqhfpnhjvqyqqshnpgpmjmohmcunrujolsrokknkkkplmgspgmssnopluistfnmpommpjoomlokinmjopurormlusqqnmjpnmrpnrvmndknhnmimmdkqjjomolkltjtnommoooonomronnnrjjtlnolrjsiqrmkkrskrlnommpqplkokopmnkrliimrlnpkknrknpblmqmunnmrponpsnnnmokmtrnolmilsqrnn|mmvmejpohqnnilejmninrqgonppqtmkpommnemojlqgkomlplknpknslmonposlonmwnpusqjkooiorplokklnonpimlokmmnoprmklqtmjnpmfmniomnoollmnjpnnjkngpqpsnfnkitpnokumjtklmompomnhfmmijkjqsnlnqmokmoekqmmoolrpnknpmnmrlmkgroloknrlpkonfptimonnnhqmontnnmhojqnpmlmjljmkq{jknnnojgqnjloplkuqqllorojuolornqklmopgonjmkrphphqpkoklplkrlmhomppokppqrjnqnnmqplurtkoplbsjokmlkkknnsmqmntomnoknlpmstpkonoeklgkonqolmlmmntopkmikstho}omjrmnspomkmpnpnnmmmnppsnulrkonotomollnmcojklomoglronpmorkjmolslgooplkglpnopllnojpplmfnomnpmilmnoqniqkmjllxgknnmimoplonknpmmpgnfknpnorplklqlmluophqklmnikmkoompiljmmppqniokjlmnoonqojsjinnmppmgononmpmnnkloioqpronkocmoozmommponklinmpqlooknipmkonpprkmqnmltrrlzolptnnhtpmknommokomgmhhpnimrnfhmolommnkorrkxnppoqsnilmrnpnloohokmlkjosknnsjnkniqkpkeitrnkkomlmlunpmnqmpslmnjnklqonoolnsoqeqiknrynmnqheonhtonmlkmnepjpnliiqrrlotnnpnllnullmmnpormponlorpnlqnmrknkolopnomnhrnoqionprrphojllpmmjomoppololnsmhlmrlohmkqrkorsvsmtnqynrrgproqmnqollnpromnmnxqnnjominqnnlpnonrinknompnmmhkntpnomqnowqlojnjookmjjomjqmimmmhsroolnmkqjppmlnsknkomihjnlnloolntloprmohlvqmmnmolspkzkppnojopprmpjqlknmqoljrnoompnjoumnmnoqrknnqonmjmmmorjjplkpuolpoonmkmoopomlnnjpojpknkpkpotkmmmtosoplpmhopnpkeqpkovkoxpsvomopmnnkqnkoknkqnpoqmhyomhnlimslmpornmljjnspnmpolokmonlnqlsllmpovknnntrlnroohqnlmqnsnkokmrmtoolmonhmnmoknlnlknqomzksphnokkltjqjlolnnqnmmjklksumpnonpnnvcmkmjminomnmoommlononloolmmjnkmsnhmnlpeltopwnmhjnnkjkoolmmmmjnjnsqpqoopmnjjpnpuoimolmoqmmlnnmnpoopnjmrlpnqmnmnpiumrpolomnopsokpnjlqljqpsplpmmosnglsqnonhsqopmojnlnooquopismhomjnpnklimplkqnsdgpollokmpprlpngnjlnnksrompnpofmuksknqnhpmmhmmnnskllmkmonminmnmonnmrsgllnpjmlompopplropnnmkkoqpljsjmmkrlqmonmsqjmnjqqikkogonpmfrilkookmpmirhpphinjmoskjompokwmghklomsjintkkoolkqnnppplonckprpfifjnnnhmrjpjmlorsumolopglinlxamkcjldqllolcntknuokqsrsokspnlpllrpkjuoholknmmljilrmjorqtmdrcsmopomdpkodnokpqppljlpmdoqqksqkgmksnnmqihnrktptjtqrsktsmlqmmunpiooovqookmqjkonklojmvhqqmkjnplqpqilosmolsikgollgmkqfoqmkrloissopnrmqnonnlvnqknmnhjqflrpgsmjmhelwoqlqnkilnmgukklmrutqjqsookomsmqkfmkqrlkkolirneijjjwmmlmkjsqvnqnnmljnnooorptjnmlnloooqooojhrmlomrojjnosnvmlonqiomjlfginoohktunkprpjpgpnnqnemknlop`qlsnrhqkmllkjmolsoironknqplpotjomcspnjmumqmkhppijqlolmpqrkphhrnmnilqinlpnjjjponopmjsrnotqpomoqlpqprcokplnlojmniempoqilolnlsnmnlsltuoommfonotovapgopklonngupompktidjqwqqsmpkmnnkpspnikosqqhfmmqpnmmukpoommnpknmlnlonnohfoonnoohlpioqkwkmolglqgplqolknqpsltroanjownookpktnkpnnikjmnllnoplspqtnlqrtslqksnmhmpkqouujmmnlmmokmqpmhoppjoonpqpmnliqkqilroqnpnivqlpkrjmmqlmoprojonnskmqdnmpkqopmmjzosoikpmzisnopmlaoaouqmlqlpppiotkmltrprkpnmjmolmnlinpmmrqkloojllsnqmrlfsosolnloloqjpngmomkstksnlnnqnluipqenopnpimplnklprjnorokphpmfnpyqptmjpnikotnknmnlrqkoookpppmpsnodrfkmomkmojljpkkqpmhoqpjhrmnhnnmproomrnnnpklopllnnqqrmjnonvnjnms|qnzmmpwotmjnmngkoonppnpnlpqntmogtinpnoponqkjhklnnkprqmqllmmvoomnjqlcmnqninmllpnkpqkmrolroooomnlorqinnmsmmoonoekmpmnkojilo|pospvljlvlnrlgomlloinrnqmohlnomkpjnjvnmoqoipmnnplkloqmnmpomomlmonnlmlolhllpqrlppnqrmplqnpnnmlmqqfmhmtoqstmsopnumjkjqnkolvpmmnlrqslkpknppmlqoromnmtptkmrloilnorijnjooookopmfniouppornronmcqjoospgponnoulnptlmnmkoqepppmrsmmsmmpmvnmjpmihnmknmvmpkrmrjpnsslqbmppnmoslllumjlmoqikqjnljkinnplpjlolqmrpoqlmlnnlvjtorllnsrkmnksololmjjlknohnnmjmkmrnxnmmjoflmojqnfpillsmiqnsmmlpkmpnponnplnppkmsnkkppnjqnmmqroiplnsmlmosmkjmlpkkspqlkilonhjmloinsomnlmk|ogenlnooqllpomognnikjooonmmyjpmseorkpkoimkxgllmpngnnitlsmoomipmmpoqpkmimninonunhqouinjkqnnmofjjrlnpnhlmjopovjpvjpmtmopjrdqmnbolioslnonropklpuqkooooslljunjunpnillnldnrlpmsolu`nmmoopijnmmpooojqrinmtmsmomnlpilkklorrqjlnnplnnmjnngmpmnfdlsokkoootphooppkhkoonmmkoqmhvbknqjlxglnnlrnkinmknlglklalqfl{smkolplmqmnormrjplhnoeo`jjmnktnoloknujomskrngmrkejiotlnspnlqocumoovsnp{nkipniqimnjihlpoqjpgnmsnpnikkiopkqmonjgqvqnxsoqnwogrdsogknqmnshphItgdlnlnlnompmrilgnnkknqlpmpqhnuknpmpkmmzonntmkjosprpnlijhpkontklpamlqjtiqenlnljmnlfroornolemmqpknpkhmkkolonqqsmhlnmmngqjonpsnXlqinlnjllsql}ogikosipglorikniomqoovqxpmpopqhonlmomknoonnmnjpqjqmaqqllplnkkzpijlopnpgmunvmooiooonkkjnpigkqmmtpsmfhhnkoplrlnplnnmktokononnpqqqnwkmmonmsnokpmmlnlmpqlmftkoenmmqoroklnfmqlonoompmmmonlmfvstnnplsmmmnflpomnsnmllmmpqkilmopkpoymjqpnrlnkknnpmnonovpyhnsnrlcmorljpnnlnomlmpmmninosqlojtlxoxhcufommqknnnpqmkonioopnktokmkxrclnnnnwnppqonpnpoookollpbmnqflklpqkgnnnhjnnhmhrmkmjnmsnintllpkmlllqiopgornqlpnolnkjnorlkutnnikpislomllflnoommmmnlsknorpmulqmkoonmkurnomlpmppqll}nnlnwnplpnmlnoonomnqnqmhorqllmnmoroonnmpqpnonkniojpripinpmsphlmpinorskormqqrompnrnqrtqnprnqomskmrmhhnmtlmolonnmipnmhponpjsnkliloqnnkpkmojpnnllhmlovkmonnkoqnmntmeqbusnoiqjuQommpnfooqwiq\pfocmjlilnlzqseupulisnsknplqqqrclljomornqrijnqvkqoqmop_tjmnankrkiimrlyhfhme|kzkoq_jspjmnqrjobqtofkmkdgiqqhljjhhlkmpiqliomigqoymqnmohgsqfnjihavjfmikmkpnclrsmtoktqgwlolr{jmpkjg|qrhodfrhskhloieffmgjufnnalwkfmrphht}oumov`selqnjglontjtinigrmmk_lnbojljvorlhelnmsonmisqotmklmlmjfmfnppngpqhgfrljxnpjkolofnmonijlkmkokkolqunnpougkospiiimjojetsojnynnlqkmfrosptoflnnlnjpjmkioommjnnnomkmkorojgncnqnrmlinhlnqonlelnoinmkppjnqrmrpihisgnxpmgpknojgngoikmnomrhljkrkmpnjjmmpqmmnqoniomifrhlsioionfkomwoqknkdonjnpenmrrpqnnpojkppqrlfokmrnnpnoolmslrmplmsoqoonlmij`mpisoompnnpsjoqpnnkilikotsgpmtpnknmmooklrqhijmoiopqmmmrrsmfpipromsnnmiskqohpmrmplnrkzjlmpnpnunniknminhojnkufillnlnnmnqkmksnpoffmumgiqmkmlplqqsinmknonksjpjl]pjslkmnktqpprnomlmspnogkspkoogpmdkhjlpjlpfmslhpiloplopmljmmrvmpjimnrmhpnolmjlkflnopsporonpekjgnr`tjbmpmknkmksmtirnnnklnkoowmrpjoovtlnjnopndqlnynokqnjpoljnkojqnljnpm~qglqrnmmoopqiolmmnkqnmnlqinknmkolnqppmnpmenoqpooplokoslllmtqtotplrmtqimcsioojimprmpppmhuspmilkroqpmllmomnnnmoqorrnornnoksopamojmmmkiigndsmqrdjqroenelntennphkrmnimomgqnspqlotsjsljeuomjlmplkkmmlkmjmmnllmkfnnlopfklohlnomlqmqnirpqlnfpqntpslomennllmhslrkoejvrjpnlpnglkelsrolifjplprlqmrrpnomnlllqbpnqjlkrklkmnpjumlmjpipkjstpkilknmpkpmolmhklomiqpkmjnjlompishjhooosonltgponnpqpornjhmpllojqhqipmnpomrposilkpolnqpluiinmjnqpnjplnposommqipmnofqnupqinrmqmpnkjnmrmrmlpkkoiuqlmrsepknonmllkhphllq|sknkphjnprorninnmorpjkikojplpnqgqhqgookooojtkptljknnjpllmmqhljmonlqgnskmhlomgkomqojokooiploonohnnoprohlormnojorhvmklkqgqljpkpunmnlmoiosoqromnkqnojlfqnjnnkvqjjiolpmnomslooisnmqqqnwojntronfkoomnpnnkiqenjmrpsmqnhgqoonmnqxkpmoqpmronljrmqkoqnnklnqnpjomnrlppprimmonqourklgmolllponisnogpnmmrkncokpmrolpolmmqnlinoktppninlnonlnllpprmplnsmspqpnnpnlllemtymrvglhmmpmlvhpqjimooqnomjpopqnqnkoomlsppmonmslmpplnonpmmmkjlomlhlnonprlmqsoliqmlljfnkrlqjoomkpmnoommphnnplnjhponloklmqoomjqlhkjsmlqkotmillmpppqnnkoqonoonnmo}jmkqtnypnoomnmjljjnxkmmprkonjqpoopsqnonpnhpnnrknmrjsnrmmqqonftjlnnnmngooqnmphmpqiolommoomlqjjtohkollqkkpfpnnrhppptmonmpimoltmlmrirwmpnmjqllmkollnqmlilrtqkmkrooomlqomtjqmolopgmqkknmmpjpqokomglslnofsoisrmnllmnlkrhnmikkmipkfqqniosokclpolnmvnqgknoriiorlnkokmlmqmoumqsjkofomnmlnncfnloktlipihinprnnohjloeqpjollpopnqmklnkqmiokomornjkmklomoqoklnklpllpmonlrqklqmrqoqrkkjlpnjnpoprhjkmrrniqpmmti{rnuprmllnqprtmsnunrjlslqprlqmlunoipptodtrtplqikslqovljotjqilklllqiommqsvpljrovnmhpqnnponjljj|pekspimfjgbwmpymlmmilozrlmpmiqmpkpppigsompnmgqqntondgpoloi|ondlggmpsqqbmsltm|imnomiilllmjmlompnojmhmnmworllrq`niklrqutlqopppkonqlncnmuommofllfmfgpqiqknthtmprntllnpuqgokpjl`mmnprlyqqljkprkpnhootmjmqjqhpnjkoroomik^oqiloshndinn{nkqmpmrtylmnkogmqomummiloqpnromkttipposktgmnknnnjrmunnosnrrqgpqpmmjkjkkljjlmgpvrpvchqsqwpoorpimmtgomqvmplpolsjgpmopolrirqwnqkkqnpnoskrjrjroo~onjumpnmprlirqloonnp|opesiplnoljjlqoplqplmgmmkploprrlnnostmnqulnorlnrothnnocqqpmolrhnjmlmltlcmqhikkvgsnkgjllrnqnmnhnwlgoipm]nomjmosmwnrloplutptmmrjlmnnnjjsjfnhnlonknonmopkolmnrpjrnnhpvjqkmrmommnllp}sdwpnmootjjjhpimiqqpoujiptqilrpnqlnkktjnlilllmohemmjmqlolqplmntkqjlofnirqpnllkqpgmhfoonpkknvksgtvmklko^srnkkoopnslimnj^kqkmfpbqknnkoomipwssstrpisvmqnrnniphonolok`hpmlpsqiheoqkkjngnlpmojmmljmreoqmkflpkqsooronknsgoaomanqnmksmndpjpjqpppmlsonjfqsnqamolpnllmqqoqnmodtqpfoglliuphlrnkvokoxouklmrlkmqgolmrmilmjonunrlnijnrsgmjjmqlomminktuoopppplrmmkplnvckmtotbifmlpoorlmmipjttmmlkqrmumkmronnlmimrrhnqoqpqlpqsqoqhssmonsnsooqqn_npphsncgm`inqhsntqpcojnqprpopnhmgkkpnlllrknmoppjlcnepqgiopojlljutnlmmorprpqopnnnsmqslnudmxohgvoermwnroqplojqmrkdmmnolhksmkkonvnlmjosovnktnlontmogpvllqnlnojpojlomippotnmqnfgkroplneoxinjilqlpsjmnnrlqplhhionjslrnmv_opkktnknjslcqlplrkkxoomlmmlolkpnklninnpmo~lhnplshflmfqmrqpplpuqnkonzornnmjokf{olfjqnjlqjmfpppmmjnmnommlnnljllprqntljunlkvlmlncllqnnnnqnclrlmh{mmjpljrpqmodmoonpmkmknkemrklunlkoromlkmmtmqpkrppnrslomkrrlrnqnpojrqqnonslpnnlnhhonkjoopsjktnnppmp`mmll~pnmqnmqhudksoornxrmiollpklpikkrnknrmqnsmhmqujcllremhmorgqpgpqlemplsmjercslmjnjrlqpmrongnkngonmqijotroonsnommniqrhnnlnnkpkqlrmsmmlrulmjofrlspllogornhlmopsnjirtllpioikppojljlnrqk`ooqmiopijppjljmqrpjhouroqnkqjmnmvommmkrjijolptmqpnirpgrlo{knpnmvkjnnjomug]hvmo|nrpkkmknrmsmmijnnkkonklnnpqmmqlporqommtqhnmnnakkmfsqmrmlop]ptncmnplomopkklnommlrmqcnelnenmrukmmgupmsrimnokniqmokkprrphnmnlnrkleqqlxnooqtomltoglisglommrdu`mmjppnmoljpkmjinlkpqliosnrronqlkmornnnnppfpnnklpjmnrrkeqnqllohsrmqqlnlsorjlotonojqollpsomqplmsylleqqfsmrpljknltkpknmikoprnqpqopqoqimphlplqknnlnoqnmpfrorpnonkgplnhqnmtpsokpqnmpmqmuvkponljrpgnmmrupeoqnihomodknroomkoqmyktppmqnnnojspnonphksrjqpopnmkronwnmnovosoppknotpllykmvnpjpqiloslmpoolklqullmotljpnqlpponnnokungmtporjlpsoqoklinlnqqipnpmlkknmnoooemnljrrllmnlplwqpntlklrpmomskkpmosnmpiquoolntnncmrojppmkkomjpofmulknpkrontkhofqnvmljmlpqonnnlpmmjmgjmrrljrqpsqrlkrmnlpjmjpknokkknnosmphmnplnrdmlrnklphmologmmnqkoqnnlqojtslmnpovoposlonmmonytlkpiplomjpuqnnmfkoqnqjnkluppnkpjkupoqrtnonsjomvkqrgnprslminmilipqgorjmomsprrsnsnnrjsqjnlnjopjpomshmoomlrfopqmpljlnnkoolonkqqlgnmimnmp`rqqokhmnkmpllkpojpqjnuqnpoqpnmnkmnm]onqnmnoonqqdmqnlomlnnmmppkmomlnmmlkoljolmllsnmokmpisjrqjnmomtnkolnlmngqkjqllrplmnplnkmtmqlmqmlmdppjonmfokmmlmnmrnnoopoilpollmpnsnnsmqmlnjjmtlonmnrnosolmprjnnknonlqkmqpnmqjpmnlmnjjmlmnlmlnmkonnrmotlvnninjmmnnwqormeljeornrmktflkphgilmkkgilqmpmllnzqrplkjvppemllbknrmojmtdkgmrkrqfklgjukpliknnllwktndzjolksppjfvnlpnpjqni|klgktiqljqrspyllsvphhjknvoinmchkliflmjwmjmnixonnrmmfipiukvngwsmhkqgjflVoq]jonkhnnokxuivtpkmiljkokkuphloWmqqrknpm^kgsnoo]mmkpsuirlqnk}khrtjrjssklypspjqqstoqplpmsmkphllmionppmqkoqkmmqqmonnnlonmpoksnjlptgnojmpioifspklljmpofnpkpmmknekjnojkmnmlrnmrlliqro|jnlpniojjkponnpllkummbrmmpoplkqgoqppookluubnmqooqmqommlogjllkolqnknnpkqkmqlomqnmplqpommngslomlklmnprnlfmmtoooqppholooppmmsnlmsnomntoqknlpppnjmmmpljtqlknpqlqnktvnprmhprnpmoqpmmipksknojqolnlminnnooqomnppkjmllsopjop{pplfnrlglmlmnnlnhomypnoonlpultjwjlolnnmlloplrnnilnqomnommmwmoisoiorknpnmqlkqlnlolnmxlspmmoplhjkqmqnlmspqmnqrknppnrmploqpotlpinqppnrrppmnuooqnpomnnqoiomlnqhpnhlpmqoospemipoinnooppnkppqlnkomltjpoqopnotonpnsrfqpprmtojucfhhokmlysqnpofkiiplinpnjjnqspiixrogsk_hymjtpojhntplqqnrnkmnopmnormnjmnjvmpjtokektjimmnkgrmmkljonrtlqximoriolkpmjmmqnihgnnjomlonmjrponmrmnnrrqpmrkiolfoqmqnlkoiobrqrtpomslmoolhnnhmollkqhvnokkltskjlnmmjhnrmmklnmnrkltosonqtmnknmoposrqmjnkntrnmupofuulmmnduoltkomkjoqkjhknrnwnpgijposmjnljrogjnjolrrfrfpmfnnnltmkolmookpllnmoponnfknppfmjnlkqljpmropjulolmhsnqgnmmmpnooltltotmsmookkeolmsoqlymmjkkjnrlmsltoqpinklmsknqgpsmnqllipnjlpjqqmqonokjulqinljkosnuolprmlnnkllojrvirhjnsnoimtoxtiomljnlmoomskteklmlqkqlqgimeinqnmanmosoirksjttilmqqnnslrlmkmgkjmqvgonmknljrohnelmwkmkiovnnqiqpkmgmnhhfnnqlmpmpomqpslmngolopmrhhlsktrpmpijnouokkcpopimllsllqrumsllolpirmilrtolmkkqm`qmntnnuflngjjpdginjohohnnpnoookkrhqmfksekprnjnorjnmhplonqjepnpglqolimllipkqkpljojhpomknmhnedpqogqzpootpplhpmplvnoqhpjnxonhm]hjollnngliqplgn^jocimplhejompeicpmsfnnnpinrpmjinqtjqpqjgppvknnnaqholkljpkjuopnhplphnjmqkkqqokmohngonnnlouvqltxnlsltnnpmrilmnjfjloidhllnlzprhpnnlwsknkkppvjmkrqselijmtflhlgdimrmodpp\ononjklnpouoxgilmmoalnmmllpnmfhjmnnqpkjipmpwjjnj_sjmhkmlllsnomljnlpnpkkqpruppommooplmmnnoorkmijsollrkrnljqgjlksoorrrpohjpppponkomsolkmonrmkoonkpomsnooqmpnknqtmqomkurnminrnqnqkgpknflplmpqntqjnpmlomrkqroommkrjomkymmppnokpjpnppkqnmfnkjloqqojknslqpjljpsmqpqptknlqtsnmmnqknmlmrrmpqqqkmookjokmnrmlmlnpronqkkploqnmoflhiwllnnnkpszvosmmmooYpnjqomqnmkqoflhwposqvklhqqnmnhoheonllmnmjlnhqponuwmqlqwhlnojlli|moqhnongjspkpmttrnyqokpjgnqqrsnmlnjrnlkkqqprokkmomnojnntqnripmtpohprrkiwqnmwnlcsqkpmoqvplvkokjelsqmrgmpgqynhtlefwpvfipjpqrskltvlekoirneoonmpljklmxl{pkqqlrrlhisnmklvrknrnimlonimqqjoompoopjqmjnornmriqmnkpnnksunmpmilonqhrkxqmpolpmrmmknnojommqnmtobkohmrnlqtpqlnmnqqoxrljmliriokkomolkklonllnnpijprpnqrgoqppnpnrheipnlphmrjjomnmsopmommrhlnoonjmqnoumpmlmhijqsnslsmkqmomonpfnninoumqkplumlkuomspmimmnjnookllsnminplnoompooppmrokhslqlnrqrmrmmkoknrnklvnojkomnnplpmlkouopppnplqmnkoormlfkkslnrqlmmnnkmpnjolnpnrlmpllnlqmmpuimnnmmpnlmonpnmnmmtulrmlqmoonorqsonommlnpmmpojlrpojmppvhninioppnmololpqnmojqmlioknlnoopinrnrsopogokqmmrkmmmejmomnpmrolnpllpojlkunjqltoomqnlkmonnlkqnlgjgoppkoloeoknnljekpqlsmlnwlipmlhnimrnpmdspoipoppmjotmoqmklmqjloiiqrfhonvroliuqlljqqqklndfjkmpnlnpnpppmvlmsmxnin`orr}vcnkqlokootuwwvromoirpqiutnmlpmwnphp_kpoikfonknpuolppnipjnnqmhiounpmtpkqutplptodpnmsllqlkafnjemhgo|mlsnfepticrnvmrglkrjpYmqnmpmlqnroioqkoqprqunsoopjnpoomnmodnnnkppokllhonomkmknrmpsnormrqloglkoonnpnuqgnklrmpuoopqmommlowmmlnplorlspmqqmpjoliqnqlnnjmvpmkjqnpwvlgmlongwmqronlksnnnnlnlrnslmpmoioqkpnpnrlmjmooopolqmqlilmpnmlnqmomgosqorloonmtpqlnjpqrloonkmrloqnmkplnqpnrmlrokmqogqimnlkqrkuxnopnrmpninokorpkkoqpnkpsmlopsmtrsknqiseqllkqroke{ngqrrkpnskrnlmohnmjorkulsnjilglloqnnlrmfnqnqoomljkkwmnnklnmpnprlpsgkiomkmipoilkkppopkmsehoqiokksumlmkjromulmsojpcqqqqfpmiphnbiqmnqrpmislqiihprimrqollqknkjnjlijjppmeomgnlomlnpknmqlinpmlriwnnoomfoipjomhllmmooqllpmylqpoomnoqqklpnolmnfllonnmoqnnqnpjnnjnmlrimmnvnlnsphojnjqngnnhlnommokmnjoqpllkoptsjmtnjinnlsosnmujjomnpntokkqpomronmhpmmplppksqognkqokmminllolrnngnpolsnlugpooronmmnommmrqonmpnmnlrjnomotijkppqnskmpskpfhkmonmjl{mnklpnmkrokononkmlilpwkjojkqrohupjmknvnpnnnmpnuomrpqolgisopomfolkkgosmmqkpmjkqlnlhmrnkioolrqprmknmkrnnkqpimmlpsmlqnlimjltnxqogkqkoounlqmnkfoloqp{qnpikpoknmnmsglkprpooksnirrlfgrkqljinpmsmqnknpv}hppsminmpmljnqnrjmlipmruqoospnjjqphmlpekmqkljormmmpoljsqptosrplkqxnxmlsnnkjgsqloolmqqplirllqklplslponrmmlrllpooookolpiijkqrkpmmpvvnmknnqpjlnnstunmiruekprqsopohojubkrldnoopnpjpiqfxqnfnojlhlioqhemhjpgmnovtolslojjmt~lvlnjpjovoknpammswliolokmjpjjklinykpqmmrkvoqkmbglmmlYqqnnvnnqlonrigmhqrsilnsnenuopmoj{lsoplnmwporrcmrgiqooeqmpyikqiowhklnknmpneh}iltvollmjpjzsjpqqppjplfpknhgmumlnmqtppmkolqdnpnkgljrdojhuqnnlxllmhcnosonnpoklosmknloiuojnkhblpoqqpmiknlrtmkjmrtmmsmonrhnmkoommksgjqnkcpslmmmfk^nsitlqktopo\orompflinmojjumpjmhojonpjlpnikuriqmkpoflnflmuqxmlomnknmlmqnlmtqpkkqjqlnowmonpjloklqqlqgpgpkhnlhqonjnnykjtlonkpqollnjpllrrykliksjnlloiqmojkhjmpqpmmqsrmekoqftrnvomspnloilmolmom~mrlnlinpqjsni{usknsninqorspmlqlxmovqolnplnkknqmmkopdsmjjqlmjkohvlmhgorptvuooknlqspt}npfpsslpdgroqojmpnsnhklojioohupolnolnrljqkofmqorrlmmkmgqotpljiwmmqipinpqrsgkslxslihotntrkmpmlpkpuorzkkqnljrjgtjonmnjtmvqnqptpmmln`pjmmnjosqohjjsnoposdumkmniropnllooiknnjspnmrpjnvtogomnlnqpronmxpqmkomrwriyookpnoqelmghpponnqnnoskpvikrqqpqlnnolkmmlvkpqqmpjoollpnnrjqkjdqpvlnjrnopqpookpokqoqiemmlnokonnllnomppnomkoilponkioumon~qlophlqppnmsmhglndlmninlmngmonjnlmhowjimonoookoklinlpnpmknrmpmnoinklpwmsqnmlqqmoqlplijmndkmrkqonogkmmlkqtojmomohnorimklmmromnqorlojmnampoqjlknkkkqnsonlmlnposmhlkkimonqsrmokrmpuquhponnpqmolkmmkmnnqnmlmmamkmohfmnnonpoimjmnleomohomsjmllkmmnonrsnpnirqlkjuqkpnwpqtnqywpnlopnjrkphklolnjmmrmkninlnmpqpqjroonolounnmoklojlmnshhnnslnqmqnknmonokmljrnrprmpmgpmnlonnmnmnnnponlglnpmplolmnmljtoqjqrlrjhnhtlm_ovmhnpnokoorolqkknqrqlppsojqmopqlornmoiipqjoppkrjmmllpmleonnpepnmlpqmorlomnrnsomqnmmtiionnkovnnlmqnrlpkjmootnllonpqmlnunnknjhlnoonrmksnkwlphmosnmimqqiksvnimmnornlnrrjjnnknomojlonjhnllknqmnqlpsllmojomnhrmnmflnpohqjpulioknnhkjplnominspoulslrnqlkmokpsnkgknimljsphmmrqmoopnnqospkjmnmosjliphpsmrkonqlpmpkwnntjznkqtamiommmpplnnjknpojnnppppgijmlnpmoroprnmoqomlgojnpknlmhpolpnqjmmpnqjoqmmpqllgqmookjooklkroppojmnmmoeommxptlomlqooopnsplqomqlnoqqpnhnstmojrjklqrjorrmprojjqnnmmjqqlmmtjnlommniepmnjuotnomohlpmmrnpktmlonqnokbmtlrnlrplnkponlmlkmokphqkpiplmnkjrjhnnnomnmlllironqomqpodjlhpnontnikptflolknmonipnpumllnnomolmnrokljlnnmpmkhnlikomqenmlllnoqvnimrnlisqrnqmkilljlosloqkpnniqoontmoimnnqqmqjmopmgoklnosoqkmmnlsknqmmnnlkqmpofqirlplnntklupmslkmspllpponlniiornqnnlpoppqiklqsjlkVoiqhirqmvjvlsyklnothnhmllnomifmkpvshnwlnlrikjlplulhkkherrkimkmjsommtnlmjllkigokuukkpisumjmkjsojigqmnokjmatmqjlnjmnphljkkoqnionpvnmommolrmhpuhlkromnpn`lmhqpqhuukqroljqsfkxnmmorntmmonhsoqpmjlrmhynqookvjkjjrehnonipjlibapmhoplgxgrjmmoomhpodpjiekknmnlkijlorpevjqrmlkmqnhanokpmmlpbssngtnnkismformo{_lqljvtslnrmuorojiykqnmjodtlpkpurnqnljjrqlihmhrjmfotolmmpjlmoooonnloclvjsqqkqnopksqlpoqnokrqlkomcphmqpqo\olmnkjklfonnnrnrovkmp_eholonilkqkgejhqqqmsnlqoonnppmknlmslroopijelseqmivmfrmomnsniylpgptnnpmsqgomqhkgniiiikagiqpebshrkpupkkowqomlmngn]wqlvqompwklim}io}\gmmqsbxknu^kknhlcqjjkjl\brgkmpwl_vmuepmsmnlkdtciqmtniltnkmmklumgolqklkrgkqhrpgpikshqtqliqpqkjnoenjrjsmngmquonrmnWtnmmmmqlsrnqolhmlpqsllilkjinqfcnfompiskrnpeqokjrmpzkemlmmoisnkluoppmplmkkmnomnooimslpnnkjokmnoskmpknnklnrjknoqmnonnnonmolpmmmoulqomllqnqmrrlnmjomdoknqmnlpqpoqkqqpnmponoronjnmqndmmnprlpoommlorponnqnmoqnplomnioqljmqnoprpnpniolpnomrnntsnrnnoljponflmolkvnmiomoomlullqrqornonosnnmimommonnmkqmjqqinjmmnprkkllhnmmoomwmofslnrftinoskllslnspnmkmpnplqhjlmfwjjjfinok[ojikonjjlolkmnkrgnlcenhnlemrklnojnornqmupfmkmpidrnmnqlqulpmg^ntmgqqgcplngpgkmqjknosvmlimiolgsomnjppqnnigpdkrnwlilqlemqlqqvppoplqpgorqssmspjblutorof\intkmpmjjpnoplhxnvvmp\plppioonpknmomhqnjltjklkjoonkrooqpunqrmkmpnpmmqqijrprlhmpnprrqnhrommoqokppmlhmnnomhllmnqpijopmkorlolphmn{llqqolrnwnhlpsmktkmkknpqsokhjnmqlonolplnnukklswnmoqkiqmnknnrlrpnptmqqlmnyjlhnomnpfjqmkrnqnnjrnktqmmnrnnlqkmmnkrnjppqjonpomjjqnmmoolknkvonromnnqmnnmljnlnommupunokonslonnnkppnpmnncpoqkllnqjmnmsesqmlkkmlqlrlmpplnqonookhnorlimomnmpnilnrnoopnonqnmplvookonllnlnnllnmnoqonohkktqoewrqnlnmqopnlnmdnokljmmnnmmjniolmmkopvoklompnlojmwsmjkkpololmnmqnlnpnnooqoosjlnpsmpkplkaljodopooohmigppokqhnkgrpnonvnllnnillninqoqjrlonoooploroooomnpomjrlgipmqpmmhjrommppmnlmgrrhpknnjhpn^tltmsppxqlojpqoposknpopikkgljrlnrskpqnsfmxljnklnolppmyhnontznrlmlukiongnehoru^npqnnillknawoimfhnojmnnjsjmoxgsikinrosrqsfglmrjmnmipmkpmopjrnlopnqsuhprnsqpvrbokoomroqplhlqnnomcpmpiopsborrmoqeloqlnsotlpukmmeopknqnflflnepamokmqaslokqjivmjsmprnjlmnpixhjvqjmmupmt~`ljm{xjmfhgijmpdhwumslmonktqklinuUkoosjops`spptdpnvskkgsoqqpqrggvnnpilmtej|rrtwnhmvqcspmsdusoqushqlmohrqnkyqpludjoqkrtlmfkrwlgoqjozfknhmmninivpriklqjmrqkoupipvphjmnpu`qnlmuyqj{k~yidkiSrunwrlpigmxjpprlvmhrqpnkzpli|nvwmqvumk{rprkopmipjipllprkommvjqelhnommornfkpoenmkmomiokslpphqoiglpnrtjhzqokplkolqoqmprmjnklipjsnmoporghlporkmrqlophoompumolmljojpnrokkklklnkkunnmrmpmrmmmrmmqljnspisenqkmqnmonmoomknmomookummokllomfylmpmnlnpnlotjmkmosnlwmlppnlrnppmpkjotompnnnlmlnpnmkomilqfppmgomnmlmmjmnlhrpmkpimsnlnommfhlmnjkpsjogqeonnssliqkkkqhneolnrognkgntdklonjjgnojjmokqloqqqhnpqmnnjlkrmkpdqoqaolnkwosoomgnrpslijomclmgbnkojpmmmljlnmotnljkilohrndopqqmpkkhpnnknqqnnmjvnlopphknjq{omgnqnqromojinnomjjldhomnjsioqmiujmckirsnlhpqrlqnjllmnokknojkohhilppksnrqnnmllontiksyQoqtnmmpndsgojrwgsvZvknupvkltqsqigbkentpmmolhqsotlriojnoknsurrkhqminlvtqjdmmklwmionwjtpWrjtctpkopsYumliihsmiormdoulkpfyrcumpwlprrocjrnhmqlbomlkklpknpknzmorukrjfkrqmpetmqsmszsqpmmmkqnndollphkvWmkppillknmlmomwqoylsn_kommgoeqllkphhhogoochmjfropmmkmnpeopkqilooxzojikomlsnpoppjrsrrolmlkprfmqmloilknpunhpkgphppqsononcjrpfimkmpklhlltmqsmlnnqlrjsoepomhjgpiiniuom{_rpollcrpelomlktnehhmtlohrnmklqjnomrqlsokjmqqoikllvpxpollitmplglgkqmqqltljiqkmqloqkonimuopjl{jlnjiokkpfn~onjoknqojmomprmkbknoosrqpopjpmjjmrmoknlssmmoljnnnftpinlkqokomnnlkkjnniphokkmoqokrqllpllpinluwmjsmhpijkopnqmnnnpnppmnonqjrlponrqkommpnoljqrqhmpqmqlqglompkolmrmooqmknpimpqmsnooppqollrqnnqlnqtunoookllqpllnmolqnomlmmknmpnioljnlpkfpllmrjqnrnomqspnompnqproolompoonqpmmlkngonoptopolnqnrkoonkpkpmolnpcrlpnnkuplnoholnwponmkolfonlmmmokmhlolkmnlnkqnopqkfonookjniamrqgjlqnqnjknlkgnnqplnnoonquprnmqkdjrnpiroonnsokmmijpmqloolmknplponjnpmoonnootykmpsojpmtqplnomjmkolognnrjpmlopnipolvmpnopndkknilpcnjdssomonujntmpknijmionulnsjpqhllrqmshkimlilnmqnplmplpllnlpnmsmsklamnllnljonpqpinljuoktnflnhlioojonhmknqnponnlmqojkookkmqopmlmujnohns{lsmhmogmopstollllkqpmksmiljlurmrspmhmoahqjjpmnhqmojiolomotnqoylpqorlpqnmpqvotkiliknvlpemrlshjkoononqrtqjilnklomqqlwspmtonlpomomqkoooooesrklooohmmnmnompknqpilsqoorppootpjoojkprmnmhjnplolrnoktjonqrlnooorqmmagqqlqcppXejqgqrpq{bvmrppimhptppfgmkgkfrtllebosmr`mlpohgimeoksohomumromoprmmrjwrmqmnput[uaiaiqqrmlb~lmiihvnmvhn_dgfrgditijfqfwnvphbpllljnrlqrqrrotopp`qjjnniiprpovoymarqssisossimlqomsjYlnoqmooYepkmellknmenmixlvkrrPjrpglqjnjjlgnYfrrilcllolxjeoshsmksjjnvoetchmktomkqnn[rnrmmqqjnqnqtlhnbipoplrmmgmosrktpgsnpnonojpjponrnempvnkposmoqipqnikfqnojvmnsvmlltmprgnnerriqvmnqhrslimwpmusdmppnkhlpmnvmioijojkwonplkprrqheokmjklokogopomgpqlqlumiskuormpilrmnmhntupnoqorthotwnlootpiljnriumqquullrqmqppniqpmofglrjonmiqpmnnlpjpiqitnukmuqprohkomjmomkinnlnnlornnkmlopmrqrpqtplmnomnoqpkjknnklmikinoopmpomnqsqqjmnqmqkikqlloopswhqpmonoppwkirmoomfnklmpkojlmnpololojmlnpppnlllpkmkqmpnpnnlrmsmlmnmnormmpnoqjkooqnoooqplmpooqpsjqompnrlpllofolloqpoknknrmmpjolkolmklhooksospjmtnnnoommlnlnllnllrplomptvpmsqqtoormflpiljlivrmkmnkkopnjqpqnpmnkkoonqolmmijrpnrnnmmoqntoopqnpopnmminmpilmpnnlrntmilpowmkljqgojlqoeojcmpnnqpkmjnmnnrljmlonqlmulpotkfmlnkrenmjoqnooooluqkkonmlpqpmpprnpkopnkoolmjkllmmnmpjqolpmrprbpmkpnrunlpoommhhgsorljonqmjnnjjnvqrtpmormlnsonorlphnmnllqpkmidnmxrrkirpqsrmnlmhmjopoorkokkjmpquppolkpzknvmrmonoolnn_mkgoollmrnmoqlmunimmnmjlmpnlkjoospjnppupnonkcposopklullnpumolnppmnnikgjkkojkinjqlnppjppto`nrmqmjmojikpkpopmnmrwokiokpppoptoqomqkqbnqnnpkspjjkgnmpqlflpkvompnnmlpnjnommqnqnpspnmnotjlnhlpmgkgppkkrlholonidiohvjpjnsloylvoprqjppqvnnoqgpghlilpqedkwqmnrrsoghlmiqlruamtqrksqpgjolnnlpgoefmmkVpgnprsmtto^jpu`cjufulp^nrimqgrohqjo}vnnobclkkmcpufonwkrpsrmoUsvlghmfrskotu{vcrokxrqmvueknhmsrpOplsnqlp[tlppkrdjqwn^rokxkrsojTqwomqrdphgpslf`vrpm`vomqrrqusrfnrnmjm{qgov{sqtnunnpqjemhfqiorpspqonpmmqmhjnmunonloqonlrjjmtjujomrolslpqnnjoopqmkornoinnkkpoppwmklqloooucxlplnsnnhroskmmojvqgloortqqkpmonkmsijmqjolnmfksloqrtnpqpmrrmqmpmnpmqroptppplhlmspjtnkmlnirpqjrshmsmlkqqgqlZmofnkqooirpoemokonoqlqpoqrplloooppllqjoolkopnmtkplorpqminnlpnnorjnkogroummknrppnmolqonnqmmoqnlpnqilinpnrgm_omlhmkrpmmniiooookognshmnoopgctpqonhmlmfskqnonqmfmsllqjliljgmplnmmlkimnmgnoomonlmpoplnrnklsnoohipnnokoqkppmdoomrmljjgpooltmmamjsnminpfli}rkkmrrnokhlnlnhrrhkpmlnphmktkenpmnnmkmlmnnrnhlolqnmrtmmmoojmjjkmjmknlkqnpkqrnnl{rronmmlnqonnosohnqonommmpsolompoxnmoohlqnkknpllhofknqroopqppkmkoortgqnlnnqoojohiqnumloowmmmlnnmmuqlkrklnmmoomlniojrpnknpklxopjnmolnjoknqpnporhkpnspnoormmfmromhrpnorinslnmmnhjs{nnlmpknopiormqmrifeqoljnqonmlpmoollmllmomnkomlookpmniqrmnotioiplnjoyllsgimnjpZqmtnmnqkkmmpilpp`nmwipklohnmnoommoskhltpqvjpspnmpcnpplknjpqlsnrpmlqkhgorpngkslflhoqotllluqmnpquvoqmpxlrvorommkninimomkqsmnmnotmnnjmvhpljgjkrpnkpcernlopnklknoqlonklpljjpinlqqmrklonhymljnpnsm}njypoqfplpsomjkqmlmhnoyopmqnnqmqjoiiumpolntrmqrqmnmoiopYzomniqopowokkirjmjppknzmdrxtqqmlgkkmo|lpomdoqlkoWkqpionnmpinojoikphgokrkkphjsknmsqpmirdlligpiqpqimjjflqg{pikkmmikkofmrnltol|qprmlnhlklpqnommptlljiptpmljumsviponkgklgimiunovplgnmsjip_tnjrmoonmkqpmgilnlpnrroqtrnlqlesopnim{lrxqtnttmillnhpipkmlmuiiqlmoutkqokpklnkrnrppmlnqkmjjkmoommnnfsjgolmqnusnokrpjukomonnmkjmmpnlnmsmnhpoomnnknkoofqmloiwortlpmjpmllrlnpommijlmpmlnmkjnlkjmpulnppognmkkoqnkhrporrolnirnrgompmmlimkqklnnjmlpkoqisiojopkopspmokpmpotlnngmjmpmnlkmljmfqovpilpspmnnojqknkpnnommonpjqnqkjnopliprqnonkjslomgjhnjqqnsmloplglnolmfnqqokqnekmlmhpoqwnmmmrpllpsyokujpknkrpoppnumtsqoommjqjqnooklrmomnupmjtonmolojqmokmooppqigmvppiqlnnmqprolrlklmlqkrnptoqhsjmqmirqltqoqnlmjolmlroqirnqrooqllkiinqpmlpolptmphmnslopmmpmswoapofmljsnmlnnuopkmnkmolnlqooroktjvnmqnqmnjnriloootnjmqklornqnnqkim{mrluqmwqdphpmnxpjrknkhjjjmkmnonjogpuklqjscnninojmhnjdnnmmlspmmkmomllrtqonmmmnqpoholtgqlXpqnsglnnormjhrqpksjjlmlmnpmpqmnjmrokmlnqmmlmmmmhmnjogokqsloosljmimlppqlrovinsknsiopuhlidklrnhiknlkngpzmivrmnmqokkp_lnmkiprqihmmlijpnlognlqnonoiljuotnmqlrhimmilolhljqqbejooqtoipkshmjoitkspmqmgctirhonvlahjkllgpjnohoomjphombmnnhdfqooqpmhmhqqkrcjoodmlmgrokqohgmrpqmbprnrjlklrongigonlomgxpqjresmlinkkspjqnmkmgjlimonssbpgqllngpnhnolsumoiphmsmmooiakroiyem]hrupiyknvnl{jpnwhzspo^qmmninkkmmoijfrmmhoepoklmnkompsljolissgsooijnjloimkshqnllnlmmnomknofnjomlmnjiktnnupiokmpkqmvrsnhsklljsnoqnponntlnqpqmpktsriirnqkrrplgjqnmnllvkumjigmnpollrqimprlrisonjoojqqommrnpohijokpmnfrjjntmhnpqplfppkhmorsmmloqmsiorqrrslnspoomnrnpemnpjsqoljnnwmjlsiljrncmpnmhmqnnkokinpqmrqrhqlimlrlswqnljmkmmipo^lipmnkntuccullmolholoqpjnokfsprkiljnhmdqlnqoemojl~nhqonkomknmnqyqoofnkollioioilmsslinrn`nhltnumljo`qjrukllosliqgjllmplhprijldqoopnelhgkmjkcnrnonopjnjgnpjgphikptjnlojgmqmpoosiqkhspoqlniqornbongjimlqdjnkmmqoisikojqniolpljmmmikljmjjsllokmmqnrormiionkmqmquklmpljmolproppomjonnpkrssqqpmthnlnlkkrnmfmiinpspnonplnh~imlonnomnnkqqjmmpoqhqnrnijhmpmqnooqmnqlqjmvjqmnlgnminmlnosolivomknqimrilmjronpimhkpujqgomolmkpjpmpnpnmsipmlrnpmqppsrsqlplhntlnomkooqojmllkldnpopniknfljnhqogtpnnjfqposlomopknlnmongoopkmnnrntqsmmpprlpnpkmpmrloqkppmmnlnkjrnltpspmnqoijonnjomofsgmkkkrnpluonoqprrqiwnqeqomnislmopcljsnnqlmornrphmongmmjsxlnmnosmiqnikjrmpmkfplmpfnxolkrmnnpppojoqlpolnlnlnmpoknqlqnnlpnjpmjqommommpoqouofponmmnprnkkkoomsolkmompnnjonjmnnqnpolnqjoolhqnnpnlqnnlmomjtnqmqoionpiqlqmmknpppqrmqiqnnmphknstponpnqqlhnqnponjngmxlopmmrnoklnmrnjropkqvlmqpmprnlngqomnlmrnqlpplnjlklnmjmnjmphsnkopppotsskpnrqnqkrplsklntmsmnmkntnoooklnpnmnkpdnnqnqlottnirskolpmoltpnqnhnslmkjmjulnqemjlkkqlkvknlpononlljlruppjjpllnmknoojommrolplomtmlmnqqqvpnmropopnolmnnjmmjnirk^aooioikn]eklhqwmfzctoooomolqwqnlibpbp_mpmhbakpjiiltvpagklmkdon`kkqielsqlkmkihltnlpklzvZndcelxmhql^}mrrcaijhnkm^olhpijmmhmjnfwpsjh^pikfnnlpniqmomonksanjmnlduwnjkujypjllnwxowhsgerjsnsh^phmlignPljmrmimjpinprrphlollnVqqmlgponkkjgn`krpni`nmmmuomrsdmnnqplovnhelimninoipjjoonqlnpkplpdnonnlnvlmlnpirknnlmovojrowsngnrqklnmqqpotmgomokplknpnnqtnronklmlsjnmqjpqqjojlmskqmhknormlhkrolsqlumqpnmlonmpirloqsmjpnlqsmjlkknjnjnopmmqmlkpprrllljooomkmnlhovqmqkinlonhkemnqpotloqpjosolxljonnotoromnjnqkplkmomrmoijkokootkpnrngimmjoqrumrsnmmkjimtqpoqonnijeskollcjqpppjnp`rumorqvnfjrnlknpoqmqnlqqjlprollmnqoprliyllkksnnq`keoolnmrronmnnpzkqrnjqlpsvnvgyrqnispuoojlkpooxjijipqmkmjjulggpoohlsjslpgjnmnjomikkktlnzmpfqllrljqksoohmqmeqqlqmpmmiiwomuosqtkgnntiroqmnmmkpgnsonlmprrlrpjoormponpmmnjfoximil{vnfnmnpmopsmmskqpnllspjnnksqogkvnnijojlnfjkjtgplxmhroqlnlttjnprkmnniiokjjomsoqmosqfmpo{lpoirjqjpmvmkmpnwmppjjmqotkljlmkropnmnmmpnnmjmlnmlmnjjmkmuooiqnrniplkllinlmogtlpqonmkmkhpinpmowuvqroognifmontmqnkqpvjlopmjirqokjulmmmomlluoqnmmrqmopjmloonhnonnhminllsrsmvjnoqjoponstlqprlpmmlpqohmnjnnmllnqommnpsrlrjnkijnpmnntllkornnvjmkoklonkqmqnpmqnmlwpoljpfnsnlgpnollllolmuorsqlpqronmruolmlpnilkmrtqnnpqktonnnmkjjqijomoqrnfnhnnpmopnmrlmmrrmjprqlrknlmlnoqknlmmlnrmkjoneosonpliokqrmnmmlpmnmnosmmponpijormlllnnlpomlooqkmqslrnmmmnmpnqnlkokmlnqnloknnomltpnkomnmjmplmlnlkumoupjgolmrpkcnnjppokhlmsornopnpgnrjmkmionlqolkknnkjmjokhpmnniojpjrqplrinllklgomqomnioomiksnlllnpnkplmroqsnmpfoqnklmmioqkrokpjioworunqllorkonmkimnhmnmomqnosgljmjnznklolqlmmpooplnkooknjommnnnpolqnunlnposnmrttpmotkmmktoklmmpnhlkqkqmrppgplnponnkllqmknllnmmqpptpqkkomkuknpnhnnmrunikkomphplkkmlminppkgokopminrpnoqpqmmkotnkmonkppmmmrsonklmlorummmmqqojplopiljjonmlnnoiiokmpolsilpjgqnqnknjnnmwonroqnlollnoklmmoknlrmqrlmkknvmntpmqspxqopqqnnnonqkmkmokompukojnlmnonikekoklnomoookmnvhjjlnujolpkelkkgqjxmrlmmfonwlnklqpkrmnhwooplrlpkjmaslomlnskjmpqitomoimkoikjirinpprmolkbqpjltvolnljkukhkmirnrqnagsnqlimnmkilrmpkolmnkokgmmrlokilqknkiiobnmlahopemqpmilqmkmmkquobklogolr^khlkqlnriqlrplnswlpkkiqmqmpplsokqtkmhoodmpolproqlhnonhnpppstqpnoonjnilolomnqomgrmhklpoonlmonndplolpkqmrnjlppknloomhkknlkrksqnoljqmmkopkkknomokmqonoojljklnllplqljlnkjknpoojrxnnlnoplkiomlnlkkkorkpnllnqnijjgopmloilmloqoqpogqolqmolpoowknkosomkklqtljxlolpihioojmllmvjmklkommuejppkropuoromlonpmolknikjqkmmkomnomnjmoonnlukpjsonnlsroptnppoekmsrsnmosommnpnmnmmonajpqnloomjmmmnpsomnnsjljnpollmmnnmppolpmnonjnkmlgjnlkjtrooonmkjnnmlnqbunmiqmkplqoopjwpikpplrnlnqhooqonooplkmplvohmnnnnmnrhnmkmgpnlhrhmqpoqnolroqqorjgmkqpkhnnlolmnpdomomkulpnljolkmmkpuplnoqmkmtnlmpmollkqnmkumpmmpkhmlioglmnooponmmjljimoqnleplinpsksqlmlkoplmnwpjioomjoplmnmrutojljmgsqqqmjmpmkjnlooetqmolonlqtlmpmomljpinlriniphmshfolkqmomofmkplpojfrnokklonmonlrjrklhokhlqngslproinkhmplmgnnonklqrkmsqlqmnpntsnmnmmipmqnlfkqolkslmkkkmoplmwlqhwppkjnqsqdnrknooekkkmmrkqqpmpiilokskkmnlpmnqminrghnpmknjnlplgqnkmpplpisqqpmnnhnomnknoptkklnnmokorkolykmqmppsmnpojoihpqpnnonimoprmpgotkprqoojplomnoklmpolqomlpohmlqiopnnmpnnkmtklmirmmrkilnrspommnqopmmnplnnmnknknmnpnqmnqolqnnjknfprkjrlmppqnsnmoqolnohprmsnmpkiiopnqpunnknonornpqnqmnonlqqlrnommhmmrqsilomsolnmnjmqsrpkokmqqkknolnpmnpkopmsnjlnjoqnnninnmnolpqglmhlnlqdqoninmkiomkhlnnoqononpllirtuonsmmollplpilpvkonettlnnnrnnlmpmogtomngqoipnlqgnqlklloohpqpnrqrormlpnimnnspfppktnknnnkonpppnsjomhpqnmnhokumqpllnlnqmndjmjotholjjkorpqnllooenrmnlnmrnmqpmkkmkkjpojpkonnlptmqnqqjljonhknxohmrmmnnmmoponjnnorpmmlomlnjmqlmjrprlknqmlomkkikonqppgmnqmlnojjmqonmopjjkjmqoqnoklpikzomkonqopoopmlknokjoliljqmnmnjooqqppjnnonmnliponnlpllkionqlkonqlrmiknmollnzjknnonwmtopplpnlhmnonvkoonoqknilopmmmrolmpplrplompknnkloppnjmomjknoommjomgktlpqoonlwmonskmmnannnrlknlzllltqrrsnqknjipsminnmlpnmoupmpqmknnnhsgkrorlnqnlnnljonnumnongnoihqmlnmqpkrlmormslhnnnnnolqkmmlomljnosmpjklnmppmplmoqmkrpnmnnhoooploqnolnmopnmpkmlhkmompnoqnimlpqhmlpqilopqmpomjuhnkmlxpliokfpoqfliikrkonqnsmnknimklnojmnmlnrkmpoopmrmrolpngprmoqlllmqpmolromnnppiopolnskmoonimomppnllmknnslpptmomkjlplpnrnlnnoopnnpnnmmnqopopslnpoqoprmirnjnmeolmllmmmnrprmmmnq|qnlirnmmknlpklnroqplqmmpmnofnfoippkhjmllonfpnpjnlplmlmkoqilinrnnqnfprlpoorqmlpksooojoqllioojmnmqoknmlhmohpmmlpooonmopllnnkghnnmnmolenkoplpqpqropmslrsotmoopnyklommkjomjjlmlmoqknmsmhsmoumuqpojpnhmkkomjqllmonnojoplrhmpqipvognnomnqpuqpnmnrklpprjjjloilroomrvrqnmrtpplnmmnmuhmmjllknxpkkonnmlimjojopmnnfkopnjnfnhqtmomjkvqqpjnntllinpvlnkovmspnrntsnlmnkkkuqonwrtntgnlolqmqmotpuomnnppukskboiinlplmlqxmpnppronji]lmipmnkpqrmilmshmmomqhnnqonjrpnqmmnplmmnluljjkninmqlqgpnkqmnrponvilmlpmnmmoljjolpiohnprmslpkpiqmukonnpjmlkmojpwknhmpoqgllskmpmjnlnkmhpjommqpjnpmjliplsonpimprqplqrmqroomhqonlplznfflfqmnmlmkojnpkjjljppjooonpelolkopnmngmonrknqpnmnkomknpioioloqsorrmpnmoojknpsopgipoqoqjpmjcinnmmniknokkpngmknnkponnrumjpqqslpnnsmhoqqnllonmnloqmljqnqdpcmgonlqikqilmppkqnjolslkuknkjtqmlnpltoknlpvkqqruoojsmmnqopqolqnmknsgoknmnpkoqqqqlpjnenkjqoslmllpmmpmonpqlmmnnnlkinknnmljjmnnlmoliiiprsonlqpmooimnjkhopononmmjlohlnqnmmlpkupnoljkimupkqnlrjvotmipsknlsjtvoomjghmlroqoonmwopgiivoommxkhnmqoqlopnnnorlomgpkhnhkmjprpnkrojotqsspmqnpplnmorhgqjno\mlqroqoqlknsmtmrmlhjuqolnorsg}rklolomqmnkmolnjemlrqqonmiidjnngkiliqooksnxiqpvsunnlspopwltnkokoqespliknnxooopjshrlhnlmwnjqnimpjjmplijqejmllmoroootlnkneoklhpkmpoosmlnpnnmemnqjoppmrloompmhmupllnmknlhlmrmlolnojfenmkqmokkknrjkpoonlmqoqtomqmozhmomkkmmklkpohmqlhsvmqpmnioqgnjkompppkoqjnomrkommjmmqmrjopnmnppomplojlrnlqfqooomklpkpgwmoqqlbolsnnjjoooiolqjtkfqqlmmlomnokpirifllxknnnrqnmoippqmomkmnhegjnmmpmnvltqmqinmlpnojjn}jqllvwomxm_mnlhgjr}qkpjpfldnobnrnnimmpjni{oemkq^mlnihnnnohwpoomlqoskljorlprpkmmljxsmgtnpjxkvrlqjtkroumpafgnnol|hlkbptooklnqlmhmnqkwplujqkqknmnrqkrolmhpgksrpkoooptrujjglsngmmjtrknjpemqsbnltonukrsjlxi`lnYlpkksmolibothkkpnnolomorjrykjxlorjnmkmnropnimnmrklnmknhporjuoknqmlnpnoltsoontlkpkqnponrsnnuplhlmemoqnrtojnmnjjppnoqsmmlnmpnmtfilitqotqnmkopnroloqslqopneoqrnmomolslqisnjpikoikopqlmrpmqqmohpkknmnqpoopirmnokpijnrnnoookmlrmrnomlumlfnllkmjopmsksrmnoonnopnnjmunsmnllmmortjoknonpmlnojronormnnopomnlokmmmpoliommrksijnpmmjpmnjjnropompmkltronnkommrqllksoptkojlnmtmoqmppliqmnolrnhklmmmnmnlnpmmnrolmnnlopmpoqnknolkolmqsorlnmmluonlkhqsvnkkpoomorgnompolopujlomjmoogmnqploinrnlpmukomlomookelvnrtokjhgpoonpnrmngnnmknpnoqporkkllqnrkmmkqlqqtljnmmqnnnqlpmtipkplljnlqtgoqoqrjjlmfsrhhjomunoqqmilnjlopksbooinnlnomsmnokmprloojpsjgrrhiqmjoniinjkfepnbrnpokinjmqojmonmoqmfgpjjljmnruziongolpmolqjqcooemgqlgilskjmpjnmpkkkpkonltnonhmqppomrmioejkokpqtpoplrqmpmopljrvnqbinqonjoloijhtlfmoomqgnkpmqhpnkgojxpntmlnlporoommomilnqkmjlknlnorrqglpnxpnlmlklrxknvmvhlovoklplmqnpppnkpkyqqqpfolrtjmljmlpnllliiv_osllfioonsroqnphopmknpnpvnrlkqllpwmnlrmjpskkmorgrnjmqpoevirlnxworpgoqipmnjtpmqqkklmnqqwihmqrqirupolmqkkkjjpkiqnmpsmnspnlinjpnmlnqkjniporinsqntrqjnoxlhcljjvqpymhpkqlqtokintrknsqonmpjioxnrpmonunnqipqloskyhqqsormfkmimmqsounmnjqnrmupnnnkqnmsolkmmmnqnmpqkiilifujrolllmnmmpmrmjnpoqonpklqijponiplrknklntrllqilqnkqlloloomqplppntlptmjkqohnnqqlimksnjntormmsrmtimonoimpmpojmprympllknmujmkpremsrkkkmonjillmsnnnkiqmpopnkpnjppnempqmminkqommpmnjmnlmlmnipmqtpoolonlnnjorrmklsqoupoomnvhpnz`nprlroolkkmmonpqqnoifojno`mrnltgpptgmkqjrrmmjqprogovkjjmqdjonoqvinssopqnqohlhphpendoomjtjpcigfiwcknqdooknmsntjpklovpmolmplopnpnngmoqhrirqlnnkojpkj`poimttnpknnpimlmtriqkmenmunqmlqwk{omknvrsqjlnltlitmgoijiwrjyjohrrmnqpwnqhollpoptlrejumkmklpuqfkjrkeblummirkfrkolkqpcwhrmmqprkojogmmohkejmlsllslknkqlpqlnipkorjnoojkkoptinrhmpmqrpuoplllqsgnlojplrknnjnfnnihdnhummghopmmkplnmmmmporoxirjsrhnsgnornqqsmongmjpqoiopnnrnnrucjqmvcnxolkrlriipofiqoitnl\oomompinlvlnomrrqrpsphlpnotmqokgmmjlfpphpflmoppnhtpminomqoprkqmfoqrlrm}tq^kftisnqyuxmqllnyqkimrnklomkmbperkwmjltigmnntizpngpqmkomsgkjsolotkmmofknolhmlo`lqqinfniom]drmnedqnompnjniilomxqmqqollqnkmmsijjjqicoogkmumqumkmqldrzlgolnnnpmmmjkodnllmrlqqpnmkjppikpqlonlllglllvmnmpohjmvkmicnijjqqqmjomdqpnmllkenoqrojmtjmpmllmrokojtmnonrkpnnjmpmlnkmjnptqkqnogoopjllqpmmnnmruonmmlnoolopmpjnnoqnpnkjolnmnoonnpopnlmnoqnmslopoormnoijlkjrjnopmopnmqklolpqimnnononomwpjopoomqdkmommooohmnsoqossnpllqnqlplmolnmmqqlnhnpjpsknlqkojmprqmknisoomnnimpskmovnojqojmnnpnljmjpolnoooqmoonlmrqmoupkkomvokrojnnokjmfjmnqnnmmjjrpknrjnpnmnhpnoqspjlpnjnmqholrmyprtioqsllmnoonqpljopooplnknkgqonohjskkkppimjhpfhpfnoqpplllmmjkssolndqmmlnpmiqnmpiqmmmqoplpopgotmoomlmtqnnhmtpjpmnzoqnqmmhippilkoojqnnqiomnmtnospmkkmmnopmkpntmqjnhopipokomrknnoolpnmsnlonqjnmlnlmoqlnmlmmnjoooqpshjknxjkmnqmfmnpmnslldoqopnioljoommmrnqmivmpjopwmnwjjkmooinoiihprlsmqpmlmqoqokmqqpnppkrpmnloihhnlqojjrkplqoollikngkpnolmjongjmllkprpqnimrmoklnnlulrlpqqmpmmknpmrrknonnqkmospnomgohjkpilnlknnonumomplclppmnnnonnkgpnopsmoonsnlokloplnoplnknmjlhlonqwnwpkqqilmillsjsouoynmmnjkrplinnsjpionopnunmnnnpllhpqoormnommrnqoppnokqhomklwnnonponolopnlmoopnoigmmnnqllppllrplmolponqiosnpjkqoqjnkskqmqmqmojlmnnjnonntptnnnkmnjnlsmrljmlntlmnjklnkmlilonomjdnlspmnonlpormsoinmmqplqgmpmmloqtqpljlmlmkjpmlkmnnopnjlmlidqrlknjmoqmsmrpnlkqoimrkljmpnjolsnjlkomookprmljknmsmnmopoojlnnnlumqnjlmoo|qomonmonokpsornpmmlnjlllrtpnoiokdjrqrkjpkjkmrmnophrloomqvnnslqgnuirrnlnmnmnnrpnjpjoklotzqnopmmloonmqinknknonngtoroqmkfnrohkrpmnmpomlpnikprlimonmmkpololmlmjjnrknqiqplomsnhnlmlnmnqklopntfnlompnmomklqqpoiprmgnoknqrlkqnjgolskkpjnqommmonnklpnpnmnmmkmnmimjllnnpfmq{mqmunmkjkniltonlokotonnqrmmogjpmmklilnmkmsiponhlpnqhnimnohlmlonlplqkmsmmmkronjnomnmqprsoopjorrplolnlqknomlhhlojnlkumlpilomomxsqknommrlnnmijlplpnmuimknokiokimlgpnoqomntoonllmmmlnosjenltpiqllslmppotooqqkmnjpnnkjopnoqmmropomgnioqjnoolqkmpnmnpprnnorkjqnpmjurmopkkdosnmrmhlrjpoolsrmmuonqnwokkrlnopntoorompnjmktnnmookpjqoolvpooqllolonknnomomnnqpmhlknrqnndmnmmongnmmlnpqyommnqqkjpnrnpqoqfmponlnoukqoplkppqknojlnnlostjprijoknoomiphosomrmkmonopeijnkomnmimklmkmilmlonqmhlqommothlminlpqpmgqnsnloneslsmlpileunonomoplmriolsmlmmmpknolknojmronqtkqprnmhnckmsmfmnpknthgnppknospnpmhmnnnokletsjolrjnlmkktktlrsmkuomopmqmpkqpotlrpmmlmopsjrpnkpnpljjpnonkwkpvilnsmpwfojrqbkpjhkimmhomnlkjkrhsopulshlnrpooipnamoigqmkolnlmnrnohsimksointotlopqenoqplkrihekhfjopesjpcjjojkmrqkmkkolilmwpllgnqqrgmdrsqiqllkikoshjlnnliljmnqkqomppsotsopbolihotmsoogkpomhkpqnqfngjrjlojnljmsommpoqqepmplkmpkmmnmmrooomknmmqujnnlpimnouirnlnnsvwpknnomnqqinvrnkiodikgnrmmmjmkpinkmsrqplollqonnmomooonkhpjutolppqmldomqnnjqokpnpiqdftocqowwncgjnjplxloxivornhji|rqphlrzplinpogjjxjkr\ngxoolohjoljm~pnnnslkrsqirgolorjnouknqonqlgcckkatmyrjuonhtiqbgnporxtlojlglkpmstpmskuq`hnmhvsZtnriyn`pkrnmenimvklmljipqhegbkkopmmxmq~photuqmplqsl|jwexntpeglniimxuas_ljiimmejnmvkqnlrgrjmrtpwntlqninqyilm|vnoqtrmpkommqpghmmmmnrorqpnshlmnqnnrnlnnknjmqkpglnkhn}pqlsnqkqqouioollnllsnnnpoflnoonvnpnllolkhoejnmnsmnkokllkplnqljllnlskpqqmqquoohnpoolnmkjmmonpoppronnsooppqpklmmnmqsrkqofqjlnrtqpenmmioinknnmlmomolrmmlmlonpnomornpqqpmmlnklnpnpmlmpspmlqrnppmdnnkrnmlmnkpnmfompnjnptploomjnmnpopnnmronjklroknmmmmlnntpmnnnjopspnooposoqnkmnikhmnmnlomnlnkponhhvonsommloonkmrnoolmooplokmlqonolimqolmoqmsnomiqsopkloostpknskipnnmooooomokspnhhpmmninnilnprpvmjsmntqmmlkqnmnjksnkomqfkmkmojjovhliqmnlnonmonlnnhpmsnnmphnnqmmnokxnnqosqmpokmonkhmhopmpinmlroroinnljnpoplnpngnmonljmkakqjiokuljhjjgpilpoqkokmipunmnpnmrpmmhlqnpinqprvnpmpmdlefnloohkslnnsnknjupqpuuklrpmmhmomjtpilmjqmjlmuv`nkomtqntoqhovksrdjniuqmmstiiqppqqkopllkkrnlnhorgltvilkhkliore{jkjnonlomjhr\joqknqglpsohrljltqtlpnjppkoukoomrsmvngpnogceqnjoaqmffqjisukfvjvkljphicppinjmnpemcmriqfitoqnnjzsnnokpllppi[nspmqjonnkononirlimmjnw`lclhynmenkctssoebjmowpjenliknmmnlkpmhjpuogdmjogliinpjrkkjnoqojldnmvgimmiopjpmnoloorhwjrhfssnoqqkkkfowlo`llpnlpkmfrooimmuizmrocoonkmolnjmmqpfnuevnlhjmgnnorpgskmirnovqckvfspujnlcmjvljfwljjqwlpunqjtshitnqmsm{kqmlywrrpnjok_nnqjnpnknrrixlniospikmspmopqnppnimsmo[s^mgnhqrrnrkggskpqnskmknrknktooizikqndjmgiupmniomlojrlulnwomojufokomhukprojposnnkoqkmsomprppkrnjqoxdlmmijpetloivlldlqkfkbporqoopjqvnkqkrlnquikrppimhkppjpknpkkilnqrsk{lkoqujvgZtngmnkqwroqjnpjihppoliskioepfonhlefqtjnnosoqlpjtwpozqoklnfmpnommmqijoqkomlpgpkiotkonojguspmkgsrlqlnebsjnojnqpoqidkqmqdlmlllmsjLooomknromnmnqljnljnjqpoptnqqhroljkqqlmkklkmgonkhqjlqvkvupmqnlfrojqnjlnrpkmgpnmlqpmnodopmmiokjqhmlpqlnrjktpjmtmoknfgmlolnommsluolkupnohoqsqrqnmnnnnnopnoknknijlpkllgnclipmoqmuoqmqqohoomnmkknpojpqmkmlsmmqrnpjnmkoinmnnnnqnomplltllslplkomrqpkmrionnrnrooojnl{oqanpnnmfmqnmmoomolpqmqnmsmmljptnnkonunspioelnjmqoknkpnlpmmpnpmlmmlpmrrcnmomnpnlnmqnsmqjmqlhnnqgloqmmjoovokrnplssnkqlijkrmnhpkkoqknprkpnmlnjophnoprsuommkljomnjrskllnlknopnrnjolmmoirorjoolkmlnrnjpofninmhjjplopnpnlwljpnmlrmolllkmqrmoooymnnpprpngmlqrnqqjmiloumnnnrqfpnmjpnnkqnvlmijodmmnrmkjliqflmhmltknnnnokmlmonjqmkgiolgnnqnmornlqkpqmpjrogqlmmnnoooqmopqlmoplnjpmnqmmomnirmlmonnctlqhoojkmrnmerygjeomonmgmcmiopljsuprundlqsqiplutevkrprunpmnlvnmmkphkppqeoplkmnlytmjjlepujnkzjiqhiogksorotdlprmmncjrkmljrokrl`lrmprhigsokkjpjmollohmpfomdqljkhkmklnpolpojplnloomipojqikkhljmnsogujqmosmoqnsrlnmntlemkiwpllrpklmtnqnqlmrmjjijosnmojmukompgpkntpbpwixsmmnz`mjjlkkpwqtvopsnqixonsjoosoonhnolnrnqkigoopgolpnnttonnksnnmjopomlokmnpkrlmlkmrpookh]hgki[ijjpenhlpdmnfvlpmsmjoxnij|fmmmpmpgnnjflpnnlomnlkmpnmnnfgwkrrrlpnntpimnluornpnnttipqhjmpnlunnhlmmklskginmmuqjmosoioisoljyogmprnikhpomonjnnorolkojodrqrqsmnknmqelmoookqjjkromilosojnkmonnmnupppmkjmllhlkjvjprnqmhoerslqnmjvjnmppqnmoiktmlkniphqktvkkprjolkmrppmnmnqnrkomhqormnhjjqlemmpljnmlsmqlsnolpnmspcnjnknipljnllonhngqlsrmrnnnlnmrnnllkmrltpfloohpqqowmlhjqlmmnnlnopjnoilkrolq`lqsmsoqnpinmnklomrsqljnknkgnpnopksrmmomcpppsqtnnonujmkqlrnjlpdokpnoploosmmnimojnslgirlmropfnhrmrogmonhunrjknolklqlmkrmlonnouphrnrjkicikqrnnmohtmlmmnkoponllkllnmrfmponjptpujiklokknmnnonikpnqsnoljpoqnolsmlnnoqmpqophnmkodnollonmlkqmnlqqeomnnmrmpnllommntnpiplikkkminqmponqklknkjorkmoonnnlrnppglpqjpjplfxplarllhpqruqlloihnpmqoolppnoohnsqnprlhxolipq{korpqopljtomuffksinlrmuunonqkrmnhpknmsnjqohrkwrisfiqeloojioeppttkgprrmosrrouplxptppkmpkqqoltqlpsovorpoohpnqrvmltopnumprtqjlnojoqojlqmrnlsunpgpsskkmlionsrqffqelkmjoeqrpopmtttlnokliqnpmttykrnjplpqpuioioproqolqyhgtjqrljkplmhojqmoprwnmoolonqglnkqgjhkmmsirltrflkjkkojnrmilmmphppinsrkwfmnnnmnjpijsippoksimlremprplnirpnqpbklnrlqfrsmjlomnlpjognnqijohmmnkmkkpoopkfsknnklykmnkkmolqmjplpptopjltlonponhgpmekqgkbpljmqnmjkvmunjlonnpprpon^oqrnnqilgomdhcnuqqjdhookqnsifojlptnqopmjtpqtoqqntslkmnupmllljlmoonmmnnlolnpqrnqokjiqrpmlltolkcmtmlnktjmnsnmjnmlnnfntnkkqnntrokqomponunnlkemnkmemlmpolnlpmlmljogkjlnokmjnmprlmonnocnslnnlonljomprljrrmkonfopkmqmpkjonmnokmmnnrjrmlomunovolnlnmnltkommojrmlslolkrqqomkomlnkmnnlopnojoqmhoimlpornlmktmsiikuolionpopnprgoppjhonnnhprqmplloopnlpmknompqoknnlmohinpslojpnpnjppqorllnklnonrrlopoptynpiqokomlmmklknmmsmqlqoknnrmmnmjqilmqmlshnnttmnnnrnonklmpnkmplommpqnlimoqhmkjknnmnmmmsononkknomhjonmnmjesoplqnlkqntmqooppgvnpospqnpitnnpnolnnmmipknnjjmjjlppqmeukmqkphjlrtqpevqoopsjnoozhjprlploqmxpkmjornnoklkplqqopmtrnmpmjjdmjklqdmopihgmqkjljmhmnruoopqpdrouigpmnommjrimsjolqnlikgmgsjrjqroosjmqthklngnflopsinlnlovqckmtkkxopmqsqelnlnkqsoeplpioqjfmeosdomrnmonkhmnqpplphllrlphxnjiilkmhsksdopjlnnnpnjmnomotmtpqodmoonqllopvbwnslinplqrorhl{nnskmennploovslvqlskhuojjoqmnokxjrimionpjpjpqqlrnqrmsomrlsrnspokmqpzpwnmppohowmllkknnrqmnrojtohsbmrnqjkkiknqrlrqmlwlsnnnpmomnonsiljqjuqnqnlnhnpiqomkpbqgl{fqxvnpqromllpopppomnmnqqlmplmnhnppnmmolqqulmooqpusmlhhojovonmssmrnnpjkqomonkpjnmkopmrlsjklnkrulomplzgkloinkmpqjpiqmlolnkoppmnjkrjlomkkkrypqnqsjplnlqnnpmmqpjllmnoniumpnqoppunplphnpqrvrsqjpqsrqdfzjlpmoqjlkjmmoqmjnujnqolstlfiolopqokqquqpqoonVmmqmrlihsromylnpujppnnnqkijlqomlokplntjsrmmgiqoopjkmrlrpmowqpsoooksrkoolindjpmonnkojemplillopnymrlqnpqqykpmpkippqonmmrlojpphojqimiimkrkpqpjljoprnomnqmlmijpnproopljsqrylunolgmmlkkokqinmkoqlnnpqntjiwnknioljqoiormtqlplfrrmpnogoohlmjspolujgmkqpljonnoojjpmlsokkmlpnksinllnnmnonnknmnkmkmpnqnjoompqnmklrjrophmssktovekopnrrmsmpmosolqloqkmkpqkpknmmkhpommonoiopmqmpkoqpqtkrmipmjolnwibcpmltfnqgtrnpmnigtdokpmojnlmrhlnipqml_jxpnhmokmrVmqnmfhlligmonZsmrimpmpjkjkvpfopttinmrgkklhouhlqj`somgaikljlnremplkqmkmmlimmtnooigkdlpglruolsmlnprpncormineqypgptktmdwnnroqmnqlsqmnlrmjnllpvrgaqmkrjrohnpqgtojpntmlncosnnqnqmkllojfjtvtqkkoptqoppqnemoonlmrmho`bcrpnpfqmYcoviunlgucopmqrhjkrrinegkkmjanoknecenmqsobsolljlimqqpknonlnhqopjrlmnnnqnqloowcmlqcmsq_ilgsqsrccjjotnmfbqjppgqoplsoempypqkketklnllplnntkznolimhlmlgfrlxmlnsxfommrkrlppqenqmhptelohmqshVcllokqsiquohmkqnnuppt]oorkmrjmlul\nYkrpprgllsnujlnlinjonlenxnht~dnnklm[kllkrkptnnhejjlknlprokmmhblxolfpolgngknipkztolkopontnjrqkjqlgq}iqolkhrnklnapjuqnkngkmkvmmgrip]jkjvknn{qrjnsholuillepqpfuoniorlrlpnkupbjmopjoprmgrgklismlldhijsmppniimoooojmknnmkunrdorrqmilx`ktoj}pshgllqmtjlmptogtogpqinwnkmkshppgvklwtmeonnpjfrrmbprmqloundqoolmpmpqjfpkomnkoqpqonmlomhoinfsonpqlklmslojoljknnqoqnqkkgmlkskmmpompoplosmgnlqsjiqmplltlonlfqhhkymmnpnkcjkplnnotlmmhnvqkpgngponjoomqolmlolsnmonnpqjjmnqmnoormelmnqksimoponplpnrnkkppiokmkpnnqjojnoproltlllstirnmokmpokmppijoooolpmpojmlfmrpknmxmknqnwtrhtmjqpgnknquvqrrmokilumtnnoxqlpqknlrynrtltkmmmejitqopkhomljopoqrmpllkilllkjnklknfllqrkmmqjn`jsklnrmqmglmpqospnsloslpnpmppnhpvknljormqoqjnrrononnslrtpjntmomjopohpmkqlmliqmqnololin{ttntjrmsiksosjlnlmninzoooprptmkqpsdngmqknspihomqmnnmrornljrrrnpmlommqmjpnp{pkmpofeounrohlokpomoqrrsnqonqlpnpoqonoonlnpmignplskjqioprpnmmmqownsppomoqqoipkioplklqpimlijjroknjlmoqqspnomqmrkpjnkkorjiolpopnklmnkllrnlpulijnipjnlppknnnjmpmknnprmnmmppoimo|mnrnmilnmnnpjrkqngnlmjksknhrmtkqugniuppjtoqmnilrnonmooqkmmpourjmkksplprklpmkkornossshwrrqmnmqosdngmnmjvolkmmfmpqmppkqlroowoepirjthlpooqmotqvnlmnmtmrnrplpriphorpooliqkmkinpmynkkrknknonruqqonljrttjplprkokmpspnmmlmommnqomnlrsmonqjqnihjomlhnnmlqknmhnlmmjsinrijlrnmknjflonninrlniiqnkpjkkhutnkqjnoivmomklsjolqknnmmlonrllqmqrrnosmmoinqnlrmiopnklnjqlpnvlopmkkllinonljqopoqpmomqnnpnolqkpmnjppklmmnpnnkojlkmmoqommppnnolnonoommqoomooosnnmpjqmjklrtomokjvlqlkqmnmklnnmonnmjmporoomonlplpqnlpqglnmmnlmnmpnnoumnonqonommmmplqsophmnjmpnnnrloslnbqqqllpmpmmnjolnnplwqlnpmllonmololloolonmnkommpmompoqnnuoopnnlloktnkqnfnvopnmqhnmrorgtlkpkomnmsokruxmslolmxwnotqfpcnormqorjpopnowimmogqpknjzpomqjkojnrinljopoqprklmivgpn`lpoqestloinonp~rnoljmnokkokmnjqlplomcjmklpppkqpkomkmgkjmvjrvkoloostqlno^pqkojnnmlmprrrmrpotqkjmkmsgsroopnlktsromnomnilmplhknlkmlkoqorskqhppnookiiiqmkrlrilgqollqslpuqskhlbjopmjqkpqlopgvkrqlnprnqlnmomkpjnmkqpgslnomnlopopoiknmlkikmkpklnlmlilihnnolfnkkisnmmomomnrjmggppopjjnxnnhnmlosqoknmnjqjnlqkspjkolnilrnqlnmmkmoqnmpnuqppsormlqolumiopbqlpkqkjufrlolkglpqnlenlplkoknpeuprlmnpoonlnqoqmmroknocipiknprplsormqnmjpmlnpoqlmkokksinlmnqlmnnommtnklooihnlmpomlojnmnnljkmmrnmnkoqomommmjpkonsqokloknunjomqsfpoppulmpmoornkkmmqnnqiolomnmqktmnmvqltlnnqoomlmqnkloknlkwonenpmojnnpsmmorknmnpnkeoqoomsnmmnomkknxqojnpmrprpsnmlqpmsjmnommkpotqlmsnpkmmnnnnnrpoopmqnmnnonglmnmmkllpnnoknrllonoqkoltkqvnpsplmlkpqhmmqozqooqlkmlrlnkqqqrrnllmlpqqoklhmprhmjtnmljomononmnnpmoooposmhkilmyomnrqpntqkqomjmeqqkhliomplnknlpjmtkmoqolupoopcmnjopojijlllnqponpwpmormqsrhlomnpnrmkplclwrminqtkmnqvsqjomsmvpljpopsleionpnrplfooisopntlnnmokopkpmmptnxlmnrjnlriplnpiquppoqlsllqdrqpomooshlojolmoolmkpwkrkoqmrklkpnhnnjiojmmmninvngooklolmmlqejnmelpsliknprsmoqllnpmoljkjnsgsmpsklqklumopjqlqpjqoonnsoqnneklfnnqnklkngilomopmhnginkmsjinhonnzklknomrmqqnokpmkmtojrogmmqrmqpliqlnouilnjlovkljqgpmslfnhmnlpnopqokorlpomosnmpqpmstjotnnonlnomnpshqqmorhjlsmpgirplxujnknnokonokpmljgnxmhpjkjrosknjxlmmmopnmmlsllljnkpswsimmkiprjsompjhordkqkvohuqkqhllsmoqvntklnnnmomnnjtknonjlonmleoinjplnrnmlsilhnpkpl`lkmslkrlisplirjinmjnqnnlmnkotmcimjrkslnikmllpkgpiponbopnunmlinkgmnomomsjqkopnrejohonmdnnipshnpohqrnzlojoppnnmornoonqljmnmpkshmmpnrkpmkplnmlnhlprocmmpnnoqyn]hnmqpnnktnrenqiqlvqnnnrolohnqmoqonlllunebppknjfinmkimlpugkqoqshpioompknnqsqok{osmprlnmkmpkpqwliomrkolstspqitklnojsqjonprwolpqlsmlnttmpnojlolmmsjnmrowlqkkpmhlomsp_jlqinlkmirmmqnmmllklzrkpkljpnlolmqqwnimknwkzqrnligpsxkrrunpunkromtonqqokpkknpnmqrimomqorqjhsozdnrmlmqlmnmgitldj~mkolnpikkogwnnrmhiqliieppsnohookl^ligpokolrpijnsxjgnlkkjqhnommplollnnqmronkinqtmfotmukylplojkioprplrjzlkjihnqqnllkmmofprglonmhpqnjphpljiojslioqkpxlmn`olonwlgsrqestpronnspomhokmnj{hmhmkswnlkmksnqtjvmqkilkonknmjmoqwkotqnqlqvnolsirkkklkljtnownolfqjlmepmnqtmptmnrllmqmminblkvvnmrsonhkkkexrrvmkypugkotpwlitmfipnlneoonmvshnmsjonmnmkktmmflmmkghsiphllpmppbptptnnmnrjjnoumpglqnmkwnjpmtkljgogtuzom{npnpnmnjqdninmtlolipskmnhoigqhsmmqlosjnlnqrpojpqlerojjnvlihmhkjpkjlokqljmloqopjpkmmooqnponjtumljiminmpuqrfjonplqonkljnimnipuopnjkipklpmlnimjrkomjroonnnsjmpnhpootrsllhlprnkhmoopkrmnoolljklhkmenmljnvliqojmpoklvqmnpomnpnkjlomvsqomlelpspnqjrnonlpljnonnivlopntlpoumnjslpklppqpmhmmkmkqmmopnlinsnkmmjljmkonlkkunqlkpmonlrloqnlolnkomokqmkrqmnqnnqmlnnnronqqtlnnmnljrpppgrollololontkkoplnnnnorjnnjmlqskltltmonmnwlgnnnnmrpnmlpmpvtkoknnlsnognrmmpoonopmonmnwjqjnppqlwkkjnomrlsknrlklonlnlrkrnnknlmljqnlsmnoqponjmlollpnmpsoolmlqlooqqmmolksknqinmlnpmlolqntlinnnnnnnhrplinmkmmjkmpqj\imokllqrnowklonqieidvnsnllpqsnpuxijunnkrjpjrmlmlqqollppqkrknokepfkohbqojmrkknplqpnpqtkmrim{onnrnpjfjqprvqrppksjqnllphelsnjmglspd{mnkligmlroolrqumgnmflhoqmkngnunhngmmqrpkxorqnhlonkjnolnnslkljvrhojupltvmntoonnmusnoopqosnlpokrpimpmponohipnqlollgeplshnfqvlpjupijkmgomplsmnkqopqrekrrjnjktrnknsnlnmolkppoujqnpmlmhoorknjmqjopjqlpmsilmlmjjkpklrplmokhnpmmogrkkpmppvloklqqmvpnlppplmnnonpllrqknkgnonoqhloqojonrqrkgqjklpjisplpeomnosfpmoocmpkmimmpoppekpplmuppprrqmisltynnmhqoeoiojk|spomnpoklhmmqmomlqqlmmmpnomhgjnnqlimtljlkeijppilkpoXopmipqjkveqoqrotghpotlhjpmkonmlnifjptlicmeoinjkmmnrmnmlnnikmmmkkunnqufosktmmnhnpkjrugnnpkohhpkmcckiljejglpnmmooljmmtropjkmksjiimyommrnpmrpnflmmfjvixpjmvoviiohrlimhfqjqjlomoo]nqhpstmcnomnmkqnjpmuooxupoljnfijooonfqrvmjojinfjdkklrgqkojjfrjlhloontnolbkmjpohoidnkmjjrrisjninnmjpooqloqlppimiopkkklloprin}mlipnqnlmoofokpppknqmlqprmlomollqoniommkogsmmqanoqokjnrnmniilohqyiqoiumnipqpmoemjomjpqmnjrjkipqnngpnmlosmksqqqmqshnmnolnpmpnulokmpqhqdmpqolhnqdomrhltijolnntmtksmarnlorlknnkomkjkommrilnomplkofkomolnolsliltlinqpnjjppsjknpomrrrtnoqlkqqmpolmpumjmvkxouisklrsmlxmloonlkmsmnqqnmorgppmomnlnrkoolxlloroo{pmhjrqnsnrlhpjprkjppvnqri|jsorpmoolqpropktkonpormtnlrmojjnjnvpmnolpnwlplisnpoopqmgslkrrqppmjosimqkmiqmofnlqssklmpriroolqonvmkknwpmnprrsmnkmpnklwmlrnsjoklonlloplinop{arlsnsetj_hokpopnkoblmjkmolnrlnmokimsofpioofqrookenspnompqmnkmikmojnchowmtqtolrkmvqkpdwjltnnplgrnmigjoejczmvmqrqcuepjjomqrqo_rpnktkobqogqpqnjmljkmjrmuionimvlopmmpmikhkjqpkpfpnfurnlnkpmpvoosippplmktfhmkmoynonrkopokknjmrsmmlnqnljmrkmojinnllllikonrjo_igruskmuyjqrhrwpgplpmjnoqqgupoognomljlrqlntnomfnnuqrrojjmpofnpmtnliqsnldnmilmmrtqomomnegqvosnonthmlhlikpslkzmpivuknqsomkwmnrikpoopnmjnvnjcmotjtkombmnjqslnrqmhhsnooonknknomjlrmmpljpsfoimlppjmqnnqskjkn|mmnjjkkenijlqmnpnstlmdmeitmqriijofqsrmttuhikplmmkllnskjplqommjoostplmosnpljloijmolypnpinfqnomfmnknkpnnqnjsuimmpqnlmpljqqkqqnnolknnpkqmmprqmsoojoioesnjpmlpolljqooppknlmnjmlmknmmshpjljimpkonlokjjmnsijnnhgmllnnpmkoqkoqpkmssqoonjkqorkhllknpnnoknnsjngkpjknqnormmpomwllnlpgllnrmonnpfklqpkpklnfplkummnkpmfnoqmnqmrrpnnkonqgmlrmmoompomotjlpkqppnpompnqqnumnpmqmognlloijpnpqknlgqkpsoqnkmmijoojlopokkqkrpjqlmlpkmontrooiookiotchpkoplomllohnjqkjninplmlnoponopmqpmniqmnjprnooqnmloorolntljnlhollnomnlmynnqppjlpl|spkjnsooqjpinoiilhnnhnorlqrljqwgojrmjmpnokmnnjlnljmmqmlrknpnhookqqnnlpinonpfmknjmpolnmrljkjnlmnimqmromnovmrlonnjljlknlkkorooolj`kjmqon~lnmgpnyqkmppposspkqlnnmippnmhlqlokilpjlnnpoknlninllnkmllhxnltlrslojnkjopjrijmoouiminonlnroooqnmuqkkmnpnboqpppnvpppujpmnpztoknnrjnjlmilojlmmomrpmjmkrtprusupooaqmlljognmnmoinnp|ljqlllmponpqjjmpqlpomsf^0Ev!jtz6}uI0Ra~`]giX4<GmHOOit{cK~x]8lCb4q^r?T8 v^sYktAUCla]9kGUG[WVL\XO]^dW[VrX7VOXT@AW_Q^[WX^CUIOTZS[W\STS[TXVVXWSNF]\QPUUPZTXRULYTS[XUVUX[TSUVUUN_ZVXXSWXMRXXZ\NXZZWE\UU]YUWWU[[U\ZYXW_UW[YL`VSFUXVYVWWVPSVTOUQVTWRZ]YXSTY[UUYXX[XSUTZ[OYWZRQ]]XWP\SWX[WSUJPVXWV\UPYBYYVRbS[@UVTZYVUWa_UY]_LYTTVU`XXPZYYVXWYW\UPWVRUVU_UWVXSRUUY\SQ\[VSXP`[VTURX\RRUUUW[\XXXQURT_VZWZN\TX^ZVWSRUUR[UQRS]\ZTcX[YUWXW^QWU\Y`?[ZUV]WWR\][RRYXZZRP_ZWRU`]?bMMqSUR[XYWVYi[ZZ[UPYYLV_W[VWSTY`P[T^Y^V[WYMJO^TTZY_YSIY]\[Y\F\TL]Q`\[]^VYQ[M_S[W]\^b]XO[VW[YX[G[WWXxWT]SVPWRTYTfVVXWX]^_XTYWgVPcSqWVV_\VZVSXLWUWQQcRU\OPZVGZbQRV[WYYLY[VaJcTaY[MXXUVOiU_TVYXDYXbYBWTZUYXXXVHU^RWWU\`Zc\XO<_ZW[SYBZWAZXR]]ocZZT\XQYYR[XJWUZ\YT[>`@]YTRV9RZZqP\WVUc_TVY\TLYToRObkTZ]eVWZW[WX]VbVtZaZKa:RNLSVVW_iX\FRVVNWTdYfVTWVXZYQN]XRXUUQXVVVV[aWVUXPTQY[SX]L[XXW^Z[ZSZVZZWZY\XXW\SXGmZTSVYW[Y\XYYPWMY@OVW\W@]XWPZWTP[[YUYWXGZMWTO_YPRWT]XY]ZRWZa[KWYUXsYVX\VYYWVNXZ\WYZZZYLLVrSXYXXaWPXXZ[]WVVZPXRURUSTPPYXVWYWSX\GWVUQVXWXbVYT`YYUWZWPXUPXXXW\UOXXTWXZRPWPWSTXZW[YXSYM]WYSU[ZYWVXVWWYVVVV^[YSZRXXUWVRYU\VVVXWY\dSYVUVTTPWZ\XYXYXEN`YWQTMXUYWUWPVVMSXSZXZVWVWQXSXSVUaV[XX[Y\RS\URXUXOVOWSZS[`USWWYSZWYY[VW[X[VWZYZTUTUVWXXWQIWZUOFTU^Ti[XS[V[YYNTTYWNWSYGTUYSTgUcVQP_X.TRSTLQQUXRDRUPHdRT`WZKURVUmRTV~bbSYUtFTXrQRWORUR U[SsXh^\fRROJUPOYfnUdJSZURWWyU8SUTRPUTkTgWQJWVSUPTTSSFOUSRR`SEWSb`W`ROU`WUZRQYXUVMVXY_ZS_\dXX]WUPYYLVUUQHXNZVY\XXKTXX[ZZY\[WSVVYMW[WaW[UXYSZX[^WSXXJVWMWZVYYTQ[RZW\\LZVSSf]SMY][KV[UYUZV\SOZTVVVT[[VYXXWXZYX\_VY[XSYYYVXAYXTKLVXWRZZWXWZYYPVY\QSZUh[YV\VYVRYWU^YYXiWeNSPIXWWVV\YZURWQYOXLZVLY]XZWYWYZ\Y[YTZZWYS^\RZX\GYYTYXYiUVVVRhXRYXfSVRWTLVURZISVWWW`V_Xk^Q]ZTW\ZRWWNU=S8CcUKUFQUXQWWYUQ][fVWUIVIWeRkSIRRVQYR_SnSS_XMUV?T|XTWVPTVOS^_bSYVUURSQ_WUcWUTWUTeTV:U\PWVNWYVVXUW[SWSS[_VVVVLVdWN^Q`]PQ^X\Z[HVWVAQZTEZPXUXWWQa^ZUWeURYOWI]jQLOPVZ_WWQ;T`NUQX[XXXXUZZVTXYY@YeWSTXVTYTTMlVRNWZRWVS[XWSUV\WVMVTVXVLYZXZVVITWXTWP\KDCV\W\WTZXSX[`V[UkWmTTSjWUUqUWP\RSQZWWXlU]UQZDWRT\]YWYkWDLWOVPVUMUUY]XZUWU]Y`]YXVTV]VVYX]RWVVSXVTMWX`X\\XWTWXWVZOYd[XU\ZVXVWUPYQQ{RaUW[XOYUXWQXbWURkXVT\UU[NU]TWVTShVTYQW[^[QUZSZUW]SSPUZbXZYYVX`WYWYY]]UZTVEVVWWYYUUU\WVUXXWUXZV^]\`Zg[Q]LSL]^[W^W[^_TDS^\WRb__UZQtXUW_S\`Z^XYV_VRFUYOZcYZY\[OVeSX]_Q]]X[SL`TZVMV]^ZV][P_aP^Q]U\^b^Z_^\^_ZZZ^U\\]^\a`WO[P[Z]X_U\^VXSW^_WWZ_MWWTQ]_VWYY`WWYUZM\]]XYYXaWUQWUWZVXXUL]V]_XLTWWNWcUVWTX\YYY][VSRISVXcZYWVTcYG[YVWWVVOXW[UVY]UVKWLWXTVXZXW[Q]_WR[YWWSXIVXUWT\\ZXZ]WWVVVXUVWXK]VZWa:WTXjaRXTZT`XZXX^XLX`YMWR[MU]WRVdWYXS[MYXXc\`\]V[VPSWOZXPdWYWWXU`YWVW^YUXW]XVY^DT\UUXTQZVMP[XZZVYVVVPVUJRVVSVVUSUUTLXMVVVXWV\XRQaTL]YOPYU\XTQXVUOW[XTdPSUYTQXRSUTX[QWVHUYXVUS[\ZXV^TUXSUP_ZX`WXUXRWPSZWSTQUUQHXVTWWWXTQSR^ZYZPSUZT^R`VWDWXRWZZZeXSXSRYWXYZa[UXXSNW^QLaIVSNYdTRZTLXD[SNP^ScWYV[VMUVVVV4WSX^UQZQiZTTWYUYR\iP_IW[RVW\CXRWXWXZYVTVvUSXUYRTUUTTYWJXXXVfToTVXS^]TZZUYVWRYYVPUXVPXMZTY\cTZXPSOUXcRZU_SWTVPVX[Z^b^VQZRPZWYcVUVZV^ZVTXVZPTYZ[Q_UVTcVWKXPYY[YXTUT[VOTXUYZcVZVb[\P^YYX\YV[RTU`ZZZ\TQYUVVOYbWOSVZWVZYWVWVPWT[U\\YU\ZZWYSQXR[KXXQ\YW\QWVZUXYVYZ]WTVXV]aU\WXXPXYYQTWYX_TSYRWPY\Z[SQPTRU;ZVUQP_QYUVLUVN[VQW[YWV[X^ZTWrZSHVU[SSUQVkQ?UUYR`QTX\ZJUYvKNTSX_VPV]VSWU_UJ]RRXTXVXXLW_TRXTTIVVTFXZR_DZT]\XWQUTdUJSVYWCWROWVTQVTXXU[NJRYVXWQLZT\QTRIOVYTESHYRVUOQWQ\KWUTXUX\TW\[RPUWPXVaUY\V[]ZYY\SUOW[VXTPX]MdTM]SQ^bZZUIY\ZUT_YVXXWS]VXY[ZWSW]Y_XO\WXUMZWYXhRRUUYUF]LUQNVUNGPWXOZ[YWSO]UY\Xea`LV\IZKY^]QPd]\`XWg]Z`eP`dimmg\SVc`XV\XR^T_;WWV\@]YVU]]UUe\ed\RZ=[_TPbH^NFQY^UTW`xQ__]ZT`i_xXT\Wa[XV`][_ZX^f`[WNObjL[[]XN\rXXrWW]WZJXOWXWXW_UYZ[[YYVR_RTB]Hb^^\TZYVUXY_ZY]^WVXXW\V\VaWLXb[TZZZWYGWVNW^JZSSWUXYTmX[VZYZRYPOZ\XU[\ZZZNWVUX[WXWZXYN[VY\WVTZXUOXYZXRYY\WXVVYQRVZTYYTY_ZTM]]\[U\SSWWW^X]\PWV]YYPUTRRdaPZTQ[WWWPYYdXXYU_PVSUTR[XZb^VWWZ`T\W`ZPVVT_\^XWb`^UMTUUZZ]Ri][WY[YQSZY`Z]_UTOUTDPXALY[VU?][WTZYhcZUY[VW>M[c^URWW`TXURNYNUK_qPbfVXTOU[A\YX[RaS\[K[S[kWLXMpVX[VOT\WOYLX^RcmUfU]WUWWTOSHVa\YU^ZSSjJ[LUWV\V\VbSTQKV^X]YUXTUZUUOSVHVUUZM[ZQgXZX[XXZWU[[^[WTTXPT^_W[W[TaV^TRX\TUb]^XXXT[RT_TRUVWaTZYVN[VPXZWWUW\WI]TRXVOUK^cRVVXSZYTWV\X[]YTLYXUYPT\LXU[T[X\MQXZYIV[UU[SRYRX\V[RQZXWXNUY\MVWWWTVYUZMZ`ZUWWUY\WPXKXXUTVXYYVXWSXVVZWUXTWXVVY]YRRTYTWaWHURQVaWVYQURVTZXYWXYZWZNDY\[XXLVYZ\YpVTWVRFUJTUSYk\ZYZ]ISCbQ@BXOLVUW^XW^XO\TY`PZX>OYSSQ\aUN`R`XWVURW^Y_cKWY[XRTUWWTKNXTWaVTYWVU[aXYa[[WVRTLYcWVYXXVX VPWTWSWYXVVdXWYXUTZ[XRVVRTYTZUiUCSXbXSYWXTTWVSWPW\SKTXW_X[LVVMTVTTU]ZZW[XQPSURYR[[YT[UdTS[TNV[YXYQYYXT\XWUUWUNYYVY`ZZXRZTTY\XTRVTYQSN]_T[ZVU^QUSZZSQOVUZV_VRWV\ZZXXXSbRURYYX^YYSXTMOOYT[WZ_^VWTVUOVZYYg\M[WTYVVYXYZRM]XVVYY[XXXRWH[WXL[STTW^WWWYZYNYWZSXYWWQVUHXMZP`SYXVVVXVPSTPZQNV^XUSXZKVWIUQWVYaOXMYUW[UUQRc[TLNTYbZTWPWqPNBT_PXSUXaSXRRYRHW{\L\SVsORW^ZMP[RSWYT[UVRQYP.DNUKYXPUZ\QHYUUTXXSZW\TSQUSWUTQRS`NSSTPSTTKYKLWWWWGPUWWMRW_WXSjRVRObVP^V`S\^XXW`PZ[][VWXVXUGYLZUUZWR\SVXbZN\[_`LWYX]VX`VXU`TXYQVXWTTVUWTSUPZZZWXXYQYUZVQRXTTRWRWNWPY[WZbQ\XRZY\UTW]WXUXQXUVWRXbXWYMcZTRYRXVVWX[VUKVZSTUVYVb]]YQ[WZXPW[VV2\SSXXSUVW[`SVYNUR\WX]V`PVXWLd^ZVZU[VSYMZXXW]W[ULVW[WVRSWWSVTOOJUZV][XbJfN[VUUW]SC\UOWWV[`_VXXJW\ZXRS^YZYPUXYTXYZWRWXQXOU]YNZ^^SIT[V\^\OXWX\WX\SYZ\OXXTYZQV[VXMQU[YTV[WVUYN\][U]ZQY[TTTXTWNZWU[^XYWVUWQWTMT[U[RYUX^YWXRY[SV\ZXT[XYTQQ\KVWZT\P\RYVTEZVZKTWOTR]UXXKU`VNVSZTXVWUbUVV[[\WZQ[U[WUW][UWVRTYS[MXYTT[YWUUTYYYXYTcVS`WFYZSZV_[W[VPTZSZ\\d_aRT_NYR[_\]T[[[]UNRZYYZc[d[TWsPRQ[R]X[X]]]^tRQWTWoe[[N\RT[fTY\^XcXVM[OQN_^QX_\ZO[YFU\W]M]XO^S]YYZ`Z[Vac\OZX\]`^^YZ]RV^Z[_Q`BSZRPe]VZT]VXT[WWW]VXU\YbUXX][OXVVV_YU[RLXP^UQY[[ZWYTaaVWYXZWWXTUZV^YTXYSUWWUXXVSWUUTSVUVXWFWW\Y\WZTXR^WNXRWWVW[\YZ\[YTXWVXVVSYbZWY9YXZXZPUPWXYVWVWSWRKZXXXS`ZbP_]dX[UWQY\ZU[WKZV[kVU[Y[TX\\TWTXYUaZXYmYXYRS`VOPVVWX]\[HY[WVJVW[WZYYWXYXWRVaZPUYXW[\TZ`_cgUV\\VWdXPPUQbOTcTJRYRN[MSRXQdSPUYZd\hRNXaMNhXFORXXZTSQ^YhNU]S\MN^V]LYMPPUSYV4XM^[JMWXUSSYQXAUPcSBRSTYGSfSRXWQVRTW8UVYUSW]SSRSYQNOQ`URYWUUgVTOYUd[OVWXXV4R[WP`XUUROCQbQfZY\[[MWRTXjWeXUdx]YZPYXYdZ\\SY\UQUVZMZHSZkGRJXTZPWQ]\NrVYUaUPKW0XQVSVVT]WHZXVUYXTVVZOTBMYWRVfX`XSNZUXUYKZTYZZY^ZZZW[X^Y[ZV]VPYrXFYNNW`ZYYWSZ^\[dXZKRBSW[EZWUZZUZn[PXSXSOUWXVVZP[U\W[UOOY]]OZYsZJXRXY_[[Y[\RYUYWZ^[YUWWJ]WZMYe[RSW>YYLRTLTaWZU[^LWTVXW^VW^WMQ|Z:TTV_WTeWTUU^VVXcmQTKbdQWSrV_UVVdSSU\Tj\H\VExXO[]UYR]DXICXQQYV]YVUWUVTSUWISXXR[PXU[QYXXROHXZVTQUUR[YWX^YSVXSZQQPPTRXUXYXP]ZZV]RVRY]T^VUW^ZUXU\XW\ZYWYW^XTV]HNZYUW_XVWZUWKX]SFVS_OY\XOVg[]SRZsVXTGWUXTHgUPhSXVU[\V\JV]XaXRFV^XWWYWTVSZaWVXWYUZOTWYVbRVXTYOWUXR^]_XXYS]XNVHSWXXZVSS[VX`VX^WSXUZWVTRVOZSZRbXVTXY\UW[UYWYWXUZWU\YTXWZ[WXWZRXYWZ^S[WWRRX[ZZWXUZKZZ^TPhNYWSZTX]YaZ[YN[VWUZQX[ZYXWW[QVSLUUWTUYSVUS\RUVUUPWUWQNVVi\R\YQ[WMTYTZSWZX_TAUVTCRTVMWVZZTXTRYUSRT[ST7fUM]STSYbb^F`YMTQUPEVGXNWU[UVKMKXLTWW[VRY^\WY\TVVXKSFWUYTWTTWfZRWRU]YjTTW^UNSWXXQ[aRVXXWWUUXRTVVBZYYRWVWTSY[VSRWbTQTZWY[UUOT[VOVZXWc^VPRNWTGjTQSSVVMWQW\TVWWVPTeZWVSWXPZWXZ^ZYZW]WbW[TX]VW[YWMYbWV[X]WWTUXYUTVXQ\UgP6PRYYYT_Y[XYQUVUR]K\QQ^ZWXSSJ\YVXYoTWTUUWWQXOWVN\WWXNSTeCVQVLXX7WqWZV[TWXVUgXXTUTSZTTPiUT]XVUZ\UIZV[ZUSVXYXUWTY_VbUVZScWWW\Ti[YVOZOXXNXWTSZSZVOYK[JVY`F\XXUXXX]XWZ^VYXQX^PTbYW_IZ]YVRdW_[\WWRVUXVYXWVWZXXY[b\SYXXT\QUVdXTVZXVX[WJY[YY_R[YVVXUXIVMY\[Xa[]WYU[V^XMUYS[UZlXRZVsZ[Yd\kY[Vh^ZZYT\Q`ZWYTUWUKYDY[4AXSPX\]XZiW3OZMUi[YIYaWZX\WYZ_ZzPR\WYSZZVUY[MZXXUCVWQSWSLfZQW[WTUUV[QWSSVWRSQSRYOG\KPXR[YQYWSTVSUVSD[UUXZAhVTbSSRUXYSKWVPMUSQY[^W]ZWYJXUTQ]\T[NURSTT`TUTTLTUZTUQP\SSQ_RX]UPZMWUSRYVSY\SXXf[YY[X[Y\[X_ZZ]V]XV\[YO\G^^QIUSW\n\[\Vv]WXDKJU\XN[^YOYVXR]YWNXVZjYSSUGNTHgaVV`WD]_][^Xi[_E\VZV[[YZX`\DX^VZYZW]\Sf_P]\ZYYSZFWOWTZ]XXUZVQ^YS\YVWTRX`XXfU^KWUY]YWWVV^Y_W_UZYRSRW\SYYS^\QY^SWWYS\[TOQXTVUZXUZXXXVXUSZOSYVRZV][RZ\\UXVWVYQURWUW[]WOSVS\VV]_YSWXYZRYOTXYYYHZZVZP\YSZXUQN^[TSSQUUUV^[WXTYTV]PVYY^TZYU_^\IT^WS[[UZUVWcWWaDT\W^SXWUYUL\WZR]SWYRWXYTDUWTRRSVSRU]SZ]Z\NOaN\VTW\MU\^QYYVSaZXNWYWNXQWWQSYR\X[UQWXWSXXZ^`^VVZURWTWW_UYXXWRP\UT]XVYN\S[RVYXVSV]\XW`YS[T[WUYRWXW^__ZYXXYaYRQZVWRWVVXYYUVTRTUUVWXWTYYWTRYZ[]WWXX[UVYaUVZX[WRIZ[VXcVZVWVkVE`XWCWXT]dXMYWiVX[eI|U`RVWWXjXWOZYWWZYSZgWa\aPV[\XTYYWQWU@bXdYTVW`XVZYYZ[ZZ`cW\U^X[V[QSYVTUYZZXYVXZ\Y[bLO]TU_YZ^XU^]a[XEZWY\P6WYUs{Y\LU]RY\\[P\R[+_eeeWM\][C[S\V]SYb]YWMWW\_op\^AS]]ZO8Ydk\T[[[VXWoZ]]]\[YV`[O\YY^WXORUae_]\[\_ZZQWS\_VWQRYUTWO[XQ^VVXYWW][XJTX\U\WYZQT[VWWWOZ_WYYX`PXUMP\b[ZY@Y][RXUV\\Y[YRVUXSYZXXV[YXdZQVTWXHYX[T]W^R]RWkYZS[MZWX[XXWXKQV[WNXVVRUQSZVWPUVSUSZMWWXW\RUZVXZSWODbO[[TW[WYWUKT_WZP_TXRbXTQcTQU\TUTKQ[VHUSWM[NSX^V[RVX`RWLVVTRWWMXXWVVZSYYLSQRSVVUTWRSRZVZXUUNWXTSVSRZWWVRU`X\NX\\WSNVUSRU[X[YOQ`RSR[WXGVZ\XZVSUPW_X[K`RIY]PV`^WVYSS[RQ]PV^SfXTWO\\ZOTXWXXU[ZWSO][XYZYYWXUZ]SYWANT[JOZ\X]_YQT_ZQKXY[U\YZWUZVYPRMS[XSWZWYPWZQTRWWXY]VXYZ[]USU[SXWVYVZOSYTXN]ZNSYX[YYYQRW]XV\VXQTYVQWYTUVY^XTWSZISURYZ[VSRWZ\UZV\YXZQQTRYUNZYRRUSX\XYU0VSgTVWVRUVW\YLUWXPZVUZZZTYeRLQVU[UUgZXVTSXWXDVUYMU]WWVSY^ZUXTUUXVWQW[WQJPWO`[XSWR[V^VWXXVUW`UUXRYXZVV]VZRSPVX\ZXYN\]YdSVXVPTYZTyVXNRYeQ`WXUOSg[VYSYOWW^[(\T8`a^VTY\KQ^WQaX]VHEaTYhr^UM`XVQUS[TxVQZOTb]XH[YK\\U]O`o\bS[VYSRXOU[VUWYSWVYXvWUUVV`Y\S`T]BZVU\VMUgYYPTXWVQ^eVUZY]WTXVTWT]Oe[RMXX_ROT\ZZTT[ZULV\U`[U\\a[]XcOXTSQWZWDUYX[QZWPU\ZTZXZVR]YTOWWTVUY]_UVXQVQWXgaXaSDWaYXLPWS^W`YVW`[WSS\VVbTZ[WWQ][XXXZW_ZYUUFSYXVVVTbc/^[VSWYRX[WYSXYVdSE^QZ\Y\X[T\\XWU[MY\T]VWZTW_ZT^SWYYSXYVTYQWhZOVYaXXXY\[ZRTiXUZXYVV\[]YX^[WWTYQ[\UWTWTaXZL[X\OXTYYUVPXTO\T_[XQX`YMXYZXYWYZU\SUVYZVXSgVbSOS`TXZ\\W]TY[[VXW[TZ[WYTV`TVTW]U\SYVVFPVTYTZYTXTUZQZcTUUScTMXZULWVZMTZRT\SRSROPVS[XYRXTZVVX\VWSW^ZMURcXSY\XWXVTTXZNXXYVSSTYTeXWYP_]OZYV[WZUOX^UW[TXZOOZUXYZTZXNWTOX[XVDVZWWMRT`Y]WXWXYPXPIXV_YWNWYUYXVUZ[VWXTXKTXXS`XVT`SUSPTPXVXWV\QVGMUWoSR]YbYXYVHVYVGNZU\[X[WVhVZH`[WS>SS[bWH__`BUWNZSZSOZWcXWYQWXZAWUVZSWRXU\\?UYZTTUSOSTXZOQTU_VMQ\WY\XYVLXdT^Z[]IUEZVVWl`WVZOgYb_es9ZPR_nZNZVM[H\O^MX_|ZXVu[fda]VV;VXVYV_WTYqWOqT_ZZibV]G\OXSZSYTY^WWWYXZ\]R\XXY`NYa^TbJ_XQ]O]PVZTZVWUZi^TXVUZWRVZWZSTVXWTcSb[POPW[UWW[WWWXWXZccc\TWYRY[ZW[[\WYTGYW\9YOSVj[UbXWZZUTTWGdVa]SYQIXcYUXTWWW]ZAZYTWVXUVTTRYWNZXSWVRZVTWTK\V\Z]WY[[ZT[VRQUYRZ`QOXXUYVT[[YYOTTTZMX\XW[X[YUagWaOM^Y\XSSSSS\VZ[YXWZXX[WJbWXYPYZb]V_ZTYWWTYYUSXTZ[T\K[RZTY\cTVW_ZZZY]TW]VVV TTKVUMUNWWY^]QXWYOZWUVWYETkWbQLZ^UTOXWWVKUNXhRmNLX]RXST]]iZUUPIWTWDYNYKY^XRLRUYS`VVjZZ^V?XVVUpYIYXWWWUVWTSOTV^\RWZPY?}YUQ\[VQVXXYSWWSZYW[ZRVXSJHXWX^]X\WRQWV]_W\XYKWZSOSWPXRW_YXRU_\YTSW_WXbX\Y]S\ZPUVUYWNU[XULXYWf`TYY_ZPTUTW]UNV]VW[]WUX]TVSNVVWYUWZ_VO_XQ[XSsVY@ZWVUNWUUSSZXUUV[RUUUblMb^Y_PQRRRYTTVTYVaTdQXXU\WSSVTXXQSWRQgU[WX[O_]IUWP\QZV\JPbbWVUVVXeRNTTXUWRTTZgPTTWUTPTO\`RJTSWUVcV`X[]XYZ[WKXLXTXWX^VWXXTUXVV\YW[jdYK\YVYm\YVZSXQX_hXVUZ^VVWTW[ZWXWWdVUXnZa`]ROWbW^]XSNMVKeWZURYTLVOXUYXV[ZSWOWSUZWQTUXQZUkYXZWZOVOQLTYN^YUX^STWMYZT[PVUWTTVUHU[^\XWY[WZ[XTT\ZVWWR[ZZVJ[XW]W`RU[[cW^ZZZZ[MSOXVWWZW_VNZTXT\V^YPYS\ZZV\UTOVTPTT[VQYQI\KNL[YbYZXU[URTTZUKUWESY`ZXZ\_RYa]Y[XeTYV\T^XiP?W_WWVWaUUY[JYLY]fZP]Tg[XXY[TUYZV[cVU[UYA[U`pZN]\\\UXeZ^E[UVNWX,YaZVY[UZX_`u]U^VY]ZV[UVUb\^XRZb\_QW/VXKXV^TRVUS_TNRNWYWSUWXdTYcB^e_YRgT]TVWSRVUVReKWSYXURTd[EIQWRSYW_VU]YWVSPVX\T\UWcXYXQXbZQDHUOVUUTRSXUTZSTQUYbZVZROWWVYZTXQSY^YVYEVYUNZVRVWTXUW\[RNMR\T\WWYWXUVTWWRSPYQXYXWVUTUVUWWRXWV[TSVNZT^Z_ZWVRfZ[RV\WXUZWWYVUZRM[aWWZWTYWW`VWV[\WSWQ[VZTR^UW_VZSVWWaUCXTWXNSYZUVTZYXYS[VT][]ZQYYX^VWW[QPRQTSZY[WF^OXKY_`LXZWZVPRZYXUTUU?TOSYUVQMXVRIUOVSTYh^TZZPZUeBKdaV`RSpTVWUSVXSCqVSUXURTVGYGWUVTTUSYWNVNSNL`RZYRYLYn6RPLTTW_RWOTLXKVRWUTZQPZZLSSXWSTW^Y`WUYUU[XT\M_\V`T[TU[WLYZWWUTZV[UTTU\YNS\\UZ[XUR]VUUMT\WR[a\UKT\YRWSWXTZWYY\SXUYXSVUXXWZWQ[WYV^RWXQXYV]VUSUGWXYWUXXWX[TTQLYWUc\XYWXWZX^Z^YWXSUW]XXUVXWWWRX]YWWVQYVYVV]]_PcTaX`T\[XZZW^UWURPEWWX\`VYWVXTUXXUAWUYKVZVW\WXVU[XZXXTS\\UYX\XT[X^ZTWYWUYOW[XVVXWWWXSQWYSSVUVY]W[WWSZZ[WVZUTYVWXXRXY[W[XXYVXRX6WIT\TXUXY[VXYYYXVRZdWUVP\SXOWLUVZXXhUXZ]WXWWbRYRUVYVXTUZ[KWXYMXU^Z^ZUY[UXX\XYYUVWVXXXXRTTQ`XXUYNWF[ZHaSYYS]USZ\YQXWUHUS]ZQRKUSYVXWQYPXZYPZVW[WZW[TSWXBgYY\L[\OXVOWQUZUV[aXNYTRXVWT`iWWUMPZ`VKW[c]^YVVYac]bU[]_NWU[X`TYUUiUUZXV`RWTSYAWYa\V`Z]TUOSZRRUTYTRSVSVjU`Q>VK\nQRIXZRUMRQV_N\WIZXGX\JWgUUV[]PYXVGUdRUkZPIrY[KWUXVSZR\SPUVaX\SPUPUSUPRTUXITUSSTRPWTSVVWSV\UXZSeWRUWXZUXYWWWR[]UXZNVVXZ[F]PPTZFVUI\TUWZRcXXXaIPU^XSYWO\XbORYUTtXU_PXQOZNMXWRVVUTV_ZoYX\XOTYRUKWRXTUWTTZgUQWXX]ZXURVcW^UX^WX[]ZTwYU^XW\XVXYY^Z_YZW]aW\XTUXVJT]R`SURZXZUWXrX\VXVJYYNBYUWHYTQVZUZaUUX[XURWW^YO^TZVVTOZ\VX^WTWWPZOXSWYZUXP[U_V[XZXYXVWUXUSYWUVW\^VWOWU]VUL]QSTO_TTSVQSN]ZVNPSK9a>D^KcXRSS[RT[XTR\qE\HTGOUUDQRScT_WLVVO_TMWY>SX\YPSSN[MZ@LQTRWTQGVJSRXNXUWRSCNXOSTNQL]ZXOJTTTQRQP[Z_fV]VVYZPV[WXRXSWW\PX`R[\T]\\OYYYXPTVUUg]VVZ[_]]\Q]LjG^XMUOZYVXYbYU[OTVWTPSX`VW\[WSYVMQZUYX\_Q^XZTUYYcXVSWXlMQYWJT[UZQVWTT[XZPaS]?SRWX]UV^TZVS]TWVYTK]W]WTVTN]HXWTwORMWX\VVYKZ[\aVSaBXXRW^ao]YRSBSV[QV^WK[]ZM`V[UXXWZVcV]QJUYOT[TKVRPXVWQ\WWQSWV\Y]\YUKZRVVXRXY\]P\]RQ\f[P^U_OTKZeYYZLZb_W]eUbQIYV_ZfR^XZ\W]V\[YPN]O`UdWM^PYScPdWVThQ^Rf]Q_VXN[]YN[K\V_bR`TZ_RYP`]a[_[VTWVf``X^]NOJ[T^SZ_YQ]PU\WY^UTQNZmMbVTT?XA[VUWdHWTXQhUfRwZXPXVYDTVUYRU_ZJ^:Tcf[YPPZULLeVUS[ROVgZLeViXQ_bYSUE\T[VNVVV_UVHS]VVVUYYWAWM\WWRRXY\aSLYURfR[SFQUMDPcLOP_JIK^PDQGLVIKMTJQJLI<@F`NoTHQRRLO\LRRDB4SGOGBPWWOFEZNUM:N[SLQIUa?:MOP[VBUN5LP:FWINUWUN7PDQMNMOJDGM_COOCDKPR^KQIGQVILHNUUaTVZSYOVYUV[^PnVTWXvXWWYSxSiZ`TF[SZWVVRYVKXSVTglN\VOVTXUR]WYXZXsS_UTOX^eXTOfLZXVaLTiaVTTRU\\WKWZUWTVXIY9VVUVTWSQRS]VYZXWUWCUZUV\XWWXV[_XUWY[[V\UVWSWSQYXVYTUXYWYZZTWZ\[UTTXbV^XSE[YZX[ZXXXXYV6WXVZ[V\VSWVUWWWEMWXY[ZWNWXXTZVXU_WPYXQTX]YXXO_S_STZZVWV[]S\ZVTXYRXVTVWS[]SRUQTWUTPZWXUR^^QWQ\Z]RUXVVXXUSVSZ_U[XTTSPeVVZ]`RUZUXXSXSUSUT][YVO]WUQYWTWQ\XY^W[W^W\TSVWY\[UWRNYLJVZX^VU\TWa[ULYWYWUWYW_UW[XYJSYXUSTY7WWT[T\YUTSOWV[WYYWT[TRQ^YUPWPZJ\Q\XMYOYZV\[[bUP[USTZWtYXWQZUPTZX[Pd6_X\TB\]XVOZ\qIeRVQ`KXWW_ZW[]V[^@TSRWVV\[PW^L]\X]bYPVOT]VR^]Z{DRZ\S^aXnBZUYlXS]ZdXUZYZXVcYwWPQY\[VVZbjW_PYVVVOX\ZYUSbMW\U_XZSXZXU[P[XXQTUGWUYYVVWWZUTLYTTZUWYVUYSTWYUPMWP_YTQUWXTVZVUXN\WWVTcVWS^R\WQ^UUOUSXTNXZT[UU[IW`Z>\TUWV[ZCUXUVMTSa_V[V_SQT\P[SXSST\TTRZ\^O]Y]XR\ZYK\RX[WY]XYXXWPQS][PVMX[Z\i\cZW^OPX]U]XQ\OWNX_ZbUZWL\WUKOXZ\]Y\NYOSVUUS`YTQNTTRUWZS\ZYUSTTS^W[U_WYYP\]UVVVSXXTWX_WST\U]TTRXVXSVXUxWQ^[UQQa^QKWZXQ_UYU:I^Yc[GV[TWUTJNV\ShXVWpPKZnHAURbUUTV>[Ug_UPRSSVaVGXTVXVVU\P:OZRRTVQUVT[YZ@SVZUUJQXQh[bUHMYXZZd\UWVVRXTLYYQRSUWY[VV\XV_ZRUZ]TUX`VXZS]X`WVR\]UWUPWQX][\VO[XXYVQWZVVZXXUVWY_YVXWPZTW]]UKXXXU]UIUV`U[WOWYVZYXU^SR[LV\XH]aYUYSZUZZ[PWd\\\S=S[YXYX\QdiIWX[W[H\W^YWZ=[^TUYZRGZYUQZ[]T]^XSWZVV[`YKsh[VQXW\RRw[m_]hX?Y]LXqVW[]W\[X^PUT]Y]\_[WRUXX}^W[ZTYYX\ZV^SXSU\W]YP]SRL[\ZVLaUX][[W\WTOUXVO]P[\fWYVUV\SO`eZTW_KPSWTVX\U[YU\OVZU[]XUUTeYYZYaRU[XaVZZTSSSWTQRO[WHY\T[T^W__XTRMY[VTWRUWSYW^RLTTUZVYWWUXVURU[V[RXWP[PO\TV[XWSYPbKX[]\VWV^^\[Y\[VVPWTYWXNTWYQ]UVYP^ZUTXYUSWZUTTX`[VURWOZVRXVYTXWVSY_VTSZXRRVQXWWXVWUUX`ZVXX[YO\TXUU[XIZZYXWXUQXTUWYNYWNUYTTZZWY]WUV[RVXTQXUYT^]]TZWSWVUZQU\YT]ZUZVYTXTY[VQ_[YUYbSYOWUY]]VOXS[Q]GUOYTWQWaV_R[MVYVZTTTXUTXYV[XQWQFSUOU\Z[YV[hWY\TQZ_Y[ZUXJkNrX]kYYf[[WX[YR[UKj\]^GW[SGYWYVUVXWNZ\XXYWUZ^NZgQVNQXUYW]X|XWYXXb\W[Z\XXXSXcYUZU[VY[U]CZSc)RPWU\ZTXYZYYYQX]^2XX[YX[VYZYUVZU[`WQYHY]WRM[[][SV]VVkYnE[_VL]UlZlXVXZUY[PVSTYXWYYWTXPQXU\ZYTZMXPYYMZVRU[]\WYXXXQbWZVXYXZUXW]W?NXMXUWO[PWMYXWVSX\BL^\S_\XXQVMR`ZWZ]XV[TYYaWULXWVWZ[ZMCVuRZX[YYW]X\XWX]]XVW^d[UXYUTXRUWZY^YZZRZPXVH]QckYWURZSVYZN[VVW[TTQXTX_XSWVSVY_[[SY[UVXYeXMX]STYNTXVX^YURZUWaVVVVYOW]YXVUVUWUZXYY__TUXXVJQWZYW]SVP\U[\VRYVUXUWYUUUMQWWS_VT[[YLVVWRRQ_TVZT_UVV[^Q\QZRV[XYa]XVVQWX[LYYR^]WUSO[RWUUa[WTZT\]WZIUMTSVR[XTWU\ZQYW\QQWUQfZ\XZaV\RVO]VUU[AZVUXX]ZRS[USY`WTbVYa\WNXWUWXXYPNTWVXZWXVTUYWVZYWZWWYRZ[U2DcYWMZWNVOYWLV]ULzcT_QlWUTMVOQVWUY_T^XbTgRSZQTbUTXYUcmX]CXNXMWWRWIXYVXZUWZXeV]QXSWYVW^P[CO[U[UQXSW\U\]XSVVTOY\\F\U\W]VVXWYZT_]abTYOWT\^`Y]Z[VZYZZYcTZS][ZYJW\YU[SUHXVYh[I[UVOZfQYYYVUT[i_XR\WYWZ\~[_Y\W[[ZZe]T]UYWY_\UPXb=XXV\kXRVWZXVUTVYdWUZVTX\Q]WXPVYNP[YWZ[aZ[TZYROSb[Z][ZZZ]VPSQNTV]`YMWTRXWRZUXZPXSXUPVZSRV]S\[U\Z[[VSZSTVVXV[QQYZ]UWWWPWWOVPaZXQWZXVXV[PRSTdXX6fXWU^XR[LXPTTUVZRXXYWSa=aXA]OUUNYXUV=WYXIPdLPYPPWUZcZZSXWS;V\WHYS\NUYVZUWZMSKZZHMUQXX[TTVYWK\TTVUbTNSUR[TXYXUk`TUkWWOQM[dUU@UJ_VUWUWTQSNWKSNU]KUSVSOLUc;[R`[WYTYQ_TSLTUUXRdPOW\QTVVSRZ`QVX]SYTMVYU_\ZS]^UUMUX1RWYUPU^UYPQJUSWTSPVLRPQ[MWURRQWX_QFJRUTT^SXRWSUVk^XN[YYYWUULVTUPMNXSP^TQSDSLN9ORUJMSD]OOQ2NEPQQ;VTORLXPQDKSNLXI_JZlMcOVRTKMNIM_LWULMNHLIOQQQRDJ\GKLPVTXZHYWN`WYS]TWWZPHTTWWQU\WWE\]XSVYZWF]YUXSXWXYY]XRZXYXOTaUVWYQXXX_XTUUXSYZUV]YVWRWXW^]VTWWXY[TY]RWO\QXYWZ^_U\UXVNZSWYOW\SS\\VVZQYWOUPUTMUUZ]XLXZSUZVW[\XZWSMVU_]^ZXXMWYSYX[TXUJOWU`]VZRW\[bY]XYQ_XPZXYZRWQX[XZOYPWXM[UXXVYZLWY[WRUY[OY[X\VXT\WV[]X]WXHXWOW^MYYZ\WW\[WUSYW\\VTYWXbZVZX]SQUZY^YUOYUZXXNXVRQSVUYWY]XZb]YXLVSX_WYUUQWTYWXWRYYYTTVXVWLUSYUXWWW^WOUWSV\VPY`]YUYX_YXY^QLHZYXOXTTZ[MW[XWYUPE\UaYX\TXVUT[MTKWUYRMN`[IXWTQ[ZZWKYW^WTYZWMT\Z\OecXRWWXYZWPVQV^Ya]SZZVTXSVXVY^SVU[]Y[Z[YK]XVXW]XRLYZUWWOWKWWR^WZ_Y^XW_WPSVY_[U^WgUXbYZUXQYUYSX[[`^ROVVXS^YYVYUTYV`V^XR`_VU\VWTPkW[UVT`\[SW^SQ`WWX[_VTT\ZWT]SU\YUZ[bXYXV[]UW[VWU\SeW[UPYWW^^_`aWRXT`XU]TZZZZUVWpWWRYVOUWUUV^[ZVSUX_XWWQT\ZeYXPaWZ]TTXYTWXVUVVNW^QV\YVUSSL[XTYTQTUX0WKSaTSV]UVQVWR[SOSVWUZWUPYZVZUUSVWNTS[TVUVWTSVPKWVVSUUSRS\[O`LS^X]\WU]OPWU[YYUTSQMTdXRR[SZVX`YVQW^VTVWXXQU[XTeVSXWT]VWVXMUMTKWKaWZYZT\VUTRZQYVYMZUbYLX\NZWXUUXWH\WSUWYYRTUOULYZXRYXXUVQXY[WVIVUOUYPSTYWVO][WTUSEXYUVO`Ymb>W[RV[YMXXUVbUTWXZJVVPNXXSXXRPWWQWJVZWTdPVZTUZQ[[RUX\VpVUVT\TSPX[ZWVWWTUZU[WUYTXZXXUbWZ]JWUWVaXhUZQWUUXWeXSXWUQZTQSWRYVUWWTYUKVZEYVb[VZYRVW_TQV_ZNWPUYTXYKTUXYWYTnUYXVWUQUSMTRX[VWV^XQMVU[SJX[^VWVTTVSVXWRXZVUTVWSUVVWU`YTWWVOVVYTHZ]ZQ\OXXWY[uTWX]XXB\YX[ae]^GEaU^[YYZYUZ[M\Q[Q[nOVYT_\U\_KcX`^ZMYN_]XYVZOGY]JTc_T]eWAJX\]ZXaEY\XZXWX][_a_\XcWXWURYPYVTY`XZ[XZbVWZXTOUSbUVWXVQXYXWVWMNTUSTNXSe`GVU`WV@UXVXIV[VWbKWTYZWRW^XYNXUVV_XYUUW\SYaQXc\Z[TV\XSWXVNVJWVZVjVXUYRWWOVTUU[TVRX[]XNT`aUU\U^VcWWJYRNWVXNVWZZbVTWXWVUPZVUUGX]UKPXWTXUYUVWVKXYVcVHWPRPaUXQWSSVY\XVZUYMYaTQaU[[YR[VYUN]RfY[UWYSIXEWPWWUXWQ^Z]SXXWXVSUPZSYVZXWVYXJVNXUT^^U[SXSW^VYYV[TUYMVZTZUY[ZR[PQXT]^YSU]WRW[TZWJWQUKJXWTQXURTWWYYX]O[WTV_ZTPZYZWXSXQYIY]VU[\VQUU[ZVYZYUWRWYVSTXY^XXSYNZUZWSVVVYxVSSXWdZQWVZPWXRYU[X]UVUZFYRhY\XUU[ZMURTVWU^Ve__`WbUUWTVXZZRSX8V]Vk[RWZcJWYUZY[WS_RbXWVYQVU\UWUWWU[TVMWMXVYXQUUZYSQVYIUXYYXUOXPZORWXYOcWUPTN\WXYOZYNSQZYMWkYW[`S\WVbOJXQQOXVQSXR^^HbTN_\\^Ya\NgRZW[NSYVNWV]SINQT[QJcPS[N[XZ_KYTNTFJSYV]_[X_Y[UR=VWYS]d]Y[RTXZWV\XZCYW_PbXXUXQ[[VTSo_YT[[cSK^HP[U]VY_XTXVKXSV?@UTW^=WUSQ[aGT]WUNVR\EVQVUIVYOPQSYUSeZ_VYeWXSW]X[WRWYUZW\XJQZYVWZUWYZNV_TZUVUVXVYRWUUSVRNJPSUTWYXTWTXG^WWZhKUACIdaZNVSSP[T^UcR[VTRY[N\QR=TLQZSWL]PWYGZGU\C:YVMURWRQXOELS^RXT\GSISVURUSS^[_Q\\UQRWKNFUUYIVVYTQXIUU^VVPVYYVVUVVYWWXUWWXUVZXYUQHNR[_UZZUYVVWXVUaSVSRSMVPUTVTX]SUUXUAXWYQTPUWUUVNZSYSWQ[TBTUSXOYV]UbVRWWWTTTYFQRRWYRWSTUZUPRYXRU^U\UWUXVMUW[`^XXX[MTU\UWIKZZY[gZtSR[gT]\UA[XYY]Y^VSPCXSWWVUX^YTSUUr^MWj]fTXH[bcUWYT]ZZWh]NSWPZUW\d[][V[WUVX\SU\LXWZS\WPZ[[U_XWZZRUGYUeZWbWYQU[[Z[NYHcX_UIJSR\Sk[wJDFQ[UY]MTRYYS\P[QMNSRbZTXRW[ZYQdL[XYNZJWSYWbI_^\WX]ZRRWOkYYXKT\=XVX[[a\YhdMQQYYXZY]]S[ZQc[Za_d^9RPUQLMUHT^ZO^KYRZJPW_OZSM[WXLTWVOLRUTRQSFM^XLYCYcSJLX?|QLj]OcUNWLSL\O[^bTWNGNZVTINcXUVVTT_TXN=YQWNVPJPKS^\^UD`OQW|OdZdP`PPS=UY_aWWtQUdP[WZYYXX\[ZXZUXNW[YWV^TS@IcVX\UXZ[ZXR\YZVV@eS]YS[[WTUWSYUWZaXYTZU_RXIbY^QP[UWPNVNUYP\^XR^WUXVYXUVWZV]RNWXYWSVVUVWU[WWSVWUvVWZOBT\_PUWTQLUYWUZMLXVZUZYVXTXSWVWVZV_X]\VTXZ[V\TX_XdIZ]IL\YXeTRYUWXY\YQU^VLZXX`WYWXWRTYW^XSjP\VTOUYSUUX]VWXYSSTR\V\T`YVZUcTTTX[WAWY\]W[`YYZW^XxXUV^TRXYUYZWO\l[T[SU\RXZX[PXPZ`j\S_W^SYZ_TLYWXXYiZYSfX\SQQbZcMTS^ZhaZNZdZc\XPXbW[YWW[ZL]gVZd[WZY\]QLYXZZW\V\Y^XWIVRWYYXS^VUXVXVYUVSRRUYTUS[VKdW[SZVSQVXUUTV[WMaRUV_QVUUSWXM\ZTPOU\XaXBZ`i_UY^ZVTUSRWJfUWUWVYUU\WUUVRYWPULXSUXUTVUXZTXNTTW^TOWmVT7XUIYVQVRYQTaYZVTWXSXUWZWdV@^dPiWYUWSWTUSDVRWRbMZTUNUXUQYJSSUXXTTWX`WVWVGJWK\XVSU`kVTVSWVOYSQVUVTWUUWXZQGXYSWWUWUXUIVQgWWRU]V]U[^^_]WMQSXQ\NRYZXXWS\aJV[NS_ZVTRVYWWYS[Qa[UMXZYWWVe^\XX]S]VWZ[U^[UXY[XTWR[XWZ[YHUNWY]UZZZRXW[U]X]YYVA^VWVVYXe\Y\Y]O[UIXXdYPJRX\\RR[[XUYPYWXW[KYYV[OV\Xd\_XPXXaQRUW[X\TTWVRW^WYPWWX[WV\WOY_bRYZVaQ\X][US]SZWUQ\\U_VW[^YYUZUUSXQJYXVPRXZWW\`MYT\XTa`XXV^XVXVX\W\ZY[bT]]XYZWYRMSUVVTXNXSTZWWZWRVXU[X[VWRZRSVPUPX[[\_RSWWUWWWSSUYYYaXTTUT[VVT]XSWXZUSWUYSSY^ZVXHQUSWXTXZOVUV]STR^XTVO`ZYWTUZTWTO[SZY^Qad\Q]NXU]_TNZPd_bLeU_Z[[F`PUZLYWX]Z[X`]_V`Z^JN`[NT\WWQJc`\Y[VU]XTXL[W_TW`\MhOZYWYP`I[ZT`YX[W^LYSY[Z^YW]NZTVX]W]fcPZUQ^ZUT^UZbXVZWShXXQZRWWUTXLTSVTQPZUSXKUTMYY]SSYXYXSWY`SYVEUZT\`IO\XdX`[`TW[i[QVgV]VP[`TY[WVVVZWV\VY^V^XNdWUWZXXWVW]Y[UURVZYTTRdR]Z_VXX[hSOUTTY_RU[TQUQWX[SXRSJTXUUX]\ZSVVVYUVWYSZLOaWW[WWYTXTEXXXU\SZPZV\Wg[TVGZUWX[V[PY[Q_ZZX[eUZeVQXSWU^TRRSRQVYUVSbSU[TVSJbTV^VTZ[^XWVZWY6VRUWR^S]SXU_XOTTTTZPRWZTnXqBIFYSMWWTSRTVGV\XGeITWXZUUYRWhLXSUS=SYVpVbQXYYVNZWWSTZqVY[WJUW[ZZZARUTUTWXdUJUWPUUWUOVXKVC^XTTUUREXL[`_dXOOY[RYPQV^[XYXWWWYYVW`Y_\WV[[XZYIO\TVRTXTYSUW[cSaVSTUY[YW\ZGWVdeXYVVVWVTVZPUXXYXXR[YYRRYZUUXU\UQS\TWPWWXXTUV[_VFZ\TPVZVWZUY.YT[VTYWWVYO]_VPVVPYSUXQYh_V]`PhVWVWSV`TQUQRVCMU^IZEYU[WUSFUYTYUZUWZWTZUHGSJ\\WUXY_[SXPRWU]S]ZEUQSWWVULSR\VVTVSP[WaG]MXSTaVKRZTTHTX_XS_TVVRR`W:RSST`UUXUWZPYPRNWU`[WTYTTRQTWRO[TQRYELVWSX[NTUSW:SZVEVLQRT^REdSVNSWZU?_TQXPXQOYVVPTWWTUTO>RYMXXWRRVZPWO`TUOSNVcXWRWTbUTNXXTU]UZXMTYVUPTS[WMK[VXXV\VSXWXSSXYWVYWYW[PURRYWWZXSYQUXWSWWU]X_XWQ\]UVLWTWR]WWVZNYU`UYXW^V]T`MTX_XSZXUU^cYXV]VWWSUSWY]PXYR[YVU\]WS_\UYZPYX[XNP_YYXQYTWWZXWVR\TX\UXTXWYUXR]TVYXV^V]SYAV]XXU^ZVURXWWQ[WXWVVU^b]YVYXWZSYWUSTYSTMFX`]WWPPS_UQOXV[U\OSYVYPUWFQUIZTUVZV_YbXUXYT\UYSXWTWQRTW\W[XVXUWLWWXWOV^UVYVcg[W^QZWVVX\V\XTZTVYXUVUXW\WWZOXWSNZXYT]V\VUPVXRSV]PQ[QVXP\XU`\Y_XXVUW^SZXVRWVWJTVNOZRRHVUVbUJ[YWMQ_ZWTR]OGfYYZV`JWtR\XTIYQ\LbKTIaD\TTN[HbU[XQKSZ[EYI`WbOY]TR\ZSVOYG_WbT\R[OULVMWRNWUfYMYPTVTSXLV_RVUQWSVWHXpWYjW[Q[WWXeTVQ_YQUXVT^HWZ[XTZ^S8PYZiURX]ZWTYYY`M@QF\KVT[eWXMSZZXYVV[MU^OZWTTZYXXPVeCWMWKWWVWLYZWVVWSVW]YYZNPZXZXUS]`X[DYTRVUY_UX]WTiVZSLWZVX]XTXZWSOLXVYYO]PT]NVYXVVMTHZTSWXUKZRV`UYHWW`ZSWS\VR]YY]VSX^PTZ\bXXWVVWUS`XYVL^^XXUYWVXSRUVTYS[RXTTWbY`W\XWUXZ^\]^[[Wf\P^UVXKWRTQVXZQVRSYPVVTPVZ^QcP\UZUS[XPZTYVX\[UY[]TNLUVcTYcWW[VWQRWUZVZVSWX^[Y\YUVVY]\YVZYZ^TUXXYWSLWYWR[W\YVVZX[UXVWWVWRZYaRPWZZTNWWcVVXNXQXWXXZIYWQPSPRW]WWYZZ\XXYZRRYQX\V^X^WN^\USXPU]YSZIXTTQW]^XYTT^VXXSW[YXYXY[Wc\ZXVYU]YWXXZFXWW[_?OWJEU[[W[ZVYY\VZUVVVZSWVXaXSVXXVV\[UUZRWYSLPQ^TUQ\ZY\W[VV_U_VUXUSWVKWXT?VVMYXY[WXU[XYSaWYTWWXYWYUZVVQ^QXSVXUPW\WWYVSYZWXYQTZ[M]_SRTUXOSaXXM[XSUPXYXWYY@Y[LTYKWPXY[TWU]ZYXSTZZZ^>Zs8RR`ZUWX\ZdYUOZaVhX[YSdiZXWZ[WcQaWV\ZY[f[a\Zc^Y_IW\SWNJ^wSZPXUYZYZCVTYZXXWXZVZUUZZ\XbV\vXF]XWUZP\KUZVUcTTVYS[Z\QRZ^_PZUVZ[SdVY[UWUSX`WWTTYaP[WRV[UT]U][eSZTJ\^ZXKTXT[\VVXXSW[UO`XRR`UWTKRYW\VY[ZYUWSUNY\VLV`VP[HOV^TXXZYVWY_XabTWXRY)UT^ZUXSZXWRa[WTWVgXSSX_VTHWQbWXRcUOTTVTRU\UfOXTQUVRVQdXMLTXRU:V[TZVAPNF_UAdVTRXHaVAaUNZIXT]VFYPTUZXWHQDUPTVXVXXUVHXGfUYVW]PGTMT\V[VRZXYXad[]YUJdRVZLRS[Z[YZYUYVXVWPXYS\U^XL[XZQbd`UZTX^]YZLVL][X\\SVUV[WWWXS^]WWPQUUKYTX^_Y[WUXXQYYXVZ`YZIP`W]CUZZWZXYXZ\VUYUYK\\YWThYYZZW`\IZ[YPSWX[\UQ\pJ`mZVOZ\=WnVT;WaZ_\FRR`FY]S^]_KYaXYB[[X:UPXG\aVTFRZNTLUbapYHV_WRf]TWTXWXY\f\hXLUWZZd[`ZZZP`W[OSU[=كèΐpᾶž~kuOuُգoiREMlyoB~b͍x£|Ƣ4d֕nQ~})w}mo~Z~zk{hevv]~zqno}jrw~jy~wo~yyy~uco{|vx~ȯQf}gmt{ęřƗsx|kՌ~utuvu~v{dzd}v~xyx{|~z{z|v~vh|yury¢tĊzp~{z\~ژחwz|{uzDž}}l{z}}{t|z~֧|_|]ɗs`qtj{}|k{{}nɘzzwoΚwxm}szm}qy}q˙}syzlzw{{yo|svowvl{xwwŚ{^~}{~}ĜysyvĔznsn}~Ιqyl|{xz|~~}zql}n}{s|w{̚|Þzwz}w{ݖš|{}yygkØ~Qyy|y|{xʔ}{|i~bv|~|~}sz}pth}~}qxq{lyvx~|~uuymzÚy~|~vtskn}ԫtytlyuyw|rwlÔƚxhbvv|wskri}w~x|zw}}~|ow|}tv{yw|z~}g{}yɖ~zlvä~zx~wx~v~xwwysxs~zqs{}}rnv•՘{{{ƒz~|yzn{{}y{jt~t|~}{~{7j`}~mw{o|lVtg|hg|~{{zhuzn}wv^uw~~xve||po|}~t~|{yy}~||~|qvv}|j7kwrvwO~|e|uS}o~z̕Z~||@z}x|bzy|w}~|~|]||yx{}~sx|xvt~|{uJV`xmf N}ȅ~~}{|zx8px{~r|v_o{x{}~~~n[zsy~vTynq~~~}zs|}{~}s~~~v~Uy}~{z~~{qsšl~\XWz~|f||6\||ks}xsgvzsuba#k_ښ{Řz4~|wYA1yKqPǕ]y=E;zzbdm`xP@Hmۉd ,y'qNxŌzOruYg_fmihCdl}woccn'{xs`N oezyWw]]ȃym jZolAi=gWsv[c&z`S8{^^gtpwtpstktujsofqghmss}wjhspqysvlljppuvpqswji{thwmoy}poloqtnvmihqvpnrhnrvtsofunuttuchs~reupol_nrvkxnmujofyssxqrlkwyupqnpsmuktqqtrrsruqyumtvrsuqtmlsktmjukronorrssuoxnonrpzrnonptrtvol~onnsri`rspqmwopyporwpl{ps~fvptkk_woit}wpiuouyt]qjlbltvovjqsso{uzmxhlk_glrknorufmwqVmfremev^srfoqrrmsdvlcnwtnypwZaorpuewl}mnozpqqnhjswejmqtjysofknjostrxjiiexrhktilklpfgsipgoogxt_tfwxddoobnhqrosppqwqrypqpsq[qoqpppqonponrnpnspotqqpnpr|qpqporspqqmpoppupnoobnrtevprg]|fmouqoi_lrw\ffwuwausmtkbsunyXorop}hre^ryqz~fjm^fmeokjkkl{utxoxqrqqnlvqzssqnisuywnwz|otrrqsqnjpomqsf_{zqol{odpptlpxu~tmirjy{sdmjyziq{fwohmpu~aswrowlyn|hil`gnfrqgnnmin|mzpqxtvoxiklqwcz~rplpmvxtsgliv}ltvntsunxqtpx{qpjtmpnqrteq{xveljnkmcyqqjppsTcbgjpwunhnluqsqn|jfjmloomsoqafurvqjnrtes|lyhkuljskp:rsvvrso~cvGpqvdm~low~wt^rc|nusw[dthl{hpoyssycwtwmzcmjl|Ohe{~Otenrl`dpnvY^xk{oz{~mple^urqc`wqd^qosytn~jq|cmshiirybohjnrxlpzcpvkjiuijjklsithqokn|~svocsw|qyuqtotrknoyonmjnutvjjqvvtsruqmomdtmjftghnpormtsgiokrq~oee~{ndkptofmzt'om`mudvkRvrxnptywchumylkvzp}}qur{}gromiwktnkq}v{~oordnvvqlwkhkkopitrnqqy]ovdk}yylskkvnvwsz}ytsnjk@ollyq|olktjthnnn{rswnprtqj~msswwykmjmqfqirhrsmnturpo|sxifkprertpnqynvwwlPqpakprlkJw~rtwfkiusxxohvtl}vqotrnwtbnz}}xlnprnrttmSyrvvwtk|~yWxtmpgqxuwtwrplvrvqqmtcotwuzrznturzw{qj_ssvxvqb{}x}h]qoo`fLqhhtgvl\tjsprvtbmgtq\lpmhjojq~mxnsqjknbxwyzk}Szuujclmgqnurpmktumuukixouussytqkqqj~poquywoxplpwr|cqk|pottssmvqprimsrsonzohyu-txqvpntx|{cmowktlwurp{zuqpoHrsrooown~tyw{xkv{pwXpzshssugrqguktmrYqwpknj]bqmahl]vqwyozrotmjnl~opkgommmchqxrngqx}oqrY|rKeer{prnimqwsd\gn_bwrPdvqnbszevdhg{sprfpprztrZfkyacxqElT}budqld\_x{mall^fpqo{m\spchwkhuslsK||bnrtmruqvp{jxrkznrlptrlsqrqmspsupsjrjopl|rktrqpqtwklsnjvskqrorunoxphpjl|}{jvpvq{swkkqhtw|hr{oukmz|sjxnxysuwohokfmt|p}urv|pegrftbnyrlweYetfsd|{kubxsppijnpvl`mwqiuag~kpuwiiouc}idsoikrd]elrsmcjunreohnjqvgsursuklvnbfmnuqysrhljutnmshd\}nswXo{qsoohipcoqnsow]kvmorqpltemmnshukprhoiunvp{mhisoqrmlofzqwpt`pxcrohuumsrijslnsryessdynnrmswrugu^lmvminolmmqslxipmoisp{rnrnokpr`opjrqp~bwnsrooqrypsrnymmvtipujnoxsomlgpnmqpomprhrportnqrmsompo~usrorovtojhotmmtjrttmmqqwssqpjx_qkywxouvqkssdapmnaopt}oqhxcglooopjrlngetwmpswusvosfrtkkwz`qm{iegrrqpulmtcqsgrkosmtojunlpsxmrttkqqgtrpkujqsnmit}atrcfhbsjfuqYutnu}rjsvnpeq[ut{l~umwlw\Yuk~xhtq`rnxvlss}s[zrronyhmqnlwuupghayxrrlqvznsrocolxmndfvluts|y}|quknqrcspopoppwsrqvpjqonqrpomsrnppooppsopooopppprnpqqtonppmrpumnpxqpnpctqu^plyrduowrwgvupntrqomYqlipkn`hpqVjx^qkfvhgp]arvRgn]wbmtvvdhri}sssesq{cte}qthUnyr}mdr|rpkiqzr}qmixxwgxp}pwsjjv[~sopywWrwwvsYuqhctysgoxvqpjwuxpt\yw{vvo`urwfwstt|fssufdwulfw_rd|tmhrmomomq|djhhxs``aivzfgpfclsskjmhrjfreozfieliifclitonizhw|~Itrl~ot}~tko^wtj~rpkzs{plll`olsqYlof~n~cvqwpcn{ng{eiyrphtomjzlnmg}poikzeqthilkpuhgthuwillgjfwlgmlj|tgkgwphklmahjt{mpnivlwtqwnyruxhxf\ssfvpwtmroyltuqi}ywwvtwtucxnnxoqqsnmsdoauvshPn{pihnnl[nrxY{eewpqykmxysppgjjtoghlwqwlotpi|xmrtsZ}upswqpvp{vsqrlsfptssqnlludxqmmegtolmqxwsipmhnjstmpqetsvzprriptqqqppuomqnprvmqpqpuooqnurrtpqpprrqpsrpiqpqpprvpppsqqpqqpsnqoqtqpqpclqppd{jqm|iksKrpkrxulxshmkqnmotjjlnkohitojcig}pijpyfhnvsmdixui^bcMmriwh`xy^ryydmqhWvqkgdb|ldxldsSjvg}}ubpm^~xS]uemopnrzvsetsDoxjlpy}rlstvwupsmpyuez}s}ql{n{punilrmjrrttktxurqytnsuqprnqmoqpionjlronmuowsvt}qolsqpttnkkqnkeqvqopomnwrwqpoorqoprproswZozvyqvnoryoqpijgtmrrqyoqtquqnkrilo|srrtmmgtlmkksiostkpsoruu[d\x{hqjqmvrerryqnrgniRmos{zpnnsxptmtuoil_mjvdZ`omqpjsVghmjtoomdmootiukZtpnnpvs^ti{wjgjqf{|eotlj{krzn{ttsag}|dijvssrvnbtwsqmsqsuqqtgsp|rqszejuevswiljd|qnnwookqrmbrfwlzp`vyurrnmtnpilnpqlzvqqouumjpuosrsplotdnkqjlttjmupworkvvqsltksmucmqktpvrojspqmynwkjposrunozsigurkqorqnpmnelhoomhontjivtuletrounnrmzwauytnkipxlqonzmtouxnmortwrokklmhxgwwm|yrvsrkonqpxouotnununmonzpsyqlqkyw|nqx{nywu_sugfsXwys{hcphyumqpnvqvowwr{oo[svumrlknmpnyt{pnrvtsrxm|tljnroqpuktk}kxrzjtghgqutr}sv{qmupisdorqptqompmrndrvjkcygjnkop[hbqaqoknijyiKmcjbgor\pmiqoy|micompthtqy][vuly]xjsnnq|nojm[^lpi~npkuwmkn}n}attzq{t{xsdrmr_mrutwk{infb{lqjpqmsmazrmolarqmnq|rsovybxqIp{qisjsojst|tkjjkips[nowkyozuozm|x^ulkzxjjqrovsarrtwaymXxtuuqmkmuurm_nsstustxsuut}ustlu}gswuvtu{}e`srpvtxZJ|cpwfarjgonniqomstSvo}moonvsz^q{civkwifal{njenjesxteqxTscjduitounsryxtsptnvuwkxzuixqv{pqltmoq|hkkpheollqrnziqg^tsdclqhjjq{aaksilcrfcgf[qredntfgt_ftgqeir[ml^ofty}icbfnixmovywntvonnnqlktqusoxp|}wcmjkwhouiqwr`ylkn}oyh\onskujroqnunfmwnrjIqvnTp}q{qtwpmnsrs{goorssq`zlxvrqobqrerhdop~znmk|q||ojuspqzd~rzl~hpt={zyqgpjsyppun}l"v|pyxhOqpomqoqmuik>|lvwrrqqnqsqqqpqnopnqpppqoprrqrqqqppoqsmqposqnsqqooqppoqrsprrprpoprvyuutnb{nt}pvwv!ucvjpius{mqmrjt|wt_wrrjowtrm{nstkmqux`YnwmjqEZx|upw{{UmJvBrmtf|cuuwarqvpMzzjxnywrr}n]}sWsf^}yWpXgnkxrnynqrrjmtpirpolnhqunorwyrvrlkrkjoomuprv}sompqppuqvqqhnlmxslqtngsotseh}skpnvmap\ykonmduploqkyvkappqlrjmutuhgm~vrjomrmotsnssrtufn~zpdpuyniunrqpu|rmolxvn^lutgmjqfmixpprokyejyh~wgg`pqxorZngkiyxozcepgkfoeoqevipjshrfkpYrmwvmxqdtmjhjnm]xjdzbczkw{jipnvhomlrrpqqvtrxlxyijwqvmj|lippnvwitrqiwtlswnmtqiuwsjxpvtqnvrxksplyznpjqgomrouxxqk|rpokpiotsiligvqtvlowjvjjtpomnqprxxlv{vrxnrtvuscuvbjomURtilsytrrevxzk{mtqcpg]qj_oyfqXowyh]qnrbelo~aaal`cnNsdi|rlcsnsirmonutnndnjnnofnzfizwiq^ct}qp[{tl|pk~pqvxzqsepfttlrrrrssppknqqqqqlqotrqtusnuprsplpoosrosopxrruprupsqvqooprrpqorzl|qrnvxtqhuuuyqktjhivl}vwms~twkpy{{_iruw{dzrhqtwpmjz~njqlfnulexZnmpmlljlovmoqopqqf~owgpnonngvfmpfuvnsbknuvkziekmtrovqpt{pslmspms|usrvklqq{tzhuoxngxpmptyyjubrnorrnnsvqvfntdnjtpwosprpqr{ppssropqqpoqqrnqqqqrrqqpnqqppqpqqrppqrqrrqosqosqppppprqpki{wwnosuqrunmqq~yr_rjflcpmuxszfuq`wsfpymmtxkephuywooqyuxwk{vtulukulpqrpjfadrksrr}~t|h||mxl`nsnlqpjktudpewj]wcvx{jn]knnjzttgp\euwumowk7|f~kvqtmsqv|rnpXv~hs{uporsnxgtupvtrrwiqomroirqvdquklowr}qoyqswXhgydio{me{danrroejhcvjuquksmupordzt}qrvjlqnfforsws{osnlpqfpikhldogsqsrvtolplusurswpvnznisxlrivsskkxxmgqosguqpjvivsk{rorpznspmolrwlrkkqsimkqqpsoolkkitmptmupnopnvjlptmopmkytsl_Wrok`fqvp[kskja~rd~|ltkvwnwnnuolm{ghpe|ii{ivzltvstw}vzutsqudhus~cpnslooxojpmrlsqplnxsmovpzrqool{{ovhuqqurqupglozunotreznstbksxicnj{rtu}|npuo]gs|sju~rivfpgnwrjdrvan}vponkppjtsnxzwiplnqj^`ykscxd{rk~iurloti{xpvkpZuioisrdolyhnqtxxjs{fdpfstrsnptpkauosgoolkrlmspnrxognspmloqnqrhmkslrqkplovjniksttjnvvpoidengsotpkwst~quvzhtsrlmclvmbf}nkf{urpj|runyjjpyysh}rwqpyuo~pssnrlopmqupynqsskrlogyyqgusnsdnqksokpmqrsxqposqh|mnhsimrnrpkrpilvskvdgmxoawdok{qulyplipiq}rqgrclrq|sdql~kodsopzxjhywrtf}ojlopmnhq\/fegeof+cpeqnt~UzXegkwzggqpudoe\ovnPznbvw|zpl_r`}t{i{jorultqtqtrwtla}synsmwer_rvrzqkln\rkmlqihqooz}kucnro_nlnv}nxoqrrrpqq{ppqpqqrptqpqotrrroqprprrprpqkqpqrqsrppprqspqrprqqqqsqqqqj|gek\zgIskq{zlvn|i}tsncdvnygryt^j~nqo~j\f_pkz{vwgonvjuKjrwufnrkr~Zjrwyfnzbxj{ksgpwekhkhmekitqoTyjejsltwzpfse|qndlroytpqqqsqurwktezqltfnwtjsgmutiusoxzs~znp{htsohiuyntqmoqmhdgynruxqtrforhxsqksunsom{rzujus|yrnpyrvtwriouwqwtrrvuqhqx}v{vuwfmqlkprpuluqmzs{Yqmszohkwfiewqgpkl|wmuykntqpyymyncusxnqnnv_tjnhnpirjvoXsqfpjqsqtrpyjvbrumunhJkntbinUmmfthfqfn{wDaoRximnv{vyhyeioigo]evZ}qmzwdvsZrtpro\|nsfmmu]vn~vmh}{rvuxgcoysrqlonsuqilpxposrxosrknkxh{qrfr{qqmtiuuugqynrkebhyqwtquovpvp_qjpmptrqxxpmlurusosimsmhlqftknnollinqnmyuplorpstistwpounqriojvqoqn}wqmtkyoinrttq{v{llhxrsolnqtvovnzrosuttpkrmmwpbxjntq]sol|ejisnqjzxzonwmtsvullrzzstrhqq|i|sngpytnahuuutkvyl{]ihhhmvpsojo_pbopqxsjnwsqvoivmqjsntj|xwdnrkrsuhzrqmfqwpkvtimlofskqkrposnmqcsohuwy]fsqgdmevqsmtzpwjn|ks~jokcjuvxjkilwfrmvuhirqxi]bkwuo|mrvptpuls{tfn}peqehtuivpx]qnw}^uj[rwj~{|{skmquyxsw|frpqutjmgpmmqxoqqwldttmnnimnmgkpixqtptqrnpeksmjgnpxmzlmtkpohqipsqppqqprssqotqrprppqpqqsqqqspqqprqppqqpqpqqqroqqpqptpqrorqrqqmqsrrpdropnunklmuuplkxsqsxlrk[lmvg{e}pupqkpnin~uxzlfmkktuws{tntrlnkn|pwohtp`upt={f~m~now|pshwsgjvrzdkwqh]|nri|ve}lp}ow`pswttoommonz{hyvrjethijmloprs`dyttsqtptsypnmhpdrwqy|rvc~lkjmuboqulsS\{uzmlsjnqjlpqrjot|btigVrt`eqcnssfhlxbRqjltgt\m{ohkwynToiedhwqqoqs|npprmqkmpqrztmmeqrivsrl{vuzxqypnhdrkknfmmtxc|tltvsqynprnebmuqpl}rokqvmyjomjmsznm|kolprogoklvNllrklpmlrfhovemniptjmg]owirlhyvowrwromitmkurtqvzt~pnp{pp}txpqygz}ntzpwmurvneymnyrlmxp`gkxtknmNmueuiv{y\vysrfsx`qwnM{phwrluhr|}okxqhw}yxtn{onh+jgsoqzttyurwvwr{sxsqlprovvpeilvzstr?zyowmtvqtvppgspltq|twTutqsqommnusqftuorqptt}bpomywpqnlpmnpjmsucjnoxvsgxpvrimppo~nplsovlgckqyrdw{lnotlutljrsounphoroodssrsurqxq}kqzmjutjmllskttoysfsvsmuezmtmyswnq;ownvx}muwwztpmyqjuweysvtuznxqv[j}e|{gptn~svwesu`hrtll|sfte[osiulpo^lfptudrym~lhodiruqhxjxsrsvp{gevzoGnogznlqmmpqovn}qzoppoqgnxsgl|qywlp}ptgujqtryvumliolthjkwnqm`txhojXmgbcyeklt\b{\~napkufjnnsyuqjjbwhzkqgesq}\Myvb\~fgroruupz{syumxrblonrupuvy[ejlmqyopqsjnb{ilo{ukmxufpduxwlprsetlsdwwjkyfbgskopzfxnqwvsjmovvfuud_ovsn`kkszplqubwvkytjoso}`nylqqrpjstoypm\{lzlssy{ym{mrrjmqtdoznonswpnxkjruknncmi{plerrpidorwtlggztqnll}i{nxk>urwydlflvxqxyfp{om~llXZhl|yipw{som}Zdrquz`p|lmpumrjtgrsxzimjxlkxsxlpcqwqsmuhmurwdrsmknsk|jqmqtqsq|nrnkpvovmrvnwohqqmsnkxp}suqjbnphktpitqpvfnowllqylwkwqotq^t~pyosrnuqw{tU{osjytwsgoujvlfskrqcktltmxkoimskjvplmdnornrcrsonraunrrm|rqophtrtorqrdtotvnsnolltrsgy~~rsenxzmirpqqns}qnmf{iqnqqrwqnqtrzpply}npursntjrrsvrsqrjjoptvyknwqsixsvkhtqxtxlnrxmrqvmprtswqnwlmsjpnqpk}tmvvn|rnnpoprmqwmsyqxgrnvwyv{qltlsunkqomsuzlkrsowns`gwphm{eervqtrqsynvronqorxruqo~nxltqqxntqoiopzpvpkpqnlstnpykrvlokoyoppoynlsnqtlswmqvfmqprvppxqppmoqrmpnronul~uvlg|onjrmnmvtrwwrmqpoi|kg{tgtv`z\|vwmqxqltrsp{uphpttrusepqwhjoslnmurtsgphpyhirqlqrcgllnhiyd~u}llpmkonf{htqehlcf{aviyt^fmlsduuhplfgrrYjrs_fskWhnjqprgivpnkYrnq}o}rmpnpomrpoviooqsqkhfhucjlplkjlrnfrpyhqmosvmpkwkomju}sirm}qkrrzjtsxsbpshnioonowenonrkxgxpordpgniu{`{gtpr_mqilmekn{ppUouqjpnjkkcorskmooincenmupw\pkvptz{ssqtm}nrpeuyrwpufquotvrnsmkripsf|qkpmvzvi\mljup|iurpwmp}jhluoqpnmlqshzckouqppvhptzlpdjmtojqnvjrxrqrosromsoshipopmisqqmtmolnuruqlpkrqulqkeulvnluuovjvTnuorvllphriujonppirpvolqrgbsmhos{jrqwnfsnusop|rqppzonpjmrtisvksryjroivpjlpsrsomwvsnypsvwspqoqssnpqwqptqo{qotprtttlqvtproxwplhuyeruof|gulskuqslnnotjouotqqwzphslbnfvduqpsoqmvnkrsprhrnyrxmprv~yjsvuottxmlrsosxvkqrnrpvjqlvvrosvxlqsfrpurvnamnfzsqoamln{Xymtnx}cpyhdzrysmnuksmooxpkupcuqjwshqm_rsufjbopqplsnh~n|{pm|lv_lthyv^|twsomgsrovnznkyosxr{vzypx{qpell]r{vrp~xwpppqpqqqqqsprsso`ojppnuqpqpoqroppsprqprqoopwrqorpprnrpmpnqrtotppixtmww^gnv^ltq}stjsggqwts}cozsuwBdsqluwoywspsvyzkdkcz{onuxqwlsqtwwnukou{wu}prqutpgieqtsoltooppijbrjtgnnssrxwqirgntfpp{vvnlsmyyosvspnql}rq{psnvpnvzgmorcroowps{atrcqiyqp^_jqocsitzxiqrsnnqmsvjolmnslorwr]twqs^ugzqkwpkmrqrwstmrrttr~nxyqjoomtivrpqlzlsvptpspiouwtqiz|pxoiozwtfscvlucupeylnoinu{vgogrxru~romhqqrkr{krxlpjtupltshpnrprr|vovtpqoeiouqsfomqpxpqsvyvo|srpoktptnnnyosltmoxqjonqxlhjmjqxmuynfrkrvsvsiyjprrrnym{jpqtkorztrpq{^xjtwkt}|gte~_xszbtkpxoxnxtqqnWqucslsq{lxrte}pzwsxom`px{mylmqsiux~qpmstaupyhx~nt}smmhmhksj~iore~jnqunochiypismtjjtopuhmtfktukrjsfnju>lytppgliwtxnpipiqxGrrrrxpSomljmhjoqscntjrotswcyrks_wlvzeiowttuzneefsivul}tnwqzpwxol`vrkyuhtfx|ootkmuzrwzn`XtuWmuzq{\rcsNL{wrzmsyukl}uiwro}wskfqzqyvlvakjvcjicicnfxpypjzgtpznmwohpjujsljhz|usltulskvrtynnirtmkkrkydsqtpkxopjnnvmzqropoprysppsolrpooorprnqpqpporrpqpqrpqpppqrtqprqooqpporqprozopoonissqjt}pomrkoztlnipqhxmoptvuwtuognq^uurymrrtoqqkkpjlsqprsqruilwxlZxmdqysYt~uh~{nh|djqnj||srqguyqlyzznrmmqs}p{gewtmmZpojp`n|mp\rp|tw|tQzrv~yqkgtnqr^uinqjiqrjtypf`sorlvkv}}qnz{qmoqropvloqmkwrqmWp|porkknnuudlmptjphtrmsnqsprirqinxlspidrymdpnpomrj|lbtooyfj~wgsxs|qnworhmwt{f`pvtn|uqqsgajqsj|qgxy|ws|pwuyjvd|vigipnlpdhtwjrcil`r}qxueh|m|iwlqolnuksuzyzp{kgjg`~||v~vwntmtjueqvvkqs|kp{pybfhqrtpynokwgmflrpjoiqupojjnihp{jrvUw{rlqpwnqprxh~skxrodsojspnvvwyruolidnsplywmjkfvruwqqs~omutqnsvutottqtspupmcmrptunjr`knptorqr}otpgwpo{zqsuomtvkkmlsrso_nqrtpopunmoqr`qs}r|omvsubtltjm{crwmnly}lrrojvbjpmvdsxkcmjnzjzevkerjplmsrlklalrpqmqqrewraqfwrlxfs}_n~qvkmgowlufvrrauoczlqph~ono}dvuqrsvoh}vkxvqslsp|srstkvkujtsrpyrmkfpvt{ptvprpr}rtjmksogkoqquypujqspvqozwtx|tcnz}h|`tknfr8qsknaoktuvflqmkoyWprrtum{mqzpxonttkh}pmixtxtmvssiqtrpnqtm\yqktrt~~|yuiqqxlqwufVttkfplomqjww}qlzgtqok{nmwmdlqolmuoppumlstrttskmrjzuxsopkloysnsofsxhpgkmhizsururmuq{lsnnlumnohonnnzwotgsippsttppaqomp|k|qgiwolrwq}dptgjrvtqkyjcmjv~vppq]htlxolnoqoln`ljamljsxktossqvsylxxskxkrlpqqugwvzzflup_cvjvpstuukyqxqxqsk{slzpnw}oojrv{otzttkrqoqikvqumvqqpmmqmtpvsqtoyqrnwkirlrppxptrskoksrpsprrwynobnnvunqwppsnn{ldytwjllrurq{onr{vrmpxqmnamomqnkskqv^uvjvjlgutzrnokglgrjktqtxoyrktpv{ipjxlrpnplfpreqwnr}ms|mjssuptKgvxrwpjnr{crmstkoMOszt}qxwrlsotwusvtqkpjvnrtmwom{kmnIfj^tpYmgljgforsrgmtv}wqsaspOrwquwtensZ}|opss{ekv{tosxsrnyqssuqorrhkbopnjwryblqrwsqrrtvtpusltnntqvrso{smlpmmwmssuunmtullskquy}oewopkmprspvlqxoqptprvpswprqlltjklvwnqoxsmqxsVxxshen:ivqfqHq~tvnzkrnmqijojb|xhiprlpqnnnpnpvurdqkqtq|v~ghrtpqopqurpqrrnrpsorrpnorppppppqoqoqqrqpqqqrrrprsqoqqpqqupqqtqppprstoqqxoqqrnpvpvdps~xwtxtkrpxjkprfswjruxuqslspsdvssnwvszqsjpgmvopsomurujpmsmlrrrimnranttqxvyohltrgvwpx~qtwsornxixqmukmltnkyzy}}~gi}vxowywpvsvzvq|vuwpxp~hgxxmhxmlutur^op{tx|k]tx{hvtuwyqtlznlrrxtzqw~ipnzfwpvqy|rytyrlw_fntjgzwxj}przthltmxnxzmol|k}vqcvseisPwtuqdpqvyxopvzguswsnn|nov{xznnwstizxl~xt~votnosv~nolwrpjnjssxrosoxrxscl_xqkqomewtcmjuoolb]~kyo{vnctknkrtcruipYokTrljliwplugpvjojunsktklbonqinmfqokomkhqimvtmxfumlrpkukoqunxrpqrurlriqxpssz|rsqkvitxowpqp]luvlvtjpsrokslkopotmqsnphjtqpthvpmrorqnpssrsroplrmntzvusksszostoxnwfnysrimrpsrlkywoopuln|~mpmuxpqorrlnsrmmrsplqzn{rpuperppvmngkvziqnkoposryspzr{nq`tosg{uwlpqhsnpprxrtipouvsqhsqtvy|nukqjsttrrthouvjrpnkpstnnwmrtpzkppvr]fpm`yvpt[qsoymmdosmwwpoplegsomaknUqo_ltfq^xWYpklgbipkv{nfsgxxmnwoxruzpynxsqoxsmsettnjsptzwu`tyitos}q{hlmqpsorbmvjptqsslwpX{rmzrnnnlr}fmvlp~jdplvnqtkqopuvnnynpwnomkkuxmomknwnmqrxljos|okmkjgmkvl.hnierZjhS{tlz_qcottjirypixy]}sowd^s~fzupwnqlnp`loztnusorulguqorwp}pgpnqzrjsjhoelknpnnpuzlozjtmppuunmmmlutuvonqqnlqqwqjposmoqnurnoqislnpzusxjrwwbywj~nrsssxnq|pupqumvvnrrlvrqelupzyniytzwpxronprzugwuxoblwnpjlspo^uquolur|syxxummpdrgat}yor{rsjmotjukqmqonuqhou{ppxjrlgxjy~xwcqnqkvasprrk~otiplpk{mkklor|key}pwo{sp]pzyltwyzovitpqxtpzojpoovewstvslvvuzx|rrsvtovGosyuvkrwoaspkllfpuvmjqtsnrsprsuwprnvfWtslnoq\uxsepqnnr{kpRUhdtkwpwrulosn9or{bsst?~mtunplxnovmmrvs}sby|rtpifszojp|rlsbsqxggnvrqhhrugupfzzkx{noq}rspokopyxjtuo[ssmt|tzpaks}ymdussrxzu{qoin^{osh_junqegpugdcufgtmcihnz~peiyxgku|y|Ykhmphuxvnyto{qrmprivprnjrkqpjbrrwzvuyns|rql{ppmvZkwmioywqoikmqdngsttpmrpwhit|kson}kssp|ynnulrmjrshrlurrrkxztuzst}i~qrtszt8ymp{{u|vyzj|vpWwA~p~A~4~zZwvu1{}Vc|ncq}_|~x}|vzsu|k}ydwv||zzt{~zy~u~~~u}~|zvq|jv~CToks}MSno|MjgX]z^MĐz~rtwqwke}zwyptURwk^poB|jw{+~g}^wgnp\{}oܴgyfkVzqrNw|s~~~rqsQ]myÜsuuO|cd]il3yTq[sowew|zZbz{{Xhx}tprYx|[wxi[XiqrbYhs}n}knv}`~y}zhhspyy{Qo~qds{rrqxbpLqpvbudztuYghlwvzgtndPoNjdmLx~pJpmz~snppdt1ZjzDž|rǡcz~^Mi~|pSotrkgmsztos_fLknv}l{b}_buH|ta=Gyx{zgppkyzz~w|f|p}hr|suS}bvuv|m~v|yxzx~y~}|_Jvwfc||WzqJv}eyeyv}xw{xyurztx~wt{t{{y|ts|~^xjx}g}qu|`y^^}u~udmscxhll[q:zjlFRppYgu{za`\hvvsh}RcNUb_j_qDlehX:Œx|ox~jsvedp.dVe__{}S^nTcyei[Yy{xfutfWg|oos{v|N}{ӉViEv{{ov~zduqpeqwvxs~ޘ{qlzkbyt}^{j{pk~w[vŲcv_xuzswYhZlrorpwg8_g\g{~lR]xpvkzogeqj`~vjm{SW|~u~n\Z{s}CF{|L|^Ygzg}kludKyzz\yzsRlNgU~}dǶrv{gr׌ljGLb{ln}Hbsuzpqxxiu{kmmy|ih{}~nvjyzuuzfrmrllyjtlxv|xojwwyp}W~sisaflp~YXEuxckiceu~Imf|tsw]h\No[Yotypąz`ypipye^ye}ykav|wzX^e}_l}qwl}fn}`VteP{e\Tiw]}aufcaum|pmRy|r|ts~zdvvS\_ғxy}{|Zbt[dyat{f`xH{ux:]l^c|tyvJ]WOZ[jiiho}}~__}{kavoqu|qqfg~rNuui|3slXujS_gRymzyztp}rf{sy\ljxfnp|{wskp~ptwKa|~yjЋpy~qxp^vvixw}xlzsd~pxzaytp~~ovt_|~{fvuk||~pHx{uyvtyx||re{~n\k~{`Dxssnzuot~ofpuhux~sju{z}|zhusu}}z}f}|g:gtYxqw}~y{[~~plr1x{hnk{|~}{~~}q}sw}zohegU}veMpl.ilq}%nVcŽo_k{rjhtw\epx}~|xmd~uXBol|{oyz_|q{tl{lwzu~}wvy~}y~~}|ty~}x|oKoGx?vrgr|~\bzchfUơɂWpxEn|}xv|y]pvpu|xtmclsuAltp}qYy_Ϧmsfg|z~{h~vw|uuw{f{tjsvN~tp_k{sj{1|x{rO}pf{w}hwt~z^yv}sOxpziRgty0kq`wÖWkna~]zb~`t}/zE]z~tnoɅi|}]asscfce|~v}MyfazvvqBg\j~ǁsbli{Kmw}l}uLnb`WW^t`ajր~hto6ioxUNu~x||}~zsv}z~z}}}~~z}t~~~~z~{{t}tw|{pwzy{}{yp~~}{xv~vw~{}}}{{zx}}yx~|~xz|ty~y}~|}}~}|~~wpr}nwyx}vw}v|z}l}vx~sm|z~y{{rw~z~|~p~|u{}{zyx}}}xquj~sxvq|{z{{|}}}~}~tuwk{~}x~|v{{m}w~s}zory|{xzqw}sww|~}~|||x|{|~zy~x~ysuw}wot|}u}{|~zru{~~|xy~}}y~~{~}v~vxs~gtr}z{~xs~zp~vw|r~q}zuu~|zuv|~zwv||}l|~xz~wwz|}z~y}uzy~sywy{|z~~}~|~}{~y}}z}uxw~x|k{}}~|x}yv{~}{oz~x}~~w{~w|y|~y|wvv}ztz}zyuw}~zvsvz~}}}|t~|}{}~~~~{~z~{vyysy}{}~|}x{twt{{}~}zz{~|u}}x|z|t~z{{~|{}}}|~|~}zv{{|x~{~{~{|w}~|zw|amy}z}z~~~~uz}u{x~xtwz{~{}}~|}{yyz}~v|yzxz}~z~|~}zywz{|u{~~~xw|wzr~{zvswsy|uu}zyzxq~{xy}|x}~|q~|}z~x~z|vux|{||vw|ysx||~xws~|~~pxz~{izq{{tz}x{~ty{~}~}|||}{zu}|r{vs~q~pyyzv~}zu{~|w{~w}}|}~yx}w{z||wikr}tox{|_x|~j~m{~v{}}~|~~lvv{ye~x}x}z}y{{y}~v}|~~w{ex{v~|}}}}|m}y~z~v}~zwv|zq~|wtv~{v}yw~x~~w}w{{|z~y}{~r{rwxz|~~zsxy}}y~}~{{|yy~}}~o{}~u~}t{~|y~y{}~{zxy||wy~tzxzt|}suz}}wz||przw~t}}}yx}~|~~~||~{|m{z|x}{|y}}{yx}}vvp~{x~zw~t}{z|wt}|twt}w~y}}|{zy~|v}z{rwu|{~zx~|~y|z~|z~zo~{}~{xy~||y|ywwpu}}yz}}k}~|~~w}zzzo|z~}|v|w{{}{|z}|}yvy|{|}z~~v|zvwzyv~wyu|x|~sq}}}}vxt}|x}xn|w}y|{~{xz~~|~x{}zrzz~}{v}~~}xyu{px}~|m~{|z{}{z}zzy~~||w~}q{zz~x~n|ui|zww{{v~rr}|}z{x}zu{{w|{|~wu~r|t|~~~z|u~wnzp~}zsmq}}s|y|}}xyyu}qy{zukuw~}r|}~{~x}{}|p}~~r}~~|r~}~~pwt~}x~o}~t}~~|}~xuyttu~|{w}zp}z}}y~v}|s}}|d~{w{}r~{ztv{t|z~vw~}mw}}||||||{x{{~v{~}v}~|}~{}w}~zx}~zl}zwty{yz~|xr~uz~wy~lsz}~v|x~}t|{~yv{~{}}|x{~y~{y|}wzw}{{wzuw|u}s{~~z~z{~t}}}}{z~|xz{|z|zxx~~|~{}wy|~{z~q|qy|}u|uuytp~{wuw{{}n}||{px~}y~}~}z~|}{{z}|}uy~|w}|}~y~y}}{{~~|~|~zz}~m{xxq|}~y|w}x~|~~qx{zxx~z|}}{y|yv|w{}yoz}y|z||~yyz|syu|{wz{~}px}x{~x~{}|t~vx}|~|z~w||}s~}}}~{vw}~~us~{{t{~y~zx{o}|~zw~yz|{{{u}|t~{~pzyu~x{{s{~{{u}y}xuy{}~y{w{~~~{y~rmy~~zyv}~vwxyx|}zx|}~j|~~~{ozzz{~|uz}~}yyy{}hvzu{}~z}~}~n|m~xr}~{uwx{{z~~vuy}~|x}~|{|}y|~||{|}}wzx}puqv~{z~w~s~}~z{zv~||}fyq|}wty}z~vz~|s|zzq|yx{wxu|zz|z{|~|s}|ywt{{z{zyvsu}k{~}yq~tyvzyxl|{~~uvt{q||}~}~z{}}}uxyx|~ox}~vwz~v}{u}w~vz~qt}xly}yx{}y{}~|zw}|t|zzx|}u~|{{|}xyyt}zz~wxwxz{~o~vwv~|~wz|w|mx}yx~px|{~tr~~ujr{v~a~}~y}}qz{v}~}|yv~~w}{z~~}h|uvwyyy{x}y~z}sz{sz{z{}}}~yx~iy~{zuyx}|}ys}|w~o}uv~ty~z{}|~~~~~}~|}w|v{||}{y~~~v|y|tz{w}y|{yz}{sryy||yts||~}{~w~zp|}~}{x|}ot~x}|~vuu|s{}{znvvwcyowyxr}}{v|vtz{{t}zo|ywx~vryys~xmu{yuzt|~x{{zpyy~zv}y~wy|ozu}~yoyq~|{||tv~~|x{z|y~uzu{r|x|{~s|wx~~~}}z|w~yjq{{z~{{~~{|nph|oz~zv~u}|z~mzxvt}|{~xw}~{}u{yu|{o|{x|z}xrz{zwn}~}~noxw~yxzwkv}||{w||}z}yv|xux|u~lw}~x}~z||mu}~}x~xo~yu~|{v~ttsxlzqvyr~~r{}x||zu}t}|yy||fyzuv}wg|~}wuqpu{u}|vw{tz}^tz~w{|~qxrt~rlhy}z}tz~x}|kxwrw~}q}ypz~~v{~{xi}twvxvbv{}zy}|vz~tsia~xzh|z}}~y|{r{}||yz||~u}xr|zuwz}x}uvwx~j{~~|{~}~|wv{u}zz}v~n}}z~wmy{w{}vx}}uxsvzys~y~owu|}zz~q~~{vxxw~{zxuz{p}xx|}r{ymy}|v~q}w}|w}|w~~}yzy|{|ww{||y}}|}|}}~~x}}}~yz~u~~|}zt|y{tu}mz||~{~~{z|smte~x~~y{{r}}ul}}t}y~r~ylf||}ty}x~|s}~}}u||zyx|w}|zz|}xe~{~}{i{~}~~~}}{x{ztxyqw}zfoqum|}k|v{{{}zv|~zt~zv{~uw{uzk{zo{y}woaqs{}s}~~wy}vsxt}y{kxp{[y{a~qzzwyzg{|s|~}x|w~{z~xwpo~w~vyuytu{s~gvx}e}y{|xntytwzxu{nuvxrq|~|t}avz}y|vzxxr}}y}owvzw|{~~u|}z}w{~p{~y~z{xy}~~}uw{|yt{j}~hxw~zopwvx|{xxyxz}wm~syz{x~}iz}~zlpz~~~}rszvw|bq|tx~{ets}{|wx|{qzz~xr|{{u~}tx|}v~pwv~|x|qzz~zx|~||z|v{|~|z}u|foyvzwx}{{zx|xzzq~}~|l~wz~}}~zyx}{zt{~y|gzy}~}{|{|yyx{}~yu~zoyyq||r{u|~ss{~x~z~~}zz||}wy{~o|{x{z{u~~~y~v~}{{qul|rxtnxy~x{~yz{{xx}y~u{v}{x|~s|y|}}k|xy|tuw{y|}zz~|~|wzwzw~~}zuv{~|{}t}p~x~py|z}z}~zxyu~{y{uy|xy}{xn|vhxu|v}uyyv|v~sr~{|~t}~{|yz~}}~vxyyt}p{|yo{s|z}{zq~zoz}~yz}~~}}~{~o|~{x~s~vt~~~r}uy{{u~ptx|~vzw||vp}{h}{}yo}oy~~ywx}|u~~u{vx|xny~{x~}~~l|~}~w}~~~||}~|||~}}|~}~|yy{zuz|}y~|y|}wyy|x~~}{}~}z~~{|v~~{~|{~}yw}{|{}~{}}~z|}|xy|y}x}}~zx~}z~w~||w~~{{}|~}{y~|x~x~|~~~z}}vuw~{|~~|s|~|~|}}x~}~~}y|z}y}|}{~|||}}~~~~{{{u}~}}z{{z~~w|w~u||txsy~z{zz|}z~~z}|}}}~|{x{|}|~~|}yv{}||t{~~||{}{~~~~{{|z|y~y}wxz|{}~~z{}x~|}|y~}zu}|v|}~{~{~}~~~|s{y}z}~~~|ex|}yy~}z~|y}w~|u~{|~~|{~y}}|}yu}~~}|~~z~x}~|{}}uy|yt~y}y}~x{xyvtyy{}x~|~}~{{~~y}~z~~~}z}~}}~|v|}}}~w{~w{}x~z|{~|}}~}~p~|}~{y}~}~~l~~~y~~}~{yw}z~~zwz|y|y{{~~q{z|{||||}~~|yu}}~}}z|~z}~z|||~|~~~|~}|z~|z~v|~t}~~~|}}}}|||u{{vz}~|}~~~z{|~{~{}}~~~{|{z}~wx}|~}~~~~}}u}~}~|}|w}~}yyx}~{y~~zy{zzw~|w|uy~}zzx}{{{~tx}|~|{s{~|{~~z~}y~|~}~|{z~}}}z~}uxzx{~~~~}t}}}}zy~~~~~~|~~~~v}x~}}~{|y~yz~}}~|}xy{{}}~~{}v}}vx|{~zwxw~|~}wz}}|~}}{}z{{y}~x}x~~u|{~|~||vy|~wz|y~|{z}}}{~}|~~|y~v}y~}}}~~~~}z|z||}~~~v|z}}r}}zy~|zz}}z|}z{z{|~}~}{z}~}}|}}yv}yyx{}}w|x~~|~}}}{~}~}{y~~{{}~x~~t~|w~~xz~m 3aU!{v1UO^Rjo-EP? `qFX_ 5isfeLd_[?`WNXgVToL&_VC!DJ+iQ!;>1I{q5kL*i1bEg~z?I{ln eX=^HJY1 ff=ff=aа= >a >а= Lff=ff=aа=@> Cü >= ffaа=`>; >bh> 33s=ff=33#>a Cа=bh>z^= >bh8> =ff=33C>aPа=bh>=/= >bhX> =ff=33c>ay<а=bh>=/= >bhx> >ff=>a|=а=bh>> >14> <>ff=>az^=а=bh>'> >14> \>ff=>az^=а=bh>G> >14> |>ff=>a=/>а=bh>g> >14> ff>ff=>a=/?>а=bh>˃> >14> ff>ff=>a=/_>а=14?˓> >14> ff>ff=>a=/>а=14?ˣ> >14> ff>ff=>a>а=14?˳> >14> ff>ff=?a>а=14?> >? ff>ff=?a>а=14 ?> >? ff>ff=?a>а=14(?> >? ff>ff=?a>а=140?> >? 33?ff= ?a>а=148?? >&? 33?ff=(?a>а=14@? ? >.? 33?ff=0?a>а=14H?? >6? 33?ff=8?a?а=14P?? >>? 33'?ff=@?a?а=14X?!? >F? 33/?ff=H?a?а=14`?)? >N? 337?ff=P?a?а=14h?1? >V? 33??ff=X?a'?а=14p?9? >^? 33G?ff=`?a/?а=14x?A? >f? 33O?ff=h?a7?а=?I? >n? 33W?ff=p?a??а=?Q? >v? 33_?ff=x?aG?а=?Y? >~? 33g?ff=ff?aO?а=?a? > ? 33o?ff=ff?aW?а=?i? > ?L ff=ff= Cü= >a@>а=LLff=ff= Cü=@> Cü@>=Lff Cü=`>;@>bh>L33s=ff=33#> Cü C=bh>z^=@>bh8>L=ff=33C> CüP=bh>=/=@>bhX>L=ff=33c> Cüy<=bh>=/=@>bhx>L>ff=> Cü|==bh>>@>14>L<>ff=> Cüz^==bh>'>@>14>L\>ff=> Cüz^==bh>G>@>14>L|>ff=> Cü=/>=bh>g>@>14>Lff>ff=> Cü=/?>=bh>˃>@>14>Lff>ff=> Cü=/_>=14?˓>@>14>Lff>ff=> Cü=/>=14?ˣ>@>14>Lff>ff=> Cü>=14?˳>@>14>Lff>ff=? Cü>=14?>@>?Lff>ff=? Cü>=14 ?>@>?Lff>ff=? Cü>=14(?>@>?Lff>ff=? Cü>=140?>@>?L33?ff= ? Cü>=148??@>&?L33?ff=(? Cü>=14@? ?@>.?L33?ff=0? Cü>=14H??@>6?L33?ff=8? Cü?=14P??@>>?L33'?ff=@? Cü?=14X?!?@>F?L33/?ff=H? Cü?=14`?)?@>N?L337?ff=P? Cü?=14h?1?@>V?L33??ff=X? Cü'?=14p?9?@>^?L33G?ff=`? Cü/?=14x?A?@>f?L33O?ff=h? Cü7?=?I?@>n?L33W?ff=p? Cü??=?Q?@>v?L33_?ff=x? CüG?=?Y?@>~?L33g?ff=ff? CüO?=?a?@> ?L33o?ff=ff? CüW?=?i?@> ?ff< 33>ff=;bh> >a`>а=ffff=;bh>@> Cü`>=ff33>;bh>`>;`>bh>ff<33s=33>33#>; Cbh>bh>z^=`>bh8>ff<=33>33C>;Pbh>bh>=/=`>bhX>ff<=33>33c>;ybh>=/=`>bhx>ff<>33>>;|=bh>bh>>`>14>ff<<>33>>;z^=bh>bh>'>`>14>ff<\>33>>;z^=bh>bh>G>`>14>ff<|>33>>;=/>bh>bh>g>`>14>ff33>>;=/?>bh>bh>˃>`>14>ff33>>;=/_>bh>14?˓>`>14>ff33>>;=/>bh>14?ˣ>`>14>ff33>>;>bh>14?˳>`>14>ff33>?;>bh>14?>`>?ff33>?;>bh>14 ?>`>?ff33>?;>bh>14(?>`>?ff33>?;>bh>140?>`>?ff<33?33> ?;>bh>148??`>&?ff<33?33>(?;>bh>14@? ?`>.?ff<33?33>0?;>bh>14H??`>6?ff<33?33>8?;?bh>14P??`>>?ff<33'?33>@?;?bh>14X?!?`>F?ff<33/?33>H?;?bh>14`?)?`>N?ff<337?33>P?;?bh>14h?1?`>V?ff<33??33>X?;'?bh>14p?9?`>^?ff<33G?33>`?;/?bh>14x?A?`>f?ff<33O?33>h?;7?bh>?I?`>n?ff<33W?33>p?;??bh>?Q?`>v?ff<33_?33>x?;G?bh>?Y?`>~?ff<33g?33>ff?;O?bh>?a?`> ?ff<33o?33>ff?;W?bh>?i?`> ?33s= 33#>ff=z^=bh8> > Cabh>а=33s=L33#>ff=z^=bh8>@> C Cübh>=33s=ff<33#>33>z^=bh8>`> C;bh>bh>33s=33s=33#>33#>z^= Cbh8>bh> Cz^=bh>bh8>33s==33#>33C>z^=Pbh8>bh> C=/=bh>bhX>33s==33#>33c>z^=ybh> C=/=bh>bhx>33s=>33#>>z^=|=bh8>bh> C>bh>14>33s=<>33#>>z^=z^=bh8>bh> C'>bh>14>33s=\>33#>>z^=z^=bh8>bh> CG>bh>14>33s=|>33#>>z^==/>bh8>bh> Cg>bh>14>33s=ff>33#>>z^==/?>bh8>bh> C˃>bh>14>33s=ff>33#>>z^==/_>bh8>14? C˓>bh>14>33s=ff>33#>>z^==/>bh8>14? Cˣ>bh>14>33s=ff>33#>>z^=>bh8>14? C˳>bh>14>33s=ff>33#>?z^=>bh8>14? C>bh>?33s=ff>33#>?z^=>bh8>14 ? C>bh>?33s=ff>33#>?z^=>bh8>14(? C>bh>?33s=ff>33#>?z^=>bh8>140? C>bh>?33s=33?33#> ?z^=>bh8>148? C?bh>&?33s=33?33#>(?z^=>bh8>14@? C ?bh>.?33s=33?33#>0?z^=>bh8>14H? C?bh>6?33s=33?33#>8?z^=?bh8>14P? C?bh>>?33s=33'?33#>@?z^=?bh8>14X? C!?bh>F?33s=33/?33#>H?z^=?bh8>14`? C)?bh>N?33s=337?33#>P?z^=?bh8>14h? C1?bh>V?33s=33??33#>X?z^='?bh8>14p? C9?bh>^?33s=33G?33#>`?z^=/?bh8>14x? CA?bh>f?33s=33O?33#>h?z^=7?bh8>? CI?bh>n?33s=33W?33#>p?z^=??bh8>? CQ?bh>v?33s=33_?33#>x?z^=G?bh8>? CY?bh>~?33s=33g?33#>ff?z^=O?bh8>? Ca?bh> ?33s=33o?33#>ff?z^=W?bh8>? Ci?bh> ?= 33C>ff==/=bhX> >Pabh>а==L33C>ff==/=bhX>@>P Cübh>==ff<33C>33>=/=bhX>`>P;bh>bh>=33s=33C>33#>=/= CbhX>bh>Pz^=bh>bh8>==33C>33C>=/=PbhX>bh>P=/=bh>bhX>==33C>33c>=/=ybh>P=/=bh>bhx>=>33C>>=/=|=bhX>bh>P>bh>14>=<>33C>>=/=z^=bhX>bh>P'>bh>14>=\>33C>>=/=z^=bhX>bh>PG>bh>14>=|>33C>>=/==/>bhX>bh>Pg>bh>14>=ff>33C>>=/==/?>bhX>bh>P˃>bh>14>=ff>33C>>=/==/_>bhX>14?P˓>bh>14>=ff>33C>>=/==/>bhX>14?Pˣ>bh>14>=ff>33C>>=/=>bhX>14?P˳>bh>14>=ff>33C>?=/=>bhX>14?P>bh>?=ff>33C>?=/=>bhX>14 ?P>bh>?=ff>33C>?=/=>bhX>14(?P>bh>?=ff>33C>?=/=>bhX>140?P>bh>?=33?33C> ?=/=>bhX>148?P?bh>&?=33?33C>(?=/=>bhX>14@?P ?bh>.?=33?33C>0?=/=>bhX>14H?P?bh>6?=33?33C>8?=/=?bhX>14P?P?bh>>?=33'?33C>@?=/=?bhX>14X?P!?bh>F?=33/?33C>H?=/=?bhX>14`?P)?bh>N?=337?33C>P?=/=?bhX>14h?P1?bh>V?=33??33C>X?=/='?bhX>14p?P9?bh>^?=33G?33C>`?=/=/?bhX>14x?PA?bh>f?=33O?33C>h?=/=7?bhX>?PI?bh>n?=33W?33C>p?=/=??bhX>?PQ?bh>v?=33_?33C>x?=/=G?bhX>?PY?bh>~?=33g?33C>ff?=/=O?bhX>?Pa?bh> ?=33o?33C>ff?=/=W?bhX>?Pi?bh> ?= 33c>ff==/=bhx> >yа==L33c>ff==/=bhx>@>y< Cübh>==ff<33c>33>=/=bhx>`>y<;bh>bh>=33s=33c>33#>=/= Cbhx>bh>ybh8>==33c>33C>=/=Pbhx>bh>y<=/=bh>bhX>==33c>33c>=/=ybh>y<=/=bh>bhx>=>33c>>=/=|=bhx>bh>y<>bh>14>=<>33c>>=/=z^=bhx>bh>y<'>bh>14>=\>33c>>=/=z^=bhx>bh>ybh>14>=|>33c>>=/==/>bhx>bh>ybh>14>=ff>33c>>=/==/?>bhx>bh>y<˃>bh>14>=ff>33c>>=/==/_>bhx>14?y<˓>bh>14>=ff>33c>>=/==/>bhx>14?y<ˣ>bh>14>=ff>33c>>=/=>bhx>14?y<˳>bh>14>=ff>33c>?=/=>bhx>14?y<>bh>?=ff>33c>?=/=>bhx>14 ?y<>bh>?=ff>33c>?=/=>bhx>14(?y<>bh>?=ff>33c>?=/=>bhx>140?y<>bh>?=33?33c> ?=/=>bhx>148?y<?bh>&?=33?33c>(?=/=>bhx>14@?y< ?bh>.?=33?33c>0?=/=>bhx>14H?y<?bh>6?=33?33c>8?=/=?bhx>14P?y<?bh>>?=33'?33c>@?=/=?bhx>14X?yF?=33/?33c>H?=/=?bhx>14`?y<)?bh>N?=337?33c>P?=/=?bhx>14h?y<1?bh>V?=33??33c>X?=/='?bhx>14p?y<9?bh>^?=33G?33c>`?=/=/?bhx>14x?yf?=33O?33c>h?=/=7?bhx>?yn?=33W?33c>p?=/=??bhx>?yv?=33_?33c>x?=/=G?bhx>?y~?=33g?33c>ff?=/=O?bhx>?y ?=33o?33c>ff?=/=W?bhx>?y ?> >ff=>14> >|=abh>а=>L>ff=>14>@>|= Cübh>=>ff<>33>>14>`>|=;bh>bh>>33s=>33#>> C14>bh>|=z^=bh>bh8>>=>33C>>P14>bh>|==/=bh>bhX>>=>33c>>y<14>bh>|==/=bh>bhx>>>>>>|=14>bh>|=>bh>14>><>>>>z^=14>bh>|='>bh>14>>\>>>>z^=14>bh>|=G>bh>14>>|>>>>=/>14>bh>|=g>bh>14>>ff>>>>=/?>14>bh>|=˃>bh>14>>ff>>>>=/_>14>14?|=˓>bh>14>>ff>>>>=/>14>14?|=ˣ>bh>14>>ff>>>>>14>14?|=˳>bh>14>>ff>>?>>14>14?|=>bh>?>ff>>?>>14>14 ?|=>bh>?>ff>>?>>14>14(?|=>bh>?>ff>>?>>14>140?|=>bh>?>33?> ?>>14>148?|=?bh>&?>33?>(?>>14>14@?|= ?bh>.?>33?>0?>>14>14H?|=?bh>6?>33?>8?>?14>14P?|=?bh>>?>33'?>@?>?14>14X?|=!?bh>F?>33/?>H?>?14>14`?|=)?bh>N?>337?>P?>?14>14h?|=1?bh>V?>33??>X?>'?14>14p?|=9?bh>^?>33G?>`?>/?14>14x?|=A?bh>f?>33O?>h?>7?14>?|=I?bh>n?>33W?>p?>??14>?|=Q?bh>v?>33_?>x?>G?14>?|=Y?bh>~?>33g?>ff?>O?14>?|=a?bh> ?>33o?>ff?>W?14>?|=i?bh> ?<> >ff='>14> >z^=abh>а=<>L>ff='>14>@>z^= Cübh>=<>ff<>33>'>14>`>z^=;bh>bh><>33s=>33#>'> C14>bh>z^=z^=bh>bh8><>=>33C>'>P14>bh>z^==/=bh>bhX><>=>33c>'>y<14>bh>z^==/=bh>bhx><>>>>'>|=14>bh>z^=>bh>14><><>>>'>z^=14>bh>z^='>bh>14><>\>>>'>z^=14>bh>z^=G>bh>14><>|>>>'>=/>14>bh>z^=g>bh>14><>ff>>>'>=/?>14>bh>z^=˃>bh>14><>ff>>>'>=/_>14>14?z^=˓>bh>14><>ff>>>'>=/>14>14?z^=ˣ>bh>14><>ff>>>'>>14>14?z^=˳>bh>14><>ff>>?'>>14>14?z^=>bh>?<>ff>>?'>>14>14 ?z^=>bh>?<>ff>>?'>>14>14(?z^=>bh>?<>ff>>?'>>14>140?z^=>bh>?<>33?> ?'>>14>148?z^=?bh>&?<>33?>(?'>>14>14@?z^= ?bh>.?<>33?>0?'>>14>14H?z^=?bh>6?<>33?>8?'>?14>14P?z^=?bh>>?<>33'?>@?'>?14>14X?z^=!?bh>F?<>33/?>H?'>?14>14`?z^=)?bh>N?<>337?>P?'>?14>14h?z^=1?bh>V?<>33??>X?'>'?14>14p?z^=9?bh>^?<>33G?>`?'>/?14>14x?z^=A?bh>f?<>33O?>h?'>7?14>?z^=I?bh>n?<>33W?>p?'>??14>?z^=Q?bh>v?<>33_?>x?'>G?14>?z^=Y?bh>~?<>33g?>ff?'>O?14>?z^=a?bh> ?<>33o?>ff?'>W?14>?z^=i?bh> ?\> >ff=G>14> >z^=abh>а=\>L>ff=G>14>@>z^= Cübh>=\>ff<>33>G>14>`>z^=;bh>bh>\>33s=>33#>G> C14>bh>z^=z^=bh>bh8>\>=>33C>G>P14>bh>z^==/=bh>bhX>\>=>33c>G>y<14>bh>z^==/=bh>bhx>\>>>>G>|=14>bh>z^=>bh>14>\><>>>G>z^=14>bh>z^='>bh>14>\>\>>>G>z^=14>bh>z^=G>bh>14>\>|>>>G>=/>14>bh>z^=g>bh>14>\>ff>>>G>=/?>14>bh>z^=˃>bh>14>\>ff>>>G>=/_>14>14?z^=˓>bh>14>\>ff>>>G>=/>14>14?z^=ˣ>bh>14>\>ff>>>G>>14>14?z^=˳>bh>14>\>ff>>?G>>14>14?z^=>bh>?\>ff>>?G>>14>14 ?z^=>bh>?\>ff>>?G>>14>14(?z^=>bh>?\>ff>>?G>>14>140?z^=>bh>?\>33?> ?G>>14>148?z^=?bh>&?\>33?>(?G>>14>14@?z^= ?bh>.?\>33?>0?G>>14>14H?z^=?bh>6?\>33?>8?G>?14>14P?z^=?bh>>?\>33'?>@?G>?14>14X?z^=!?bh>F?\>33/?>H?G>?14>14`?z^=)?bh>N?\>337?>P?G>?14>14h?z^=1?bh>V?\>33??>X?G>'?14>14p?z^=9?bh>^?\>33G?>`?G>/?14>14x?z^=A?bh>f?\>33O?>h?G>7?14>?z^=I?bh>n?\>33W?>p?G>??14>?z^=Q?bh>v?\>33_?>x?G>G?14>?z^=Y?bh>~?\>33g?>ff?G>O?14>?z^=a?bh> ?\>33o?>ff?G>W?14>?z^=i?bh> ?|> >ff=g>14> >=/>abh>а=|>L>ff=g>14>@>=/> Cübh>=|>ff<>33>g>14>`>=/>;bh>bh>|>33s=>33#>g> C14>bh>=/>z^=bh>bh8>|>=>33C>g>P14>bh>=/>=/=bh>bhX>|>=>33c>g>y<14>bh>=/>=/=bh>bhx>|>>>>g>|=14>bh>=/>>bh>14>|><>>>g>z^=14>bh>=/>'>bh>14>|>\>>>g>z^=14>bh>=/>G>bh>14>|>|>>>g>=/>14>bh>=/>g>bh>14>|>ff>>>g>=/?>14>bh>=/>˃>bh>14>|>ff>>>g>=/_>14>14?=/>˓>bh>14>|>ff>>>g>=/>14>14?=/>ˣ>bh>14>|>ff>>>g>>14>14?=/>˳>bh>14>|>ff>>?g>>14>14?=/>>bh>?|>ff>>?g>>14>14 ?=/>>bh>?|>ff>>?g>>14>14(?=/>>bh>?|>ff>>?g>>14>140?=/>>bh>?|>33?> ?g>>14>148?=/>?bh>&?|>33?>(?g>>14>14@?=/> ?bh>.?|>33?>0?g>>14>14H?=/>?bh>6?|>33?>8?g>?14>14P?=/>?bh>>?|>33'?>@?g>?14>14X?=/>!?bh>F?|>33/?>H?g>?14>14`?=/>)?bh>N?|>337?>P?g>?14>14h?=/>1?bh>V?|>33??>X?g>'?14>14p?=/>9?bh>^?|>33G?>`?g>/?14>14x?=/>A?bh>f?|>33O?>h?g>7?14>?=/>I?bh>n?|>33W?>p?g>??14>?=/>Q?bh>v?|>33_?>x?g>G?14>?=/>Y?bh>~?|>33g?>ff?g>O?14>?=/>a?bh> ?|>33o?>ff?g>W?14>?=/>i?bh> ?ff> >ff=˃>14> >=/?>abh>а=ff>L>ff=˃>14>@>=/?> Cübh>=ff>ff<>33>˃>14>`>=/?>;bh>bh>ff>33s=>33#>˃> C14>bh>=/?>z^=bh>bh8>ff>=>33C>˃>P14>bh>=/?>=/=bh>bhX>ff>=>33c>˃>y<14>bh>=/?>=/=bh>bhx>ff>>>>˃>|=14>bh>=/?>>bh>14>ff><>>>˃>z^=14>bh>=/?>'>bh>14>ff>\>>>˃>z^=14>bh>=/?>G>bh>14>ff>|>>>˃>=/>14>bh>=/?>g>bh>14>ff>ff>>>˃>=/?>14>bh>=/?>˃>bh>14>ff>ff>>>˃>=/_>14>14?=/?>˓>bh>14>ff>ff>>>˃>=/>14>14?=/?>ˣ>bh>14>ff>ff>>>˃>>14>14?=/?>˳>bh>14>ff>ff>>?˃>>14>14?=/?>>bh>?ff>ff>>?˃>>14>14 ?=/?>>bh>?ff>ff>>?˃>>14>14(?=/?>>bh>?ff>ff>>?˃>>14>140?=/?>>bh>?ff>33?> ?˃>>14>148?=/?>?bh>&?ff>33?>(?˃>>14>14@?=/?> ?bh>.?ff>33?>0?˃>>14>14H?=/?>?bh>6?ff>33?>8?˃>?14>14P?=/?>?bh>>?ff>33'?>@?˃>?14>14X?=/?>!?bh>F?ff>33/?>H?˃>?14>14`?=/?>)?bh>N?ff>337?>P?˃>?14>14h?=/?>1?bh>V?ff>33??>X?˃>'?14>14p?=/?>9?bh>^?ff>33G?>`?˃>/?14>14x?=/?>A?bh>f?ff>33O?>h?˃>7?14>?=/?>I?bh>n?ff>33W?>p?˃>??14>?=/?>Q?bh>v?ff>33_?>x?˃>G?14>?=/?>Y?bh>~?ff>33g?>ff?˃>O?14>?=/?>a?bh> ?ff>33o?>ff?˃>W?14>?=/?>i?bh> ?ff> >ff=˓>14> >=/_>a14?а=ff>L>ff=˓>14>@>=/_> Cü14?=ff>ff<>33>˓>14>`>=/_>;14?bh>ff>33s=>33#>˓> C14>bh>=/_>z^=14?bh8>ff>=>33C>˓>P14>bh>=/_>=/=14?bhX>ff>=>33c>˓>y<14>bh>=/_>=/=14?bhx>ff>>>>˓>|=14>bh>=/_>>14?14>ff><>>>˓>z^=14>bh>=/_>'>14?14>ff>\>>>˓>z^=14>bh>=/_>G>14?14>ff>|>>>˓>=/>14>bh>=/_>g>14?14>ff>ff>>>˓>=/?>14>bh>=/_>˃>14?14>ff>ff>>>˓>=/_>14>14?=/_>˓>14?14>ff>ff>>>˓>=/>14>14?=/_>ˣ>14?14>ff>ff>>>˓>>14>14?=/_>˳>14?14>ff>ff>>?˓>>14>14?=/_>>14??ff>ff>>?˓>>14>14 ?=/_>>14??ff>ff>>?˓>>14>14(?=/_>>14??ff>ff>>?˓>>14>140?=/_>>14??ff>33?> ?˓>>14>148?=/_>?14?&?ff>33?>(?˓>>14>14@?=/_> ?14?.?ff>33?>0?˓>>14>14H?=/_>?14?6?ff>33?>8?˓>?14>14P?=/_>?14?>?ff>33'?>@?˓>?14>14X?=/_>!?14?F?ff>33/?>H?˓>?14>14`?=/_>)?14?N?ff>337?>P?˓>?14>14h?=/_>1?14?V?ff>33??>X?˓>'?14>14p?=/_>9?14?^?ff>33G?>`?˓>/?14>14x?=/_>A?14?f?ff>33O?>h?˓>7?14>?=/_>I?14?n?ff>33W?>p?˓>??14>?=/_>Q?14?v?ff>33_?>x?˓>G?14>?=/_>Y?14?~?ff>33g?>ff?˓>O?14>?=/_>a?14? ?ff>33o?>ff?˓>W?14>?=/_>i?14? ?ff> >ff=ˣ>14> >=/>a14?а=ff>L>ff=ˣ>14>@>=/> Cü14?=ff>ff<>33>ˣ>14>`>=/>;14?bh>ff>33s=>33#>ˣ> C14>bh>=/>z^=14?bh8>ff>=>33C>ˣ>P14>bh>=/>=/=14?bhX>ff>=>33c>ˣ>y<14>bh>=/>=/=14?bhx>ff>>>>ˣ>|=14>bh>=/>>14?14>ff><>>>ˣ>z^=14>bh>=/>'>14?14>ff>\>>>ˣ>z^=14>bh>=/>G>14?14>ff>|>>>ˣ>=/>14>bh>=/>g>14?14>ff>ff>>>ˣ>=/?>14>bh>=/>˃>14?14>ff>ff>>>ˣ>=/_>14>14?=/>˓>14?14>ff>ff>>>ˣ>=/>14>14?=/>ˣ>14?14>ff>ff>>>ˣ>>14>14?=/>˳>14?14>ff>ff>>?ˣ>>14>14?=/>>14??ff>ff>>?ˣ>>14>14 ?=/>>14??ff>ff>>?ˣ>>14>14(?=/>>14??ff>ff>>?ˣ>>14>140?=/>>14??ff>33?> ?ˣ>>14>148?=/>?14?&?ff>33?>(?ˣ>>14>14@?=/> ?14?.?ff>33?>0?ˣ>>14>14H?=/>?14?6?ff>33?>8?ˣ>?14>14P?=/>?14?>?ff>33'?>@?ˣ>?14>14X?=/>!?14?F?ff>33/?>H?ˣ>?14>14`?=/>)?14?N?ff>337?>P?ˣ>?14>14h?=/>1?14?V?ff>33??>X?ˣ>'?14>14p?=/>9?14?^?ff>33G?>`?ˣ>/?14>14x?=/>A?14?f?ff>33O?>h?ˣ>7?14>?=/>I?14?n?ff>33W?>p?ˣ>??14>?=/>Q?14?v?ff>33_?>x?ˣ>G?14>?=/>Y?14?~?ff>33g?>ff?ˣ>O?14>?=/>a?14? ?ff>33o?>ff?ˣ>W?14>?=/>i?14? ?ff> >ff=˳>14> >>a14?а=ff>L>ff=˳>14>@>> Cü14?=ff>ff<>33>˳>14>`>>;14?bh>ff>33s=>33#>˳> C14>bh>>z^=14?bh8>ff>=>33C>˳>P14>bh>>=/=14?bhX>ff>=>33c>˳>y<14>bh>>=/=14?bhx>ff>>>>˳>|=14>bh>>>14?14>ff><>>>˳>z^=14>bh>>'>14?14>ff>\>>>˳>z^=14>bh>>G>14?14>ff>|>>>˳>=/>14>bh>>g>14?14>ff>ff>>>˳>=/?>14>bh>>˃>14?14>ff>ff>>>˳>=/_>14>14?>˓>14?14>ff>ff>>>˳>=/>14>14?>ˣ>14?14>ff>ff>>>˳>>14>14?>˳>14?14>ff>ff>>?˳>>14>14?>>14??ff>ff>>?˳>>14>14 ?>>14??ff>ff>>?˳>>14>14(?>>14??ff>ff>>?˳>>14>140?>>14??ff>33?> ?˳>>14>148?>?14?&?ff>33?>(?˳>>14>14@?> ?14?.?ff>33?>0?˳>>14>14H?>?14?6?ff>33?>8?˳>?14>14P?>?14?>?ff>33'?>@?˳>?14>14X?>!?14?F?ff>33/?>H?˳>?14>14`?>)?14?N?ff>337?>P?˳>?14>14h?>1?14?V?ff>33??>X?˳>'?14>14p?>9?14?^?ff>33G?>`?˳>/?14>14x?>A?14?f?ff>33O?>h?˳>7?14>?>I?14?n?ff>33W?>p?˳>??14>?>Q?14?v?ff>33_?>x?˳>G?14>?>Y?14?~?ff>33g?>ff?˳>O?14>?>a?14? ?ff>33o?>ff?˳>W?14>?>i?14? ?ff> ?ff=>? >>a14?а=ff>L?ff=>?@>> Cü14?=ff>ff<?33>>?`>>;14?bh>ff>33s=?33#>> C?bh>>z^=14?bh8>ff>=?33C>>P?bh>>=/=14?bhX>ff>=?33c>>y<?bh>>=/=14?bhx>ff>>?>>|=?bh>>>14?14>ff><>?>>z^=?bh>>'>14?14>ff>\>?>>z^=?bh>>G>14?14>ff>|>?>>=/>?bh>>g>14?14>ff>ff>?>>=/?>?bh>>˃>14?14>ff>ff>?>>=/_>?14?>˓>14?14>ff>ff>?>>=/>?14?>ˣ>14?14>ff>ff>?>>>?14?>˳>14?14>ff>ff>??>>?14?>>14??ff>ff>??>>?14 ?>>14??ff>ff>??>>?14(?>>14??ff>ff>??>>?140?>>14??ff>33?? ?>>?148?>?14?&?ff>33??(?>>?14@?> ?14?.?ff>33??0?>>?14H?>?14?6?ff>33??8?>??14P?>?14?>?ff>33'??@?>??14X?>!?14?F?ff>33/??H?>??14`?>)?14?N?ff>337??P?>??14h?>1?14?V?ff>33???X?>'??14p?>9?14?^?ff>33G??`?>/??14x?>A?14?f?ff>33O??h?>7???>I?14?n?ff>33W??p?>????>Q?14?v?ff>33_??x?>G???>Y?14?~?ff>33g??ff?>O???>a?14? ?ff>33o??ff?>W???>i?14? ?ff> ?ff=>? >>a14 ?а=ff>L?ff=>?@>> Cü14 ?=ff>ff<?33>>?`>>;14 ?bh>ff>33s=?33#>> C?bh>>z^=14 ?bh8>ff>=?33C>>P?bh>>=/=14 ?bhX>ff>=?33c>>y<?bh>>=/=14 ?bhx>ff>>?>>|=?bh>>>14 ?14>ff><>?>>z^=?bh>>'>14 ?14>ff>\>?>>z^=?bh>>G>14 ?14>ff>|>?>>=/>?bh>>g>14 ?14>ff>ff>?>>=/?>?bh>>˃>14 ?14>ff>ff>?>>=/_>?14?>˓>14 ?14>ff>ff>?>>=/>?14?>ˣ>14 ?14>ff>ff>?>>>?14?>˳>14 ?14>ff>ff>??>>?14?>>14 ??ff>ff>??>>?14 ?>>14 ??ff>ff>??>>?14(?>>14 ??ff>ff>??>>?140?>>14 ??ff>33?? ?>>?148?>?14 ?&?ff>33??(?>>?14@?> ?14 ?.?ff>33??0?>>?14H?>?14 ?6?ff>33??8?>??14P?>?14 ?>?ff>33'??@?>??14X?>!?14 ?F?ff>33/??H?>??14`?>)?14 ?N?ff>337??P?>??14h?>1?14 ?V?ff>33???X?>'??14p?>9?14 ?^?ff>33G??`?>/??14x?>A?14 ?f?ff>33O??h?>7???>I?14 ?n?ff>33W??p?>????>Q?14 ?v?ff>33_??x?>G???>Y?14 ?~?ff>33g??ff?>O???>a?14 ? ?ff>33o??ff?>W???>i?14 ? ?ff> ?ff=>? >>a14(?а=ff>L?ff=>?@>> Cü14(?=ff>ff<?33>>?`>>;14(?bh>ff>33s=?33#>> C?bh>>z^=14(?bh8>ff>=?33C>>P?bh>>=/=14(?bhX>ff>=?33c>>y<?bh>>=/=14(?bhx>ff>>?>>|=?bh>>>14(?14>ff><>?>>z^=?bh>>'>14(?14>ff>\>?>>z^=?bh>>G>14(?14>ff>|>?>>=/>?bh>>g>14(?14>ff>ff>?>>=/?>?bh>>˃>14(?14>ff>ff>?>>=/_>?14?>˓>14(?14>ff>ff>?>>=/>?14?>ˣ>14(?14>ff>ff>?>>>?14?>˳>14(?14>ff>ff>??>>?14?>>14(??ff>ff>??>>?14 ?>>14(??ff>ff>??>>?14(?>>14(??ff>ff>??>>?140?>>14(??ff>33?? ?>>?148?>?14(?&?ff>33??(?>>?14@?> ?14(?.?ff>33??0?>>?14H?>?14(?6?ff>33??8?>??14P?>?14(?>?ff>33'??@?>??14X?>!?14(?F?ff>33/??H?>??14`?>)?14(?N?ff>337??P?>??14h?>1?14(?V?ff>33???X?>'??14p?>9?14(?^?ff>33G??`?>/??14x?>A?14(?f?ff>33O??h?>7???>I?14(?n?ff>33W??p?>????>Q?14(?v?ff>33_??x?>G???>Y?14(?~?ff>33g??ff?>O???>a?14(? ?ff>33o??ff?>W???>i?14(? ?ff> ?ff=>? >>a140?а=ff>L?ff=>?@>> Cü140?=ff>ff<?33>>?`>>;140?bh>ff>33s=?33#>> C?bh>>z^=140?bh8>ff>=?33C>>P?bh>>=/=140?bhX>ff>=?33c>>y<?bh>>=/=140?bhx>ff>>?>>|=?bh>>>140?14>ff><>?>>z^=?bh>>'>140?14>ff>\>?>>z^=?bh>>G>140?14>ff>|>?>>=/>?bh>>g>140?14>ff>ff>?>>=/?>?bh>>˃>140?14>ff>ff>?>>=/_>?14?>˓>140?14>ff>ff>?>>=/>?14?>ˣ>140?14>ff>ff>?>>>?14?>˳>140?14>ff>ff>??>>?14?>>140??ff>ff>??>>?14 ?>>140??ff>ff>??>>?14(?>>140??ff>ff>??>>?140?>>140??ff>33?? ?>>?148?>?140?&?ff>33??(?>>?14@?> ?140?.?ff>33??0?>>?14H?>?140?6?ff>33??8?>??14P?>?140?>?ff>33'??@?>??14X?>!?140?F?ff>33/??H?>??14`?>)?140?N?ff>337??P?>??14h?>1?140?V?ff>33???X?>'??14p?>9?140?^?ff>33G??`?>/??14x?>A?140?f?ff>33O??h?>7???>I?140?n?ff>33W??p?>????>Q?140?v?ff>33_??x?>G???>Y?140?~?ff>33g??ff?>O???>a?140? ?ff>33o??ff?>W???>i?140? ?33? ?ff=?&? >>a148?а=33?L ?ff=?&?@>> Cü148?=33?ff< ?33>?&?`>>;148?bh>33?33s= ?33#>? C&?bh>>z^=148?bh8>33?= ?33C>?P&?bh>>=/=148?bhX>33?= ?33c>?y<&?bh>>=/=148?bhx>33?> ?>?|=&?bh>>>148?14>33?<> ?>?z^=&?bh>>'>148?14>33?\> ?>?z^=&?bh>>G>148?14>33?|> ?>?=/>&?bh>>g>148?14>33?ff> ?>?=/?>&?bh>>˃>148?14>33?ff> ?>?=/_>&?14?>˓>148?14>33?ff> ?>?=/>&?14?>ˣ>148?14>33?ff> ?>?>&?14?>˳>148?14>33?ff> ???>&?14?>>148??33?ff> ???>&?14 ?>>148??33?ff> ???>&?14(?>>148??33?ff> ???>&?140?>>148??33?33? ? ??>&?148?>?148?&?33?33? ?(??>&?14@?> ?148?.?33?33? ?0??>&?14H?>?148?6?33?33? ?8???&?14P?>?148?>?33?33'? ?@???&?14X?>!?148?F?33?33/? ?H???&?14`?>)?148?N?33?337? ?P???&?14h?>1?148?V?33?33?? ?X??'?&?14p?>9?148?^?33?33G? ?`??/?&?14x?>A?148?f?33?33O? ?h??7?&??>I?148?n?33?33W? ?p????&??>Q?148?v?33?33_? ?x??G?&??>Y?148?~?33?33g? ?ff??O?&??>a?148? ?33?33o? ?ff??W?&??>i?148? ?33? (?ff= ?.? >>a14@?а=33?L(?ff= ?.?@>> Cü14@?=33?ff<(?33> ?.?`>>;14@?bh>33?33s=(?33#> ? C.?bh>>z^=14@?bh8>33?=(?33C> ?P.?bh>>=/=14@?bhX>33?=(?33c> ?y<.?bh>>=/=14@?bhx>33?>(?> ?|=.?bh>>>14@?14>33?<>(?> ?z^=.?bh>>'>14@?14>33?\>(?> ?z^=.?bh>>G>14@?14>33?|>(?> ?=/>.?bh>>g>14@?14>33?ff>(?> ?=/?>.?bh>>˃>14@?14>33?ff>(?> ?=/_>.?14?>˓>14@?14>33?ff>(?> ?=/>.?14?>ˣ>14@?14>33?ff>(?> ?>.?14?>˳>14@?14>33?ff>(?? ?>.?14?>>14@??33?ff>(?? ?>.?14 ?>>14@??33?ff>(?? ?>.?14(?>>14@??33?ff>(?? ?>.?140?>>14@??33?33?(? ? ?>.?148?>?14@?&?33?33?(?(? ?>.?14@?> ?14@?.?33?33?(?0? ?>.?14H?>?14@?6?33?33?(?8? ??.?14P?>?14@?>?33?33'?(?@? ??.?14X?>!?14@?F?33?33/?(?H? ??.?14`?>)?14@?N?33?337?(?P? ??.?14h?>1?14@?V?33?33??(?X? ?'?.?14p?>9?14@?^?33?33G?(?`? ?/?.?14x?>A?14@?f?33?33O?(?h? ?7?.??>I?14@?n?33?33W?(?p? ???.??>Q?14@?v?33?33_?(?x? ?G?.??>Y?14@?~?33?33g?(?ff? ?O?.??>a?14@? ?33?33o?(?ff? ?W?.??>i?14@? ?33? 0?ff=?6? >>a14H?а=33?L0?ff=?6?@>> Cü14H?=33?ff<0?33>?6?`>>;14H?bh>33?33s=0?33#>? C6?bh>>z^=14H?bh8>33?=0?33C>?P6?bh>>=/=14H?bhX>33?=0?33c>?y<6?bh>>=/=14H?bhx>33?>0?>?|=6?bh>>>14H?14>33?<>0?>?z^=6?bh>>'>14H?14>33?\>0?>?z^=6?bh>>G>14H?14>33?|>0?>?=/>6?bh>>g>14H?14>33?ff>0?>?=/?>6?bh>>˃>14H?14>33?ff>0?>?=/_>6?14?>˓>14H?14>33?ff>0?>?=/>6?14?>ˣ>14H?14>33?ff>0?>?>6?14?>˳>14H?14>33?ff>0???>6?14?>>14H??33?ff>0???>6?14 ?>>14H??33?ff>0???>6?14(?>>14H??33?ff>0???>6?140?>>14H??33?33?0? ??>6?148?>?14H?&?33?33?0?(??>6?14@?> ?14H?.?33?33?0?0??>6?14H?>?14H?6?33?33?0?8???6?14P?>?14H?>?33?33'?0?@???6?14X?>!?14H?F?33?33/?0?H???6?14`?>)?14H?N?33?337?0?P???6?14h?>1?14H?V?33?33??0?X??'?6?14p?>9?14H?^?33?33G?0?`??/?6?14x?>A?14H?f?33?33O?0?h??7?6??>I?14H?n?33?33W?0?p????6??>Q?14H?v?33?33_?0?x??G?6??>Y?14H?~?33?33g?0?ff??O?6??>a?14H? ?33?33o?0?ff??W?6??>i?14H? ?33? 8?ff=?>? >?a14P?а=33?L8?ff=?>?@>? Cü14P?=33?ff<8?33>?>?`>?;14P?bh>33?33s=8?33#>? C>?bh>?z^=14P?bh8>33?=8?33C>?P>?bh>?=/=14P?bhX>33?=8?33c>?y<>?bh>?=/=14P?bhx>33?>8?>?|=>?bh>?>14P?14>33?<>8?>?z^=>?bh>?'>14P?14>33?\>8?>?z^=>?bh>?G>14P?14>33?|>8?>?=/>>?bh>?g>14P?14>33?ff>8?>?=/?>>?bh>?˃>14P?14>33?ff>8?>?=/_>>?14??˓>14P?14>33?ff>8?>?=/>>?14??ˣ>14P?14>33?ff>8?>?>>?14??˳>14P?14>33?ff>8???>>?14??>14P??33?ff>8???>>?14 ??>14P??33?ff>8???>>?14(??>14P??33?ff>8???>>?140??>14P??33?33?8? ??>>?148???14P?&?33?33?8?(??>>?14@?? ?14P?.?33?33?8?0??>>?14H???14P?6?33?33?8?8???>?14P???14P?>?33?33'?8?@???>?14X??!?14P?F?33?33/?8?H???>?14`??)?14P?N?33?337?8?P???>?14h??1?14P?V?33?33??8?X??'?>?14p??9?14P?^?33?33G?8?`??/?>?14x??A?14P?f?33?33O?8?h??7?>???I?14P?n?33?33W?8?p????>???Q?14P?v?33?33_?8?x??G?>???Y?14P?~?33?33g?8?ff??O?>???a?14P? ?33?33o?8?ff??W?>???i?14P? ?33'? @?ff=!?F? >?a14X?а=33'?L@?ff=!?F?@>? Cü14X?=33'?ff<@?33>!?F?`>?;14X?bh>33'?33s=@?33#>!? CF?bh>?z^=14X?bh8>33'?=@?33C>!?PF?bh>?=/=14X?bhX>33'?=@?33c>!?y<F?bh>?=/=14X?bhx>33'?>@?>!?|=F?bh>?>14X?14>33'?<>@?>!?z^=F?bh>?'>14X?14>33'?\>@?>!?z^=F?bh>?G>14X?14>33'?|>@?>!?=/>F?bh>?g>14X?14>33'?ff>@?>!?=/?>F?bh>?˃>14X?14>33'?ff>@?>!?=/_>F?14??˓>14X?14>33'?ff>@?>!?=/>F?14??ˣ>14X?14>33'?ff>@?>!?>F?14??˳>14X?14>33'?ff>@??!?>F?14??>14X??33'?ff>@??!?>F?14 ??>14X??33'?ff>@??!?>F?14(??>14X??33'?ff>@??!?>F?140??>14X??33'?33?@? ?!?>F?148???14X?&?33'?33?@?(?!?>F?14@?? ?14X?.?33'?33?@?0?!?>F?14H???14X?6?33'?33?@?8?!??F?14P???14X?>?33'?33'?@?@?!??F?14X??!?14X?F?33'?33/?@?H?!??F?14`??)?14X?N?33'?337?@?P?!??F?14h??1?14X?V?33'?33??@?X?!?'?F?14p??9?14X?^?33'?33G?@?`?!?/?F?14x??A?14X?f?33'?33O?@?h?!?7?F???I?14X?n?33'?33W?@?p?!???F???Q?14X?v?33'?33_?@?x?!?G?F???Y?14X?~?33'?33g?@?ff?!?O?F???a?14X? ?33'?33o?@?ff?!?W?F???i?14X? ?33/? H?ff=)?N? >?a14`?а=33/?LH?ff=)?N?@>? Cü14`?=33/?ff)?N?`>?;14`?bh>33/?33s=H?33#>)? CN?bh>?z^=14`?bh8>33/?=H?33C>)?PN?bh>?=/=14`?bhX>33/?=H?33c>)?y<N?bh>?=/=14`?bhx>33/?>H?>)?|=N?bh>?>14`?14>33/?<>H?>)?z^=N?bh>?'>14`?14>33/?\>H?>)?z^=N?bh>?G>14`?14>33/?|>H?>)?=/>N?bh>?g>14`?14>33/?ff>H?>)?=/?>N?bh>?˃>14`?14>33/?ff>H?>)?=/_>N?14??˓>14`?14>33/?ff>H?>)?=/>N?14??ˣ>14`?14>33/?ff>H?>)?>N?14??˳>14`?14>33/?ff>H??)?>N?14??>14`??33/?ff>H??)?>N?14 ??>14`??33/?ff>H??)?>N?14(??>14`??33/?ff>H??)?>N?140??>14`??33/?33?H? ?)?>N?148???14`?&?33/?33?H?(?)?>N?14@?? ?14`?.?33/?33?H?0?)?>N?14H???14`?6?33/?33?H?8?)??N?14P???14`?>?33/?33'?H?@?)??N?14X??!?14`?F?33/?33/?H?H?)??N?14`??)?14`?N?33/?337?H?P?)??N?14h??1?14`?V?33/?33??H?X?)?'?N?14p??9?14`?^?33/?33G?H?`?)?/?N?14x??A?14`?f?33/?33O?H?h?)?7?N???I?14`?n?33/?33W?H?p?)???N???Q?14`?v?33/?33_?H?x?)?G?N???Y?14`?~?33/?33g?H?ff?)?O?N???a?14`? ?33/?33o?H?ff?)?W?N???i?14`? ?337? P?ff=1?V? >?a14h?а=337?LP?ff=1?V?@>? Cü14h?=337?ff1?V?`>?;14h?bh>337?33s=P?33#>1? CV?bh>?z^=14h?bh8>337?=P?33C>1?PV?bh>?=/=14h?bhX>337?=P?33c>1?y<V?bh>?=/=14h?bhx>337?>P?>1?|=V?bh>?>14h?14>337?<>P?>1?z^=V?bh>?'>14h?14>337?\>P?>1?z^=V?bh>?G>14h?14>337?|>P?>1?=/>V?bh>?g>14h?14>337?ff>P?>1?=/?>V?bh>?˃>14h?14>337?ff>P?>1?=/_>V?14??˓>14h?14>337?ff>P?>1?=/>V?14??ˣ>14h?14>337?ff>P?>1?>V?14??˳>14h?14>337?ff>P??1?>V?14??>14h??337?ff>P??1?>V?14 ??>14h??337?ff>P??1?>V?14(??>14h??337?ff>P??1?>V?140??>14h??337?33?P? ?1?>V?148???14h?&?337?33?P?(?1?>V?14@?? ?14h?.?337?33?P?0?1?>V?14H???14h?6?337?33?P?8?1??V?14P???14h?>?337?33'?P?@?1??V?14X??!?14h?F?337?33/?P?H?1??V?14`??)?14h?N?337?337?P?P?1??V?14h??1?14h?V?337?33??P?X?1?'?V?14p??9?14h?^?337?33G?P?`?1?/?V?14x??A?14h?f?337?33O?P?h?1?7?V???I?14h?n?337?33W?P?p?1???V???Q?14h?v?337?33_?P?x?1?G?V???Y?14h?~?337?33g?P?ff?1?O?V???a?14h? ?337?33o?P?ff?1?W?V???i?14h? ?33?? X?ff=9?^? >'?a14p?а=33??LX?ff=9?^?@>'? Cü14p?=33??ff9?^?`>'?;14p?bh>33??33s=X?33#>9? C^?bh>'?z^=14p?bh8>33??=X?33C>9?P^?bh>'?=/=14p?bhX>33??=X?33c>9?y<^?bh>'?=/=14p?bhx>33??>X?>9?|=^?bh>'?>14p?14>33??<>X?>9?z^=^?bh>'?'>14p?14>33??\>X?>9?z^=^?bh>'?G>14p?14>33??|>X?>9?=/>^?bh>'?g>14p?14>33??ff>X?>9?=/?>^?bh>'?˃>14p?14>33??ff>X?>9?=/_>^?14?'?˓>14p?14>33??ff>X?>9?=/>^?14?'?ˣ>14p?14>33??ff>X?>9?>^?14?'?˳>14p?14>33??ff>X??9?>^?14?'?>14p??33??ff>X??9?>^?14 ?'?>14p??33??ff>X??9?>^?14(?'?>14p??33??ff>X??9?>^?140?'?>14p??33??33?X? ?9?>^?148?'??14p?&?33??33?X?(?9?>^?14@?'? ?14p?.?33??33?X?0?9?>^?14H?'??14p?6?33??33?X?8?9??^?14P?'??14p?>?33??33'?X?@?9??^?14X?'?!?14p?F?33??33/?X?H?9??^?14`?'?)?14p?N?33??337?X?P?9??^?14h?'?1?14p?V?33??33??X?X?9?'?^?14p?'?9?14p?^?33??33G?X?`?9?/?^?14x?'?A?14p?f?33??33O?X?h?9?7?^??'?I?14p?n?33??33W?X?p?9???^??'?Q?14p?v?33??33_?X?x?9?G?^??'?Y?14p?~?33??33g?X?ff?9?O?^??'?a?14p? ?33??33o?X?ff?9?W?^??'?i?14p? ?33G? `?ff=A?f? >/?a14x?а=33G?L`?ff=A?f?@>/? Cü14x?=33G?ff<`?33>A?f?`>/?;14x?bh>33G?33s=`?33#>A? Cf?bh>/?z^=14x?bh8>33G?=`?33C>A?Pf?bh>/?=/=14x?bhX>33G?=`?33c>A?y<f?bh>/?=/=14x?bhx>33G?>`?>A?|=f?bh>/?>14x?14>33G?<>`?>A?z^=f?bh>/?'>14x?14>33G?\>`?>A?z^=f?bh>/?G>14x?14>33G?|>`?>A?=/>f?bh>/?g>14x?14>33G?ff>`?>A?=/?>f?bh>/?˃>14x?14>33G?ff>`?>A?=/_>f?14?/?˓>14x?14>33G?ff>`?>A?=/>f?14?/?ˣ>14x?14>33G?ff>`?>A?>f?14?/?˳>14x?14>33G?ff>`??A?>f?14?/?>14x??33G?ff>`??A?>f?14 ?/?>14x??33G?ff>`??A?>f?14(?/?>14x??33G?ff>`??A?>f?140?/?>14x??33G?33?`? ?A?>f?148?/??14x?&?33G?33?`?(?A?>f?14@?/? ?14x?.?33G?33?`?0?A?>f?14H?/??14x?6?33G?33?`?8?A??f?14P?/??14x?>?33G?33'?`?@?A??f?14X?/?!?14x?F?33G?33/?`?H?A??f?14`?/?)?14x?N?33G?337?`?P?A??f?14h?/?1?14x?V?33G?33??`?X?A?'?f?14p?/?9?14x?^?33G?33G?`?`?A?/?f?14x?/?A?14x?f?33G?33O?`?h?A?7?f??/?I?14x?n?33G?33W?`?p?A???f??/?Q?14x?v?33G?33_?`?x?A?G?f??/?Y?14x?~?33G?33g?`?ff?A?O?f??/?a?14x? ?33G?33o?`?ff?A?W?f??/?i?14x? ?33O? h?ff=I?n? >7?a?а=33O?Lh?ff=I?n?@>7? Cü?=33O?ffI?n?`>7?;?bh>33O?33s=h?33#>I? Cn?bh>7?z^=?bh8>33O?=h?33C>I?Pn?bh>7?=/=?bhX>33O?=h?33c>I?y<n?bh>7?=/=?bhx>33O?>h?>I?|=n?bh>7?>?14>33O?<>h?>I?z^=n?bh>7?'>?14>33O?\>h?>I?z^=n?bh>7?G>?14>33O?|>h?>I?=/>n?bh>7?g>?14>33O?ff>h?>I?=/?>n?bh>7?˃>?14>33O?ff>h?>I?=/_>n?14?7?˓>?14>33O?ff>h?>I?=/>n?14?7?ˣ>?14>33O?ff>h?>I?>n?14?7?˳>?14>33O?ff>h??I?>n?14?7?>??33O?ff>h??I?>n?14 ?7?>??33O?ff>h??I?>n?14(?7?>??33O?ff>h??I?>n?140?7?>??33O?33?h? ?I?>n?148?7???&?33O?33?h?(?I?>n?14@?7? ??.?33O?33?h?0?I?>n?14H?7???6?33O?33?h?8?I??n?14P?7???>?33O?33'?h?@?I??n?14X?7?!??F?33O?33/?h?H?I??n?14`?7?)??N?33O?337?h?P?I??n?14h?7?1??V?33O?33??h?X?I?'?n?14p?7?9??^?33O?33G?h?`?I?/?n?14x?7?A??f?33O?33O?h?h?I?7?n??7?I??n?33O?33W?h?p?I???n??7?Q??v?33O?33_?h?x?I?G?n??7?Y??~?33O?33g?h?ff?I?O?n??7?a?? ?33O?33o?h?ff?I?W?n??7?i?? ?33W? p?ff=Q?v? >??a?а=33W?Lp?ff=Q?v?@>?? Cü?=33W?ffQ?v?`>??;?bh>33W?33s=p?33#>Q? Cv?bh>??z^=?bh8>33W?=p?33C>Q?Pv?bh>??=/=?bhX>33W?=p?33c>Q?y<v?bh>??=/=?bhx>33W?>p?>Q?|=v?bh>??>?14>33W?<>p?>Q?z^=v?bh>??'>?14>33W?\>p?>Q?z^=v?bh>??G>?14>33W?|>p?>Q?=/>v?bh>??g>?14>33W?ff>p?>Q?=/?>v?bh>??˃>?14>33W?ff>p?>Q?=/_>v?14???˓>?14>33W?ff>p?>Q?=/>v?14???ˣ>?14>33W?ff>p?>Q?>v?14???˳>?14>33W?ff>p??Q?>v?14???>??33W?ff>p??Q?>v?14 ???>??33W?ff>p??Q?>v?14(???>??33W?ff>p??Q?>v?140???>??33W?33?p? ?Q?>v?148?????&?33W?33?p?(?Q?>v?14@??? ??.?33W?33?p?0?Q?>v?14H?????6?33W?33?p?8?Q??v?14P?????>?33W?33'?p?@?Q??v?14X???!??F?33W?33/?p?H?Q??v?14`???)??N?33W?337?p?P?Q??v?14h???1??V?33W?33??p?X?Q?'?v?14p???9??^?33W?33G?p?`?Q?/?v?14x???A??f?33W?33O?p?h?Q?7?v????I??n?33W?33W?p?p?Q???v????Q??v?33W?33_?p?x?Q?G?v????Y??~?33W?33g?p?ff?Q?O?v????a?? ?33W?33o?p?ff?Q?W?v????i?? ?33_? x?ff=Y?~? >G?a?а=33_?Lx?ff=Y?~?@>G? Cü?=33_?ffY?~?`>G?;?bh>33_?33s=x?33#>Y? C~?bh>G?z^=?bh8>33_?=x?33C>Y?P~?bh>G?=/=?bhX>33_?=x?33c>Y?y<~?bh>G?=/=?bhx>33_?>x?>Y?|=~?bh>G?>?14>33_?<>x?>Y?z^=~?bh>G?'>?14>33_?\>x?>Y?z^=~?bh>G?G>?14>33_?|>x?>Y?=/>~?bh>G?g>?14>33_?ff>x?>Y?=/?>~?bh>G?˃>?14>33_?ff>x?>Y?=/_>~?14?G?˓>?14>33_?ff>x?>Y?=/>~?14?G?ˣ>?14>33_?ff>x?>Y?>~?14?G?˳>?14>33_?ff>x??Y?>~?14?G?>??33_?ff>x??Y?>~?14 ?G?>??33_?ff>x??Y?>~?14(?G?>??33_?ff>x??Y?>~?140?G?>??33_?33?x? ?Y?>~?148?G???&?33_?33?x?(?Y?>~?14@?G? ??.?33_?33?x?0?Y?>~?14H?G???6?33_?33?x?8?Y??~?14P?G???>?33_?33'?x?@?Y??~?14X?G?!??F?33_?33/?x?H?Y??~?14`?G?)??N?33_?337?x?P?Y??~?14h?G?1??V?33_?33??x?X?Y?'?~?14p?G?9??^?33_?33G?x?`?Y?/?~?14x?G?A??f?33_?33O?x?h?Y?7?~??G?I??n?33_?33W?x?p?Y???~??G?Q??v?33_?33_?x?x?Y?G?~??G?Y??~?33_?33g?x?ff?Y?O?~??G?a?? ?33_?33o?x?ff?Y?W?~??G?i?? ?33g? ff?ff=a? ? >O?a?а=33g?Lff?ff=a? ?@>O? Cü?=33g?ffa? ?`>O?;?bh>33g?33s=ff?33#>a? C ?bh>O?z^=?bh8>33g?=ff?33C>a?P ?bh>O?=/=?bhX>33g?=ff?33c>a?y< ?bh>O?=/=?bhx>33g?>ff?>a?|= ?bh>O?>?14>33g?<>ff?>a?z^= ?bh>O?'>?14>33g?\>ff?>a?z^= ?bh>O?G>?14>33g?|>ff?>a?=/> ?bh>O?g>?14>33g?ff>ff?>a?=/?> ?bh>O?˃>?14>33g?ff>ff?>a?=/_> ?14?O?˓>?14>33g?ff>ff?>a?=/> ?14?O?ˣ>?14>33g?ff>ff?>a?> ?14?O?˳>?14>33g?ff>ff??a?> ?14?O?>??33g?ff>ff??a?> ?14 ?O?>??33g?ff>ff??a?> ?14(?O?>??33g?ff>ff??a?> ?140?O?>??33g?33?ff? ?a?> ?148?O???&?33g?33?ff?(?a?> ?14@?O? ??.?33g?33?ff?0?a?> ?14H?O???6?33g?33?ff?8?a?? ?14P?O???>?33g?33'?ff?@?a?? ?14X?O?!??F?33g?33/?ff?H?a?? ?14`?O?)??N?33g?337?ff?P?a?? ?14h?O?1??V?33g?33??ff?X?a?'? ?14p?O?9??^?33g?33G?ff?`?a?/? ?14x?O?A??f?33g?33O?ff?h?a?7? ??O?I??n?33g?33W?ff?p?a??? ??O?Q??v?33g?33_?ff?x?a?G? ??O?Y??~?33g?33g?ff?ff?a?O? ??O?a?? ?33g?33o?ff?ff?a?W? ??O?i?? ?33o? ff?ff=i? ? >W?a?а=33o?Lff?ff=i? ?@>W? Cü?=33o?ffi? ?`>W?;?bh>33o?33s=ff?33#>i? C ?bh>W?z^=?bh8>33o?=ff?33C>i?P ?bh>W?=/=?bhX>33o?=ff?33c>i?y< ?bh>W?=/=?bhx>33o?>ff?>i?|= ?bh>W?>?14>33o?<>ff?>i?z^= ?bh>W?'>?14>33o?\>ff?>i?z^= ?bh>W?G>?14>33o?|>ff?>i?=/> ?bh>W?g>?14>33o?ff>ff?>i?=/?> ?bh>W?˃>?14>33o?ff>ff?>i?=/_> ?14?W?˓>?14>33o?ff>ff?>i?=/> ?14?W?ˣ>?14>33o?ff>ff?>i?> ?14?W?˳>?14>33o?ff>ff??i?> ?14?W?>??33o?ff>ff??i?> ?14 ?W?>??33o?ff>ff??i?> ?14(?W?>??33o?ff>ff??i?> ?140?W?>??33o?33?ff? ?i?> ?148?W???&?33o?33?ff?(?i?> ?14@?W? ??.?33o?33?ff?0?i?> ?14H?W???6?33o?33?ff?8?i?? ?14P?W???>?33o?33'?ff?@?i?? ?14X?W?!??F?33o?33/?ff?H?i?? ?14`?W?)??N?33o?337?ff?P?i?? ?14h?W?1??V?33o?33??ff?X?i?'? ?14p?W?9??^?33o?33G?ff?`?i?/? ?14x?W?A??f?33o?33O?ff?h?i?7? ??W?I??n?33o?33W?ff?p?i??? ??W?Q??v?33o?33_?ff?x?i?G? ??W?Y??~?33o?33g?ff?ff?i?O? ??W?a?? ?33o?33o?ff?ff?i?W? ??W?i?? ?432343S>23S>[/6Y/6[/v>Y/v>VmSm]>>Vm]Sm>>쎽1v>1>3x鎽3>t>43df43S>>[/6^[/v>>VmSm>>Vm]L>^>쎽,bVv>1>33>tG>4343S>>[/6dX[/v>>Vmں>>Vm]Z%=>U[>쎽,bv>1>3-b=3>^>43833=43S>>[/6p +<[/v>>Vmj뼫>>Vm]=>U[>쎽XĬv>?3=3>^>43=43S>>[/6N=[/v>>VmJ +=>U[?Vm]VI!>>U[>쎽`v>?3D8>3>^>43,>43S>?[/6 >[/v>֋ ?VmZ%=>U[?Vm]VIa>>U[>쎽Pw&=v>%?3Dx>3>^>43l>43S>?[/6I>[/v>֋?Vm">>U['?Vm]>>?쎽;=v>5?3E>3>/?43gf>43S>$?[/6T>[/v>֋-?Vmb>>U[7?Vm]>>?쎽ԝ)>v>E?3E>3>/?43gf>43S>4?[/6T>[/v>֋=?VmVI>>U[G?Vm]>>'?쎽ԝi>v>U?3E>3>/!?43gf>43S>D?[/6T>[/v>֋M?VmVI>>U[W?Vm]>>7?쎽Δ>v>e?3E>3>/1?43gf>43S>T?[/6T>[/v>֋]?VmVI>>U[g?Vm]VR?>G?쎽δ>v>u?3"?3>/A?4343 ?43S>d?[/6*t?[/v>֋m?VmVI>>U[w?Vm]VR?>W?쎽>v>F̂?3"?3>/Q?4343?43S>t?[/6*t?[/v>֋}?Vm?>?Vm]VR(?>g?쎽>v>F̊?3".?3>/a?4343+?43S>ff?[/6*t"?[/v>ņ?Vm?>?Vm]VR8?>w?쎽ug +?v>F̒?3">?3>/q?4343;?43S>ff?[/6*t2?[/v>Ŏ?Vm(?>?Vm]VRH?>փ?쎽ug?v>F̚?3"N?3>?4343K?43S>ff?[/6*tB?[/v>Ŗ?Vm8?>?Vm]VRX?>֋?쎽ug*?v>F̢?3"^?3>?hf23>23S>^Y/6>Y/v>XSm]^>>VmSm>>1vG>1>&fVx鎽3>t>hfdf>>^콲^콮>>XSm^>>VmL>^>,bVvG>1>&fV3>tG>hf>>^dX>>Xں^>>VmZ%=>U[>,bvG>1>&fV-b=3>^>hf833=>>^p +<>>Xj뼫^>>Vm=>U[>XĬvG>?&fV=3>^>hf=>>^N=>>XJ +=^>U[?VmVI!>>U[>`vG>?&fVD8>3>^>hf,>>?^콧 >>֋ ?XZ%=^>U[?VmVIa>>U[>Pw&=vG>%?&fVDx>3>^>hfl>>?^콧I>>֋?X">^>U['?Vm>>?;=vG>5?&fVE>3>/?hfgf>>$?^T>>֋-?Xb>^>U[7?Vm>>?ԝ)>vG>E?&fVE>3>/?hfgf>>4?^T>>֋=?XVI>^>U[G?Vm>>'?ԝi>vG>U?&fVE>3>/!?hfgf>>D?^T>>֋M?XVI>^>U[W?Vm>>7?Δ>vG>e?&fVE>3>/1?hfgf>>T?^T>>֋]?XVI>^>U[g?VmVR?>G?δ>vG>u?&fV"?3>/A?hf43 ?>d?^*t?>֋m?XVI>^>U[w?VmVR?>W?>vG>F̂?&fV"?3>/Q?hf43?>t?^*t?>֋}?X?^>?VmVR(?>g?>vG>F̊?&fV".?3>/a?hf43+?>ff?^*t"?>ņ?X?^>?VmVR8?>w?ug +?vG>F̒?&fV">?3>/q?hf43;?>ff?^*t2?>Ŏ?X(?^>?VmVRH?>փ?ug?vG>F̚?&fV"N?3>?hf43K?>ff?^*tB?>Ŗ?X8?^>?VmVRX?>֋?ug*?vG>F̢?&fV"^?3>?23>23S>lXY/6>Y/v>T%=Sm]V[>>ںSm>>'b=1>1>&fx鎽3>t>df>>lX^콮>>T%=SmV[>>ںL>^>'b=,bV>1>&f3>tG>>>lXdX>>T%=ںV[>>ںZ%=>U[>'b=,b>1>&f-b=3>^>833=>>lXp +<>>T%=jV[>>ں=>U[>'b=XĬ>?&f=3>^>=>>lXN=>>T%=J +=V[>U[?ںVI!>>U[>'b=`>?&fD8>3>^>,>>?lX >>֋ ?T%=Z%=V[>U[?ںVIa>>U[>'b=Pw&=>%?&fDx>3>^>l>>?lXI>>֋?T%=">V[>U['?ں>>?'b=;=>5?&fE>3>/?gf>>$?lXT>>֋-?T%=b>V[>U[7?ں>>?'b=ԝ)>>E?&fE>3>/?gf>>4?lXT>>֋=?T%=VI>V[>U[G?ں>>'?'b=ԝi>>U?&fE>3>/!?gf>>D?lXT>>֋M?T%=VI>V[>U[W?ں>>7?'b=Δ>>e?&fE>3>/1?gf>>T?lXT>>֋]?T%=VI>V[>U[g?ںVR?>G?'b=δ>>u?&f"?3>/A?43 ?>d?lX*t?>֋m?T%=VI>V[>U[w?ںVR?>W?'b=>>F̂?&f"?3>/Q?43?>t?lX*t?>֋}?T%=?V[>?ںVR(?>g?'b=>>F̊?&f".?3>/a?43+?>ff?lX*t"?>ņ?T%=?V[>?ںVR8?>w?'b=ug +?>F̒?&f">?3>/q?43;?>ff?lX*t2?>Ŏ?T%=(?V[>?ںVRH?>փ?'b=ug?>F̚?&f"N?3>?43K?>ff?lX*tB?>Ŗ?T%=8?V[>?ںVRX?>֋?'b=ug*?>F̢?&f"^?3>?033=23>23S>P +Y/v>=Sm]V[>>jSm>>=1>1>L̬x鎽?t>033=df>>P +<^콮>>=SmV[>>jL>^>=,bV>1>L̬?tG>033=>>P +>=ںV[>>jZ%=>U[>=,b>1>L̬-b=?^>033=833=>>P +

>=jV[>>j뼭=>U[>=XĬ>?L̬=?^>033==>>P +>=J +=V[>U[?jVI!>>U[>=`>?L̬D8>?^>033=,>>?P +< >>֋ ?=Z%=V[>U[?jVIa>>U[>=Pw&=>%?L̬Dx>?^>033=l>>?P +>֋?=">V[>U['?j뼫>>?=;=>5?L̬E>?/?033=gf>>$?P +>֋-?=b>V[>U[7?j뼫>>?=ԝ)>>E?L̬E>?/?033=gf>>4?P +>֋=?=VI>V[>U[G?j뼫>>'?=ԝi>>U?L̬E>?/!?033=gf>>D?P +>֋M?=VI>V[>U[W?j뼫>>7?=Δ>>e?L̬E>?/1?033=gf>>T?P +>֋]?=VI>V[>U[g?jVR?>G?=δ>>u?L̬"??/A?033=43 ?>d?P +<*t?>֋m?=VI>V[>U[w?jVR?>W?=>>F̂?L̬"??/Q?033=43?>t?P +<*t?>֋}?=?V[>?jVR(?>g?=>>F̊?L̬".??/a?033=43+?>ff?P +<*t"?>ņ?=?V[>?jVR8?>w?=ug +?>F̒?L̬">??/q?033=43;?>ff?P +<*t2?>Ŏ?=(?V[>?jVRH?>փ?=ug?>F̚?L̬"N???033=43K?>ff?P +<*tB?>Ŗ?=8?V[>?jVRX?>֋?=ug*?>F̢?L̬"^???=23>23S>J=Y/6>Y/v>UI!>Sm]V[>>J +=SmV[?>8>1>1>01x鎽?t>=df>>J=^콮>>UI!>SmV[>>J +=LV[?^>8>,bV>1>01?tG>=>>J=dX>>UI!>ںV[>>J +=Z%=V[?U[>8>,b>1>01-b=?^>=833=>>J=p +<>>UI!>jV[>>J +==V[?U[>8>XĬ>?01=?^>==>>J=N=>>UI!>J +=V[>U[?J +=VI!>V[?U[>8>`>?01D8>?^>=,>>?J= >>֋ ?UI!>Z%=V[>U[?J +=VIa>V[?U[>8>Pw&=>%?01Dx>?^>=l>>?J=I>>֋?UI!>">V[>U['?J +=>V[??8>;=>5?01E>?/?=gf>>$?J=T>>֋-?UI!>b>V[>U[7?J +=>V[??8>ԝ)>>E?01E>?/?=gf>>4?J=T>>֋=?UI!>VI>V[>U[G?J +=>V[?'?8>ԝi>>U?01E>?/!?=gf>>D?J=T>>֋M?UI!>VI>V[>U[W?J +=>V[?7?8>Δ>>e?01E>?/1?=gf>>T?J=T>>֋]?UI!>VI>V[>U[g?J +=VR?V[?G?8>δ>>u?01"??/A?=43 ?>d?J=*t?>֋m?UI!>VI>V[>U[w?J +=VR?V[?W?8>>>F̂?01"??/Q?=43?>t?J=*t?>֋}?UI!>?V[>?J +=VR(?V[?g?8>>>F̊?01".??/a?=43+?>ff?J=*t"?>ņ?UI!>?V[>?J +=VR8?V[?w?8>ug +?>F̒?01">??/q?=43;?>ff?J=*t2?>Ŏ?UI!>(?V[>?J +=VRH?V[?փ?8>ug?>F̚?01"N???=43K?>ff?J=*tB?>Ŗ?UI!>8?V[>?J +=VRX?V[?֋?8>ug*?>F̢?01"^???,>23?23S> >Y/6׋ ?Y/v>UIa>Sm]V[>>T%=SmV[?>x>1>1>hg&=x鎽%?t>,>df?> >^׋ ?>UIa>SmV[>>T%=LV[?^>x>,bV>1>hg&=%?tG>,>?> >dX׋ ?>UIa>ںV[>>T%=Z%=V[?U[>x>,b>1>hg&=-b=%?^>,>833=?> >p +<׋ ?>UIa>jV[>>T%==V[?U[>x>XĬ>?hg&==%?^>,>=?> >N=׋ ?>UIa>J +=V[>U[?T%=VI!>V[?U[>x>`>?hg&=D8>%?^>,>,>?? > >׋ ?֋ ?UIa>Z%=V[>U[?T%=VIa>V[?U[>x>Pw&=>%?hg&=Dx>%?^>,>l>?? >I>׋ ?֋?UIa>">V[>U['?T%=>V[??x>;=>5?hg&=E>%?/?,>gf>?$? >T>׋ ?֋-?UIa>b>V[>U[7?T%=>V[??x>ԝ)>>E?hg&=E>%?/?,>gf>?4? >T>׋ ?֋=?UIa>VI>V[>U[G?T%=>V[?'?x>ԝi>>U?hg&=E>%?/!?,>gf>?D? >T>׋ ?֋M?UIa>VI>V[>U[W?T%=>V[?7?x>Δ>>e?hg&=E>%?/1?,>gf>?T? >T>׋ ?֋]?UIa>VI>V[>U[g?T%=VR?V[?G?x>δ>>u?hg&="?%?/A?,>43 ??d? >*t?׋ ?֋m?UIa>VI>V[>U[w?T%=VR?V[?W?x>>>F̂?hg&="?%?/Q?,>43??t? >*t?׋ ?֋}?UIa>?V[>?T%=VR(?V[?g?x>>>F̊?hg&=".?%?/a?,>43+??ff? >*t"?׋ ?ņ?UIa>?V[>?T%=VR8?V[?w?x>ug +?>F̒?hg&=">?%?/q?,>43;??ff? >*t2?׋ ?Ŏ?UIa>(?V[>?T%=VRH?V[?փ?x>ug?>F̚?hg&="N?%??,>43K??ff? >*tB?׋ ?Ŗ?UIa>8?V[>?T%=VRX?V[?֋?x>ug*?>F̢?hg&="^?%??l>23?23S>I>Y/6׋?Y/v>>Sm]?>">SmV['?>D>1?1>3=x鎽5?t>l>df?>I>^׋?>>Sm?>">LV['?^>D>,bV?1>3=5?tG>l>?>I>dX׋?>>ں?>">Z%=V['?U[>D>,b?1>3=-b=5?^>l>833=?>I>p +<׋?>>j뼫?>">=V['?U[>D>XĬ??3==5?^>l>=?>I>N=׋?>>J +=?U[?">VI!>V['?U[>D>`??3=D8>5?^>l>,>??I> >׋?֋ ?>Z%=?U[?">VIa>V['?U[>D>Pw&=?%?3=Dx>5?^>l>l>??I>I>׋?֋?>">?U['?">>V['??D>;=?5?3=E>5?/?l>gf>?$?I>T>׋?֋-?>b>?U[7?">>V['??D>ԝ)>?E?3=E>5?/?l>gf>?4?I>T>׋?֋=?>VI>?U[G?">>V['?'?D>ԝi>?U?3=E>5?/!?l>gf>?D?I>T>׋?֋M?>VI>?U[W?">>V['?7?D>Δ>?e?3=E>5?/1?l>gf>?T?I>T>׋?֋]?>VI>?U[g?">VR?V['?G?D>δ>?u?3="?5?/A?l>43 ??d?I>*t?׋?֋m?>VI>?U[w?">VR?V['?W?D>>?F̂?3="?5?/Q?l>43??t?I>*t?׋?֋}?>???">VR(?V['?g?D>>?F̊?3=".?5?/a?l>43+??ff?I>*t"?׋?ņ?>???">VR8?V['?w?D>ug +??F̒?3=">?5?/q?l>43;??ff?I>*t2?׋?Ŏ?>(???">VRH?V['?փ?D>ug??F̚?3="N?5??l>43K??ff?I>*tB?׋?Ŗ?>8???">VRX?V['?֋?D>ug*??F̢?3="^?5??ff>23$?23S>R>Y/6׋-?Y/v>>Sm]?>b>SmV[7?>D>1?1>ڙ)>x鎽E?t>ff>df$?>R>^׋-?>>Sm?>b>LV[7?^>D>,bV?1>ڙ)>E?tG>ff>$?>R>dX׋-?>>ں?>b>Z%=V[7?U[>D>,b?1>ڙ)>-b=E?^>ff>833=$?>R>p +<׋-?>>j뼫?>b>=V[7?U[>D>XĬ??ڙ)>=E?^>ff>=$?>R>N=׋-?>>J +=?U[?b>VI!>V[7?U[>D>`??ڙ)>D8>E?^>ff>,>$??R> >׋-?֋ ?>Z%=?U[?b>VIa>V[7?U[>D>Pw&=?%?ڙ)>Dx>E?^>ff>l>$??R>I>׋-?֋?>">?U['?b>>V[7??D>;=?5?ڙ)>E>E?/?ff>gf>$?$?R>T>׋-?֋-?>b>?U[7?b>>V[7??D>ԝ)>?E?ڙ)>E>E?/?ff>gf>$?4?R>T>׋-?֋=?>VI>?U[G?b>>V[7?'?D>ԝi>?U?ڙ)>E>E?/!?ff>gf>$?D?R>T>׋-?֋M?>VI>?U[W?b>>V[7?7?D>Δ>?e?ڙ)>E>E?/1?ff>gf>$?T?R>T>׋-?֋]?>VI>?U[g?b>VR?V[7?G?D>δ>?u?ڙ)>"?E?/A?ff>43 ?$?d?R>*t?׋-?֋m?>VI>?U[w?b>VR?V[7?W?D>>?F̂?ڙ)>"?E?/Q?ff>43?$?t?R>*t?׋-?֋}?>???b>VR(?V[7?g?D>>?F̊?ڙ)>".?E?/a?ff>43+?$?ff?R>*t"?׋-?ņ?>???b>VR8?V[7?w?D>ug +??F̒?ڙ)>">?E?/q?ff>43;?$?ff?R>*t2?׋-?Ŏ?>(???b>VRH?V[7?փ?D>ug??F̚?ڙ)>"N?E??ff>43K?$?ff?R>*tB?׋-?Ŗ?>8???b>VRX?V[7?֋?D>ug*??F̢?ڙ)>"^?E??ff>234?23S>R>Y/6׋=?Y/v>>Sm]'?>UI>SmV[G?>D>1!?1>ڙi>x鎽U?t>ff>df4?>R>^׋=?>>Sm'?>UI>LV[G?^>D>,bV!?1>ڙi>U?tG>ff>4?>R>dX׋=?>>ں'?>UI>Z%=V[G?U[>D>,b!?1>ڙi>-b=U?^>ff>833=4?>R>p +<׋=?>>j뼫'?>UI>=V[G?U[>D>XĬ!??ڙi>=U?^>ff>=4?>R>N=׋=?>>J +='?U[?UI>VI!>V[G?U[>D>`!??ڙi>D8>U?^>ff>,>4??R> >׋=?֋ ?>Z%='?U[?UI>VIa>V[G?U[>D>Pw&=!?%?ڙi>Dx>U?^>ff>l>4??R>I>׋=?֋?>">'?U['?UI>>V[G??D>;=!?5?ڙi>E>U?/?ff>gf>4?$?R>T>׋=?֋-?>b>'?U[7?UI>>V[G??D>ԝ)>!?E?ڙi>E>U?/?ff>gf>4?4?R>T>׋=?֋=?>VI>'?U[G?UI>>V[G?'?D>ԝi>!?U?ڙi>E>U?/!?ff>gf>4?D?R>T>׋=?֋M?>VI>'?U[W?UI>>V[G?7?D>Δ>!?e?ڙi>E>U?/1?ff>gf>4?T?R>T>׋=?֋]?>VI>'?U[g?UI>VR?V[G?G?D>δ>!?u?ڙi>"?U?/A?ff>43 ?4?d?R>*t?׋=?֋m?>VI>'?U[w?UI>VR?V[G?W?D>>!?F̂?ڙi>"?U?/Q?ff>43?4?t?R>*t?׋=?֋}?>?'??UI>VR(?V[G?g?D>>!?F̊?ڙi>".?U?/a?ff>43+?4?ff?R>*t"?׋=?ņ?>?'??UI>VR8?V[G?w?D>ug +?!?F̒?ڙi>">?U?/q?ff>43;?4?ff?R>*t2?׋=?Ŏ?>(?'??UI>VRH?V[G?փ?D>ug?!?F̚?ڙi>"N?U??ff>43K?4?ff?R>*tB?׋=?Ŗ?>8?'??UI>VRX?V[G?֋?D>ug*?!?F̢?ڙi>"^?U??ff>23D?23S>R>Y/6׋M?Y/v>>Sm]7?>UI>SmV[W?>D>11?1>̔>x鎽e?t>ff>dfD?>R>^׋M?>>Sm7?>UI>LV[W?^>D>,bV1?1>̔>e?tG>ff>D?>R>dX׋M?>>ں7?>UI>Z%=V[W?U[>D>,b1?1>̔>-b=e?^>ff>833=D?>R>p +<׋M?>>j뼫7?>UI>=V[W?U[>D>XĬ1??̔>=e?^>ff>=D?>R>N=׋M?>>J +=7?U[?UI>VI!>V[W?U[>D>`1??̔>D8>e?^>ff>,>D??R> >׋M?֋ ?>Z%=7?U[?UI>VIa>V[W?U[>D>Pw&=1?%?̔>Dx>e?^>ff>l>D??R>I>׋M?֋?>">7?U['?UI>>V[W??D>;=1?5?̔>E>e?/?ff>gf>D?$?R>T>׋M?֋-?>b>7?U[7?UI>>V[W??D>ԝ)>1?E?̔>E>e?/?ff>gf>D?4?R>T>׋M?֋=?>VI>7?U[G?UI>>V[W?'?D>ԝi>1?U?̔>E>e?/!?ff>gf>D?D?R>T>׋M?֋M?>VI>7?U[W?UI>>V[W?7?D>Δ>1?e?̔>E>e?/1?ff>gf>D?T?R>T>׋M?֋]?>VI>7?U[g?UI>VR?V[W?G?D>δ>1?u?̔>"?e?/A?ff>43 ?D?d?R>*t?׋M?֋m?>VI>7?U[w?UI>VR?V[W?W?D>>1?F̂?̔>"?e?/Q?ff>43?D?t?R>*t?׋M?֋}?>?7??UI>VR(?V[W?g?D>>1?F̊?̔>".?e?/a?ff>43+?D?ff?R>*t"?׋M?ņ?>?7??UI>VR8?V[W?w?D>ug +?1?F̒?̔>">?e?/q?ff>43;?D?ff?R>*t2?׋M?Ŏ?>(?7??UI>VRH?V[W?փ?D>ug?1?F̚?̔>"N?e??ff>43K?D?ff?R>*tB?׋M?Ŗ?>8?7??UI>VRX?V[W?֋?D>ug*?1?F̢?̔>"^?e??ff>23T?23S>R>Y/6׋]?Y/v>UR?Sm]G?>UI>SmV[g?>|"?1A?1>̴>x鎽u?t>ff>dfT?>R>^׋]?>UR?SmG?>UI>LV[g?^>|"?,bVA?1>̴>u?tG>ff>T?>R>dX׋]?>UR?ںG?>UI>Z%=V[g?U[>|"?,bA?1>̴>-b=u?^>ff>833=T?>R>p +<׋]?>UR?j뼫G?>UI>=V[g?U[>|"?XĬA??̴>=u?^>ff>=T?>R>N=׋]?>UR?J +=G?U[?UI>VI!>V[g?U[>|"?`A??̴>D8>u?^>ff>,>T??R> >׋]?֋ ?UR?Z%=G?U[?UI>VIa>V[g?U[>|"?Pw&=A?%?̴>Dx>u?^>ff>l>T??R>I>׋]?֋?UR?">G?U['?UI>>V[g??|"?;=A?5?̴>E>u?/?ff>gf>T?$?R>T>׋]?֋-?UR?b>G?U[7?UI>>V[g??|"?ԝ)>A?E?̴>E>u?/?ff>gf>T?4?R>T>׋]?֋=?UR?VI>G?U[G?UI>>V[g?'?|"?ԝi>A?U?̴>E>u?/!?ff>gf>T?D?R>T>׋]?֋M?UR?VI>G?U[W?UI>>V[g?7?|"?Δ>A?e?̴>E>u?/1?ff>gf>T?T?R>T>׋]?֋]?UR?VI>G?U[g?UI>VR?V[g?G?|"?δ>A?u?̴>"?u?/A?ff>43 ?T?d?R>*t?׋]?֋m?UR?VI>G?U[w?UI>VR?V[g?W?|"?>A?F̂?̴>"?u?/Q?ff>43?T?t?R>*t?׋]?֋}?UR??G??UI>VR(?V[g?g?|"?>A?F̊?̴>".?u?/a?ff>43+?T?ff?R>*t"?׋]?ņ?UR??G??UI>VR8?V[g?w?|"?ug +?A?F̒?̴>">?u?/q?ff>43;?T?ff?R>*t2?׋]?Ŏ?UR?(?G??UI>VRH?V[g?փ?|"?ug?A?F̚?̴>"N?u??ff>43K?T?ff?R>*tB?׋]?Ŗ?UR?8?G??UI>VRX?V[g?֋?|"?ug*?A?F̢?̴>"^?u??33 ?23d?23S>)t?Y/6׋m?Y/v>UR?Sm]W?>UI>SmV[w?>|"?1Q?1>>x鎽̂?t>33 ?dfd?>)t?^׋m?>UR?SmW?>UI>LV[w?^>|"?,bVQ?1>>̂?tG>33 ?d?>)t?dX׋m?>UR?ںW?>UI>Z%=V[w?U[>|"?,bQ?1>>-b=̂?^>33 ?833=d?>)t?p +<׋m?>UR?j뼫W?>UI>=V[w?U[>|"?XĬQ??>=̂?^>33 ?=d?>)t?N=׋m?>UR?J +=W?U[?UI>VI!>V[w?U[>|"?`Q??>D8>̂?^>33 ?,>d??)t? >׋m?֋ ?UR?Z%=W?U[?UI>VIa>V[w?U[>|"?Pw&=Q?%?>Dx>̂?^>33 ?l>d??)t?I>׋m?֋?UR?">W?U['?UI>>V[w??|"?;=Q?5?>E>̂?/?33 ?gf>d?$?)t?T>׋m?֋-?UR?b>W?U[7?UI>>V[w??|"?ԝ)>Q?E?>E>̂?/?33 ?gf>d?4?)t?T>׋m?֋=?UR?VI>W?U[G?UI>>V[w?'?|"?ԝi>Q?U?>E>̂?/!?33 ?gf>d?D?)t?T>׋m?֋M?UR?VI>W?U[W?UI>>V[w?7?|"?Δ>Q?e?>E>̂?/1?33 ?gf>d?T?)t?T>׋m?֋]?UR?VI>W?U[g?UI>VR?V[w?G?|"?δ>Q?u?>"?̂?/A?33 ?43 ?d?d?)t?*t?׋m?֋m?UR?VI>W?U[w?UI>VR?V[w?W?|"?>Q?F̂?>"?̂?/Q?33 ?43?d?t?)t?*t?׋m?֋}?UR??W??UI>VR(?V[w?g?|"?>Q?F̊?>".?̂?/a?33 ?43+?d?ff?)t?*t"?׋m?ņ?UR??W??UI>VR8?V[w?w?|"?ug +?Q?F̒?>">?̂?/q?33 ?43;?d?ff?)t?*t2?׋m?Ŏ?UR?(?W??UI>VRH?V[w?փ?|"?ug?Q?F̚?>"N?̂??33 ?43K?d?ff?)t?*tB?׋m?Ŗ?UR?8?W??UI>VRX?V[w?֋?|"?ug*?Q?F̢?>"^?̂??33?23t?23S>)t?Y/6׋}?Y/v>UR(?Sm]g?>?Sm?>|".?1a?1>>x鎽̊?t>33?dft?>)t?^׋}?>UR(?Smg?>?L?^>|".?,bVa?1>>̊?tG>33?t?>)t?dX׋}?>UR(?ںg?>?Z%=?U[>|".?,ba?1>>-b=̊?^>33?833=t?>)t?p +<׋}?>UR(?j뼫g?>?=?U[>|".?XĬa??>=̊?^>33?=t?>)t?N=׋}?>UR(?J +=g?U[??VI!>?U[>|".?`a??>D8>̊?^>33?,>t??)t? >׋}?֋ ?UR(?Z%=g?U[??VIa>?U[>|".?Pw&=a?%?>Dx>̊?^>33?l>t??)t?I>׋}?֋?UR(?">g?U['??>??|".?;=a?5?>E>̊?/?33?gf>t?$?)t?T>׋}?֋-?UR(?b>g?U[7??>??|".?ԝ)>a?E?>E>̊?/?33?gf>t?4?)t?T>׋}?֋=?UR(?VI>g?U[G??>?'?|".?ԝi>a?U?>E>̊?/!?33?gf>t?D?)t?T>׋}?֋M?UR(?VI>g?U[W??>?7?|".?Δ>a?e?>E>̊?/1?33?gf>t?T?)t?T>׋}?֋]?UR(?VI>g?U[g??VR??G?|".?δ>a?u?>"?̊?/A?33?43 ?t?d?)t?*t?׋}?֋m?UR(?VI>g?U[w??VR??W?|".?>a?F̂?>"?̊?/Q?33?43?t?t?)t?*t?׋}?֋}?UR(??g???VR(??g?|".?>a?F̊?>".?̊?/a?33?43+?t?ff?)t?*t"?׋}?ņ?UR(??g???VR8??w?|".?ug +?a?F̒?>">?̊?/q?33?43;?t?ff?)t?*t2?׋}?Ŏ?UR(?(?g???VRH??փ?|".?ug?a?F̚?>"N?̊??33?43K?t?ff?)t?*tB?׋}?Ŗ?UR(?8?g???VRX??֋?|".?ug*?a?F̢?>"^?̊??33+?23ff?23S>)t"?Y/6ņ?Y/v>UR8?Sm]w?>?Sm?>|">?1q?1>vf +?x鎽̒?t>33+?dfff?>)t"?^ņ?>UR8?Smw?>?L?^>|">?,bVq?1>vf +?̒?tG>33+?ff?>)t"?dXņ?>UR8?ںw?>?Z%=?U[>|">?,bq?1>vf +?-b=̒?^>33+?833=ff?>)t"?p +<ņ?>UR8?j뼫w?>?=?U[>|">?XĬq??vf +?=̒?^>33+?=ff?>)t"?N=ņ?>UR8?J +=w?U[??VI!>?U[>|">?`q??vf +?D8>̒?^>33+?,>ff??)t"? >ņ?֋ ?UR8?Z%=w?U[??VIa>?U[>|">?Pw&=q?%?vf +?Dx>̒?^>33+?l>ff??)t"?I>ņ?֋?UR8?">w?U['??>??|">?;=q?5?vf +?E>̒?/?33+?gf>ff?$?)t"?T>ņ?֋-?UR8?b>w?U[7??>??|">?ԝ)>q?E?vf +?E>̒?/?33+?gf>ff?4?)t"?T>ņ?֋=?UR8?VI>w?U[G??>?'?|">?ԝi>q?U?vf +?E>̒?/!?33+?gf>ff?D?)t"?T>ņ?֋M?UR8?VI>w?U[W??>?7?|">?Δ>q?e?vf +?E>̒?/1?33+?gf>ff?T?)t"?T>ņ?֋]?UR8?VI>w?U[g??VR??G?|">?δ>q?u?vf +?"?̒?/A?33+?43 ?ff?d?)t"?*t?ņ?֋m?UR8?VI>w?U[w??VR??W?|">?>q?F̂?vf +?"?̒?/Q?33+?43?ff?t?)t"?*t?ņ?֋}?UR8??w???VR(??g?|">?>q?F̊?vf +?".?̒?/a?33+?43+?ff?ff?)t"?*t"?ņ?ņ?UR8??w???VR8??w?|">?ug +?q?F̒?vf +?">?̒?/q?33+?43;?ff?ff?)t"?*t2?ņ?Ŏ?UR8?(?w???VRH??փ?|">?ug?q?F̚?vf +?"N?̒??33+?43K?ff?ff?)t"?*tB?ņ?Ŗ?UR8?8?w???VRX??֋?|">?ug*?q?F̢?vf +?"^?̒??33;?23ff?23S>)t2?Y/6Ŏ?Y/v>URH?Sm]փ?>(?Sm?>|"N?1?1>vf?x鎽̚?t>33;?dfff?>)t2?^Ŏ?>URH?Smփ?>(?L?^>|"N?,bV?1>vf?̚?tG>33;?ff?>)t2?dXŎ?>URH?ںփ?>(?Z%=?U[>|"N?,b?1>vf?-b=̚?^>33;?833=ff?>)t2?p +<Ŏ?>URH?jփ?>(?=?U[>|"N?XĬ??vf?=̚?^>33;?=ff?>)t2?N=Ŏ?>URH?J +=փ?U[?(?VI!>?U[>|"N?`??vf?D8>̚?^>33;?,>ff??)t2? >Ŏ?֋ ?URH?Z%=փ?U[?(?VIa>?U[>|"N?Pw&=?%?vf?Dx>̚?^>33;?l>ff??)t2?I>Ŏ?֋?URH?">փ?U['?(?>??|"N?;=?5?vf?E>̚?/?33;?gf>ff?$?)t2?T>Ŏ?֋-?URH?b>փ?U[7?(?>??|"N?ԝ)>?E?vf?E>̚?/?33;?gf>ff?4?)t2?T>Ŏ?֋=?URH?VI>փ?U[G?(?>?'?|"N?ԝi>?U?vf?E>̚?/!?33;?gf>ff?D?)t2?T>Ŏ?֋M?URH?VI>փ?U[W?(?>?7?|"N?Δ>?e?vf?E>̚?/1?33;?gf>ff?T?)t2?T>Ŏ?֋]?URH?VI>փ?U[g?(?VR??G?|"N?δ>?u?vf?"?̚?/A?33;?43 ?ff?d?)t2?*t?Ŏ?֋m?URH?VI>փ?U[w?(?VR??W?|"N?>?F̂?vf?"?̚?/Q?33;?43?ff?t?)t2?*t?Ŏ?֋}?URH??փ??(?VR(??g?|"N?>?F̊?vf?".?̚?/a?33;?43+?ff?ff?)t2?*t"?Ŏ?ņ?URH??փ??(?VR8??w?|"N?ug +??F̒?vf?">?̚?/q?33;?43;?ff?ff?)t2?*t2?Ŏ?Ŏ?URH?(?փ??(?VRH??փ?|"N?ug??F̚?vf?"N?̚??33;?43K?ff?ff?)t2?*tB?Ŏ?Ŗ?URH?8?փ??(?VRX??֋?|"N?ug*??F̢?vf?"^?̚??33K?23ff?23S>)tB?Y/6Ŗ?Y/v>URX?Sm]֋?>8?Sm?>|"^?1?1>vf*?x鎽̢?t>33K?dfff?>)tB?^Ŗ?>URX?Sm֋?>8?L?^>|"^?,bV?1>vf*?̢?tG>33K?ff?>)tB?dXŖ?>URX?ں֋?>8?Z%=?U[>|"^?,b?1>vf*?-b=̢?^>33K?833=ff?>)tB?p +<Ŗ?>URX?j֋?>8?=?U[>|"^?XĬ??vf*?=̢?^>33K?=ff?>)tB?N=Ŗ?>URX?J +=֋?U[?8?VI!>?U[>|"^?`??vf*?D8>̢?^>33K?,>ff??)tB? >Ŗ?֋ ?URX?Z%=֋?U[?8?VIa>?U[>|"^?Pw&=?%?vf*?Dx>̢?^>33K?l>ff??)tB?I>Ŗ?֋?URX?">֋?U['?8?>??|"^?;=?5?vf*?E>̢?/?33K?gf>ff?$?)tB?T>Ŗ?֋-?URX?b>֋?U[7?8?>??|"^?ԝ)>?E?vf*?E>̢?/?33K?gf>ff?4?)tB?T>Ŗ?֋=?URX?VI>֋?U[G?8?>?'?|"^?ԝi>?U?vf*?E>̢?/!?33K?gf>ff?D?)tB?T>Ŗ?֋M?URX?VI>֋?U[W?8?>?7?|"^?Δ>?e?vf*?E>̢?/1?33K?gf>ff?T?)tB?T>Ŗ?֋]?URX?VI>֋?U[g?8?VR??G?|"^?δ>?u?vf*?"?̢?/A?33K?43 ?ff?d?)tB?*t?Ŗ?֋m?URX?VI>֋?U[w?8?VR??W?|"^?>?F̂?vf*?"?̢?/Q?33K?43?ff?t?)tB?*t?Ŗ?֋}?URX??֋??8?VR(??g?|"^?>?F̊?vf*?".?̢?/a?33K?43+?ff?ff?)tB?*t"?Ŗ?ņ?URX??֋??8?VR8??w?|"^?ug +??F̒?vf*?">?̢?/q?33K?43;?ff?ff?)tB?*t2?Ŗ?Ŏ?URX?(?֋??8?VRH??փ?|"^?ug??F̚?vf*?"N?̢??33K?43K?ff?ff?)tB?*tB?Ŗ?Ŗ?URX?8?֋??8?VRX??֋?|"^?ug*??F̢?vf*?"^?̢??@?>>ccF>D> u>> >u>t׳:S>׳>>VS>@>>cǽF>D> *u>y +?/<>y>tg{:S>?0=>>@=>?c? 꽐'(u>y*? +>>y>t\:S>>?4,>>>@@>>0?cx>F>8? 8=u>yJ?}>>^?U>>?@>>P?c>F>X? U>u>yj?}>>:S>~?U>>4?@>>p?c>F>x? >u>:S>l?* ?>T?@?>?c^?F>Q|? >u>:S>l?* +?>t?@0?>?c^'?F>Q|? 꽇}?u>?t&?:S>l?* K?>ky??>>ǽcF>D>/<z>> * z +?u>0=׳>׳>\m{W?VS>>>ǽǽF>D>/< *z>y +? */0=g{>?\m{0=W?>=>?ǽ?/<'(z>y*? * +>z +?y>0=\>>?\m{4,>W?>@>>0?ǽx>F>8?/<8=z>yJ? *}>z +?^?\m{U>W??>>P?ǽ>F>X?/<U>z>yj? *}>z +?>~?\m{U>W?4?>>p?ǽ>F>x?/<>z>>l?\m{* ?W?T??>?ǽ^?F>Q|?/<>z>>l?\m{* +?W?t?0?>?ǽ^'?F>Q|?/<}?z>l?\m{* K?W?ky?=??> +>z>>'( z*?u>2,>׳>׳>W>?VS>=?><ǽ?D> +> *z>y +?'(/2,>g{>?0=W>?>==??<<?? +>'(z>y*?'( +>z*?y>2,>\>>?4,>W>?>=@>?0??8? +>8=z>yJ?'(}>z*?@ +;>^?U>W>??=>?P?<>?X? +>U>z>yj?'(}>z*?R>>~?U>W>?4?=>?p?<>?x? +>>z>)L>>l?* ?W>?T?=???<^??Q|? +>>z>)L>>l?* +?W>?t?=0???<^'??Q|? +>}?z>&?>l?* K?W>?ky??>?0?>t>c8?D>}>=A?>0= zJ?u>c>׳N?׳>T;W^?VS>?>0?>t>ǽ8?D>}> *=A?y +?0=/c>g{N??T;0=W^?>?>=0??t><8??}>'(=A?y*?0= +>zJ?y>c>\N?>?T;4,>W^?>?>@>0?0?t>x>8?8?}>8==A?yJ?0=}>zJ?@ +;N?^?T;U>W^???>>0?P?t>>8?X?}>U>=A?yj?0=}>zJ?R>N?~?T;U>W^?4??>>0?p?t>>8?x?}>>=A?)L>N?l?T;* ?W^?T??>?0??t>^?8?Q|?}>>=A?)L>N?l?T;* +?W^?t??>0?0??t>^'?8?Q|?}>}?=A?&?N?l?T;* K?W^?ky?>?P?>>cX?D>}>=A=?>U> zj?u>c>׳N4?׳>>W~?VS>>P?>>ǽX?D>}> *=A=?y +?U>/c>g{N4??>0=W~?>>=P??>'(=A=?y*?U> +>zj?y>c>\N4?>?>4,>W~?>>@>P?0?>x>X?8?}>8==A=?yJ?U>}>zj?@ +;N4?^?>U>W~??>>P?P?>>X?X?}>U>=A=?yj?U>}>zj?R>N4?~?>U>W~?4?>>P?p?>>X?x?}>>=A=?ľ?zj?)L>N4?l?>* ?W~?T?>?P??>^?X?Q|?}>>=A=?ľ"?zj?)L>N4?l?>* +?W~?t?>0?P??>^'?X?Q|?}>}?=A=?ľB?zj??c>&?N4?l?>* K?W~?ky?>?p?>>cx?D>þ?=A]?> > =A?u> ?׳NT?׳>RI>m?VS>>p?>>ǽx?D>þ? *=A]?y +? >/<=A?y> ?g{NT??RI>0=m?>>=p??> +>=A?y> ?\NT?>?RI>4,>m?>>@>p?0?>x>x?8?þ?8==A]?yJ? >}>=A?U>m??>>p?P?>>x?X?þ?U>=A]?yj? >}>=A?NT?~?RI>U>m?4?>>p?p?>>x?x?þ?>=A]?ľ?=A?NT?l?RI>* ?m?T?>?p??>^?x?Q|?þ?>=A]?ľ"?=A?NT?l?RI>* +?m?t?>0?p??>^'?x?Q|?þ?}?=A]?ľB?=A?? ?&?NT?l?RI>* K?m?ky????>]?cR|?D>þ"?=A}?> > =A?u> +?׳Nt?׳>RI>m?VS>??>]?ǽR|?D>þ"? *=A}?y +? >/<=A?y> +?g{Nt??RI>0=m?>?=??]? +>=A?y> +?\Nt?>?RI>4,>m?>?@>?0?]?x>R|?8?þ"?8==A}?yJ? >}>=A?U>m???>?P?]?>R|?X?þ"?U>=A}?yj? >}>=A?Nt?~?RI>U>m?4??>?p?]?>R|?x?þ"?>=A}?ľ?=A?Nt?l?RI>* ?m?T?????]?^?R|?Q|?þ"?>=A}?ľ"?=A?Nt?l?RI>* +?m?t??0???]?^'?R|?Q|?þ"?}?=A}?ľB?=A?? +?&?Nt?l?RI>* K?m?ky?0???>]'?cR|?D>þB??>}? =A?u> K?׳y?׳>$?m?VS>0??>]'?ǽR|?D>þB? *?y +?}?/<=A?y> K?g{y??$?0=m?>0?=??]'?=A?y> K?\y?>?$?4,>m?>0?@>?0?]'?x>R|?8?þB?8=?yJ?}?}>=A?m??0?>?P?]'?>R|?X?þB?U>?yj?}?}>=A?y?~?$?U>m?4?0?>?p?]'?>R|?x?þB?>?y?l?$?* ?m?T?0????]'?^?R|?Q|?þB?>?y?l?$?* +?m?t?0?0???]'?^'?R|?Q|?þB?}??ef>^5qZ5q>>zֽ:S>?=Stֽ?>H62>K0?H:C$0?>LL=gf>233?^5q`l<>VMU?=SƬ>??H,m@2>Kp?H:?>$0?|?L>gf>23s?^5qSe>>VM|?zֽY)>>Ԋ?=ScV>?Z?HPK~=2> ?H:>$0?|P?L ?gf>?^5q?>&?zֽƬ>>Ԫ?=S2+%??gj?Hjɟ>2> ?H:྄/?$0?>?L=L433?ef> lì>:S??LtֽU?>?>6 ?K0?t@C$p?>L=L=433?233? l<`lL?U?LƬ>U???>,m@ ?Kp?t@?>$p?|?L=>433?23s? lXMY)>?Ԋ?LcV>U?Z??>PK~= ? ?t@>$p?|P?L= ?433?? l<?XMƬ>?Ԫ?L2+%?U?gj??>jɟ> ? ?t@/?$p?>?>L43s?ef>Qe>Z5qXM|?>bV>:SZ??Y)>tֽԊ?>>6 P?K0?-~=C?>>L=43s?233?Qe>`lLZ?U?Y)>Ƭ>Ԋ??>,m@ P?Kp?-~=?>?|?>>43s?23s?Qe>Se>XM|?VM|?bV>Y)>Z?Ԋ?Y)>cV>Ԋ?Z?>PK~= P? ?-~=>?|P?> ?43s??Qe>?XM|?&?bV>Ƭ>Z?Ԫ?Y)>2+%?Ԋ?gj?>jɟ> P? ?-~=/??>? ?L?ef>?Z5q&?>1+%?:Shj??ì>tֽԪ?>/?6ྍ?K0?ş>C?> ?L=?233??`l<&?VMƬ>Ԫ??/?,m@?Kp?ş>?>?|? ?>?23s??Se>&?VM|?1+%?Y)>hj?Ԋ?ì>cV>Ԫ?Z?/?PK~=? ?ş>>?|P? ? ?????&?&?1+%?Ƭ>hj?Ԫ?ì>2+%?Ԫ?gj?/?jɟ>? ?ş>/??>?gf&?ff&?Y>Y>|/?z/? bh?P?P?ah?x#\q?⾰;<^q?E<>43>gf&?33?Y> Ӡ>|/?=˗? <>bh?ah?>/>P?04?x#<@5j==>V??^q?"{?23>43?ff&? Ӡ>Y>>˗?z/?14?P?<>bh?ah??X{?\q?j=;23>43>43?33? Ӡ> Ӡ>>˗?=˗?<>14?ah?<>>/>bh?04??@5j={?V?j=?x?"{?</U??/4(>?U?D-g><4F?O?|A0g>_P?3F? \ No newline at end of file diff --git a/assets/face/models/ssd_mobilenetv1_model-weights_manifest.json b/assets/face/models/ssd_mobilenetv1_model-weights_manifest.json new file mode 100644 index 0000000000000000000000000000000000000000..204e0d13c87e9c059e4995f39447dcc45921a630 --- /dev/null +++ b/assets/face/models/ssd_mobilenetv1_model-weights_manifest.json @@ -0,0 +1 @@ +[{"paths":["ssd_mobilenetv1_model-shard1","ssd_mobilenetv1_model-shard2"],"weights":[{"dtype":"float32","shape":[1,1,512,9],"quantization":{"scale":0.0026856216729856004,"min":-0.34107395246917127,"dtype":"uint8"},"name":"Prediction/BoxPredictor_0/ClassPredictor/weights"},{"dtype":"float32","shape":[9],"quantization":{"scale":0.00198518248165355,"min":-0.32159956202787515,"dtype":"uint8"},"name":"Prediction/BoxPredictor_0/ClassPredictor/biases"},{"dtype":"float32","shape":[1,1,1024,18],"quantization":{"scale":0.003060340296988394,"min":-0.489654447518143,"dtype":"uint8"},"name":"Prediction/BoxPredictor_1/ClassPredictor/weights"},{"dtype":"float32","shape":[18],"quantization":{"scale":0.0008040678851744708,"min":-0.12221831854651957,"dtype":"uint8"},"name":"Prediction/BoxPredictor_1/ClassPredictor/biases"},{"dtype":"float32","shape":[1,1,512,18],"quantization":{"scale":0.0012513800578958848,"min":-0.16017664741067325,"dtype":"uint8"},"name":"Prediction/BoxPredictor_2/ClassPredictor/weights"},{"dtype":"float32","shape":[18],"quantization":{"scale":0.000338070518245884,"min":-0.05510549447407909,"dtype":"uint8"},"name":"Prediction/BoxPredictor_2/ClassPredictor/biases"},{"dtype":"float32","shape":[1,1,256,18],"quantization":{"scale":0.0011819932975021064,"min":-0.1453851755927591,"dtype":"uint8"},"name":"Prediction/BoxPredictor_3/ClassPredictor/weights"},{"dtype":"float32","shape":[18],"quantization":{"scale":0.00015985782386041154,"min":-0.026536398760828316,"dtype":"uint8"},"name":"Prediction/BoxPredictor_3/ClassPredictor/biases"},{"dtype":"float32","shape":[1,1,256,18],"quantization":{"scale":0.0007035591438704846,"min":-0.08513065640832863,"dtype":"uint8"},"name":"Prediction/BoxPredictor_4/ClassPredictor/weights"},{"dtype":"float32","shape":[18],"quantization":{"scale":0.00008793946574716008,"min":-0.013190919862074012,"dtype":"uint8"},"name":"Prediction/BoxPredictor_4/ClassPredictor/biases"},{"dtype":"float32","shape":[1,1,128,18],"quantization":{"scale":0.00081320781918133,"min":-0.11059626340866088,"dtype":"uint8"},"name":"Prediction/BoxPredictor_5/ClassPredictor/weights"},{"dtype":"float32","shape":[18],"quantization":{"scale":0.0000980533805547976,"min":-0.014609953702664841,"dtype":"uint8"},"name":"Prediction/BoxPredictor_5/ClassPredictor/biases"},{"dtype":"int32","shape":[],"quantization":{"scale":1,"min":3,"dtype":"uint8"},"name":"Prediction/BoxPredictor_0/stack_1/2"},{"dtype":"int32","shape":[3],"quantization":{"scale":0.00392156862745098,"min":0,"dtype":"uint8"},"name":"Postprocessor/Slice/begin"},{"dtype":"int32","shape":[3],"quantization":{"scale":1,"min":-1,"dtype":"uint8"},"name":"Postprocessor/Slice/size"},{"dtype":"float32","shape":[1,1,512,12],"quantization":{"scale":0.003730384859384275,"min":-0.4327246436885759,"dtype":"uint8"},"name":"Prediction/BoxPredictor_0/BoxEncodingPredictor/weights"},{"dtype":"float32","shape":[12],"quantization":{"scale":0.0018744708568442102,"min":-0.3917644090804399,"dtype":"uint8"},"name":"Prediction/BoxPredictor_0/BoxEncodingPredictor/biases"},{"dtype":"int32","shape":[],"quantization":{"scale":1,"min":3072,"dtype":"uint8"},"name":"Prediction/BoxPredictor_0/stack_1/1"},{"dtype":"float32","shape":[1,1,1024,24],"quantization":{"scale":0.00157488017689948,"min":-0.20000978246623397,"dtype":"uint8"},"name":"Prediction/BoxPredictor_1/BoxEncodingPredictor/weights"},{"dtype":"float32","shape":[24],"quantization":{"scale":0.0002823906713256649,"min":-0.043488163384152394,"dtype":"uint8"},"name":"Prediction/BoxPredictor_1/BoxEncodingPredictor/biases"},{"dtype":"int32","shape":[],"quantization":{"scale":1,"min":1536,"dtype":"uint8"},"name":"Prediction/BoxPredictor_1/stack_1/1"},{"dtype":"float32","shape":[1,1,512,24],"quantization":{"scale":0.0007974451663447361,"min":-0.11004743295557358,"dtype":"uint8"},"name":"Prediction/BoxPredictor_2/BoxEncodingPredictor/weights"},{"dtype":"float32","shape":[24],"quantization":{"scale":0.0001350417988849621,"min":-0.02039131163162928,"dtype":"uint8"},"name":"Prediction/BoxPredictor_2/BoxEncodingPredictor/biases"},{"dtype":"int32","shape":[],"quantization":{"scale":1,"min":384,"dtype":"uint8"},"name":"Prediction/BoxPredictor_2/stack_1/1"},{"dtype":"float32","shape":[1,1,256,24],"quantization":{"scale":0.0007113990246080885,"min":-0.0860792819775787,"dtype":"uint8"},"name":"Prediction/BoxPredictor_3/BoxEncodingPredictor/weights"},{"dtype":"float32","shape":[24],"quantization":{"scale":0.000050115815418608046,"min":-0.007617603943628423,"dtype":"uint8"},"name":"Prediction/BoxPredictor_3/BoxEncodingPredictor/biases"},{"dtype":"int32","shape":[],"quantization":{"scale":1,"min":96,"dtype":"uint8"},"name":"Prediction/BoxPredictor_3/stack_1/1"},{"dtype":"float32","shape":[1,1,256,24],"quantization":{"scale":0.000590049314732645,"min":-0.06903576982371946,"dtype":"uint8"},"name":"Prediction/BoxPredictor_4/BoxEncodingPredictor/weights"},{"dtype":"float32","shape":[24],"quantization":{"scale":0.00003513663861097074,"min":-0.006359731588585704,"dtype":"uint8"},"name":"Prediction/BoxPredictor_4/BoxEncodingPredictor/biases"},{"dtype":"int32","shape":[],"quantization":{"scale":1,"min":24,"dtype":"uint8"},"name":"Prediction/BoxPredictor_4/stack_1/1"},{"dtype":"float32","shape":[1,1,128,24],"quantization":{"scale":0.0005990567744946948,"min":-0.07907549423329971,"dtype":"uint8"},"name":"Prediction/BoxPredictor_5/BoxEncodingPredictor/weights"},{"dtype":"float32","shape":[24],"quantization":{"scale":0.00003392884288640583,"min":-0.006039334033780238,"dtype":"uint8"},"name":"Prediction/BoxPredictor_5/BoxEncodingPredictor/biases"},{"dtype":"float32","shape":[],"quantization":{"scale":1,"min":0.007843137718737125,"dtype":"uint8"},"name":"Preprocessor/mul/x"},{"dtype":"int32","shape":[2],"quantization":{"scale":1,"min":512,"dtype":"uint8"},"name":"Preprocessor/ResizeImage/size"},{"dtype":"float32","shape":[],"quantization":{"scale":1,"min":1,"dtype":"uint8"},"name":"Preprocessor/sub/y"},{"dtype":"float32","shape":[3,3,3,32],"quantization":{"scale":0.03948551065781537,"min":-5.014659853542552,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_0_pointwise/weights"},{"dtype":"float32","shape":[32],"quantization":{"scale":0.0498106133704092,"min":-7.371970778820562,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_0_pointwise/convolution_bn_offset"},{"dtype":"float32","shape":[3,3,32,1],"quantization":{"scale":0.036833542468501075,"min":-4.714693435968138,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_1_depthwise/depthwise_weights"},{"dtype":"float32","shape":[32],"quantization":{"scale":0.012173276705046495,"min":-0.012173276705046495,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_1_depthwise/BatchNorm/gamma"},{"dtype":"float32","shape":[32],"quantization":{"scale":0.032182769214405736,"min":-2.4780732295092416,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_1_depthwise/BatchNorm/beta"},{"dtype":"float32","shape":[32],"quantization":{"scale":0.028287527607936486,"min":-3.366215785344442,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_1_depthwise/BatchNorm/moving_mean"},{"dtype":"float32","shape":[32],"quantization":{"scale":0.04716738532571232,"min":3.9071404665769224e-36,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_1_depthwise/BatchNorm/moving_variance"},{"dtype":"float32","shape":[1,1,32,64],"quantization":{"scale":0.04010109433940812,"min":-4.290817094316669,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_1_pointwise/weights"},{"dtype":"float32","shape":[64],"quantization":{"scale":0.2212210038129021,"min":-34.51047659481273,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_1_pointwise/convolution_bn_offset"},{"dtype":"float32","shape":[3,3,64,1],"quantization":{"scale":0.010024750933927648,"min":-1.343316625146305,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_2_depthwise/depthwise_weights"},{"dtype":"float32","shape":[64],"quantization":{"scale":0.006120916675118839,"min":0.5227176547050476,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_2_depthwise/BatchNorm/gamma"},{"dtype":"float32","shape":[64],"quantization":{"scale":0.02317035385206634,"min":-0.7646216771181892,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_2_depthwise/BatchNorm/beta"},{"dtype":"float32","shape":[64],"quantization":{"scale":0.04980821422502106,"min":-5.8275610643274645,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_2_depthwise/BatchNorm/moving_mean"},{"dtype":"float32","shape":[64],"quantization":{"scale":0.051751047022202436,"min":3.916113799002297e-36,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_2_depthwise/BatchNorm/moving_variance"},{"dtype":"float32","shape":[1,1,64,128],"quantization":{"scale":0.021979344124887504,"min":-2.1319963801140878,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_2_pointwise/weights"},{"dtype":"float32","shape":[128],"quantization":{"scale":0.09958663267247816,"min":-11.054116226645077,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_2_pointwise/convolution_bn_offset"},{"dtype":"float32","shape":[3,3,128,1],"quantization":{"scale":0.01943492702409333,"min":-2.6237151482525993,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_3_depthwise/depthwise_weights"},{"dtype":"float32","shape":[128],"quantization":{"scale":0.017852897737540452,"min":0.40204083919525146,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_3_depthwise/BatchNorm/gamma"},{"dtype":"float32","shape":[128],"quantization":{"scale":0.029888209174661076,"min":-1.972621805527631,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_3_depthwise/BatchNorm/beta"},{"dtype":"float32","shape":[128],"quantization":{"scale":0.029319268581913967,"min":-5.130872001834945,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_3_depthwise/BatchNorm/moving_mean"},{"dtype":"float32","shape":[128],"quantization":{"scale":0.014018708584355373,"min":3.9083178263362604e-36,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_3_depthwise/BatchNorm/moving_variance"},{"dtype":"float32","shape":[1,1,128,128],"quantization":{"scale":0.020776657964669022,"min":-2.5347522716896207,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_3_pointwise/weights"},{"dtype":"float32","shape":[128],"quantization":{"scale":0.14383157094319662,"min":-9.636715253194174,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_3_pointwise/convolution_bn_offset"},{"dtype":"float32","shape":[3,3,128,1],"quantization":{"scale":0.004463558571011412,"min":-0.5981168485155293,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_4_depthwise/depthwise_weights"},{"dtype":"float32","shape":[128],"quantization":{"scale":0.006487431245691636,"min":0.47910428047180176,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_4_depthwise/BatchNorm/gamma"},{"dtype":"float32","shape":[128],"quantization":{"scale":0.026542164297664865,"min":-1.2209395576925839,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_4_depthwise/BatchNorm/beta"},{"dtype":"float32","shape":[128],"quantization":{"scale":0.05119945675719018,"min":-8.60150873520795,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_4_depthwise/BatchNorm/moving_mean"},{"dtype":"float32","shape":[128],"quantization":{"scale":0.03081628388049556,"min":3.911508751095344e-36,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_4_depthwise/BatchNorm/moving_variance"},{"dtype":"float32","shape":[1,1,128,256],"quantization":{"scale":0.010758659886378868,"min":-1.0328313490923713,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_4_pointwise/weights"},{"dtype":"float32","shape":[256],"quantization":{"scale":0.08058219610476026,"min":-9.34753474815219,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_4_pointwise/convolution_bn_offset"},{"dtype":"float32","shape":[3,3,256,1],"quantization":{"scale":0.01145936741548426,"min":-1.3292866201961742,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_5_depthwise/depthwise_weights"},{"dtype":"float32","shape":[256],"quantization":{"scale":0.0083988838336047,"min":0.36280909180641174,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_5_depthwise/BatchNorm/gamma"},{"dtype":"float32","shape":[256],"quantization":{"scale":0.02858148649627087,"min":-3.6584302715226715,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_5_depthwise/BatchNorm/beta"},{"dtype":"float32","shape":[256],"quantization":{"scale":0.03988401375564874,"min":-7.099354448505476,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_5_depthwise/BatchNorm/moving_mean"},{"dtype":"float32","shape":[256],"quantization":{"scale":0.009090481683904049,"min":0.020878996700048447,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_5_depthwise/BatchNorm/moving_variance"},{"dtype":"float32","shape":[1,1,256,256],"quantization":{"scale":0.008951201625898773,"min":-1.1189002032373465,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_5_pointwise/weights"},{"dtype":"float32","shape":[256],"quantization":{"scale":0.051758006974762565,"min":-5.745138774198645,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_5_pointwise/convolution_bn_offset"},{"dtype":"float32","shape":[3,3,256,1],"quantization":{"scale":0.004110433190476661,"min":-0.6042336790000691,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_6_depthwise/depthwise_weights"},{"dtype":"float32","shape":[256],"quantization":{"scale":0.013170199768216002,"min":0.3386639356613159,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_6_depthwise/BatchNorm/gamma"},{"dtype":"float32","shape":[256],"quantization":{"scale":0.03599378548416437,"min":-3.70735990486893,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_6_depthwise/BatchNorm/beta"},{"dtype":"float32","shape":[256],"quantization":{"scale":0.026967673208199296,"min":-3.748506575939702,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_6_depthwise/BatchNorm/moving_mean"},{"dtype":"float32","shape":[256],"quantization":{"scale":0.012615410486857097,"min":3.9111388979838637e-36,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_6_depthwise/BatchNorm/moving_variance"},{"dtype":"float32","shape":[1,1,256,512],"quantization":{"scale":0.00822840648538926,"min":-1.1848905338960536,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_6_pointwise/weights"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.06608965817619772,"min":-7.468131373910342,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_6_pointwise/convolution_bn_offset"},{"dtype":"float32","shape":[3,3,512,1],"quantization":{"scale":0.008801074355256323,"min":-0.9593171047229393,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_7_depthwise/depthwise_weights"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.030577416513480393,"min":0.3285980224609375,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_7_depthwise/BatchNorm/gamma"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.04778536441279393,"min":-8.935863145192464,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_7_depthwise/BatchNorm/beta"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.04331884945140165,"min":-9.660103427662568,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_7_depthwise/BatchNorm/moving_mean"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.04126455444367785,"min":0.000604183878749609,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_7_depthwise/BatchNorm/moving_variance"},{"dtype":"float32","shape":[1,1,512,512],"quantization":{"scale":0.009305818408143287,"min":-1.1446156642016243,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_7_pointwise/weights"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.04640720217835669,"min":-4.733534622192383,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_7_pointwise/convolution_bn_offset"},{"dtype":"float32","shape":[3,3,512,1],"quantization":{"scale":0.008138792655047248,"min":-0.9766551186056698,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_8_depthwise/depthwise_weights"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.027351748358969596,"min":0.34030041098594666,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_8_depthwise/BatchNorm/gamma"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.04415061053107767,"min":-7.019947074441349,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_8_depthwise/BatchNorm/beta"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.02476683784933651,"min":-2.9224868662217083,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_8_depthwise/BatchNorm/moving_mean"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.02547598832684076,"min":0.00026032101595774293,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_8_depthwise/BatchNorm/moving_variance"},{"dtype":"float32","shape":[1,1,512,512],"quantization":{"scale":0.01083052625843123,"min":-1.2563410459780227,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_8_pointwise/weights"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.06360894371481503,"min":-7.951117964351878,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_8_pointwise/convolution_bn_offset"},{"dtype":"float32","shape":[3,3,512,1],"quantization":{"scale":0.006704086883395326,"min":-0.8648272079579971,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_9_depthwise/depthwise_weights"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.015343831567203297,"min":0.2711026668548584,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_9_depthwise/BatchNorm/gamma"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.03378283930759804,"min":-4.797163181678922,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_9_depthwise/BatchNorm/beta"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.021910778213949763,"min":-3.987761634938857,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_9_depthwise/BatchNorm/moving_mean"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.009284070410007296,"min":0.000021581046894425526,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_9_depthwise/BatchNorm/moving_variance"},{"dtype":"float32","shape":[1,1,512,512],"quantization":{"scale":0.012783036979974485,"min":-1.9046725100161983,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_9_pointwise/weights"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.07273082733154297,"min":-9.52773838043213,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_9_pointwise/convolution_bn_offset"},{"dtype":"float32","shape":[3,3,512,1],"quantization":{"scale":0.006126228033327589,"min":-0.7351473639993107,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_10_depthwise/depthwise_weights"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.029703759212119908,"min":0.28687000274658203,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_10_depthwise/BatchNorm/gamma"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.04394429898729511,"min":-6.3279790541704966,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_10_depthwise/BatchNorm/beta"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.016566915605582443,"min":-2.7501079905266854,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_10_depthwise/BatchNorm/moving_mean"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.012152872833551145,"min":3.913338286370366e-36,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_10_depthwise/BatchNorm/moving_variance"},{"dtype":"float32","shape":[1,1,512,512],"quantization":{"scale":0.01354524388032801,"min":-1.7473364605623134,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_10_pointwise/weights"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.08566816367355047,"min":-9.937506986131854,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_10_pointwise/convolution_bn_offset"},{"dtype":"float32","shape":[3,3,512,1],"quantization":{"scale":0.006012305558896532,"min":-0.7876120282154457,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_11_depthwise/depthwise_weights"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.01469323155926723,"min":0.29223933815956116,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_11_depthwise/BatchNorm/gamma"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.030889174517463234,"min":-3.2433633243336395,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_11_depthwise/BatchNorm/beta"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.014836942448335536,"min":-2.047498057870304,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_11_depthwise/BatchNorm/moving_mean"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.007234466105343445,"min":0.00013165915152058005,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_11_depthwise/BatchNorm/moving_variance"},{"dtype":"float32","shape":[1,1,512,512],"quantization":{"scale":0.016261722527298274,"min":-1.4798167499841428,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_11_pointwise/weights"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.091437328563017,"min":-14.172785927267636,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_11_pointwise/convolution_bn_offset"},{"dtype":"float32","shape":[3,3,512,1],"quantization":{"scale":0.004750356487199372,"min":-0.650798838746314,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_12_depthwise/depthwise_weights"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.008174965545242907,"min":0.3120670020580292,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_12_depthwise/BatchNorm/gamma"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.030133422215779623,"min":-2.41067377726237,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_12_depthwise/BatchNorm/beta"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.006088157261119169,"min":-0.7853722866843729,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_12_depthwise/BatchNorm/moving_mean"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.003668997334498985,"min":3.9124486300013356e-36,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_12_depthwise/BatchNorm/moving_variance"},{"dtype":"float32","shape":[1,1,512,1024],"quantization":{"scale":0.010959514449624454,"min":-1.4028178495519301,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_12_pointwise/weights"},{"dtype":"float32","shape":[1024],"quantization":{"scale":0.10896045834410424,"min":-14.818622334798176,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_12_pointwise/convolution_bn_offset"},{"dtype":"float32","shape":[3,3,1024,1],"quantization":{"scale":0.004633033509347953,"min":-0.5652300881404502,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_13_depthwise/depthwise_weights"},{"dtype":"float32","shape":[1024],"quantization":{"scale":0.022285057224479377,"min":0.23505790531635284,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_13_depthwise/BatchNorm/gamma"},{"dtype":"float32","shape":[1024],"quantization":{"scale":0.0324854850769043,"min":-3.9957146644592285,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_13_depthwise/BatchNorm/beta"},{"dtype":"float32","shape":[1024],"quantization":{"scale":0.014760061806323482,"min":-2.125448900110581,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_13_depthwise/BatchNorm/moving_mean"},{"dtype":"float32","shape":[1024],"quantization":{"scale":0.0036057423142825855,"min":3.9067056828997994e-36,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_13_depthwise/BatchNorm/moving_variance"},{"dtype":"float32","shape":[1,1,1024,1024],"quantization":{"scale":0.017311988157384536,"min":-2.094750567043529,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_13_pointwise/weights"},{"dtype":"float32","shape":[1024],"quantization":{"scale":0.16447528764313343,"min":-25.658144872328815,"dtype":"uint8"},"name":"MobilenetV1/Conv2d_13_pointwise/convolution_bn_offset"},{"dtype":"float32","shape":[1,1,1024,256],"quantization":{"scale":0.0026493051472832175,"min":-0.36825341547236723,"dtype":"uint8"},"name":"Prediction/Conv2d_0_pointwise/weights"},{"dtype":"float32","shape":[256],"quantization":{"scale":0.012474596734140433,"min":-2.3078003958159803,"dtype":"uint8"},"name":"Prediction/Conv2d_0_pointwise/convolution_bn_offset"},{"dtype":"float32","shape":[3,3,256,512],"quantization":{"scale":0.014533351449405445,"min":-1.8166689311756807,"dtype":"uint8"},"name":"Prediction/Conv2d_1_pointwise/weights"},{"dtype":"float32","shape":[512],"quantization":{"scale":0.024268776762719248,"min":-2.4754152297973633,"dtype":"uint8"},"name":"Prediction/Conv2d_1_pointwise/convolution_bn_offset"},{"dtype":"float32","shape":[1,1,512,128],"quantization":{"scale":0.002208403746287028,"min":-0.28709248701731366,"dtype":"uint8"},"name":"Prediction/Conv2d_2_pointwise/weights"},{"dtype":"float32","shape":[128],"quantization":{"scale":0.012451349052728392,"min":-1.5937726787492341,"dtype":"uint8"},"name":"Prediction/Conv2d_2_pointwise/convolution_bn_offset"},{"dtype":"float32","shape":[3,3,128,256],"quantization":{"scale":0.026334229637594783,"min":-2.8967652601354263,"dtype":"uint8"},"name":"Prediction/Conv2d_3_pointwise/weights"},{"dtype":"float32","shape":[256],"quantization":{"scale":0.02509917792151956,"min":-1.4055539636050953,"dtype":"uint8"},"name":"Prediction/Conv2d_3_pointwise/convolution_bn_offset"},{"dtype":"float32","shape":[1,1,256,128],"quantization":{"scale":0.004565340046789132,"min":-0.3971845840706545,"dtype":"uint8"},"name":"Prediction/Conv2d_4_pointwise/weights"},{"dtype":"float32","shape":[128],"quantization":{"scale":0.017302456556581983,"min":-2.5953684834872974,"dtype":"uint8"},"name":"Prediction/Conv2d_4_pointwise/convolution_bn_offset"},{"dtype":"float32","shape":[3,3,128,256],"quantization":{"scale":0.025347338470758176,"min":-3.8527954475552426,"dtype":"uint8"},"name":"Prediction/Conv2d_5_pointwise/weights"},{"dtype":"float32","shape":[256],"quantization":{"scale":0.033134659598855414,"min":-2.9158500446992766,"dtype":"uint8"},"name":"Prediction/Conv2d_5_pointwise/convolution_bn_offset"},{"dtype":"float32","shape":[1,1,256,64],"quantization":{"scale":0.002493104397081861,"min":-0.2817207968702503,"dtype":"uint8"},"name":"Prediction/Conv2d_6_pointwise/weights"},{"dtype":"float32","shape":[64],"quantization":{"scale":0.011383360974928912,"min":-1.2749364291920382,"dtype":"uint8"},"name":"Prediction/Conv2d_6_pointwise/convolution_bn_offset"},{"dtype":"float32","shape":[3,3,64,128],"quantization":{"scale":0.020821522731407017,"min":-2.7484410005457263,"dtype":"uint8"},"name":"Prediction/Conv2d_7_pointwise/weights"},{"dtype":"float32","shape":[128],"quantization":{"scale":0.052144218893612135,"min":-3.5979511036592373,"dtype":"uint8"},"name":"Prediction/Conv2d_7_pointwise/convolution_bn_offset"},{"dtype":"int32","shape":[],"quantization":{"scale":1,"min":6,"dtype":"uint8"},"name":"Prediction/BoxPredictor_5/stack_1/1"},{"dtype":"int32","shape":[],"quantization":{"scale":1,"min":1,"dtype":"uint8"},"name":"concat_1/axis"},{"dtype":"int32","shape":[1],"quantization":{"scale":1,"min":0,"dtype":"uint8"},"name":"Prediction/BoxPredictor_0/strided_slice/stack"},{"dtype":"int32","shape":[1],"quantization":{"scale":1,"min":1,"dtype":"uint8"},"name":"Prediction/BoxPredictor_0/strided_slice/stack_1"},{"dtype":"int32","shape":[],"quantization":{"scale":1,"min":5118,"dtype":"uint8"},"name":"Postprocessor/stack/1"},{"dtype":"int32","shape":[],"quantization":{"scale":1,"min":4,"dtype":"uint8"},"name":"Prediction/BoxPredictor_0/stack/3"},{"dtype":"float32","shape":[1, 5118, 4],"name":"Output/extra_dim"}]}] \ No newline at end of file diff --git a/assets/face/models/tiny_face_detector_model-shard1 b/assets/face/models/tiny_face_detector_model-shard1 new file mode 100644 index 0000000000000000000000000000000000000000..a3f113a54220f9bda6b5e9a805fa657a13a0cd21 Binary files /dev/null and b/assets/face/models/tiny_face_detector_model-shard1 differ diff --git a/assets/face/models/tiny_face_detector_model-weights_manifest.json b/assets/face/models/tiny_face_detector_model-weights_manifest.json new file mode 100644 index 0000000000000000000000000000000000000000..7d3b222d04af27b6238f07b631e7c8c5f470b81f --- /dev/null +++ b/assets/face/models/tiny_face_detector_model-weights_manifest.json @@ -0,0 +1 @@ +[{"weights":[{"name":"conv0/filters","shape":[3,3,3,16],"dtype":"float32","quantization":{"dtype":"uint8","scale":0.009007044399485869,"min":-1.2069439495311063}},{"name":"conv0/bias","shape":[16],"dtype":"float32","quantization":{"dtype":"uint8","scale":0.005263455241334205,"min":-0.9211046672334858}},{"name":"conv1/depthwise_filter","shape":[3,3,16,1],"dtype":"float32","quantization":{"dtype":"uint8","scale":0.004001977630690033,"min":-0.5042491814669441}},{"name":"conv1/pointwise_filter","shape":[1,1,16,32],"dtype":"float32","quantization":{"dtype":"uint8","scale":0.013836609615999109,"min":-1.411334180831909}},{"name":"conv1/bias","shape":[32],"dtype":"float32","quantization":{"dtype":"uint8","scale":0.0015159862590771096,"min":-0.30926119685173037}},{"name":"conv2/depthwise_filter","shape":[3,3,32,1],"dtype":"float32","quantization":{"dtype":"uint8","scale":0.002666276225856706,"min":-0.317286870876948}},{"name":"conv2/pointwise_filter","shape":[1,1,32,64],"dtype":"float32","quantization":{"dtype":"uint8","scale":0.015265831292844286,"min":-1.6792414422128714}},{"name":"conv2/bias","shape":[64],"dtype":"float32","quantization":{"dtype":"uint8","scale":0.0020280554598453,"min":-0.37113414915168985}},{"name":"conv3/depthwise_filter","shape":[3,3,64,1],"dtype":"float32","quantization":{"dtype":"uint8","scale":0.006100742489683862,"min":-0.8907084034938438}},{"name":"conv3/pointwise_filter","shape":[1,1,64,128],"dtype":"float32","quantization":{"dtype":"uint8","scale":0.016276211832083907,"min":-2.0508026908425725}},{"name":"conv3/bias","shape":[128],"dtype":"float32","quantization":{"dtype":"uint8","scale":0.003394414279975143,"min":-0.7637432129944072}},{"name":"conv4/depthwise_filter","shape":[3,3,128,1],"dtype":"float32","quantization":{"dtype":"uint8","scale":0.006716050119961009,"min":-0.8059260143953211}},{"name":"conv4/pointwise_filter","shape":[1,1,128,256],"dtype":"float32","quantization":{"dtype":"uint8","scale":0.021875603993733724,"min":-2.8875797271728514}},{"name":"conv4/bias","shape":[256],"dtype":"float32","quantization":{"dtype":"uint8","scale":0.0041141652009066415,"min":-0.8187188749804216}},{"name":"conv5/depthwise_filter","shape":[3,3,256,1],"dtype":"float32","quantization":{"dtype":"uint8","scale":0.008423839597141042,"min":-0.9013508368940915}},{"name":"conv5/pointwise_filter","shape":[1,1,256,512],"dtype":"float32","quantization":{"dtype":"uint8","scale":0.030007277283014035,"min":-3.8709387695088107}},{"name":"conv5/bias","shape":[512],"dtype":"float32","quantization":{"dtype":"uint8","scale":0.008402082966823203,"min":-1.4871686851277068}},{"name":"conv8/filters","shape":[1,1,512,25],"dtype":"float32","quantization":{"dtype":"uint8","scale":0.028336129469030042,"min":-4.675461362389957}},{"name":"conv8/bias","shape":[25],"dtype":"float32","quantization":{"dtype":"uint8","scale":0.002268134028303857,"min":-0.41053225912299807}}],"paths":["tiny_face_detector_model-shard1"]}] \ No newline at end of file diff --git a/assets/face/onnx-wasm.wasm b/assets/face/onnx-wasm.wasm new file mode 100644 index 0000000000000000000000000000000000000000..d8ddca7c3d1f5bdae19c6e9ad32cf0dc91a23390 Binary files /dev/null and b/assets/face/onnx-wasm.wasm differ diff --git a/assets/face/onnx-worker.js b/assets/face/onnx-worker.js new file mode 100644 index 0000000000000000000000000000000000000000..a24467dea18955a6a03aaca8577349801500aa56 --- /dev/null +++ b/assets/face/onnx-worker.js @@ -0,0 +1,2 @@ +!function(n){var t={};function e(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return n[r].call(o.exports,o,o.exports,e),o.l=!0,o.exports}e.m=n,e.c=t,e.d=function(n,t,r){e.o(n,t)||Object.defineProperty(n,t,{enumerable:!0,get:r})},e.r=function(n){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(n,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(n,"__esModule",{value:!0})},e.t=function(n,t){if(1&t&&(n=e(n)),8&t)return n;if(4&t&&"object"==typeof n&&n&&n.__esModule)return n;var r=Object.create(null);if(e.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:n}),2&t&&"string"!=typeof n)for(var o in n)e.d(r,o,function(t){return n[t]}.bind(null,o));return r},e.n=function(n){var t=n&&n.__esModule?function(){return n.default}:function(){return n};return e.d(t,"a",t),t},e.o=function(n,t){return Object.prototype.hasOwnProperty.call(n,t)},e.p="",e(e.s=1)}([function(n,t){var e,r,o=n.exports={};function i(){throw new Error("setTimeout has not been defined")}function a(){throw new Error("clearTimeout has not been defined")}function u(n){if(e===setTimeout)return setTimeout(n,0);if((e===i||!e)&&setTimeout)return e=setTimeout,setTimeout(n,0);try{return e(n,0)}catch(t){try{return e.call(null,n,0)}catch(t){return e.call(this,n,0)}}}!function(){try{e="function"==typeof setTimeout?setTimeout:i}catch(n){e=i}try{r="function"==typeof clearTimeout?clearTimeout:a}catch(n){r=a}}();var f,s=[],l=!1,c=-1;function p(){l&&f&&(l=!1,f.length?s=f.concat(s):c=-1,s.length&&y())}function y(){if(!l){var n=u(p);l=!0;for(var t=s.length;t;){for(f=s,s=[];++c1)for(var e=1;ethis.numBytesAllocated&&this.expandMemory(s),n.ccallSerialize(r.HEAPU8.subarray(this.ptr8,this.ptr8+s),f,i);var l=t.now();this.func(e,this.ptr8);var c=t.now();return n.ccallDeserialize(r.HEAPU8.subarray(this.ptr8,this.ptr8+s),f,i),{startTime:u,endTime:t.now(),startTimeFunc:l,endTimeFunc:c}},n.prototype.ccallRaw=function(n,e){if(!o)throw new Error("wasm not initialized. please ensure 'init()' is called.");var i=t.now(),a=e.byteLength;a>this.numBytesAllocated&&this.expandMemory(a),r.HEAPU8.subarray(this.ptr8,this.ptr8+a).set(e);var u=t.now();this.func(n,this.ptr8);var f=t.now();return e.set(r.HEAPU8.subarray(this.ptr8,this.ptr8+a)),{startTime:i,endTime:t.now(),startTimeFunc:u,endTimeFunc:f}},n.prototype.func=function(n,t){(0,r[n])(t)},n.calculateOffsets=function(n,t){for(var e=4+4*t.length,r=0;r>2;if(o[a+1]=c,"out"!==l&&0!==c)switch(s){case"bool":n[c]=!0===f?1:0;break;case"int32":r[p]=f;break;case"float32":i[p]=f;break;case"boolptr":var y=f;n.subarray(c,c+y.length).set(f);break;case"int32ptr":var m=f;r.subarray(p,p+m.length).set(m);break;case"float32ptr":var _=f;i.subarray(p,p+_.length).set(_);break;default:throw new Error("not supported parameter type: "+s)}}},n.ccallDeserialize=function(n,t,e){for(var r=new Float32Array(n.buffer,n.byteOffset),o=new Uint8Array(n.buffer,n.byteOffset),i=0;i>2;if("out"===s||"inout"===s)switch(f){case"float32ptr":var p=u;p.set(r.subarray(c,c+p.length));break;case"boolptr":var y=u;y.set(o.subarray(l,l+y.length));break;default:throw new Error("not supported parameter type: "+f)}}},n.prototype.expandMemory=function(n){if(0!==this.ptr8&&r._free(this.ptr8),this.numBytesAllocated=2*n,this.ptr8=r._malloc(this.numBytesAllocated),0===this.ptr8)throw new Error("Unable to allocate requested amount of memory. Failing.")},n.prototype.dispose=function(){if(!o)throw new Error("wasm not initialized. please ensure 'init()' is called.");0!==this.ptr8&&r._free(this.ptr8)},n}();t.WasmBinding=a,t.now="undefined"!=typeof performance&&performance.now?function(){return performance.now()}:Date.now},function(n,t,e){(function(t,r){var o,i=(o="undefined"!=typeof document&&document.currentScript?document.currentScript.src:void 0,function(n){n=void 0!==(n=n||{})?n:{};var i,a={};for(i in n)n.hasOwnProperty(i)&&(a[i]=n[i]);n.arguments=[],n.thisProgram="./this.program",n.quit=function(n,t){throw t},n.preRun=[],n.postRun=[];var u,f,s=!1,l=!1;s="object"==typeof window,l="function"==typeof importScripts,u="object"==typeof t&&!s&&!l,f=!s&&!u&&!l;var c,p,y="";u?(y=r+"/",n.read=function(n,t){var r;return c||(c=e(4)),p||(p=e(5)),n=p.normalize(n),r=c.readFileSync(n),t?r:r.toString()},n.readBinary=function(t){var e=n.read(t,!0);return e.buffer||(e=new Uint8Array(e)),w(e.buffer),e},t.argv.length>1&&(n.thisProgram=t.argv[1].replace(/\\/g,"/")),n.arguments=t.argv.slice(2),t.on("uncaughtException",function(n){if(!(n instanceof fn))throw n}),t.on("unhandledRejection",ln),n.quit=function(n){t.exit(n)},n.inspect=function(){return"[Emscripten Module object]"}):f?("undefined"!=typeof read&&(n.read=function(n){return read(n)}),n.readBinary=function(n){var t;return"function"==typeof readbuffer?new Uint8Array(readbuffer(n)):(w("object"==typeof(t=read(n,"binary"))),t)},"undefined"!=typeof scriptArgs?n.arguments=scriptArgs:void 0!==arguments&&(n.arguments=arguments),"function"==typeof quit&&(n.quit=function(n){quit(n)})):(s||l)&&(l?y=self.location.href:document.currentScript&&(y=document.currentScript.src),o&&(y=o),y=0!==y.indexOf("blob:")?y.substr(0,y.lastIndexOf("/")+1):"",n.read=function(n){var t=new XMLHttpRequest;return t.open("GET",n,!1),t.send(null),t.responseText},l&&(n.readBinary=function(n){var t=new XMLHttpRequest;return t.open("GET",n,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)}),n.readAsync=function(n,t,e){var r=new XMLHttpRequest;r.open("GET",n,!0),r.responseType="arraybuffer",r.onload=function(){200==r.status||0==r.status&&r.response?t(r.response):e()},r.onerror=e,r.send(null)},n.setWindowTitle=function(n){document.title=n});var m=n.print||("undefined"!=typeof console?console.log.bind(console):"undefined"!=typeof print?print:null),_=n.printErr||("undefined"!=typeof printErr?printErr:"undefined"!=typeof console&&console.warn.bind(console)||m);for(i in a)a.hasOwnProperty(i)&&(n[i]=a[i]);a=void 0;var d={"f64-rem":function(n,t){return n%t},debugger:function(){}};new Array(0);var h,v=0,b=function(n){v=n};"object"!=typeof WebAssembly&&_("no native wasm support detected");var g=!1;function w(n,t){n||ln("Assertion failed: "+t)}var A,T,E,S,x="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function R(n,t,e){for(var r=t+e,o=t;n[o]&&!(o>=r);)++o;if(o-t>16&&n.subarray&&x)return x.decode(n.subarray(t,o));for(var i="";t>10,56320|1023&s)}}else i+=String.fromCharCode((31&a)<<6|u)}else i+=String.fromCharCode(a)}return i}function O(n,t){return n?R(E,n,t):""}function M(n,t){return n%t>0&&(n+=t-n%t),n}function k(){n.HEAP8=T=new Int8Array(A),n.HEAP16=new Int16Array(A),n.HEAP32=S=new Int32Array(A),n.HEAPU8=E=new Uint8Array(A),n.HEAPU16=new Uint16Array(A),n.HEAPU32=new Uint32Array(A),n.HEAPF32=new Float32Array(A),n.HEAPF64=new Float64Array(A)}"undefined"!=typeof TextDecoder&&new TextDecoder("utf-16le");var C=6096,P=n.TOTAL_MEMORY||16777216;function F(t){for(;t.length>0;){var e=t.shift();if("function"!=typeof e){var r=e.func;"number"==typeof r?void 0===e.arg?n.dynCall_v(r):n.dynCall_vi(r,e.arg):r(void 0===e.arg?null:e.arg)}else e()}}P<5242880&&_("TOTAL_MEMORY should be larger than TOTAL_STACK, was "+P+"! (TOTAL_STACK=5242880)"),n.buffer?A=n.buffer:"object"==typeof WebAssembly&&"function"==typeof WebAssembly.Memory?(h=new WebAssembly.Memory({initial:P/65536}),A=h.buffer):A=new ArrayBuffer(P),k(),S[C>>2]=5249232;var j=[],B=[],I=[],z=[],U=[],L=!1;Math.abs,Math.ceil,Math.floor,Math.min;var D=0,W=null,H=null;n.preloadedImages={},n.preloadedAudios={};var q="data:application/octet-stream;base64,";function N(n){return String.prototype.startsWith?n.startsWith(q):0===n.indexOf(q)}var G,Y="onnx-wasm.wasm";function V(){try{if(n.wasmBinary)return new Uint8Array(n.wasmBinary);if(n.readBinary)return n.readBinary(Y);throw"both async and sync fetching of the wasm failed"}catch(n){ln(n)}}function X(t){var e={env:t,global:{NaN:NaN,Infinity:1/0},"global.Math":Math,asm2wasm:d};function r(t,e){var r=t.exports;n.asm=r,function(t){if(D--,n.monitorRunDependencies&&n.monitorRunDependencies(D),0==D&&(null!==W&&(clearInterval(W),W=null),H)){var e=H;H=null,e()}}()}if(D++,n.monitorRunDependencies&&n.monitorRunDependencies(D),n.instantiateWasm)try{return n.instantiateWasm(e,r)}catch(n){return _("Module.instantiateWasm callback failed with error: "+n),!1}function o(n){r(n.instance)}function i(t){(n.wasmBinary||!s&&!l||"function"!=typeof fetch?new Promise(function(n,t){n(V())}):fetch(Y,{credentials:"same-origin"}).then(function(n){if(!n.ok)throw"failed to load wasm binary file at '"+Y+"'";return n.arrayBuffer()}).catch(function(){return V()})).then(function(n){return WebAssembly.instantiate(n,e)}).then(t,function(n){_("failed to asynchronously prepare wasm: "+n),ln(n)})}return n.wasmBinary||"function"!=typeof WebAssembly.instantiateStreaming||N(Y)||"function"!=typeof fetch?i(o):WebAssembly.instantiateStreaming(fetch(Y,{credentials:"same-origin"}),e).then(o,function(n){_("wasm streaming compile failed: "+n),_("falling back to ArrayBuffer instantiation"),i(o)}),{}}function K(){return!!K.uncaught_exception}function Z(n){try{return an(n)}catch(n){}}N(Y)||(G=Y,Y=n.locateFile?n.locateFile(G,y):y+G),n.asm=function(n,t,e){return t.memory=h,t.table=new WebAssembly.Table({initial:41,maximum:41,element:"anyfunc"}),t.__memory_base=1024,t.__table_base=0,X(t)};var J={last:0,caught:[],infos:{},deAdjust:function(n){if(!n||J.infos[n])return n;for(var t in J.infos)for(var e=+t,r=J.infos[e].adjusted,o=r.length,i=0;i0),e.refcount--,0!==e.refcount||e.rethrown||(e.destructor&&n.dynCall_vi(e.destructor,t),delete J.infos[t],Z(t))}},clearRef:function(n){n&&(J.infos[n].refcount=0)}},$={buffers:[null,[],[]],printChar:function(n,t){var e=$.buffers[n];0===t||10===t?((1===n?m:_)(R(e,0)),e.length=0):e.push(t)},varargs:0,get:function(n){return $.varargs+=4,S[$.varargs-4>>2]},getStr:function(){return O($.get())},get64:function(){var n=$.get();return $.get(),n},getZero:function(){$.get()}};function Q(){var t=n._fflush;t&&t(0);var e=$.buffers;e[1].length&&$.printChar(1,10),e[2].length&&$.printChar(2,10)}function nn(){return T.length}function tn(n){n=M(n,65536);var t=A.byteLength;try{return-1!==h.grow((n-t)/65536)?A=h.buffer:null}catch(n){return null}}function en(n){var t=nn();if(n>2147418112)return!1;for(var e=Math.max(t,16777216);e>2]=e,e=t.buffer;for(var a=0;a>2],r.adjusted.push(e),0|(b(i[a]),e);return e=S[e>>2],0|(b(o),e)},___cxa_free_exception:Z,___cxa_throw:function(n,t,e){throw J.infos[n]={ptr:n,adjusted:[n],type:t,destructor:e,refcount:0,caught:!1,rethrown:!1},J.last=n,"uncaught_exception"in K?K.uncaught_exception++:K.uncaught_exception=1,n},___gxx_personality_v0:function(){},___lock:function(){},___resumeException:function(n){throw J.last||(J.last=n),n},___setErrNo:function(t){return n.___errno_location&&(S[n.___errno_location()>>2]=t),t},___syscall140:function(n,t){$.varargs=t;try{var e=$.getStreamFromFD(),r=($.get(),$.get()),o=$.get(),i=$.get(),a=r;return FS.llseek(e,a,i),S[o>>2]=e.position,e.getdents&&0===a&&0===i&&(e.getdents=null),0}catch(n){return"undefined"!=typeof FS&&n instanceof FS.ErrnoError||ln(n),-n.errno}},___syscall146:function(n,t){$.varargs=t;try{for(var e=$.get(),r=$.get(),o=$.get(),i=0,a=0;a>2],f=S[r+(8*a+4)>>2],s=0;s0||(function(){if(n.preRun)for("function"==typeof n.preRun&&(n.preRun=[n.preRun]);n.preRun.length;)t=n.preRun.shift(),j.unshift(t);var t;F(j)}(),D>0||n.calledRun||(n.setStatus?(n.setStatus("Running..."),setTimeout(function(){setTimeout(function(){n.setStatus("")},1),e()},1)):e()))}function ln(t){throw n.onAbort&&n.onAbort(t),void 0!==t?(m(t),_(t),t=JSON.stringify(t)):t="",g=!0,"abort("+t+"). Build with -s ASSERTIONS=1 for more info."}if(n._matmul_f32=function(){return n.asm._matmul_f32.apply(null,arguments)},n._max_pool_f32=function(){return n.asm._max_pool_f32.apply(null,arguments)},n._memcpy=function(){return n.asm._memcpy.apply(null,arguments)},n._memset=function(){return n.asm._memset.apply(null,arguments)},n._mul_f32=function(){return n.asm._mul_f32.apply(null,arguments)},n._or_u8=function(){return n.asm._or_u8.apply(null,arguments)},n._prelu_f32=function(){return n.asm._prelu_f32.apply(null,arguments)},n._sbrk=function(){return n.asm._sbrk.apply(null,arguments)},n._softmax_f32=function(){return n.asm._softmax_f32.apply(null,arguments)},n._sub_f32=function(){return n.asm._sub_f32.apply(null,arguments)},n._sum_f32=function(){return n.asm._sum_f32.apply(null,arguments)},n._xor_u8=function(){return n.asm._xor_u8.apply(null,arguments)},n.establishStackSpace=function(){return n.asm.establishStackSpace.apply(null,arguments)},n.stackAlloc=function(){return n.asm.stackAlloc.apply(null,arguments)},n.stackRestore=function(){return n.asm.stackRestore.apply(null,arguments)},n.stackSave=function(){return n.asm.stackSave.apply(null,arguments)},n.dynCall_ii=function(){return n.asm.dynCall_ii.apply(null,arguments)},n.dynCall_iiii=function(){return n.asm.dynCall_iiii.apply(null,arguments)},n.dynCall_v=function(){return n.asm.dynCall_v.apply(null,arguments)},n.dynCall_vi=function(){return n.asm.dynCall_vi.apply(null,arguments)},n.dynCall_viiii=function(){return n.asm.dynCall_viiii.apply(null,arguments)},n.dynCall_viiiii=function(){return n.asm.dynCall_viiiii.apply(null,arguments)},n.dynCall_viiiiii=function(){return n.asm.dynCall_viiiiii.apply(null,arguments)},n.asm=on,n.then=function(t){if(n.calledRun)t(n);else{var e=n.onRuntimeInitialized;n.onRuntimeInitialized=function(){e&&e(),t(n)}}return n},fn.prototype=new Error,fn.prototype.constructor=fn,H=function t(){n.calledRun||sn(),n.calledRun||(H=t)},n.run=sn,n.abort=ln,n.preInit)for("function"==typeof n.preInit&&(n.preInit=[n.preInit]);n.preInit.length>0;)n.preInit.pop()();return sn(),n});n.exports=i}).call(this,e(0),"/")},function(n,t){},function(n,t,e){(function(n){function e(n,t){for(var e=0,r=n.length-1;r>=0;r--){var o=n[r];"."===o?n.splice(r,1):".."===o?(n.splice(r,1),e++):e&&(n.splice(r,1),e--)}if(t)for(;e--;e)n.unshift("..");return n}var r=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/,o=function(n){return r.exec(n).slice(1)};function i(n,t){if(n.filter)return n.filter(t);for(var e=[],r=0;r=-1&&!r;o--){var a=o>=0?arguments[o]:n.cwd();if("string"!=typeof a)throw new TypeError("Arguments to path.resolve must be strings");a&&(t=a+"/"+t,r="/"===a.charAt(0))}return(r?"/":"")+(t=e(i(t.split("/"),function(n){return!!n}),!r).join("/"))||"."},t.normalize=function(n){var r=t.isAbsolute(n),o="/"===a(n,-1);return(n=e(i(n.split("/"),function(n){return!!n}),!r).join("/"))||r||(n="."),n&&o&&(n+="/"),(r?"/":"")+n},t.isAbsolute=function(n){return"/"===n.charAt(0)},t.join=function(){var n=Array.prototype.slice.call(arguments,0);return t.normalize(i(n,function(n,t){if("string"!=typeof n)throw new TypeError("Arguments to path.join must be strings");return n}).join("/"))},t.relative=function(n,e){function r(n){for(var t=0;t=0&&""===n[e];e--);return t>e?[]:n.slice(t,e-t+1)}n=t.resolve(n).substr(1),e=t.resolve(e).substr(1);for(var o=r(n.split("/")),i=r(e.split("/")),a=Math.min(o.length,i.length),u=a,f=0;f { + if (event.data && event.data.type === 'SKIP_WAITING') { + self.skipWaiting(); + } +}); + +workbox.core.clientsClaim(); + +/** + * The workboxSW.precacheAndRoute() method efficiently caches and responds to + * requests for URLs in the manifest. + * See https://goo.gl/S9QRab + */ +self.__precacheManifest = [].concat(self.__precacheManifest || []); +workbox.precaching.precacheAndRoute(self.__precacheManifest, {}); + +workbox.routing.registerNavigationRoute(workbox.precaching.getCacheKeyForURL("/assets/face/index.html"), { + + blacklist: [/^\/_/,/\/[^\/]+\.[^\/]+$/], +}); diff --git a/assets/face/static/css/main.5ee12e06.chunk.css b/assets/face/static/css/main.5ee12e06.chunk.css new file mode 100644 index 0000000000000000000000000000000000000000..9da430f55267dffc31d94233a34f3cd32da3dc6c --- /dev/null +++ b/assets/face/static/css/main.5ee12e06.chunk.css @@ -0,0 +1,2 @@ +body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{text-align:center}.App-logo{-webkit-animation:App-logo-spin 20s linear infinite;animation:App-logo-spin 20s linear infinite;height:40vmin;pointer-events:none}.App-header{background-color:#282c34;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:calc(10px + 2vmin);color:#fff}.App-link{color:#61dafb}@-webkit-keyframes App-logo-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes App-logo-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.webcam{position:relative;height:100vh}.webcam canvas{top:0;z-index:0}.webcam .items,.webcam canvas{position:absolute;left:0;right:0;bottom:0}.webcam .items{z-index:1}.webcam img.isActive{border:1px solid #000;border-radius:5px}.items-list{height:200px;display:flex;overflow-x:auto;-webkit-overflow-scrolling:touch}.items img{width:350px;flex-shrink:0;height:100%} +/*# sourceMappingURL=main.5ee12e06.chunk.css.map */ \ No newline at end of file diff --git a/assets/face/static/css/main.5ee12e06.chunk.css.map b/assets/face/static/css/main.5ee12e06.chunk.css.map new file mode 100644 index 0000000000000000000000000000000000000000..e5ecf71f6d64982f32fd5277abfc9ce1da88095b --- /dev/null +++ b/assets/face/static/css/main.5ee12e06.chunk.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["index.css","App.css"],"names":[],"mappings":"AAAA,KACE,QAAS,CACT,mIAEY,CACZ,kCAAmC,CACnC,iCACF,CAEA,KACE,uEAEF,CCZA,KACE,iBACF,CAEA,UACE,mDAA4C,CAA5C,2CAA4C,CAC5C,aAAc,CACd,mBACF,CAEA,YACE,wBAAyB,CACzB,gBAAiB,CACjB,YAAa,CACb,qBAAsB,CACtB,kBAAmB,CACnB,sBAAuB,CACvB,4BAA6B,CAC7B,UACF,CAEA,UACE,aACF,CAEA,iCACE,GACE,8BAAuB,CAAvB,sBACF,CACA,GACE,+BAAyB,CAAzB,uBACF,CACF,CAPA,yBACE,GACE,8BAAuB,CAAvB,sBACF,CACA,GACE,+BAAyB,CAAzB,uBACF,CACF,CAEA,QACI,iBAAiB,CACjB,YACJ,CACA,eAII,KAAK,CAEL,SACJ,CACA,8BAPI,iBAAkB,CAClB,MAAO,CACP,OAAQ,CAER,QASJ,CANA,eAKI,SACJ,CAEA,qBACI,qBAAuB,CACvB,iBACJ,CACA,YACE,YAAa,CACb,YAAa,CACb,eAAgB,CAChB,gCACF,CACA,WACE,WAAY,CACZ,aAAc,CACd,WACF","file":"main.5ee12e06.chunk.css","sourcesContent":["body {\n margin: 0;\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',\n 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',\n sans-serif;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\ncode {\n font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New',\n monospace;\n}\n",".App {\n text-align: center;\n}\n\n.App-logo {\n animation: App-logo-spin infinite 20s linear;\n height: 40vmin;\n pointer-events: none;\n}\n\n.App-header {\n background-color: #282c34;\n min-height: 100vh;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n font-size: calc(10px + 2vmin);\n color: white;\n}\n\n.App-link {\n color: #61dafb;\n}\n\n@keyframes App-logo-spin {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(360deg);\n }\n}\n\n.webcam{\n position:relative;\n height:100vh;\n}\n.webcam canvas{\n position: absolute;\n left: 0;\n right: 0;\n top:0;\n bottom:0;\n z-index:0;\n}\n.webcam .items{\n position:absolute;\n bottom:0;\n left: 0;\n right:0;\n z-index:1;\n}\n\n.webcam img.isActive{\n border: solid 1px black;\n border-radius: 5px;\n}\n.items-list {\n height: 200px;\n display: flex;\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n}\n.items img {\n width: 350px;\n flex-shrink: 0;\n height: 100%;\n}\n"]} \ No newline at end of file diff --git a/assets/face/static/js/2.410d8023.chunk.js b/assets/face/static/js/2.410d8023.chunk.js new file mode 100644 index 0000000000000000000000000000000000000000..7755617bd263eda9a3ba0acbf57addfdb09f1fd9 --- /dev/null +++ b/assets/face/static/js/2.410d8023.chunk.js @@ -0,0 +1,2 @@ +(window.webpackJsonp=window.webpackJsonp||[]).push([[2],[function(t,e,n){"use strict";(function(t,r,i,o){n.d(e,"f",function(){return Ml}),n.d(e,"p",function(){return Sl}),n.d(e,"a",function(){return pt}),n.d(e,"b",function(){return dt}),n.d(e,"o",function(){return Mc}),n.d(e,"e",function(){return $a}),n.d(e,"h",function(){return ho}),n.d(e,"i",function(){return ps}),n.d(e,"j",function(){return gs}),n.d(e,"z",function(){return vs}),n.d(e,"q",function(){return bs}),n.d(e,"s",function(){return Ps}),n.d(e,"d",function(){return Is}),n.d(e,"B",function(){return Rs}),n.d(e,"C",function(){return Ds}),n.d(e,"g",function(){return pa}),n.d(e,"l",function(){return va}),n.d(e,"u",function(){return Sa}),n.d(e,"A",function(){return Aa}),n.d(e,"r",function(){return Vs}),n.d(e,"c",function(){return su}),n.d(e,"k",function(){return fu}),n.d(e,"t",function(){return wu}),n.d(e,"F",function(){return Mu}),n.d(e,"w",function(){return Bu}),n.d(e,"m",function(){return Do}),n.d(e,"v",function(){return Uo}),n.d(e,"x",function(){return Xo}),n.d(e,"E",function(){return $o}),n.d(e,"M",function(){return Jo}),n.d(e,"O",function(){return Qo}),n.d(e,"n",function(){return De}),n.d(e,"y",function(){return Ce}),n.d(e,"G",function(){return Ae}),n.d(e,"H",function(){return Pe}),n.d(e,"I",function(){return Ie}),n.d(e,"J",function(){return Oe}),n.d(e,"K",function(){return Re}),n.d(e,"P",function(){return Le}),n.d(e,"N",function(){return Uu}),n.d(e,"D",function(){return _e}),n.d(e,"L",function(){return Yt});var a=function(t,e){return(a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)};function s(t,e){function n(){this.constructor=t}a(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}var u=function(){return(u=Object.assign||function(t){for(var e,n=1,r=arguments.length;n0&&i[i.length-1])&&(6===o[0]||2===o[0])){a=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0;)r=Math.random()*e|0,n=t[--e],t[e]=t[r],t[r]=n}function m(t,e,n){return Math.max(t,Math.min(e,n))}function g(t){return t%2==0?t:t+1}function v(t){for(var e=0,n=0;n=n?i():setTimeout(a,s)}}()})}function I(t,e){for(var n=1,r=-1,i=0;i=0)n*=t[i];else if(-1===t[i]){if(-1!==r)throw Error("Shapes can only have 1 implicit size. Found -1 at dim "+r+" and dim "+i);r=i}else if(t[i]<0)throw Error("Shapes can not be < 0. Found "+t[i]+" at dim "+i);if(-1===r){if(e>0&&e!==n)throw Error("Size("+e+") must match the product of shape "+t);return t}if(0===n)throw Error("Cannot infer the missing size in ["+t+"] when there are 0 elements");if(e%n!=0)throw Error("The implicit shape can't be a fractional number. Got "+e+" / "+n);var o=t.slice();return o[r]=e/n,o}function O(t,e){var n=e.length;return b((t=null==t?e.map(function(t,e){return e}):[].concat(t)).every(function(t){return t>=-n&&ta)&&1===t[a]&&(n.push(t[a]),r.push(a)),i[o]<=a&&o++}1!==t[a]&&(n.push(t[a]),r.push(a))}return{newShape:n,keptDims:r}}function k(t,e){var n=null;if(null==t||"float32"===t)n=new Float32Array(e);else if("int32"===t)n=new Int32Array(e);else{if("bool"!==t)throw new Error("Unknown data type "+t);n=new Uint8Array(e)}return n}function L(t,e){var n=null;if(null==t||"float32"===t)n=new Float32Array(e);else if("int32"===t)n=new Int32Array(e);else if("bool"===t)n=new Uint8Array(e);else{if("string"!==t)throw new Error("Unknown data type "+t);n=new Array(e)}return n}function D(t,e,n){if("float32"===e)for(var r=0;r=0;--r)n[r]=n[r+1]*t[r+1];return n}function Y(t,e,n){if("string"===e)throw new Error("Cannot convert a string[] to a TypedArray");if(Array.isArray(t)&&(t=_(t)),n&&N(t,e),function(t,e){return t instanceof Float32Array&&"float32"===e||t instanceof Int32Array&&"int32"===e||t instanceof Uint8Array&&"bool"===e}(t,e))return t;if(null==e||"float32"===e||"complex64"===e)return new Float32Array(t);if("int32"===e)return new Int32Array(t);if("bool"===e){for(var r=new Uint8Array(t.length),i=0;i=0,function(){return"Tensor must have a shape comprised of positive integers but got shape ["+t+"]."})})}Object.freeze({shuffle:d,clamp:m,nearestLargerEven:g,sum:v,randUniform:y,distSquared:function(t,e){for(var n=0,r=0;r1)for(var c=0;cnt){var l=rt*s,f=Array.from(e.slice(0,l)),h=Array.from(e.slice(u-rt*s,u));return"complex64"===r&&(f=ut(f),h=ut(h)),["["+f.map(function(t,e){return at(t,o[e],r)}).join(", ")+", ..., "+h.map(function(t,e){return at(t,o[u-rt+e],r)}).join(", ")+"]"]}return["["+("complex64"===r?ut(e):Array.from(e)).map(function(t,e){return at(t,o[e],r)}).join(", ")+"]"]}var p=n.slice(1),d=i.slice(1),m=i[0]*s,g=[];if(u>nt){for(var v=0;v=this.shape[n]){var a="Requested out of range element at "+t+". Buffer shape="+this.shape;throw new Error(a)}n++}for(var s=t[t.length-1],u=0;u0&&(t.unreliable=!0,null==t.reasons&&(t.reasons=[]),t.reasons.push("Memory usage by string tensors is approximate (2 bytes per character)")),t},t.prototype.profile=function(t){return c(this,void 0,void 0,function(){var e,n;return l(this,function(r){return this.profiling=!0,e=this.numBytes,n=this.numTensors,this.activeProfile.kernels=[],this.activeProfile.result=t(),this.profiling=!1,this.activeProfile.peakBytes=Math.max.apply(Math,this.activeProfile.kernels.map(function(t){return t.totalBytesSnapshot})),this.activeProfile.newBytes=this.numBytes-e,this.activeProfile.newTensors=this.numTensors-n,[2,this.activeProfile]})})},t.prototype.isTapeOn=function(){return this.gradientDepth>0&&0===this.kernelDepth},t.prototype.addTapeNode=function(t,e,n){var r={};t.forEach(function(t,e){r[e]=t});var i={id:this.nextTapeNodeId++,name:this.activeScope.name,inputs:r,outputs:[e],gradient:function(t){var e={};return n(t).forEach(function(t,n){e[n]=function(){return t}}),e}};this.activeTape.push(i)},t.prototype.keep=function(t){if(1===this.scopeStack.length&&this.safeMode)throw new Error("Safe mode is ON. Enclose all tensor operations inside tf.tidy(): tf.tidy(() => {...}) to avoid memory leaks.");return t.kept=!0,t},t.prototype.startTape=function(){0===this.gradientDepth&&(this.activeTape=[]),this.gradientDepth++},t.prototype.endTape=function(){this.gradientDepth--},t.prototype.startScope=function(t){var e={track:[],name:"unnamed scope",id:this.nextScopeId++};t&&(e.name=t),this.scopeStack.push(e),this.activeScope=e},t.prototype.endScope=function(t){for(var e=this,n=Mt(t),r=new Set(n.map(function(t){return t.id})),i=0;i0,function(){return"gradients() received an empty list of xs."}),null!=n&&"float32"!==n.dtype)throw new Error("dy must have 'float32' dtype, but has '"+n.dtype+"'");var o=this.scopedRun(function(){return i.startTape()},function(){return i.endTape()},function(){return i.tidy("forward",t)});b(o instanceof pt,function(){return"The result y returned by f() must be a tensor."});var a=function(t,e,n){for(var r={},i={},o=0;o=0;o--)for(a=(d=t[o]).inputs,l=0;l0)throw new Error("Cannot compute gradient of y=f(x) with respect to x. Make sure that the f you passed encloses all operations that lead from x to y.");return this.tidy("backward",function(){var t={};t[o.id]=null==n?function(t){var e=$(S(t),"float32");return pt.make(t,{values:e})}(o.shape):n,function(t,e,n){for(var r=function(r){var i=e[r],o=[];if(i.outputs.forEach(function(e){var n=t[e.id];if(null!=n)o.push(n);else{var r=pt.make(e.shape,{values:J(e.size,e.dtype)},e.dtype);o.push(r)}}),null==i.gradient)throw new Error("Cannot compute gradient: gradient function not found for "+i.name+".");var a=i.gradient(1===i.outputs.length?o[0]:o),s=function(e){if(!(e in a))throw new Error("Cannot backprop through input "+e+". Available gradients found: "+Object.keys(a)+".");var r=n(function(){return a[e]()});if("float32"!==r.dtype)throw new Error("Error in gradient for op "+i.name+". The gradient of input "+e+" must have 'float32' dtype, but has '"+r.dtype+"'");var o=i.inputs[e];if(!E(r.shape,o.shape))throw new Error("Error in gradient for op "+i.name+". The gradient of input '"+e+"' has shape '"+r.shape+"', which does not match the shape of the input '"+o.shape+"'");if(null==t[o.id])t[o.id]=r;else{var s=t[o.id];t[o.id]=s.add(r),s.dispose()}};for(var u in i.inputs)s(u)},i=e.length-1;i>=0;i--)r(i)}(t,a,function(t){return i.tidy(t)});var r=e.map(function(e){return t[e.id]});return 0===i.gradientDepth&&(i.activeTape.forEach(function(t){for(var e in t.saved)t.saved[e].dispose()}),i.activeTape=null),{value:o,grads:r}})},t.prototype.customGrad=function(t){var e=this;return b(H(t),function(){return"The f passed in customGrad(f) must be a function."}),function(){for(var n,r=[],i=0;i {op();...}); to avoid memory leaks.");return null!=this.activeScope&&(t.scopeId=this.activeScope.id,this.activeScope.track.push(t)),t},t.nextTensorId=0,t.nextVariableId=0,t}();!function(t){t[t.NUMBER=0]="NUMBER",t[t.BOOLEAN=1]="BOOLEAN",t[t.STRING=2]="STRING"}(At||(At={}));var Pt,It,Ot=[{name:"DEBUG",type:At.BOOLEAN},{name:"IS_BROWSER",type:At.BOOLEAN},{name:"WEBGL_LAZILY_UNPACK",type:At.BOOLEAN},{name:"WEBGL_CPU_FORWARD",type:At.BOOLEAN},{name:"WEBGL_PACK",type:At.BOOLEAN},{name:"WEBGL_PACK_BATCHNORMALIZATION",type:At.BOOLEAN},{name:"WEBGL_PACK_CLIP",type:At.BOOLEAN},{name:"WEBGL_PACK_DEPTHWISECONV",type:At.BOOLEAN},{name:"WEBGL_PACK_BINARY_OPERATIONS",type:At.BOOLEAN},{name:"WEBGL_PACK_ARRAY_OPERATIONS",type:At.BOOLEAN},{name:"WEBGL_PACK_IMAGE_OPERATIONS",type:At.BOOLEAN},{name:"WEBGL_PACK_REDUCE",type:At.BOOLEAN},{name:"WEBGL_CONV_IM2COL",type:At.BOOLEAN},{name:"WEBGL_MAX_TEXTURE_SIZE",type:At.NUMBER},{name:"WEBGL_NUM_MB_BEFORE_PAGING",type:At.NUMBER},{name:"WEBGL_MAX_TEXTURES_IN_SHADER",type:At.NUMBER},{name:"WEBGL_DISJOINT_QUERY_TIMER_EXTENSION_VERSION",type:At.NUMBER},{name:"WEBGL_DISJOINT_QUERY_TIMER_EXTENSION_RELIABLE",type:At.BOOLEAN},{name:"WEBGL_VERSION",type:At.NUMBER},{name:"WEBGL_RENDER_FLOAT32_ENABLED",type:At.BOOLEAN},{name:"WEBGL_DOWNLOAD_FLOAT_ENABLED",type:At.BOOLEAN},{name:"WEBGL_FENCE_API_ENABLED",type:At.BOOLEAN},{name:"WEBGL_SIZE_UPLOAD_UNIFORM",type:At.NUMBER},{name:"BACKEND",type:At.STRING},{name:"EPSILON",type:At.NUMBER},{name:"PROD",type:At.BOOLEAN},{name:"TENSORLIKE_CHECK_SHAPE_CONSISTENCY",type:At.BOOLEAN},{name:"DEPRECATION_WARNINGS_ENABLED",type:At.BOOLEAN}];function Rt(t){try{if(null!=p(t))return!0}catch(t){return!1}return!1}var kt="tfjsflags";function Lt(){var t={};if("undefined"==typeof window||void 0===window.location||void 0===window.location.search)return t;var e=function(t){var e={};return t.replace(/[?&]([^=?&]+)(?:=([^&]*))?/g,function(t){for(var n=[],r=1;r0&&!function(){var t=navigator.userAgent||navigator.vendor||window.opera;return/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(t)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(t.substr(0,4))}();if("HAS_WEBGL"===e)return this.get("WEBGL_VERSION")>0;if("WEBGL_VERSION"===e)return Rt(2)?2:Rt(1)?1:0;if("WEBGL_RENDER_FLOAT32_ENABLED"===e)return function(t){if(0===t)return!1;var e=p(t);if(1===t){if(!Dt(e,"OES_texture_float"))return!1}else if(!Dt(e,"EXT_color_buffer_float"))return!1;return Nt(e,t)}(this.get("WEBGL_VERSION"));if("WEBGL_DOWNLOAD_FLOAT_ENABLED"===e)return function(t){if(0===t)return!1;var e=p(t);if(1===t){if(!Dt(e,"OES_texture_float"))return!1;if(!Dt(e,"WEBGL_color_buffer_float"))return!1}else if(!Dt(e,"EXT_color_buffer_float"))return!1;return Nt(e,t)}(this.get("WEBGL_VERSION"));if("WEBGL_FENCE_API_ENABLED"===e)return function(t){return 2===t&&null!=p(t).fenceSync}(this.get("WEBGL_VERSION"));if("WEBGL_SIZE_UPLOAD_UNIFORM"===e)return this.get("WEBGL_RENDER_FLOAT32_ENABLED")?4:0;if("TEST_EPSILON"===e)return 32===this.backend.floatPrecision()?.001:.1;if("EPSILON"===e)return 32===this.backend.floatPrecision()?1e-7:1e-4;if("PROD"===e)return!1;if("TENSORLIKE_CHECK_SHAPE_CONSISTENCY"===e)return!this.get("PROD");if("DEPRECATION_WARNINGS_ENABLED"===e)return!0;throw new Error("Unknown feature "+e+".")},e.prototype.setFeatures=function(t){this.features=Object.assign({},t)},e.prototype.reset=function(){this.features=Lt(),null!=this.globalEngine&&(this.globalEngine=null)},Object.defineProperty(e.prototype,"backend",{get:function(){return this.engine.backend},enumerable:!0,configurable:!0}),e.prototype.findBackend=function(t){return t in this.registry?this.registry[t].backend:null},e.prototype.findBackendFactory=function(t){return t in this.registryFactory?this.registryFactory[t]:null},e.prototype.registerBackend=function(t,e,n){var r=this;if(void 0===n&&(n=1),t in this.registry)return console.warn(t+" backend was already registered. Reusing existing backend"),!1;try{var i=e();return i.setDataMover({moveData:function(t){return r.engine.moveData(t)}}),this.registry[t]={backend:i,priority:n},this.registryFactory[t]=e,!0}catch(e){return console.warn("Registration of backend "+t+" failed"),console.warn(e.stack||e.message),!1}},e.prototype.removeBackend=function(t){if(!(t in this.registry))throw new Error(t+" backend not found in registry");this.registry[t].backend.dispose(),delete this.registry[t]},Object.defineProperty(e.prototype,"engine",{get:function(){return this.initEngine(),this.globalEngine},enumerable:!0,configurable:!0}),e.prototype.initEngine=function(){var t=this;if(null==this.globalEngine){this.backendName=this.get("BACKEND");var e=this.findBackend(this.backendName);this.globalEngine=new Ct(e,!1,function(){return t.get("DEBUG")})}},Object.defineProperty(e.prototype,"global",{get:function(){return jt()},enumerable:!0,configurable:!0}),e}();function jt(){if(null==Ft){var e=void 0;if("undefined"!=typeof window)e=window;else if("undefined"!=typeof r)e=r;else{if("undefined"==typeof t)throw new Error("Could not find a global object");e=t}Ft=e}return Ft}function zt(t){Gt.get("DEPRECATION_WARNINGS_ENABLED")&&console.warn(t+" You can disable deprecation warnings with tf.disableDeprecationWarnings().")}!function(t){ht=t}(zt);var Gt=function(){var t=jt();return null==t.ENV&&(t.ENV=new Ut(Lt())),function(t){lt=t}(function(){return t.ENV.engine}),t.ENV}();Object.freeze({EPSILON_FLOAT16:1e-4,EPSILON_FLOAT32:1e-7,Environment:Ut,enableProdMode:function(){Gt.set("PROD",!0)},enableDebugMode:function(){Gt.set("DEBUG",!0)},disableDeprecationWarnings:function(){Gt.set("DEPRECATION_WARNINGS_ENABLED",!1),console.warn("TensorFlow.js deprecation warnings have been disabled.")},deprecationWarn:zt,ENV:Gt});function Vt(t){var e=t;if(F(t))return[t.length];if(!Array.isArray(t))return[];for(var n=[];Array.isArray(e)||F(e);)n.push(e.length),e=e[0];return Array.isArray(t)&&Gt.get("TENSORLIKE_CHECK_SHAPE_CONSISTENCY")&&function t(e,n,r){if(r=r||[],Array.isArray(e)||F(e)){b(n.length>0,function(){return"Element arr["+r.join("][")+"] should be a primitive, but is an array of "+e.length+" elements"}),b(e.length===n[0],function(){return"Element arr["+r.join("][")+"] should have "+n[0]+" elements, but has "+e.length+" elements"});for(var i=n.slice(1),o=0;o=0&&(i=r),Wt(r,i,e,n),null==t||!F(t)&&!Array.isArray(t)&&"number"!=typeof t&&"boolean"!=typeof t&&"string"!=typeof t){var o=null==t?"null":t.constructor.name;throw new Error("Argument '"+e+"' passed to '"+n+"' must be a Tensor or TensorLike, but got '"+o+"'")}var a=Vt(t);F(t)||Array.isArray(t)||(t=[t]);var s="string"!==i?Y(t,i,Gt.get("DEBUG")):_(t);return pt.make(a,{values:s},i)}function qt(t,e,n,r){if(void 0===r&&(r="numeric"),!Array.isArray(t))throw new Error("Argument "+e+" passed to "+n+" must be a `Tensor[]` or `TensorLike[]`");return t.map(function(t,r){return Ht(t,e+"["+r+"]",n)},r)}function Xt(t){return Gt.engine.customGrad(t)}var Yt=Ut.tidy,Kt=Ut.keep,$t=Ut.dispose;Ut.time,Ut.profile;function Jt(){for(var t=[],e=0;e=2*e+1||i%2==1?a.push(i):o.push(i);r.push.apply(r,o),r.push(0),r.push.apply(r,a)}return r}function te(t,e,n,r){void 0===r&&(r=!0);var i=[];r?i.push(t[0]/n):i.push(t[0]*n);for(var o=1;ot.rank)throw new Error("index innermost dimension length must be <= tensor rank; saw: "+e.shape[e.rank-1]+" vs. "+t.rank);if(0===t.size)throw new Error("Requested more than 0 entries, but input is empty. Input shape: "+t.shape+".");for(var n=e.shape,r=n[n.length-1],i=1,o=0;o1?e.shape[e.rank-1]:1,i=e.rank>1?e.rank-1:1,o="Must have updates.shape = indices.shape[:batchDim] + shape[sliceDim:], got updates.shape: "+n.shape+", indices.shape: "+e.shape+", shape: "+t+", sliceDim: "+r+", and batchDim: "+i+".";if(n.rank1?e.shape[e.rank-1]:1,i=n.length,o=1,a=r;a0?o>=l[e]:o<=l[e]);o+=i)n+=1;return n}),[c,p,f]}function ve(t,e,n,r,i){var o=e[i],a=n[i]||1;(t&1<0?Number.MIN_SAFE_INTEGER:Number.MAX_SAFE_INTEGER);var s=r[i];return o<0&&(o+=s),m(0,o,s-1)}function ye(t,e,n,r,i){var o=e[i],a=n[i]||1;(t&1<0?Number.MAX_SAFE_INTEGER:Number.MIN_SAFE_INTEGER);var s=r[i];return o<0&&(o+=s),a>0?m(0,o,s):m(-1,o,s-1)}function be(t,e,n){for(var r=n.length,i=0;i1){r=i;break}for(i=r+1;i0||n[i]!==t[i])return!1;return!0}function we(t,e){for(var n=t.length>0?t[t.length-1]:1,r=0;r1)return Le([0],r);var i=J(Math.abs(Math.ceil((e-t)/n)),r);ei}).sort(function(t,e){return e.score-t.score}),a=[],s=0;s=0;--h)if(Xe(t,l,a[h])>=r){f=!0;break}if(!f&&(a.push(l),a.length>=n))break}return Pe(a,"int32")}function Xe(t,e,n){var r=t.subarray(4*e,4*e+4),i=t.subarray(4*n,4*n+4),o=Math.min(r[0],r[2]),a=Math.min(r[1],r[3]),s=Math.max(r[0],r[2]),u=Math.max(r[1],r[3]),c=Math.min(i[0],i[2]),l=Math.min(i[1],i[3]),f=Math.max(i[0],i[2]),h=Math.max(i[1],i[3]),p=(s-o)*(u-a),d=(f-c)*(h-l);if(p<=0||d<=0)return 0;var m=Math.max(o,c),g=Math.max(a,l),v=Math.min(s,f),y=Math.min(u,h),b=Math.max(v-m,0)*Math.max(y-g,0);return b/(p+d-b)}function Ye(t,e,n){var r=new Array(t.rank).fill(0),i=t.shape.slice();return e.map(function(e){i[n]=e;var o=t.slice(r,i);return r[n]+=e,o})}function Ke(t,e,n,r,i){for(var o=e[e.length-1],a=[t.length/o,o],s=a[0],u=a[1],c=k(n,s*r),l=k("int32",s*r),f=0;f":"<",u=n?"inOffset + i;":"round(getBestIndicesA(batch, inOffset + i));";this.userCode="\n void main() {\n ivec2 coords = getOutputCoords();\n int batch = coords[0];\n int outIdx = coords[1];\n int inOffset = outIdx * "+r+";\n\n int bestIndex = inOffset;\n float bestValue = getA(batch, bestIndex);\n\n for (int i = 0; i < "+r+"; i++) {\n int inIdx = "+u+";\n float candidate = getA(batch, inIdx);\n if (candidate "+s+" bestValue) {\n bestValue = candidate;\n bestIndex = inIdx;\n }\n }\n setOutput(float(bestIndex));\n }\n "};function Je(t,e){return["x","y","z","w","u","v"].slice(0,e).map(function(e){return t+"."+e})}function Ze(t,e){return 1===e?[t]:Je(t,e)}function Qe(t,e){for(var n=t.length,r=[],i=0;i1&&1===a&&r.unshift(o)}return r}function tn(t,e){for(var n=[],r=0;r1)&&n.unshift(o)}return n}function en(t,e){for(var n=[],r=Math.max(t.length,e.length),i=0;i1?"["+e+"]":"")+";"):(i.push("uniform sampler2D "+t.name+";"),i.push("uniform int offset"+t.name+";"))});var o,a,s=i.join("\n"),u=t.map(function(t){return function(t,e,n){void 0===n&&(n=!1);var r="";r+=n?un(t):sn(t);var i=t.shapeInfo.logicalShape,o=e.logicalShape;return i.length<=o.length&&(r+=n?function(t,e){var n,r=t.name,i=r.charAt(0).toUpperCase()+r.slice(1),o="get"+i+"AtOutCoords",a=t.shapeInfo.logicalShape.length,s=e.logicalShape.length,u=Qe(t.shapeInfo.logicalShape,e.logicalShape),c=mn(s),l=s-a,f=["x","y","z","w","u","v"];n=0===a?"":s<2&&u.length>=1?"coords = 0;":u.map(function(t){return"coords."+f[t+l]+" = 0;"}).join("\n");var h="";h=s<2&&a>0?"coords":t.shapeInfo.logicalShape.map(function(t,e){return"coords."+f[e+l]}).join(", ");var p="return outputValue;";if(1===a&&s>1)p="\n return vec4(outputValue.xy, outputValue.xy);\n ";else if(0===a&&s>0)p=1===s?"\n return vec4(outputValue.x, outputValue.x, 0., 0.);\n ":"\n return vec4(outputValue.x);\n ";else if(u.length){var d=a-2,m=a-1;u.indexOf(d)>-1&&u.indexOf(m)>-1?p="return vec4(outputValue.x);":u.indexOf(d)>-1?p="return vec4(outputValue.x, outputValue.y, outputValue.x, outputValue.y);":u.indexOf(m)>-1&&(p="return vec4(outputValue.xx, outputValue.zz);")}return"\n vec4 "+o+"() {\n "+c+" coords = getOutputCoords();\n "+n+"\n vec4 outputValue = get"+i+"("+h+");\n "+p+"\n }\n "}(t,e):function(t,e){var n=t.name,r=n.charAt(0).toUpperCase()+n.slice(1),i="get"+r+"AtOutCoords",o=e.texShape,a=t.shapeInfo.texShape,s=t.shapeInfo.logicalShape.length,u=e.logicalShape.length;if(!t.shapeInfo.isUniform&&s===u&&null==t.shapeInfo.flatOffset&&E(a,o))return"\n float "+i+"() {\n return sampleTexture("+n+", resultUV);\n }\n ";var c=mn(u),l=Qe(t.shapeInfo.logicalShape,e.logicalShape),f=u-s,h=["x","y","z","w","u","v"];return"\n float "+i+"() {\n "+c+" coords = getOutputCoords();\n "+(0===s?"":u<2&&l.length>=1?"coords = 0;":l.map(function(t){return"coords."+h[t+f]+" = 0;"}).join("\n"))+"\n return get"+r+"("+(u<2&&s>0?"coords":t.shapeInfo.logicalShape.map(function(t,e){return"coords."+h[e+f]}).join(", "))+");\n }\n "}(t,e)),r}(t,e,r)}).join("\n"),c=e.texShape,l=nn(),f=function(t){return"\n float sampleTexture(sampler2D textureSampler, vec2 uv) {\n return "+t.texture2D+"(textureSampler, uv).r;\n }\n "}(l),h=function(t){return t.version+"\n precision highp float;\n precision highp int;\n precision highp sampler2D;\n "+t.varyingFs+" vec2 resultUV;\n "+t.defineOutput+"\n const vec2 halfCR = vec2(0.5, 0.5);\n\n struct ivec5\n {\n int x;\n int y;\n int z;\n int w;\n int u;\n };\n\n struct ivec6\n {\n int x;\n int y;\n int z;\n int w;\n int u;\n int v;\n };\n\n "+t.defineSpecialNaN+"\n "+t.defineSpecialInf+"\n "+t.defineRound+"\n\n int imod(int x, int y) {\n return x - y * (x / y);\n }\n\n //Based on the work of Dave Hoskins\n //https://www.shadertoy.com/view/4djSRW\n #define HASHSCALE1 443.8975\n float random(float seed){\n vec2 p = resultUV * seed;\n vec3 p3 = fract(vec3(p.xyx) * HASHSCALE1);\n p3 += dot(p3, p3.yzx + 19.19);\n return fract((p3.x + p3.y) * p3.z);\n }\n\n "+cn+"\n "+ln+"\n "+fn+"\n "}(l);return e.isPacked?(o=function(t,e){switch(t.length){case 0:return"\n int getOutputCoords() {\n return 0;\n }\n ";case 1:return function(t,e){var n=[Math.ceil(e[0]/2),Math.ceil(e[1]/2)];return 1===n[0]?"\n int getOutputCoords() {\n return 2 * int(resultUV.x * "+n[1]+".0);\n }\n ":1===n[1]?"\n int getOutputCoords() {\n return 2 * int(resultUV.y * "+n[0]+".0);\n }\n ":"\n int getOutputCoords() {\n ivec2 resTexRC = ivec2(resultUV.yx *\n vec2("+n[0]+", "+n[1]+"));\n return resTexRC.x * "+n[1]+" + resTexRC.y;\n }\n "}(0,e);case 2:return function(t,e){var n=[Math.ceil(e[0]/2),Math.ceil(e[1]/2)];if(E(t,e))return"\n ivec2 getOutputCoords() {\n return 2 * ivec2(resultUV.yx * vec2("+n[0]+", "+n[1]+"));\n }\n ";var r=Math.ceil(t[1]/2);return"\n ivec2 getOutputCoords() {\n ivec2 resTexRC = ivec2(resultUV.yx *\n vec2("+n[0]+", "+n[1]+"));\n\n int index = resTexRC.x * "+n[1]+" + resTexRC.y;\n int r = 2 * (index / "+r+");\n int c = imod(index, "+r+") * 2;\n\n return ivec2(r, c);\n }\n "}(t,e);case 3:return function(t,e){var n=[Math.ceil(e[0]/2),Math.ceil(e[1]/2)],r=Math.ceil(t[2]/2),i=r*Math.ceil(t[1]/2);return"\n ivec3 getOutputCoords() {\n ivec2 resTexRC = ivec2(resultUV.yx *\n vec2("+n[0]+", "+n[1]+"));\n int index = resTexRC.x * "+n[1]+" + resTexRC.y;\n\n int b = index / "+i+";\n index -= b * "+i+";\n\n int r = 2 * (index / "+r+");\n int c = imod(index, "+r+") * 2;\n\n return ivec3(b, r, c);\n }\n "}(t,e);default:return function(t,e){for(var n=[Math.ceil(e[0]/2),Math.ceil(e[1]/2)],r=Math.ceil(t[t.length-1]/2),i=r*Math.ceil(t[t.length-2]/2),o=i,a="",s="b, r, c",u=2;u2,function(){return"Packed arg"+(n.charAt(0).toUpperCase()+n.slice(1))+" supports only inputs with rank above 2."});var i=t[t.length-1],o=Math.ceil(i/e);this.outputShape=t.slice(0,-1),o>1&&this.outputShape.push(o),r||this.variableNames.push("bestIndicesA");var a,s,u=this.outputShape,c=u.length,l=mn(c),f=Ze("coords",c);if(1===o){var h=mn(s=c+1);a="\n "+h+" sourceLocR = "+h+"("+f.join()+", 0);\n ++"+f[c-1]+";\n "+h+" sourceLocG = "+h+"("+f.join()+", 0);\n ++"+f[c-2]+";\n "+h+" sourceLocA = "+h+"("+f.join()+", 0);\n --"+f[c-1]+";\n "+h+" sourceLocB = "+h+"("+f.join()+", 0);\n --"+f[c-2]+";"}else s=c,a="\n "+l+" sourceLocR = coords;\n ++"+f[c-1]+";\n "+l+" sourceLocG = coords;\n ++"+f[c-2]+";\n "+l+" sourceLocA = coords;\n --"+f[c-1]+";\n "+l+" sourceLocB = coords;\n --"+f[c-2]+";";var p=["x","y","z","w","u","v"].slice(0,s),d="."+p[s-1],m=p.map(function(t){return"int "+t}),g=Ze("sourceLocR",s-1).concat("inIdx.r"),v=Ze("sourceLocG",s-1).concat("inIdx.g"),y=Ze("sourceLocB",s-1).concat("inIdx.b"),w=Ze("sourceLocA",s-1).concat("inIdx.a"),x="max"===n?"greaterThan":"lessThan",_=r?"":"\n inIdx = round(vec4(getBestIndicesAChannel("+g.join()+"),\n getBestIndicesAChannel("+v.join()+"),\n getBestIndicesAChannel("+y.join()+"),\n getBestIndicesAChannel("+w.join()+")));",S="vec4(\n getAChannel("+g.join()+"),\n hasNextCol ? getAChannel("+v.join()+") : 0.,\n hasNextRow ? getAChannel("+y.join()+") : 0.,\n hasNextRow && hasNextCol ? getAChannel("+w.join()+") : 0.)",E=r?"":"\n float getBestIndicesAChannel("+m.join()+") {\n return getChannel(getBestIndicesA("+p.join()+"),\n vec2("+p.slice(-2).join()+"));\n }";this.userCode="\n float getAChannel("+m.join()+") {\n return getChannel(getA("+p.join()+"),\n vec2("+p.slice(-2).join()+"));\n }\n "+E+"\n void main() {\n "+l+" coords = getOutputCoords();\n bool hasNextCol = "+f[c-1]+" < "+(u[c-1]-1)+";\n bool hasNextRow = "+f[c-2]+" < "+(u[c-2]-1)+";\n "+a+"\n ivec4 srcIdx = ivec4(sourceLocR"+d+", sourceLocG"+d+",\n sourceLocB"+d+", sourceLocA"+d+") * "+e+";\n ivec4 inIdx = srcIdx;\n vec4 bestIndex = vec4(inIdx);\n vec4 bestValue = "+S+";\n\n for (int i = 0; i < "+e+"; i++) {\n inIdx = srcIdx;\n "+_+"\n vec4 candidate = "+S+";\n bvec4 nan = isnan(candidate);\n bvec4 replace = bvec4(\n vec4("+x+"(candidate, bestValue)) * (vec4(1.0) - vec4(nan)));\n\n bestValue = vec4(replace.x ? candidate.x : bestValue.x,\n replace.y ? candidate.y : bestValue.y,\n replace.z ? candidate.z : bestValue.z,\n replace.w ? candidate.w : bestValue.w);\n bestIndex = mix(bestIndex, vec4(inIdx), vec4(replace));\n srcIdx++;\n }\n setOutput(bestIndex);\n }\n "},bn=function(t){this.variableNames=["dy"],this.outputShape=t.inShape;var e=t.filterHeight,n=t.filterWidth,r=t.strideHeight,i=t.strideWidth,o=t.dilationHeight,a=t.dilationWidth,s=t.effectiveFilterHeight,u=t.effectiveFilterWidth,c=s-1-t.padInfo.top,l=u-1-t.padInfo.left,f=1/(e*n);this.userCode="\n const ivec2 pads = ivec2("+c+", "+l+");\n const float avgMultiplier = float("+f+");\n\n void main() {\n ivec4 coords = getOutputCoords();\n int b = coords[0];\n int d = coords[3];\n\n ivec2 dyRCCorner = coords.yz - pads;\n int dyRCorner = dyRCCorner.x;\n int dyCCorner = dyRCCorner.y;\n\n // Convolve dy(?, ?, d) with pos mask(:, :, d) to get dx(xR, xC, d).\n // ? = to be determined. : = across all values in that axis.\n float dotProd = 0.0;\n for (int wR = 0; wR < "+s+";\n wR += "+o+") {\n float dyR = float(dyRCorner + wR) / "+r+".0;\n\n if (dyR < 0.0 || dyR >= "+t.outHeight+".0 || fract(dyR) > 0.0) {\n continue;\n }\n int idyR = int(dyR);\n\n for (int wC = 0; wC < "+u+";\n wC+= "+a+") {\n float dyC = float(dyCCorner + wC) / "+i+".0;\n\n if (dyC < 0.0 || dyC >= "+t.outWidth+".0 ||\n fract(dyC) > 0.0) {\n continue;\n }\n int idyC = int(dyC);\n\n float dyValue = getDy(b, idyR, idyC, d);\n\n dotProd += dyValue * avgMultiplier;\n }\n }\n setOutput(dotProd);\n }\n "},wn=function(t,e,n,r,i,o){this.outputShape=[],this.variableNames=["x","mean","variance"],en(t,e),en(t,n);var a="0.0";null!=r&&(en(t,r),this.variableNames.push("offset"),a="getOffsetAtOutCoords()");var s="1.0";null!=i&&(en(t,i),this.variableNames.push("scale"),s="getScaleAtOutCoords()"),this.outputShape=t,this.userCode="\n void main() {\n float x = getXAtOutCoords();\n float mean = getMeanAtOutCoords();\n float variance = getVarianceAtOutCoords();\n float offset = "+a+";\n float scale = "+s+";\n float inv = scale * inversesqrt(variance + float("+o+"));\n setOutput(dot(vec3(x, -mean, offset), vec3(inv, inv, 1)));\n }\n "},xn=function(t,e,n,r,i,o){this.usesPackedTextures=!0,this.variableNames=["x","mean","variance"],en(t,e),en(t,n);var a="vec4(0.0)";null!=r&&(en(t,r),this.variableNames.push("offset"),a="getOffsetAtOutCoords()");var s="vec4(1.0)";null!=i&&(en(t,i),this.variableNames.push("scale"),s="getScaleAtOutCoords()"),this.outputShape=t,this.userCode="\n void main() {\n vec4 offset = "+a+";\n vec4 scale = "+s+";\n\n vec4 x = getXAtOutCoords();\n vec4 mean = getMeanAtOutCoords();\n vec4 variance = getVarianceAtOutCoords();\n\n vec4 inv = scale * inversesqrt(variance + vec4("+o+"));\n\n setOutput((x - mean) * inv + offset);\n }\n "},_n="return areal * breal - aimag * bimag;",Sn="return areal * bimag + aimag * breal;",En=function(t,e,n){this.variableNames=["AReal","AImag","BReal","BImag"],this.outputShape=en(e,n),this.userCode="\n float binaryOpComplex(\n float areal, float aimag, float breal, float bimag) {\n "+t+"\n }\n\n void main() {\n float areal = getARealAtOutCoords();\n float aimag = getAImagAtOutCoords();\n float breal = getBRealAtOutCoords();\n float bimag = getBImagAtOutCoords();\n setOutput(binaryOpComplex(areal, aimag, breal, bimag));\n }\n "},Tn="return a + b;",Mn="return a - b;",An="return a * b;",Cn=function(t,e,n){this.variableNames=["A","B"],this.outputShape=en(e,n),this.userCode="\n float binaryOperation(float a, float b) {\n "+t+"\n }\n\n void main() {\n float a = getAAtOutCoords();\n float b = getBAtOutCoords();\n setOutput(binaryOperation(a, b));\n }\n "},Pn=function(t,e,n){this.variableNames=["A","B"],this.supportsBroadcasting=!0,this.usesPackedTextures=!0,this.outputShape=en(e,n),this.userCode="\n vec4 binaryOperation(vec4 a, vec4 b) {\n "+t+"\n }\n\n void main() {\n vec4 a = getAAtOutCoords();\n vec4 b = getBAtOutCoords();\n setOutput(binaryOperation(a, b));\n }\n "},In=function(){function t(t){this.variableNames=["A"],this.outputShape=t,this.userCode="\n uniform float min;\n uniform float max;\n\n void main() {\n float value = getAAtOutCoords();\n if (isnan(value)) {\n setOutput(value);\n return;\n }\n\n setOutput(clamp(value, min, max));\n }\n "}return t.prototype.getCustomSetupFunc=function(t,e){var n=this;return function(r,i){null==n.minLoc&&(n.minLoc=r.getUniformLocationNoThrow(i,"min"),n.maxLoc=r.getUniformLocationNoThrow(i,"max")),r.gl.uniform1f(n.minLoc,t),r.gl.uniform1f(n.maxLoc,e)}},t}(),On=function(){function t(t){this.variableNames=["A"],this.usesPackedTextures=!0,this.outputShape=t,this.userCode="\n uniform float min;\n uniform float max;\n\n void main() {\n vec4 value = getAAtOutCoords();\n\n if (any(isnan(value))) {\n setOutput(value);\n return;\n }\n\n setOutput(clamp(value, vec4(min), vec4(max)));\n }\n "}return t.prototype.getCustomSetupFunc=function(t,e){var n=this;return function(r,i){null==n.minLoc&&(n.minLoc=r.getUniformLocationNoThrow(i,"min"),n.maxLoc=r.getUniformLocationNoThrow(i,"max")),r.gl.uniform1f(n.minLoc,t),r.gl.uniform1f(n.maxLoc,e)}},t}(),Rn=function(t){this.variableNames=["real","imag"],this.outputShape=t,this.userCode="\n void main() {\n float re = abs(getRealAtOutCoords());\n float im = abs(getImagAtOutCoords());\n float mx = max(re, im);\n\n // sadly the length function in glsl is not underflow-safe\n // (at least not on Intel GPUs). So the safe solution is\n // to ensure underflow-safety in all cases.\n setOutput(\n mx == 0.0 ? 0.0 : mx * length(vec2(1, min(re, im)/mx))\n );\n }\n "},kn=function(t){this.outputShape=[],this.outputShape=le(t,1),this.variableNames=t.map(function(t,e){return"T"+e});var e=new Array(t.length-1);e[0]=t[0][1];for(var n=1;n= "+t.inHeight+") {\n continue;\n }\n\n for (int yC = 0; yC < "+t.outWidth+"; yC++) {\n int xC = wC + yC * "+n+" - "+i+";\n\n if (xC < 0 || xC >= "+t.inWidth+") {\n continue;\n }\n\n float dyValue = getDy(b, yR, yC, d2);\n float xValue = getX(b, xR, xC, d1);\n dotProd += (xValue * dyValue);\n }\n }\n }\n setOutput(dotProd);\n }\n "},Nn=function(t){this.variableNames=["dy","W"],this.outputShape=t.inShape;var e=t.filterHeight,n=t.filterWidth,r=t.strideHeight,i=t.strideWidth,o=e-1-t.padInfo.top,a=n-1-t.padInfo.left;this.userCode="\n const ivec2 pads = ivec2("+o+", "+a+");\n\n void main() {\n ivec4 coords = getOutputCoords();\n int batch = coords[0];\n int d1 = coords[3];\n\n ivec2 dyCorner = coords.yz - pads;\n int dyRCorner = dyCorner.x;\n int dyCCorner = dyCorner.y;\n\n // Convolve dy(?, ?, d2) with w(:, :, d1, d2) to compute dx(xR, xC, d1).\n // ? = to be determined. : = across all values in that axis.\n float dotProd = 0.0;\n for (int wR = 0; wR < "+e+"; wR++) {\n float dyR = float(dyRCorner + wR) / "+r+".0;\n\n if (dyR < 0.0 || dyR >= "+t.outHeight+".0 || fract(dyR) > 0.0) {\n continue;\n }\n int idyR = int(dyR);\n\n int wRPerm = "+e+" - 1 - wR;\n\n for (int wC = 0; wC < "+n+"; wC++) {\n float dyC = float(dyCCorner + wC) / "+i+".0;\n\n if (dyC < 0.0 || dyC >= "+t.outWidth+".0 ||\n fract(dyC) > 0.0) {\n continue;\n }\n int idyC = int(dyC);\n\n int wCPerm = "+n+" - 1 - wC;\n\n for (int d2 = 0; d2 < "+t.outChannels+"; d2++) {\n float xValue = getDy(batch, idyR, idyC, d2);\n float wValue = getW(wRPerm, wCPerm, d1, d2);\n dotProd += xValue * wValue;\n }\n }\n }\n setOutput(dotProd);\n }\n "},Bn=function(t){this.variableNames=["x","dy"],this.outputShape=t.filterShape;var e=t.strideDepth,n=t.strideHeight,r=t.strideWidth,i=t.padInfo.front,o=t.padInfo.top,a=t.padInfo.left;this.userCode="\n void main() {\n ivec5 coords = getOutputCoords();\n int wF = coords.x;\n int wR = coords.y;\n int wC = coords.z;\n int d1 = coords.w;\n int d2 = coords.u;\n\n float dotProd = 0.0;\n\n for (int b = 0; b < "+t.batchSize+"; b++) {\n for (int yF = 0; yF < "+t.outDepth+"; yF++) {\n int xF = wF + yF * "+e+" - "+i+";\n\n if (xF < 0 || xF >= "+t.inDepth+") {\n continue;\n }\n\n for (int yR = 0; yR < "+t.outHeight+"; yR++) {\n int xR = wR + yR * "+n+" - "+o+";\n\n if (xR < 0 || xR >= "+t.inHeight+") {\n continue;\n }\n\n for (int yC = 0; yC < "+t.outWidth+"; yC++) {\n int xC = wC + yC * "+r+" - "+a+";\n\n if (xC < 0 || xC >= "+t.inWidth+") {\n continue;\n }\n\n float dyValue = getDy(b, yF, yR, yC, d2);\n float xValue = getX(b, xF, xR, xC, d1);\n dotProd += (xValue * dyValue);\n }\n }\n }\n }\n setOutput(dotProd);\n }\n "},Fn=function(t){this.variableNames=["dy","W"],this.outputShape=t.inShape;var e=t.filterDepth,n=t.filterHeight,r=t.filterWidth,i=t.strideDepth,o=t.strideHeight,a=t.strideWidth,s=e-1-t.padInfo.front,u=n-1-t.padInfo.top,c=r-1-t.padInfo.left;this.userCode="\n const ivec3 pads = ivec3("+s+", "+u+", "+c+");\n\n void main() {\n ivec5 coords = getOutputCoords();\n int batch = coords.x;\n int d1 = coords.u;\n\n\n ivec3 dyCorner = ivec3(coords.y, coords.z, coords.w) - pads;\n int dyFCorner = dyCorner.x;\n int dyRCorner = dyCorner.y;\n int dyCCorner = dyCorner.z;\n\n float dotProd = 0.0;\n for (int wF = 0; wF < "+e+"; wF++) {\n float dyF = float(dyFCorner + wF) / "+i+".0;\n\n if (dyF < 0.0 || dyF >= "+t.outDepth+".0 || fract(dyF) > 0.0) {\n continue;\n }\n int idyF = int(dyF);\n\n int wFPerm = "+e+" - 1 - wF;\n\n for (int wR = 0; wR < "+n+"; wR++) {\n float dyR = float(dyRCorner + wR) / "+o+".0;\n\n if (dyR < 0.0 || dyR >= "+t.outHeight+".0 ||\n fract(dyR) > 0.0) {\n continue;\n }\n int idyR = int(dyR);\n\n int wRPerm = "+n+" - 1 - wR;\n\n for (int wC = 0; wC < "+r+"; wC++) {\n float dyC = float(dyCCorner + wC) / "+a+".0;\n\n if (dyC < 0.0 || dyC >= "+t.outWidth+".0 ||\n fract(dyC) > 0.0) {\n continue;\n }\n int idyC = int(dyC);\n\n int wCPerm = "+r+" - 1 - wC;\n\n for (int d2 = 0; d2 < "+t.outChannels+"; d2++) {\n float xValue = getDy(batch, idyF, idyR, idyC, d2);\n float wValue = getW(wFPerm, wRPerm, wCPerm, d1, d2);\n dotProd += xValue * wValue;\n }\n }\n }\n }\n setOutput(dotProd);\n }\n "},Un=function(t){this.variableNames=["x","dy"],this.outputShape=t.filterShape;var e=t.strideHeight,n=t.strideWidth,r=t.padInfo.top,i=t.padInfo.left,o=t.outChannels/t.inChannels;this.userCode="\n void main() {\n ivec4 coords = getOutputCoords();\n int wR = coords.x;\n int wC = coords.y;\n int d1 = coords.z;\n int dm = coords.w;\n int d2 = d1 * "+o+" + dm;\n\n float dotProd = 0.0;\n\n // TODO: Vec4 over the batch size\n for (int b = 0; b < "+t.batchSize+"; b++) {\n for (int yR = 0; yR < "+t.outHeight+"; yR++) {\n int xR = wR + yR * "+e+" - "+r+";\n\n if (xR < 0 || xR >= "+t.inHeight+") {\n continue;\n }\n\n for (int yC = 0; yC < "+t.outWidth+"; yC++) {\n int xC = wC + yC * "+n+" - "+i+";\n\n if (xC < 0 || xC >= "+t.inWidth+") {\n continue;\n }\n\n float dyValue = getDy(b, yR, yC, d2);\n float xValue = getX(b, xR, xC, d1);\n dotProd += (xValue * dyValue);\n }\n }\n }\n setOutput(dotProd);\n }\n "},jn=function(t){this.variableNames=["dy","W"],this.outputShape=t.inShape;var e=t.filterHeight,n=t.filterWidth,r=t.strideHeight,i=t.strideWidth,o=e-1-t.padInfo.top,a=n-1-t.padInfo.left,s=t.outChannels/t.inChannels;this.userCode="\n const ivec2 pads = ivec2("+o+", "+a+");\n\n void main() {\n ivec4 coords = getOutputCoords();\n int batch = coords[0];\n int d1 = coords[3];\n ivec2 dyCorner = coords.yz - pads;\n int dyRCorner = dyCorner.x;\n int dyCCorner = dyCorner.y;\n\n float dotProd = 0.0;\n\n for (int wR = 0; wR < "+e+"; wR++) {\n float dyR = float(dyRCorner + wR) / "+r+".0;\n\n if (dyR < 0.0 || dyR >= "+t.outHeight+".0 || fract(dyR) > 0.0) {\n continue;\n }\n int idyR = int(dyR);\n\n int wRPerm = "+e+" - 1 - wR;\n\n for (int wC = 0; wC < "+n+"; wC++) {\n float dyC = float(dyCCorner + wC) / "+i+".0;\n\n if (dyC < 0.0 || dyC >= "+t.outWidth+".0 ||\n fract(dyC) > 0.0) {\n continue;\n }\n int idyC = int(dyC);\n\n int wCPerm = "+n+" - 1 - wC;\n\n // TODO: Vec4 over the channelMul\n for (int dm = 0; dm < "+s+"; dm++) {\n int d2 = d1 * "+s+" + dm;\n float xValue = getDy(batch, idyR, idyC, d2);\n float wValue = getW(wRPerm, wCPerm, d1, dm);\n dotProd += xValue * wValue;\n }\n }\n }\n setOutput(dotProd);\n }\n "},zn=function(t){this.variableNames=["x","W"],this.outputShape=t.outShape;var e=t.padInfo.top,n=t.padInfo.left,r=t.strideHeight,i=t.strideWidth,o=t.dilationHeight,a=t.dilationWidth,s=t.filterHeight,u=t.filterWidth,c=4*Math.floor(t.inChannels/4),l=t.inChannels%4;this.userCode="\n const ivec2 strides = ivec2("+r+", "+i+");\n const ivec2 pads = ivec2("+e+", "+n+");\n\n void main() {\n ivec4 coords = getOutputCoords();\n int batch = coords[0];\n int d2 = coords[3];\n\n ivec2 xRCCorner = coords.yz * strides - pads;\n int xRCorner = xRCCorner.x;\n int xCCorner = xRCCorner.y;\n\n // Convolve x(?, ?, d1) with w(:, :, d1, d2) to get y(yR, yC, d2).\n // ? = to be determined. : = across all values in that axis.\n float dotProd = 0.0;\n for (int wR = 0; wR < "+s+"; wR++) {\n int xR = xRCorner + wR * "+o+";\n\n if (xR < 0 || xR >= "+t.inHeight+") {\n continue;\n }\n\n for (int wC = 0; wC < "+u+"; wC++) {\n int xC = xCCorner + wC * "+a+";\n\n if (xC < 0 || xC >= "+t.inWidth+") {\n continue;\n }\n\n for (int d1 = 0; d1 < "+c+"; d1 += 4) {\n vec4 xValues = vec4(\n getX(batch, xR, xC, d1),\n getX(batch, xR, xC, d1 + 1),\n getX(batch, xR, xC, d1 + 2),\n getX(batch, xR, xC, d1 + 3)\n );\n vec4 wValues = vec4(\n getW(wR, wC, d1, d2),\n getW(wR, wC, d1 + 1, d2),\n getW(wR, wC, d1 + 2, d2),\n getW(wR, wC, d1 + 3, d2)\n );\n\n dotProd += dot(xValues, wValues);\n }\n\n if ("+(1===l)+") {\n dotProd +=\n getX(batch, xR, xC, "+c+") *\n getW(wR, wC, "+c+", d2);\n } else if ("+(2===l)+") {\n vec2 xValues = vec2(\n getX(batch, xR, xC, "+c+"),\n getX(batch, xR, xC, "+c+" + 1)\n );\n vec2 wValues = vec2(\n getW(wR, wC, "+c+", d2),\n getW(wR, wC, "+c+" + 1, d2)\n );\n dotProd += dot(xValues, wValues);\n } else if ("+(3===l)+") {\n vec3 xValues = vec3(\n getX(batch, xR, xC, "+c+"),\n getX(batch, xR, xC, "+c+" + 1),\n getX(batch, xR, xC, "+c+" + 2)\n );\n vec3 wValues = vec3(\n getW(wR, wC, "+c+", d2),\n getW(wR, wC, "+c+" + 1, d2),\n getW(wR, wC, "+c+" + 2, d2)\n );\n dotProd += dot(xValues, wValues);\n }\n }\n }\n setOutput(dotProd);\n }\n "},Gn=function(t){this.variableNames=["x","W"],this.outputShape=t.outShape;var e=t.padInfo.front,n=t.padInfo.top,r=t.padInfo.left,i=t.strideDepth,o=t.strideHeight,a=t.strideWidth,s=t.dilationDepth,u=t.dilationHeight,c=t.dilationWidth,l=t.filterDepth,f=t.filterHeight,h=t.filterWidth,p=4*Math.floor(t.inChannels/4),d=t.inChannels%4;this.userCode="\n const ivec3 strides = ivec3("+i+", "+o+", "+a+");\n const ivec3 pads = ivec3("+e+", "+n+", "+r+");\n\n void main() {\n ivec5 coords = getOutputCoords();\n int batch = coords.x;\n int d2 = coords.u;\n\n ivec3 xFRCCorner = ivec3(coords.y, coords.z, coords.w) * strides - pads;\n int xFCorner = xFRCCorner.x;\n int xRCorner = xFRCCorner.y;\n int xCCorner = xFRCCorner.z;\n\n // Convolve x(?, ?, ?, d1) with w(:, :, :, d1, d2) to get\n // y(yF, yR, yC, d2). ? = to be determined. : = across all\n // values in that axis.\n float dotProd = 0.0;\n for (int wF = 0; wF < "+l+"; wF++) {\n int xF = xFCorner + wF * "+s+";\n\n if (xF < 0 || xF >= "+t.inDepth+") {\n continue;\n }\n\n for (int wR = 0; wR < "+f+"; wR++) {\n int xR = xRCorner + wR * "+u+";\n\n if (xR < 0 || xR >= "+t.inHeight+") {\n continue;\n }\n\n for (int wC = 0; wC < "+h+"; wC++) {\n int xC = xCCorner + wC * "+c+";\n\n if (xC < 0 || xC >= "+t.inWidth+") {\n continue;\n }\n\n for (int d1 = 0; d1 < "+p+"; d1 += 4) {\n vec4 xValues = vec4(\n getX(batch, xF, xR, xC, d1),\n getX(batch, xF, xR, xC, d1 + 1),\n getX(batch, xF, xR, xC, d1 + 2),\n getX(batch, xF, xR, xC, d1 + 3)\n );\n vec4 wValues = vec4(\n getW(wF, wR, wC, d1, d2),\n getW(wF, wR, wC, d1 + 1, d2),\n getW(wF, wR, wC, d1 + 2, d2),\n getW(wF, wR, wC, d1 + 3, d2)\n );\n\n dotProd += dot(xValues, wValues);\n }\n\n if ("+(1===d)+") {\n dotProd +=\n getX(batch, xF, xR, xC, "+p+") *\n getW(wF, wR, wC, "+p+", d2);\n } else if ("+(2===d)+") {\n vec2 xValues = vec2(\n getX(batch, xF, xR, xC, "+p+"),\n getX(batch, xF, xR, xC, "+p+" + 1)\n );\n vec2 wValues = vec2(\n getW(wF, wR, wC, "+p+", d2),\n getW(wF, wR, wC, "+p+" + 1, d2)\n );\n dotProd += dot(xValues, wValues);\n } else if ("+(3===d)+") {\n vec3 xValues = vec3(\n getX(batch, xF, xR, xC, "+p+"),\n getX(batch, xF, xR, xC, "+p+" + 1),\n getX(batch, xF, xR, xC, "+p+" + 2)\n );\n vec3 wValues = vec3(\n getW(wF, wR, wC, "+p+", d2),\n getW(wF, wR, wC, "+p+" + 1, d2),\n getW(wF, wR, wC, "+p+" + 2, d2)\n );\n dotProd += dot(xValues, wValues);\n }\n }\n }\n }\n setOutput(dotProd);\n }\n "},Vn=function(t){this.variableNames=["x","W"],this.outputShape=t.outShape;var e=t.inHeight,n=t.inWidth,r=t.padInfo.top,i=t.padInfo.left,o=t.strideHeight,a=t.strideWidth,s=t.dilationHeight,u=t.dilationWidth,c=t.filterHeight,l=t.filterWidth,f=t.outChannels/t.inChannels;this.userCode="\n const ivec2 strides = ivec2("+o+", "+a+");\n const ivec2 pads = ivec2("+r+", "+i+");\n\n void main() {\n ivec4 coords = getOutputCoords();\n int batch = coords.x;\n ivec2 xRCCorner = coords.yz * strides - pads;\n int d2 = coords.w;\n int d1 = d2 / "+f+";\n int q = d2 - d1 * "+f+";\n\n int xRCorner = xRCCorner.x;\n int xCCorner = xRCCorner.y;\n\n // Convolve x(?, ?, d1) with w(:, :, d1, q) to get y(yR, yC, d2).\n // ? = to be determined. : = across all values in that axis.\n float dotProd = 0.0;\n // TODO(dsmilkov): Flatten the two for loops and vec4 the operations.\n for (int wR = 0; wR < "+c+"; wR++) {\n int xR = xRCorner + wR * "+s+";\n\n if (xR < 0 || xR >= "+e+") {\n continue;\n }\n\n for (int wC = 0; wC < "+l+"; wC++) {\n int xC = xCCorner + wC * "+u+";\n\n if (xC < 0 || xC >= "+n+") {\n continue;\n }\n\n float xVal = getX(batch, xR, xC, d1);\n float wVal = getW(wR, wC, d1, q);\n dotProd += xVal * wVal;\n }\n }\n setOutput(dotProd);\n }\n "},Wn=function(t){this.variableNames=["x","W"],this.usesPackedTextures=!0,this.outputShape=t.outShape;for(var e=t.inHeight,n=t.inWidth,r=t.padInfo.top,i=t.padInfo.left,o=t.strideHeight,a=t.strideWidth,s=t.dilationHeight,u=t.dilationWidth,c=t.filterHeight,l=t.filterWidth,f=l,h="int xR; int xC; int xCOffset;",p=0;p= 0 && xR < "+e+" && xCOffset >= 0 && xCOffset < "+n+") {\n xTexelR"+p+"C"+d+" = getX(batch, xR, xCOffset, d1);\n } else {\n xTexelR"+p+"C"+d+" = vec4(0.);\n }\n\n xCOffset = xC + 1 - 2;\n if(xR >= 0 && xR < "+e+" && xCOffset >= 0 && xCOffset < "+n+") {\n vec4 previous = getX(batch, xR, xCOffset, d1);\n xR"+p+"C"+d+" = vec4(previous.zw, xTexelR"+p+"C"+d+".xy);\n } else {\n xR"+p+"C"+d+" = vec4(0, 0, xTexelR"+p+"C"+d+".xy);\n }\n ":"\n if(xR >= 0 && xR < "+e+" && xC >= 0 && xC < "+n+") {\n xTexelR"+p+"C"+d+" = getX(batch, xR, xC, d1);\n } else {\n xTexelR"+p+"C"+d+" = vec4(0.);\n }\n\n xR"+p+"C"+d+" = xTexelR"+p+"C"+d+";\n ",d+1= 0 && xR < "+e+" &&\n xCOffset >= 0 && xCOffset < "+n+") {\n xTexelR"+p+"C"+(d+2)+" = getX(batch, xR, xCOffset, d1);\n }\n ",u>1&&(h+="\n xCOffset -= 2;\n if(xR >= 0 && xR < "+e+" &&\n xCOffset >= 0 && xCOffset < "+n+") {\n xTexelR"+p+"C"+d+" = getX(batch, xR, xCOffset, d1);\n } else {\n xTexelR"+p+"C"+d+" = vec4(0.);\n }\n "),h+="\n xR"+p+"C"+(d+1)+" = vec4(\n xTexelR"+p+"C"+d+".zw, xTexelR"+p+"C"+(d+2)+".xy);\n "):h+="\n xCOffset = xC + "+v+";\n\n if(xR >= 0 && xR < "+e+" &&\n xCOffset >= 0 && xCOffset < "+n+") {\n xTexelR"+p+"C"+(d+2)+" = getX(batch, xR, xCOffset, d1);\n }\n\n xR"+p+"C"+(d+1)+" = xTexelR"+p+"C"+(d+2)+";\n "}}else d= 0 && xR < "+e+") {\n ",i%2==1?(h+="\n xCOffset = xC + 1 - "+a+";\n if(xCOffset >= 0 && xCOffset < "+n+") {\n xTexelR"+p+"C"+d+" = getX(batch, xR, xCOffset, d1);\n } else {\n xTexelR"+p+"C"+d+" = vec4(0.);\n }\n\n if(xC + 1 >= 0 && xC + 1 < "+n+") {\n xTexelR"+p+"C"+(d+2)+" = getX(batch, xR, xC + 1, d1);\n } else {\n xTexelR"+p+"C"+(d+2)+" = vec4(0.);\n }\n\n xR"+p+"C"+d+" = vec4(\n xTexelR"+p+"C"+d+".zw, xTexelR"+p+"C"+(d+2)+".zw);\n ",d+1= 0 && xCOffset < "+n+") {\n final = getX(batch, xR, xCOffset, d1);\n }\n xR"+p+"C"+(d+1)+" = vec4(xTexelR"+p+"C"+(d+2)+".xy, final.xy);\n ")):(h+="\n if(xC >= 0 && xC < "+n+") {\n xTexelR"+p+"C"+d+" = getX(batch, xR, xC, d1);\n } else {\n xTexelR"+p+"C"+d+" = vec4(0.);\n }\n\n xCOffset = xC + "+a+";\n if(xCOffset >= 0 && xCOffset < "+n+") {\n xTexelR"+p+"C"+(d+2)+" = getX(batch, xR, xCOffset, d1);\n } else {\n xTexelR"+p+"C"+(d+2)+" = vec4(0.);\n }\n\n xR"+p+"C"+d+" = vec4(\n xTexelR"+p+"C"+d+".xy, xTexelR"+p+"C"+(d+2)+".xy);\n ",d+11?[""+(a-1)/(l-1),"(y2-y1) * height_ratio","y1*"+d+" + float(y)*(height_scale)"]:["0.0","0.0","0.5 * (y1+y2) * "+d],v=g[0],y=g[1],b=g[2],w=f>1?[""+(s-1)/(f-1),"(x2-x1) * width_ratio","x1*"+m+" + float(x)*(width_scale)"]:["0.0","0.0","0.5 * (x1+x2) * "+m],x=w[0],_=w[1],S=w[2];this.userCode="\n const float height_ratio = float("+v+");\n const float width_ratio = float("+x+");\n void main() {\n ivec4 coords = getOutputCoords();\n int b = coords[0];\n int y = coords[1];\n int x = coords[2];\n int d = coords[3];\n\n // get box vals\n float y1 = getBoxes(b,0);\n float x1 = getBoxes(b,1);\n float y2 = getBoxes(b,2);\n float x2 = getBoxes(b,3);\n\n // get image in batch index\n int bInd = round(getBoxInd(b));\n if(bInd < 0 || bInd >= "+o+") {\n return;\n }\n\n float height_scale = "+y+";\n float width_scale = "+_+";\n\n float in_y = "+b+";\n if( in_y < 0.0 || in_y > "+d+" ) {\n setOutput(float("+i+"));\n return;\n }\n float in_x = "+S+";\n if( in_x < 0.0 || in_x > "+m+" ) {\n setOutput(float("+i+"));\n return;\n }\n\n vec2 sourceFracIndexCR = vec2(in_x,in_y);\n if("+h+" == 1) {\n // Compute the four integer indices.\n ivec2 sourceFloorCR = ivec2(sourceFracIndexCR);\n ivec2 sourceCeilCR = ivec2(ceil(sourceFracIndexCR));\n\n float topLeft = getImage(b, sourceFloorCR.y, sourceFloorCR.x, d);\n float bottomLeft = getImage(b, sourceCeilCR.y, sourceFloorCR.x, d);\n float topRight = getImage(b, sourceFloorCR.y, sourceCeilCR.x, d);\n float bottomRight = getImage(b, sourceCeilCR.y, sourceCeilCR.x, d);\n\n vec2 fracCR = sourceFracIndexCR - vec2(sourceFloorCR);\n\n float top = topLeft + (topRight - topLeft) * fracCR.x;\n float bottom = bottomLeft + (bottomRight - bottomLeft) * fracCR.x;\n float newValue = top + (bottom - top) * fracCR.y;\n setOutput(newValue);\n } else {\n // Compute the coordinators of nearest neighbor point.\n ivec2 sourceNearestCR = ivec2(floor(\n sourceFracIndexCR + vec2(0.5,0.5)));\n float newValue = getImage(b, sourceNearestCR.y, sourceNearestCR.x, d);\n setOutput(newValue);\n }\n }\n "},qn=function(t,e,n){this.variableNames=["x"],this.outputShape=t;var r=t.length,i=t[t.length-1],o=n?"<":">";this.userCode="\n int getIndex(int i) {\n "+(n?"return "+i+" -i - 1;":"return i;")+"\n }\n\n void main() {\n "+mn(r)+" coords = getOutputCoords();\n int end = "+Xn(r,"coords")+";\n float val = 0.0;\n for (int i = "+i+" - 1; i >= 0; i -= 1) {\n int idx = getIndex(i);\n if (idx "+o+" end) {\n continue;\n }\n if (idx == end && "+e+") {\n continue;\n }\n "+Xn(r,"coords")+" = idx;\n val += getX("+function(t,e){if(1===t)return""+e;if(2===t)return e+".x, "+e+".y";if(3===t)return e+".x, "+e+".y, "+e+".z";if(4===t)return e+".x, "+e+".y, "+e+".z, "+e+".w";throw Error("Cumulative sum for rank "+t+" is not yet supported")}(r,"coords")+");\n }\n setOutput(val);\n }\n "};function Xn(t,e){if(1===t)return""+e;if(2===t)return e+".y";if(3===t)return e+".z";if(4===t)return e+".w";throw Error("Cumulative sum for rank "+t+" is not yet supported")}var Yn=function(){function t(t,e,n){this.variableNames=["x"],this.outputShape=[],this.outputShape=t,this.blockSize=e,this.dataFormat=n,this.userCode="\n void main() {\n ivec4 coords = getOutputCoords();\n int b = coords[0];\n int h = "+this.getHeightCoordString()+";\n int w = "+this.getWidthCoordString()+";\n int d = "+this.getDepthCoordString()+";\n\n int in_h = h / "+e+";\n int offset_h = imod(h, "+e+");\n int in_w = w / "+e+";\n int offset_w = imod(w, "+e+");\n int offset_d = (offset_h * "+e+" + offset_w) *\n "+this.getOutputDepthSize()+";\n int in_d = d + offset_d;\n\n float result = "+this.getInputSamplingString()+";\n setOutput(result);\n }\n "}return t.prototype.getHeightCoordString=function(){return"NHWC"===this.dataFormat?"coords[1]":"coords[2]"},t.prototype.getWidthCoordString=function(){return"NHWC"===this.dataFormat?"coords[2]":"coords[3]"},t.prototype.getDepthCoordString=function(){return"NHWC"===this.dataFormat?"coords[3]":"coords[1]"},t.prototype.getOutputDepthSize=function(){return"NHWC"===this.dataFormat?this.outputShape[3]:this.outputShape[1]},t.prototype.getInputSamplingString=function(){return"NHWC"===this.dataFormat?"getX(b, in_h, in_w, in_d)":"getX(b, in_d, in_h, in_w)"},t}(),Kn=function(t){this.variableNames=["A"];var e=nn();this.outputShape=t,this.userCode="\n const float FLOAT_MAX = 1.70141184e38;\n const float FLOAT_MIN = 1.17549435e-38;\n\n lowp vec4 encode_float(highp float v) {\n if (isnan(v)) {\n return vec4(255, 255, 255, 255);\n }\n\n highp float av = abs(v);\n\n if(av < FLOAT_MIN) {\n return vec4(0.0, 0.0, 0.0, 0.0);\n } else if(v > FLOAT_MAX) {\n return vec4(0.0, 0.0, 128.0, 127.0) / 255.0;\n } else if(v < -FLOAT_MAX) {\n return vec4(0.0, 0.0, 128.0, 255.0) / 255.0;\n }\n\n highp vec4 c = vec4(0,0,0,0);\n\n highp float e = floor(log2(av));\n highp float m = exp2(fract(log2(av))) - 1.0;\n\n c[2] = floor(128.0 * m);\n m -= c[2] / 128.0;\n c[1] = floor(32768.0 * m);\n m -= c[1] / 32768.0;\n c[0] = floor(8388608.0 * m);\n\n highp float ebias = e + 127.0;\n c[3] = floor(ebias / 2.0);\n ebias -= c[3] * 2.0;\n c[2] += floor(ebias) * 128.0;\n\n c[3] += 128.0 * step(0.0, -v);\n\n return c / 255.0;\n }\n\n void main() {\n float x = getAAtOutCoords();\n "+e.output+" = encode_float(x);\n }\n "},$n="return real * expR - imag * expI;",Jn="return real * expI + imag * expR;",Zn=function(t,e,n){this.variableNames=["real","imag"];var r=e[1];this.outputShape=e;var i=n?"2.0 * "+Math.PI:"-2.0 * "+Math.PI,o=n?r+".0":"1.0";this.userCode="\n const float exponentMultiplier = "+i+";\n\n float unaryOpComplex(float real, float expR, float imag, float expI) {\n "+t+"\n }\n\n float mulMatDFT(int batch, int index) {\n float indexRatio = float(index) / float("+r+");\n float exponentMultiplierTimesIndexRatio =\n exponentMultiplier * indexRatio;\n\n float result = 0.0;\n\n for (int i = 0; i < "+r+"; i++) {\n // x = (-2|2 * PI / N) * index * i;\n float x = exponentMultiplierTimesIndexRatio * float(i);\n float expR = cos(x);\n float expI = sin(x);\n float real = getReal(batch, i);\n float imag = getImag(batch, i);\n\n result +=\n unaryOpComplex(real, expR, imag, expI) / "+o+";\n }\n\n return result;\n }\n\n void main() {\n ivec2 coords = getOutputCoords();\n setOutput(mulMatDFT(coords[0], coords[1]));\n }\n "},Qn=function(){function t(t,e){this.outputShape=[],this.variableNames=["x"],this.outputShape=t,this.userCode="\n uniform float value;\n void main() {\n // Input can be obtained from uniform value.\n setOutput(value);\n }\n "}return t.prototype.getCustomSetupFunc=function(t){var e=this;return function(n,r){null==e.valueLoc&&(e.valueLoc=n.getUniformLocationNoThrow(r,"value")),n.gl.uniform1f(e.valueLoc,t)}},t}(),tr=function(t){this.variableNames=["A"];var e=nn(),n=t[0],r=t[1];this.outputShape=t,this.userCode="\n void main() {\n ivec3 coords = getOutputCoords();\n int texR = coords[0];\n int texC = coords[1];\n int depth = coords[2];\n vec2 uv = (vec2(texC, texR) + halfCR) / vec2("+r+".0, "+n+".0);\n\n vec4 values = "+e.texture2D+"(A, uv);\n float value;\n if (depth == 0) {\n value = values.r;\n } else if (depth == 1) {\n value = values.g;\n } else if (depth == 2) {\n value = values.b;\n } else if (depth == 3) {\n value = values.a;\n }\n\n setOutput(floor(value * 255.0 + 0.5));\n }\n "},er=function(t,e,n){this.variableNames=["A","indices"];var r=t.slice();r[n]=e,this.outputShape=r,this.rank=r.length;var i=mn(this.rank),o=function(t,e){var n=t.length;if(n>4)throw Error("Gather for rank "+n+" is not yet supported");if(1===n)return"int(getIndices(resRC))";for(var r=["resRC.x","resRC.y","resRC.z","resRC.w"],i=[],o=0;o1?"strides[j]":"strides";this.userCode="\n "+r+" strides = "+r+"("+this.strides+");\n void main() {\n "+i+" coords = getOutputCoords();\n int flattenIndex = 0;\n for (int j = 0; j < "+this.sliceDim+"; j++) {\n int index = round(getIndices(coords[0], j));\n flattenIndex += index * "+o+";\n }\n setOutput(getX(flattenIndex, coords[1]));\n }\n "};function or(t,e){return[e,t]}function ar(t,e){return t*e}function sr(t,e,n){var r=function(t,e){if(t%e!=0)throw new Error("unpackedSize ("+t+") must be a multiple of "+e);return t/e}(t.length,n);if(e.length= "+r);for(var i=0,o=0;o= "+o);for(var a=r%2==1,s=n%2==1,u=Math.floor(r/2),c=Math.floor(n/2),l=Math.ceil(r/2),f=l*Math.ceil(n/2),h=g(n)*g(r),p=0;pn||e>n)throw r="["+t+"x"+e+"]",new Error("Requested texture size "+r+" greater than WebGL maximum on this browser / GPU ["+n+"x"+n+"].")}function Cr(t,e){return Fr(t,e,function(){return t.createFramebuffer()},"Unable to create WebGLFramebuffer.")}function Pr(t,e,n,r,i,o,a,s){var u=t.getAttribLocation(n,r);return-1!==u&&(fr(t,e,function(){return t.bindBuffer(t.ARRAY_BUFFER,i)}),fr(t,e,function(){return t.vertexAttribPointer(u,o,t.FLOAT,!1,a,s)}),fr(t,e,function(){return t.enableVertexAttribArray(u)}),!0)}function Ir(t,e,n,r){Ur(t,r),fr(t,e,function(){return t.activeTexture(t.TEXTURE0+r)}),fr(t,e,function(){return t.bindTexture(t.TEXTURE_2D,n)})}function Or(t,e,n,r){return Fr(t,e,function(){return t.getUniformLocation(n,r)},'uniform "'+r+'" not present in program.')}function Rr(t,e,n){return t.getUniformLocation(e,n)}function kr(t,e,n,r,i,o){fr(t,e,function(){return Ir(t,e,r,o)}),fr(t,e,function(){return t.uniform1i(i,o)})}function Lr(t,e,n,r){fr(t,e,function(){return t.bindFramebuffer(t.FRAMEBUFFER,r)}),fr(t,e,function(){return t.framebufferTexture2D(t.FRAMEBUFFER,t.COLOR_ATTACHMENT0,t.TEXTURE_2D,n,0)})}function Dr(t,e,n){fr(t,e,function(){return t.bindFramebuffer(t.FRAMEBUFFER,n)}),fr(t,e,function(){return t.framebufferTexture2D(t.FRAMEBUFFER,t.COLOR_ATTACHMENT0,t.TEXTURE_2D,null,0)})}function Nr(t){var e=t.checkFramebufferStatus(t.FRAMEBUFFER);if(e!==t.FRAMEBUFFER_COMPLETE)throw new Error("Error binding framebuffer: "+Br(t,e))}function Br(t,e){switch(e){case t.FRAMEBUFFER_INCOMPLETE_ATTACHMENT:return"FRAMEBUFFER_INCOMPLETE_ATTACHMENT";case t.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT:return"FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT";case t.FRAMEBUFFER_INCOMPLETE_DIMENSIONS:return"FRAMEBUFFER_INCOMPLETE_DIMENSIONS";case t.FRAMEBUFFER_UNSUPPORTED:return"FRAMEBUFFER_UNSUPPORTED";default:return"unknown error "+e}}function Fr(t,e,n,r){var i=fr(t,e,function(){return n()});if(null==i)throw new Error(r);return i}function Ur(t,e){var n=t.MAX_COMBINED_TEXTURE_IMAGE_UNITS-1,r=e+t.TEXTURE0;if(rn)throw new Error("textureUnit must be in [gl.TEXTURE0, gl.TEXTURE"+n+"].")}function jr(t,e){return void 0===e&&(e=2),S(t.slice(0,t.length-e))}function zr(t){if(0===t.length)throw Error("Cannot get rows and columns of an empty shape array.");return[t.length>1?t[t.length-2]:1,t[t.length-1]]}function Gr(t,e){var n;void 0===e&&(e=!1);var r=Gt.get("WEBGL_MAX_TEXTURE_SIZE");if(e&&(r*=2,1===(t=t.map(function(e,n){return n>=t.length-2?g(t[n]):t[n]})).length&&(t=[2,t[0]])),2!==t.length){var i=R(t);t=i.newShape}var o=S(t);if(t.length<=1&&o<=r)return[1,o];if(2===t.length&&t[0]<=r&&t[1]<=r)return t;if(3===t.length&&t[0]*t[1]<=r&&t[2]<=r)return[t[0]*t[1],t[2]];if(3===t.length&&t[0]<=r&&t[1]*t[2]<=r)return[t[0],t[1]*t[2]];if(4===t.length&&t[0]*t[1]*t[2]<=r&&t[3]<=r)return[t[0]*t[1]*t[2],t[3]];if(4===t.length&&t[0]<=r&&t[1]*t[2]*t[3]<=r)return[t[0],t[1]*t[2]*t[3]];if(e){var a=jr(t),s=2,u=2;return t.length&&(s=(n=zr(t))[0],u=n[1]),A(o=a*(s/2)*(u/2)).map(function(t){return 2*t})}return A(o)}function Vr(t){return t%2==0}function Wr(t,e){if(E(t=t.slice(-2),e=e.slice(-2)))return!0;if(!t.length||!e.length)return!0;if(0===t[0]||0===t[1]||0===e[0]||0===e[1])return!0;if(t.length!==e.length){var n=t.slice(-1)[0],r=e.slice(-1)[0];if(n===r)return!0;if(Vr(n)&&Vr(r)&&(1===t[0]||1===e[0]))return!0}return t[1]===e[1]&&Vr(t[0])&&Vr(e[0])}var Hr=Object.freeze({callAndCheck:fr,canBeRepresented:dr,getWebGLErrorMessage:mr,getExtensionOrThrow:gr,createVertexShader:vr,createFragmentShader:yr,createProgram:wr,linkProgram:xr,validateProgram:_r,createStaticVertexBuffer:Sr,createStaticIndexBuffer:Er,getNumChannels:Tr,createTexture:Mr,validateTextureSize:Ar,createFramebuffer:Cr,bindVertexBufferToProgramAttribute:Pr,bindTextureUnit:Ir,unbindTextureUnit:function(t,e,n){Ur(t,n),fr(t,e,function(){return t.activeTexture(t.TEXTURE0+n)}),fr(t,e,function(){return t.bindTexture(t.TEXTURE_2D,null)})},getProgramUniformLocationOrThrow:Or,getProgramUniformLocation:Rr,bindTextureToProgramUniformSampler:kr,bindCanvasToFramebuffer:function(t,e){fr(t,e,function(){return t.bindFramebuffer(t.FRAMEBUFFER,null)}),fr(t,e,function(){return t.viewport(0,0,t.canvas.width,t.canvas.height)}),fr(t,e,function(){return t.scissor(0,0,t.canvas.width,t.canvas.height)})},bindColorTextureToFramebuffer:Lr,unbindColorTextureFromFramebuffer:Dr,validateFramebuffer:Nr,getFramebufferErrorMessage:Br,getBatchDim:jr,getRowsCols:zr,getTextureShapeFromLogicalShape:Gr,isReshapeFree:Wr});function qr(t,e){var n=nn();return vr(t,e,n.version+"\n precision highp float;\n "+n.attribute+" vec3 clipSpacePos;\n "+n.attribute+" vec2 uv;\n "+n.varyingVs+" vec2 resultUV;\n\n void main() {\n gl_Position = vec4(clipSpacePos, 1);\n resultUV = uv;\n }")}function Xr(t,e){return Sr(t,e,new Float32Array([-1,1,0,0,1,-1,-1,0,0,0,1,1,0,1,1,1,-1,0,1,0]))}function Yr(t,e){return Er(t,e,new Uint16Array([0,1,2,2,1,3]))}function Kr(t,e){var n,r,i,o,a,s,u,c,l=t;return 2===Gt.get("WEBGL_VERSION")?(n=l.R32F,r=l.R16F,i=l.RGBA16F,o=l.RGBA32F,a=l.RED,s=4,u=1,c=l.HALF_FLOAT):(n=t.RGBA,r=t.RGBA,i=t.RGBA,o=l.RGBA,a=t.RGBA,s=4,u=4,c=null!=e?e.HALF_FLOAT_OES:null),{internalFormatFloat:n,internalFormatHalfFloat:r,internalFormatPackedHalfFloat:i,internalFormatPackedFloat:o,textureFormatFloat:a,downloadTextureFormat:t.RGBA,downloadUnpackNumChannels:s,defaultNumChannels:u,textureTypeHalfFloat:c}}function $r(t,e,n,r,i,o,a){Ar(n,r);var s=Mr(t,e),u=t.TEXTURE_2D;return fr(t,e,function(){return t.bindTexture(u,s)}),fr(t,e,function(){return t.texParameteri(u,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE)}),fr(t,e,function(){return t.texParameteri(u,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE)}),fr(t,e,function(){return t.texParameteri(u,t.TEXTURE_MIN_FILTER,t.NEAREST)}),fr(t,e,function(){return t.texParameteri(u,t.TEXTURE_MAG_FILTER,t.NEAREST)}),fr(t,e,function(){return t.texImage2D(u,0,i,n,r,0,o,a,null)}),fr(t,e,function(){return t.bindTexture(t.TEXTURE_2D,null)}),s}function Jr(t,e,n,r,i){var o=or(n,r);return $r(t,e,o[0],o[1],i.internalFormatFloat,i.textureFormatFloat,t.FLOAT)}function Zr(t,e,n,r,i){var o=or(n,r);return $r(t,e,o[0],o[1],i.internalFormatHalfFloat,i.textureFormatFloat,i.textureTypeHalfFloat)}function Qr(t,e,n,r,i){var o=or(n,r);return $r(t,e,o[0],o[1],t.RGBA,t.RGBA,t.UNSIGNED_BYTE)}function ti(t,e,n,r,i){var o=ur(n,r);return $r(t,e,o[0],o[1],i.internalFormatPackedFloat,t.RGBA,t.FLOAT)}function ei(t,e,n,r,i){var o=ur(n,r);return $r(t,e,o[0],o[1],i.internalFormatPackedHalfFloat,t.RGBA,i.textureTypeHalfFloat)}function ni(t,e,n,r){return fr(t,e,function(){return t.bindBuffer(t.ARRAY_BUFFER,r)}),Pr(t,e,n,"clipSpacePos",r,3,20,0)&&Pr(t,e,n,"uv",r,2,20,12)}function ri(t,e,n,r){fr(t,e,function(){return t.bindTexture(t.TEXTURE_2D,n)}),fr(t,e,function(){return t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,r)}),fr(t,e,function(){return t.bindTexture(t.TEXTURE_2D,null)})}function ii(t,e,n,r,i,o,a){Ar(r,i),fr(t,e,function(){return t.bindTexture(t.TEXTURE_2D,n)}),fr(t,e,function(){return t.texSubImage2D(t.TEXTURE_2D,0,0,0,r,i,a,t.FLOAT,o)}),fr(t,e,function(){return t.bindTexture(t.TEXTURE_2D,null)})}function oi(t,e,n,r,i,o,a,s){var u,c=or(r,i),l=c[0],f=c[1],h=r*i;1===s.defaultNumChannels&&h===o.length?u=o:function(t,e,n){var r=ar(t.length,n);if(e.length= "+r);for(var i=0,o=0;o0?(e=this.beginQuery(),this.endQuery(),n=function(){return r.isQueryAvailable(e,Gt.get("WEBGL_DISJOINT_QUERY_TIMER_EXTENSION_VERSION"))}):n=function(){return!0};return{query:e,isFencePassed:n}},t.prototype.downloadMatrixFromPackedTexture=function(t,e,n,r,i,o){var a=this;return this.downloadMatrixDriver(t,function(){return hi(a.gl,a.debug,e,n,r,i,o,a.textureConfig)})},t.prototype.createProgram=function(t){this.throwIfDisposed();var e=this.gl,n=yr(e,this.debug,t),r=qr(e,this.debug),i=wr(e,this.debug);return fr(e,this.debug,function(){return e.attachShader(i,r)}),fr(e,this.debug,function(){return e.attachShader(i,n)}),xr(e,this.debug,i),this.debug&&_r(e,this.debug,i),this.vertexAttrsAreBound||(this.setProgram(i),this.vertexAttrsAreBound=ni(e,this.debug,this.program,this.vertexBuffer)),i},t.prototype.deleteProgram=function(t){var e=this;this.throwIfDisposed(),t===this.program&&(this.program=null),null!=t&&fr(this.gl,this.debug,function(){return e.gl.deleteProgram(t)})},t.prototype.setProgram=function(t){var e=this;this.throwIfDisposed(),this.program=t,null!=this.program&&this.debug&&_r(this.gl,this.debug,this.program),fr(this.gl,this.debug,function(){return e.gl.useProgram(t)})},t.prototype.getUniformLocation=function(t,e,n){return void 0===n&&(n=!0),this.throwIfDisposed(),n?Or(this.gl,this.debug,t,e):Rr(this.gl,t,e)},t.prototype.getAttributeLocation=function(t,e){var n=this;return this.throwIfDisposed(),fr(this.gl,this.debug,function(){return n.gl.getAttribLocation(t,e)})},t.prototype.getUniformLocationNoThrow=function(t,e){return this.throwIfDisposed(),this.gl.getUniformLocation(t,e)},t.prototype.setInputMatrixTexture=function(t,e,n){this.throwIfDisposed(),this.throwIfNoProgram(),kr(this.gl,this.debug,this.program,t,e,n)},t.prototype.setOutputMatrixTexture=function(t,e,n){this.setOutputMatrixTextureDriver(t,n,e)},t.prototype.setOutputPackedMatrixTexture=function(t,e,n){this.throwIfDisposed();var r=ur(e,n),i=r[0],o=r[1];this.setOutputMatrixTextureDriver(t,i,o)},t.prototype.setOutputMatrixWriteRegion=function(t,e,n,r){this.setOutputMatrixWriteRegionDriver(n,t,r,e)},t.prototype.setOutputPackedMatrixWriteRegion=function(t,e,n,r){throw new Error("setOutputPackedMatrixWriteRegion not implemented.")},t.prototype.debugValidate=function(){null!=this.program&&_r(this.gl,this.debug,this.program),Nr(this.gl)},t.prototype.executeProgram=function(){this.throwIfDisposed(),this.throwIfNoProgram();var t=this.gl;this.debug&&this.debugValidate(),fr(t,this.debug,function(){return t.drawElements(t.TRIANGLES,6,t.UNSIGNED_SHORT,0)})},t.prototype.blockUntilAllProgramsCompleted=function(){var t=this;this.throwIfDisposed(),fr(this.gl,this.debug,function(){return t.gl.finish()})},t.prototype.getQueryTimerExtension=function(){return null==this.disjointQueryTimerExtension&&(this.disjointQueryTimerExtension=gr(this.gl,this.debug,2===Gt.get("WEBGL_DISJOINT_QUERY_TIMER_EXTENSION_VERSION")?"EXT_disjoint_timer_query_webgl2":"EXT_disjoint_timer_query")),this.disjointQueryTimerExtension},t.prototype.getQueryTimerExtensionWebGL2=function(){return this.getQueryTimerExtension()},t.prototype.getQueryTimerExtensionWebGL1=function(){return this.getQueryTimerExtension()},t.prototype.beginQuery=function(){if(2===Gt.get("WEBGL_DISJOINT_QUERY_TIMER_EXTENSION_VERSION")){var t=this.gl,e=this.getQueryTimerExtensionWebGL2(),n=t.createQuery();return t.beginQuery(e.TIME_ELAPSED_EXT,n),n}var r=this.getQueryTimerExtensionWebGL1(),i=r.createQueryEXT();return r.beginQueryEXT(r.TIME_ELAPSED_EXT,i),i},t.prototype.endQuery=function(){if(2!==Gt.get("WEBGL_DISJOINT_QUERY_TIMER_EXTENSION_VERSION")){var t=this.getQueryTimerExtensionWebGL1();t.endQueryEXT(t.TIME_ELAPSED_EXT)}else{var e=this.gl,n=this.getQueryTimerExtensionWebGL2();e.endQuery(n.TIME_ELAPSED_EXT)}},t.prototype.waitForQueryAndGetTime=function(t){return c(this,void 0,void 0,function(){var e=this;return l(this,function(n){switch(n.label){case 0:return[4,P(function(){return e.disposed||e.isQueryAvailable(t,Gt.get("WEBGL_DISJOINT_QUERY_TIMER_EXTENSION_VERSION"))})];case 1:return n.sent(),[2,this.getQueryTime(t,Gt.get("WEBGL_DISJOINT_QUERY_TIMER_EXTENSION_VERSION"))]}})})},t.prototype.getQueryTime=function(t,e){if(0===e)return null;if(2===e){var n=this.gl;return n.getQueryParameter(t,n.QUERY_RESULT)/1e6}var r=this.getQueryTimerExtensionWebGL1();return r.getQueryObjectEXT(t,r.QUERY_RESULT_EXT)/1e6},t.prototype.isQueryAvailable=function(t,e){if(0===e)return!0;if(2===e){var n=this.gl,r=this.getQueryTimerExtensionWebGL2(),i=n.getQueryParameter(t,n.QUERY_RESULT_AVAILABLE);return null==this.disjoint&&(this.disjoint=this.gl.getParameter(r.GPU_DISJOINT_EXT)),i&&!this.disjoint}return i=(r=this.getQueryTimerExtensionWebGL1()).getQueryObjectEXT(t,r.QUERY_RESULT_AVAILABLE_EXT),null==this.disjoint&&(this.disjoint=this.gl.getParameter(r.GPU_DISJOINT_EXT)),i&&!this.disjoint},t.prototype.pollFence=function(t){var e=this;return new Promise(function(n){e.addItemToPoll(function(){return t.isFencePassed()},function(){return n()})})},t.prototype.pollItems=function(){for(var t=function(t){for(var e=0;e1||P(function(){return n.pollItems(),0===n.itemsToPoll.length})},t.prototype.bindTextureToFrameBuffer=function(t){this.throwIfDisposed(),Lr(this.gl,this.debug,t,this.framebuffer),this.debug&&Nr(this.gl)},t.prototype.unbindTextureToFrameBuffer=function(){null!=this.outputTexture?(Lr(this.gl,this.debug,this.outputTexture,this.framebuffer),this.debug&&Nr(this.gl)):Dr(this.gl,this.debug,this.framebuffer)},t.prototype.downloadMatrixDriver=function(t,e){this.bindTextureToFrameBuffer(t);var n=e();return this.unbindTextureToFrameBuffer(),n},t.prototype.setOutputMatrixTextureDriver=function(t,e,n){this.throwIfDisposed();var r=this.gl;Lr(r,this.debug,t,this.framebuffer),this.debug&&Nr(r),this.outputTexture=t,fr(r,this.debug,function(){return r.viewport(0,0,e,n)}),fr(r,this.debug,function(){return r.scissor(0,0,e,n)})},t.prototype.setOutputMatrixWriteRegionDriver=function(t,e,n,r){var i=this;this.throwIfDisposed(),fr(this.gl,this.debug,function(){return i.gl.scissor(t,e,n,r)})},t.prototype.throwIfDisposed=function(){if(this.disposed)throw new Error("Attempted to use disposed GPGPUContext.")},t.prototype.throwIfNoProgram=function(){if(null==this.program)throw new Error("No GPU program is currently set.")},t}();function mi(t,e){if(t.length!==e.length)throw Error("Binary was compiled with "+t.length+" inputs, but was executed with "+e.length+" inputs");t.forEach(function(t,n){var r=t.logicalShape,i=e[n],o=i.shape;if(!E(r,o))throw Error("Binary was compiled with different shapes than the current args. Shapes "+r+" and "+o+" must match");if(!t.isUniform||!i.isUniform){var a=t.texShape,s=i.isUniform?null:i.texData.texShape;if(!E(a,s))throw Error("Binary was compiled with different texture shapes than the current args. Shape "+a+" and "+s+" must match")}})}var gi=function(t,e,n){this.variableNames=["A"],this.usesPackedTextures=!0,this.outputShape=t;var r=n.filterWidth,i=n.inChannels,o=n.strideWidth,a=n.strideHeight,s=n.padInfo,u=n.outWidth,c=n.dilationWidth,l=n.dilationHeight,f=s.left,h=s.top,p=i*r,d=nn();this.userCode="\n void main() {\n ivec2 rc = getOutputCoords();\n\n vec4 result = vec4(0);\n\n for(int row=0; row<=1; row++) {\n for(int col=0; col<=1; col++) {\n int blockIndex = rc.y + col;\n int pos = rc.x + row;\n\n if(blockIndex >= "+t[1]+" || pos >= "+t[0]+") continue;\n\n int offsetY = int(blockIndex / ("+u+")) * "+a+" - "+h+";\n int d0 = offsetY + "+l+" * (pos / "+p+");\n\n if(d0 >= "+e[0]+" || d0 < 0) continue;\n\n int offsetX = int(mod(float(blockIndex), "+u+".) * "+o+". - "+f+".);\n int d1 = offsetX + "+c+" * (int(mod(float(pos), "+p+".) / "+i+".));\n\n if(d1 >= "+e[1]+" || d1 < 0) continue;\n\n vec2 innerDims = vec2(d1, int(mod(float(pos), "+i+".)));\n result[row * 2 + col] = getChannel(getA(d0, int(innerDims.x),\n int(innerDims.y)), innerDims);\n }\n }\n\n "+d.output+" = result;\n }\n "},vi=function(t,e,n,r,i){this.variableNames=["x"],this.outputShape=[];var o,a=e,s=t[3]-1;this.outputShape=t;var u="float("+n+") + float("+r+") * sum";o=.5===i?"inversesqrt("+u+")":1===i?"1.0/("+u+")":"exp(log("+u+") * float(-"+i+"));",this.userCode="\n void main() {\n ivec4 coords = getOutputCoords();\n int b = coords[0];\n int r = coords[1];\n int c = coords[2];\n int d = coords[3];\n float x = getX(b, r, c, d);\n float sum = 0.0;\n for (int j = -"+a+"; j <= "+a+"; j++) {\n int idx = d + j;\n if (idx >= 0 && idx <= "+s+") {\n float z = getX(b, r, c, idx);\n sum += z * z;\n }\n }\n float val = x * "+o+";\n setOutput(val);\n }\n "},yi=function(t,e,n,r,i){this.variableNames=["inputImage","outputImage","dy"],this.outputShape=[],this.outputShape=t,this.depth=t[3],this.depthRadius=e,this.bias=n,this.alpha=r,this.beta=i,this.userCode="\n void main() {\n ivec4 coords = getOutputCoords();\n int b = coords[0];\n int r = coords[1];\n int c = coords[2];\n\n float result = 0.0;\n for (int d = 0; d < "+this.depth+"; ++d) {\n int depthBegin = int(max(0.0, float(d - "+e+")));\n int depthEnd = int(min(float("+this.depth+"),\n float(d + "+e+" + 1)));\n\n const int MIN_DEPTH_BEGIN = 0;\n const int MAX_DEPTH_END = "+this.depth+";\n\n float norm = 0.0;\n for (int k = MIN_DEPTH_BEGIN; k < MAX_DEPTH_END; ++k) {\n if (k < depthBegin){\n continue;\n }\n else if (k >= depthBegin && k < depthEnd) {\n norm += getInputImage(b, r, c, k) * getInputImage(b, r, c, k);\n }\n else {\n break;\n }\n }\n\n norm = float("+r+") * norm + float("+n+");\n\n for(int k = MIN_DEPTH_BEGIN; k < MAX_DEPTH_END; ++k){\n if (k < depthBegin){\n continue;\n }\n else if (k >= depthBegin && k < depthEnd){\n float dyi = -2.0 * float("+r+")\n * float("+i+")\n * getInputImage(b ,r ,c, k) * getOutputImage(b, r, c, d)\n / norm;\n if (k == d) {\n dyi += pow(norm, -1.0 * "+i+");\n }\n if (k == coords[3]) {\n dyi *= getDy(b, r, c, d);\n result += dyi;\n }\n }\n else {\n break;\n }\n }\n }\n setOutput(result);\n }\n "},bi=function(t){this.variableNames=["dy","maxPos"],this.outputShape=t.inShape;var e=t.strideHeight,n=t.strideWidth,r=t.dilationHeight,i=t.effectiveFilterHeight,o=t.effectiveFilterWidth,a=i-1-t.padInfo.top,s=o-1-t.padInfo.left,u=i*o-1;this.userCode="\n const ivec2 pads = ivec2("+a+", "+s+");\n\n void main() {\n ivec4 coords = getOutputCoords();\n int b = coords[0];\n int d = coords[3];\n\n ivec2 dyRCCorner = coords.yz - pads;\n int dyRCorner = dyRCCorner.x;\n int dyCCorner = dyRCCorner.y;\n\n // Convolve dy(?, ?, d) with pos mask(:, :, d) to get dx(xR, xC, d).\n // ? = to be determined. : = across all values in that axis.\n float dotProd = 0.0;\n for (int wR = 0; wR < "+i+";\n wR += "+r+") {\n float dyR = float(dyRCorner + wR) / "+e+".0;\n\n if (dyR < 0.0 || dyR >= "+t.outHeight+".0 || fract(dyR) > 0.0) {\n continue;\n }\n int idyR = int(dyR);\n\n for (int wC = 0; wC < "+o+"; wC++) {\n float dyC = float(dyCCorner + wC) / "+n+".0;\n\n if (dyC < 0.0 || dyC >= "+t.outWidth+".0 ||\n fract(dyC) > 0.0) {\n continue;\n }\n int idyC = int(dyC);\n\n float dyValue = getDy(b, idyR, idyC, d);\n int maxPosValue = "+u+" - int(getMaxPos(b, idyR, idyC, d));\n\n // Get the current value, check it against the value from the\n // position matrix.\n int curPosValue = wR * "+o+" + wC;\n float mask = float(maxPosValue == curPosValue ? 1.0 : 0.0);\n\n dotProd += dyValue * mask;\n }\n }\n setOutput(dotProd);\n }\n "},wi=function(t,e,n,r,i,o){void 0===n&&(n=!1),void 0===r&&(r=!1),void 0===i&&(i=!1),void 0===o&&(o=null),this.variableNames=["matrixA","matrixB"],this.usesPackedTextures=!0,this.outputShape=e;var a=n?t[1]:t[2],s=Math.ceil(a/2),u=n?"i * 2, rc.y":"rc.y, i * 2",c=r?"rc.z, i * 2":"i * 2, rc.z",l=n?["a.xxyy","a.zzww"]:["a.xxzz","a.yyww"],f=r?["b.xzxz","b.ywyw"]:["b.xyxy","b.zwzw"],h="",p="";o&&(h="vec4 activation(vec4 x) {\n "+o+"\n }",p="result = activation(result);");var d=i?"result += getBiasAtOutCoords();":"";i&&this.variableNames.push("bias"),this.userCode="\n "+h+"\n\n const float sharedDimension = "+s+".0;\n\n vec4 dot2x2ARowBCol(ivec3 rc) {\n vec4 result = vec4(0);\n for (int i = 0; i < "+s+"; i++) {\n vec4 a = getMatrixA(rc.x, "+u+");\n vec4 b = getMatrixB(rc.x, "+c+");\n\n result += ("+l[0]+" * "+f[0]+") + ("+l[1]+" * "+f[1]+");\n }\n return result;\n }\n\n void main() {\n ivec3 rc = getOutputCoords();\n vec4 result = dot2x2ARowBCol(rc);\n\n "+d+"\n\n "+p+"\n\n setOutput(result);\n }\n "},xi=function(){function t(t,e,n){this.variableNames=["probs"],this.outputShape=[t,n],this.userCode="\n uniform float seed;\n\n void main() {\n ivec2 coords = getOutputCoords();\n int batch = coords[0];\n\n float r = random(seed);\n float cdf = 0.0;\n\n for (int i = 0; i < "+(e-1)+"; i++) {\n cdf += getProbs(batch, i);\n\n if (r < cdf) {\n setOutput(float(i));\n return;\n }\n }\n\n // If no other event happened, last event happened.\n setOutput(float("+(e-1)+"));\n }\n "}return t.prototype.getCustomSetupFunc=function(t){var e=this;return function(n,r){null==e.seedLoc&&(e.seedLoc=n.getUniformLocation(r,"seed")),n.gl.uniform1f(e.seedLoc,t)}},t}(),_i=function(t,e,n,r){this.variableNames=["indices"],this.outputShape=[t,e],this.userCode="\n void main() {\n ivec2 coords = getOutputCoords();\n int index = round(getIndices(coords.x));\n setOutput(mix(float("+r+"), float("+n+"),\n float(index == coords.y)));\n }\n "},Si=function(t){this.variableNames=["A"],this.isPackShader=!0,this.outputShape=t;var e=t.length;if(0===e)this.userCode="\n void main() {\n setOutput(vec4(getA(), 0., 0., 0.));\n }\n ";else{var n=Ze("rc",e),r=mn(e),i=function(t,e,n){if(1===t)return"rc > "+e[0];for(var r="",i=t-2;i= "+e[i],i= "+e+";\n bool rEdge = rp1 >= "+n+";\n "}(e,t[t.length-1],t[t.length-2],n),a=function(t,e){var n=t.length,r=function(t,e){for(var n=[],r=0;r<=1;r++)for(var i=0;i<=1;i++){for(var o=(0===r?"r":"rp1")+", "+(0===i?"c":"cp1"),a=2;a= "+t[0]+" ? 0. : getA(rc + 1),\n 0, 0":"getA("+r[0]+"),\n cEdge ? 0. : getA("+r[1]+"),\n rEdge ? 0. : getA("+r[2]+"),\n rEdge || cEdge ? 0. : getA("+r[3]+")"}(t,n);this.userCode="\n void main() {\n "+r+" rc = getOutputCoords();\n\n if("+i+") {\n setOutput(vec4(0));\n } else {\n "+o+"\n\n setOutput(vec4("+a+"));\n }\n }\n "}};var Ei=function(t,e,n){this.variableNames=["x"],this.outputShape=e.map(function(e,n){return e[0]+t[n]+e[1]});var r=t.length,i=mn(r),o=e.map(function(t){return t[0]}).join(","),a=e.map(function(e,n){return e[0]+t[n]}).join(","),s=["coords[0]","coords[1]","coords[2]","coords[3]"].slice(0,r);this.userCode=1!==r?"\n "+i+" start = "+i+"("+o+");\n "+i+" end = "+i+"("+a+");\n\n void main() {\n "+i+" outC = getOutputCoords();\n if (any(lessThan(outC, start)) || any(greaterThanEqual(outC, end))) {\n setOutput(float("+n+"));\n } else {\n "+i+" coords = outC - start;\n setOutput(getX("+s+"));\n }\n }\n ":"\n int start = "+o+";\n int end = "+a+";\n\n void main() {\n int outC = getOutputCoords();\n if (outC < start || outC >= end) {\n setOutput(float("+n+"));\n } else {\n setOutput(getX(outC - start));\n }\n }\n "},Ti=function(t,e,n){this.variableNames=["x"],this.usesPackedTextures=!0,this.outputShape=e.map(function(e,n){return e[0]+t[n]+e[1]});for(var r=t.length,i=mn(r),o=e.map(function(t){return t[0]}).join(","),a=e.map(function(e,n){return e[0]+t[n]}).join(","),s=Ze("rc",r),u=Ze("source",r),c=s[r-1]+" < "+this.outputShape[r-1],l=1===r?"source":"vec2("+u.slice(-2).join()+")",f=[i+" rc = outputLoc;",s[r-1]+" += 1;\n if("+c+") {\n ",1===r?"":"}\n rc = outputLoc;\n "+s[r-2]+" += 1;\n if("+s[r-2]+" < "+this.outputShape[r-2]+") {",1===r?"":" "+s[r-1]+" += 1;\n if("+c+") {"],h=1===r?"rc < start || rc >= end":"any(lessThan(rc, start)) || any(greaterThanEqual(rc, end))",p="",d=0,m=1===r?2:4;d= "+t.inHeight+") {\n continue;\n }\n\n for (int wC = 0; wC < "+c+";\n wC += "+s+") {\n int xC = xCCorner + wC;\n\n if (xC < 0 || xC >= "+t.inWidth+") {\n continue;\n }\n\n float value = getX(batch, xR, xC, d);\n\n // If a min / max value has already been found, use it. If not,\n // use the current value.\n float currMinMaxValue = mix(\n value, minMaxValue, minMaxValueFound);\n if (value >= currMinMaxValue) {\n minMaxValue = value;\n minMaxValueFound = 1.0;\n minMaxPosition = wR * "+c+" + wC;\n }\n }\n }\n setOutput(float(minMaxPosition));\n }\n ";else{var d=e+"("+e+"("+e+"(minMaxValue[0], minMaxValue[1]), minMaxValue[2]), minMaxValue[3])";"avg"===e&&(d="avgValue / count");var m=4*Math.floor(r/4),g=r%4,v="\n if ("+h+") {\n avgValue += dot(values, ones);\n } else {\n minMaxValue = max(values, minMaxValue);\n }\n ";this.userCode="\n const ivec2 strides = ivec2("+i+", "+o+");\n const ivec2 pads = ivec2("+l+", "+f+");\n const float initializationValue = "+p+";\n const vec4 ones = vec4(1.0, 1.0, 1.0, 1.0);\n\n float count = 0.0;\n\n float getValue(int batch, int xR, int xC, int d) {\n if (xC < 0 || xC >= "+t.inWidth+") {\n return initializationValue;\n }\n count += 1.0;\n return getX(batch, xR, xC, d);\n }\n\n void main() {\n ivec4 coords = getOutputCoords();\n int batch = coords[0];\n int d = coords[3];\n\n ivec2 xRCCorner = coords.yz * strides - pads;\n int xRCorner = xRCCorner.x;\n int xCCorner = xRCCorner.y;\n\n // max/min x(?, ?, d) to get y(yR, yC, d).\n // ? = to be determined\n vec4 minMaxValue = vec4("+p+");\n float avgValue = 0.0;\n count = 0.0;\n\n for (int wR = 0; wR < "+u+";\n wR += "+a+") {\n int xR = xRCorner + wR;\n\n if (xR < 0 || xR >= "+t.inHeight+") {\n continue;\n }\n\n for (int wC = 0; wC < "+m+"; wC += 4) {\n int xC = xCCorner + wC * "+s+";\n\n vec4 values = vec4(\n getValue(batch, xR, xC, d),\n getValue(batch, xR, xC + "+s+", d),\n getValue(batch, xR, xC + 2 * "+s+", d),\n getValue(batch, xR, xC + 3 * "+s+", d)\n );\n\n "+v+"\n }\n\n int xC = xCCorner + "+m+";\n if ("+(1===g)+") {\n vec4 values = vec4(\n getValue(batch, xR, xC, d),\n initializationValue,\n initializationValue,\n initializationValue\n );\n\n "+v+"\n } else if ("+(2===g)+") {\n vec4 values = vec4(\n getValue(batch, xR, xC, d),\n getValue(batch, xR, xC + "+s+", d),\n initializationValue,\n initializationValue\n );\n\n "+v+"\n } else if ("+(3===g)+") {\n vec4 values = vec4(\n getValue(batch, xR, xC, d),\n getValue(batch, xR, xC + "+s+", d),\n getValue(batch, xR, xC + 2 * "+s+", d),\n initializationValue\n );\n\n "+v+"\n }\n }\n setOutput("+d+");\n }\n "}},Ai=function(t,e){this.variableNames=["x"];var n=t.windowSize,r=t.batchSize,i=t.inSize,o=Math.ceil(i/n);this.outputShape=[r,o];var a="0.0",s="";"prod"===e?a="1.0":"min"===e?(a="1.0 / 1e-20",s="min"):"max"===e&&(a="-1.0 / 1e-20",s="max");var u=e+"("+e+"("+e+"(minMaxValue[0], minMaxValue[1]), minMaxValue[2]), minMaxValue[3])";"sum"===e?u="sumValue":"prod"===e?u="prodValue":"all"===e?u="allValue":"any"===e&&(u="anyValue");var c=4*Math.floor(n/4),l=n%4,f="\n if ("+("sum"===e)+") {\n sumValue += dot(values, ones);\n } else if ("+("prod"===e)+") {\n vec2 tmp = vec2(values[0], values[1]) * vec2(values[2], values[3]);\n prodValue *= tmp[0] * tmp[1];\n } else {\n minMaxValue = "+s+"(values, minMaxValue);\n }\n ",h="vec4";"all"===e?(a="1.0",f="\n bool reducedAllValue = all(values);\n float floatedReducedAllValue = float(reducedAllValue);\n allValue = float(allValue >= 1.0 && floatedReducedAllValue >= 1.0);\n ",h="bvec4"):"any"===e&&(a="0.0",f="\n bool reducedAnyValue = any(values);\n float floatedReducedAnyValue = float(reducedAnyValue);\n anyValue = float(anyValue >= 1.0 || floatedReducedAnyValue >= 1.0);\n ",h="bvec4");var p="";i%n>0&&(p="\n if (inIdx < 0 || inIdx >= "+i+") {\n return initializationValue;\n }\n "),this.userCode="\n const float initializationValue = "+a+";\n const vec4 ones = vec4(1.0, 1.0, 1.0, 1.0);\n\n float getValue(int batch, int inIdx) {\n "+p+"\n return getX(batch, inIdx);\n }\n\n void main() {\n ivec2 coords = getOutputCoords();\n int batch = coords[0];\n int outIdx = coords[1];\n int inOffset = outIdx * "+n+";\n\n vec4 minMaxValue = vec4("+a+");\n float prodValue = 1.0;\n float sumValue = 0.0;\n float allValue = 1.0;\n float anyValue = 0.0;\n\n for (int i = 0; i < "+c+"; i += 4) {\n int inIdx = inOffset + i;\n "+h+" values = "+h+"(\n getValue(batch, inIdx),\n getValue(batch, inIdx + 1),\n getValue(batch, inIdx + 2),\n getValue(batch, inIdx + 3)\n );\n\n "+f+"\n }\n\n int inIdx = inOffset + "+c+";\n if ("+(1===l)+") {\n "+h+" values = "+h+"(\n getValue(batch, inIdx),\n initializationValue,\n initializationValue,\n initializationValue\n );\n\n "+f+"\n } else if ("+(2===l)+") {\n "+h+" values = "+h+"(\n getValue(batch, inIdx),\n getValue(batch, inIdx + 1),\n initializationValue,\n initializationValue\n );\n\n "+f+"\n } else if ("+(3===l)+") {\n "+h+" values = "+h+"(\n getValue(batch, inIdx),\n getValue(batch, inIdx + 1),\n getValue(batch, inIdx + 2),\n initializationValue\n );\n\n "+f+"\n }\n setOutput("+u+");\n }\n "},Ci=function(t,e){this.variableNames=["A"],this.usesPackedTextures=!0,this.outputShape=t;for(var n="",r=0;r<4;r++){var i="thisRC = rc;";r%2==1&&(i+="thisRC.z += 1;"),r>1&&(i+="thisRC.y += 1;"),n+="\n "+i+"\n "+(r>0?"if(thisRC.y < rows && thisRC.z < cols){":"")+"\n int flatIndex = getFlatIndex(thisRC);\n\n ivec3 inputRC = inputCoordsFromReshapedOutCoords(flatIndex);\n vec2 inputRCInnerDims = vec2(float(inputRC.y),float(inputRC.z));\n\n result["+r+"] =\n getChannel(getA(inputRC.x, inputRC.y, inputRC.z), inputRCInnerDims);\n "+(r>0?"}":"")+"\n "}this.userCode="\n "+function(t){return"\n ivec3 inputCoordsFromReshapedOutCoords(int index) {\n "+rn(["r","c","d"],t)+"\n return ivec3(r, c, d);\n }\n "}(e)+"\n "+function(t){return"\n int getFlatIndex(ivec3 coords) {\n return round("+function(t,e){if(t.length!==e.length)throw new Error("Vectors to be dotted must be of the same length -got "+t.length+" and "+e.length);for(var n=[],r=Math.floor(t.length/4),i=t.length%4,o=0;o1?i-1:i,n&&u>1?o-1:o],l=[n&&s>1?s-1:s,n&&u>1?u-1:u],f=c[0]/l[0],h=c[1]/l[1],p=1/f,d=1/h,m=2*Math.ceil(p)+2,g=2*Math.ceil(d)+2;this.userCode="\n void main() {\n ivec4 coords = getOutputCoords();\n int b = coords[0];\n int d = coords[3];\n int r = coords[1];\n int c = coords[2];\n\n float accumulator = 0.0;\n\n const float heightScale = float("+f+");\n const float widthScale = float("+h+");\n\n const float invHeightScale = float("+p+");\n const float invWidthScale = float("+d+");\n\n const int winHeight = int("+m+");\n const int winWidth = int("+g+");\n\n // Compute bounds for where in dy we will look\n float startRLerp = floor(float(r) * invHeightScale);\n int startDyR = int(startRLerp - float(winHeight / 2));\n\n float startCLerp = floor(float(c) * invWidthScale);\n int startDyC = int(startCLerp - float(winWidth / 2));\n\n // Loop over dy\n for (int dyROffset = 0; dyROffset < winHeight; dyROffset++) {\n int dyR = dyROffset + startDyR;\n\n // Guard against the window exceeding the bounds of dy\n if (dyR < 0 || dyR >= "+s+") {\n continue;\n }\n\n for (int dyCOffset = 0; dyCOffset < winWidth; dyCOffset++) {\n int dyC = dyCOffset + startDyC;\n\n // Guard against the window exceeding the bounds of dy\n if (dyC < 0 || dyC >= "+u+") {\n continue;\n }\n\n float dxR = float(dyR) * heightScale;\n int topDxRIndex = int(floor(dxR));\n int bottomDxRIndex = int(min(ceil(dxR), "+(i-1)+".0));\n float dxRLerp = dxR - float(topDxRIndex);\n float inverseDxRLerp = 1.0 - dxRLerp;\n\n float dxC = float(dyC) * widthScale;\n int leftDxCIndex = int(floor(dxC));\n int rightDxCIndex = int(min(ceil(dxC), "+(o-1)+".0));\n float dxCLerp = dxC - float(leftDxCIndex);\n float inverseDxCLerp = 1.0 - dxCLerp;\n\n if (r == topDxRIndex && c == leftDxCIndex) {\n // topLeft\n accumulator +=\n getDy(b, dyR, dyC, d) * inverseDxRLerp * inverseDxCLerp;\n }\n\n if (r == topDxRIndex && c == rightDxCIndex) {\n // topRight\n accumulator += getDy(b, dyR, dyC, d) * inverseDxRLerp * dxCLerp;\n }\n\n if (r == bottomDxRIndex && c == leftDxCIndex) {\n // bottomLeft\n accumulator += getDy(b, dyR, dyC, d) * dxRLerp * inverseDxCLerp;\n }\n\n if (r == bottomDxRIndex && c == rightDxCIndex) {\n // bottomRight\n accumulator += getDy(b, dyR, dyC, d) * dxRLerp * dxCLerp;\n }\n }\n }\n // End loop over dy\n\n setOutput(accumulator);\n }\n "},Ii=function(t,e,n,r){this.variableNames=["A"],this.outputShape=[];var i=t[0],o=t[1],a=t[2],s=t[3];this.outputShape=[i,e,n,s];var u=[r&&e>1?o-1:o,r&&n>1?a-1:a],c=[r&&e>1?e-1:e,r&&n>1?n-1:n];this.userCode="\n const vec2 effectiveInputOverOutputRatioRC = vec2(\n "+u[0]/c[0]+",\n "+u[1]/c[1]+");\n const vec2 inputShapeRC = vec2("+o+".0, "+a+".0);\n\n void main() {\n ivec4 coords = getOutputCoords();\n int b = coords[0];\n int d = coords[3];\n ivec2 yRC = coords.yz;\n\n // Fractional source index.\n vec2 sourceFracIndexRC = vec2(yRC) * effectiveInputOverOutputRatioRC;\n\n // Compute the four integer indices.\n ivec2 sourceFloorRC = ivec2(sourceFracIndexRC);\n ivec2 sourceCeilRC = ivec2(\n min(inputShapeRC - 1.0, ceil(sourceFracIndexRC)));\n\n float topLeft = getA(b, sourceFloorRC.x, sourceFloorRC.y, d);\n float bottomLeft = getA(b, sourceCeilRC.x, sourceFloorRC.y, d);\n float topRight = getA(b, sourceFloorRC.x, sourceCeilRC.y, d);\n float bottomRight = getA(b, sourceCeilRC.x, sourceCeilRC.y, d);\n\n vec2 fracRC = sourceFracIndexRC - vec2(sourceFloorRC);\n\n float top = topLeft + (topRight - topLeft) * fracRC.y;\n float bottom = bottomLeft + (bottomRight - bottomLeft) * fracRC.y;\n float newValue = top + (bottom - top) * fracRC.x;\n\n setOutput(newValue);\n }\n "},Oi=function(t,e,n,r){this.variableNames=["A"],this.usesPackedTextures=!0,this.outputShape=[];var i=t[0],o=t[1],a=t[2],s=t[3];this.outputShape=[i,e,n,s];var u=[r&&e>1?o-1:o,r&&n>1?a-1:a],c=[r&&e>1?e-1:e,r&&n>1?n-1:n];this.userCode="\n const vec3 effectiveInputOverOutputRatioRC = vec3(\n "+u[0]/c[0]+",\n "+u[1]/c[1]+",\n "+u[1]/c[1]+");\n const vec3 inputShapeRC = vec3("+o+".0, "+a+".0,\n "+a+".0);\n\n float getAValue(int b, int r, int c, int d) {\n return getChannel(getA(b, r, c, d), vec2(c, d));\n }\n\n void main() {\n ivec4 coords = getOutputCoords();\n int b = coords[0];\n int d = coords[3];\n // Calculate values for next column in yRC.z.\n ivec3 yRC = coords.yzz + ivec3(0, 0, 1);\n\n // Fractional source index.\n vec3 sourceFracIndexRC = vec3(yRC) * effectiveInputOverOutputRatioRC;\n\n // Compute the four integer indices.\n ivec3 sourceFloorRC = ivec3(sourceFracIndexRC);\n ivec3 sourceCeilRC = ivec3(\n min(inputShapeRC - 1.0, ceil(sourceFracIndexRC)));\n \n // Should we calculate next column and row elements in 2x2 packed cell.\n bool hasNextCol = d < "+(s-1)+"; \n bool hasNextRow = coords.z < "+(n-1)+";\n\n // In parallel, construct four corners for all four components in\n // packed 2x2 cell.\n vec4 topLeft = vec4(\n getAValue(b, sourceFloorRC.x, sourceFloorRC.y, d),\n hasNextCol ? getAValue(b, sourceFloorRC.x, sourceFloorRC.y, d + 1)\n : 0.0,\n hasNextRow ? getAValue(b, sourceFloorRC.x, sourceFloorRC.z, d)\n : 0.0,\n (hasNextRow && hasNextCol) ?\n getAValue(b, sourceFloorRC.x, sourceFloorRC.z, d + 1) : 0.0);\n\n vec4 bottomLeft = vec4(\n getAValue(b, sourceCeilRC.x, sourceFloorRC.y, d),\n hasNextCol ? getAValue(b, sourceCeilRC.x, sourceFloorRC.y, d + 1)\n : 0.0,\n hasNextRow ? getAValue(b, sourceCeilRC.x, sourceFloorRC.z, d)\n : 0.0,\n (hasNextRow && hasNextCol) ?\n getAValue(b, sourceCeilRC.x, sourceFloorRC.z, d + 1) : 0.0);\n\n vec4 topRight = vec4(\n getAValue(b, sourceFloorRC.x, sourceCeilRC.y, d),\n hasNextCol ? getAValue(b, sourceFloorRC.x, sourceCeilRC.y, d + 1)\n : 0.0,\n hasNextRow ? getAValue(b, sourceFloorRC.x, sourceCeilRC.z, d)\n : 0.0,\n (hasNextRow && hasNextCol) ?\n getAValue(b, sourceFloorRC.x, sourceCeilRC.z, d + 1) : 0.0);\n\n vec4 bottomRight = vec4(\n getAValue(b, sourceCeilRC.x, sourceCeilRC.y, d),\n hasNextCol ? getAValue(b, sourceCeilRC.x, sourceCeilRC.y, d + 1)\n : 0.0,\n hasNextRow ? getAValue(b, sourceCeilRC.x, sourceCeilRC.z, d)\n : 0.0,\n (hasNextRow && hasNextCol) ?\n getAValue(b, sourceCeilRC.x, sourceCeilRC.z, d + 1) : 0.0);\n\n vec3 fracRC = sourceFracIndexRC - vec3(sourceFloorRC);\n\n vec4 top = mix(topLeft, topRight, fracRC.yyzz);\n vec4 bottom = mix(bottomLeft, bottomRight, fracRC.yyzz);\n vec4 newValue = mix(top, bottom, fracRC.x);\n\n setOutput(newValue);\n }\n "},Ri=function(t,e,n){this.variableNames=["dy"],this.outputShape=[],this.outputShape=e.shape;var r=e.shape,i=r[1],o=r[2],a=t.shape,s=a[1],u=a[2],c=[n&&s>1?i-1:i,n&&u>1?o-1:o],l=[n&&s>1?s-1:s,n&&u>1?u-1:u],f=c[0]/l[0],h=c[1]/l[1],p=1/f,d=1/h,m=2*Math.ceil(p)+2,g=2*Math.ceil(d)+2;this.userCode="\n void main() {\n ivec4 coords = getOutputCoords();\n int b = coords[0];\n int d = coords[3];\n int r = coords[1];\n int c = coords[2];\n\n float accumulator = 0.0;\n\n const float heightScale = float("+f+");\n const float widthScale = float("+h+");\n\n const float invHeightScale = float("+p+");\n const float invWidthScale = float("+d+");\n\n const int winHeight = int("+m+");\n const int winWidth = int("+g+");\n\n // Compute bounds for where in dy we will look\n float startRLerp = floor(float(r) * invHeightScale);\n int startDyR = int(floor(startRLerp - float(winHeight / 2)));\n\n float startCLerp = floor(float(c) * invWidthScale);\n int startDyC = int(floor(startCLerp - float(winWidth / 2)));\n\n // Loop over dy\n for (int dyROffset = 0; dyROffset < winHeight; dyROffset++) {\n int dyR = dyROffset + startDyR;\n\n // Guard against the window exceeding the bounds of dy\n if (dyR < 0 || dyR >= "+s+") {\n continue;\n }\n\n for (int dyCOffset = 0; dyCOffset < winWidth; dyCOffset++) {\n int dyC = dyCOffset + startDyC;\n\n // Guard against the window exceeding the bounds of dy\n if (dyC < 0 || dyC >= "+u+") {\n continue;\n }\n\n float sourceFracRow =\n float("+c[0]+") *\n (float(dyR) / float("+l[0]+"));\n\n float sourceFracCol =\n float("+c[1]+") *\n (float(dyC) / float("+l[1]+"));\n\n int sourceNearestRow = int(min(\n float(int("+i+") - 1),\n "+n+" ? float(round(sourceFracRow)) :\n float(floor(sourceFracRow))));\n\n int sourceNearestCol = int(min(\n float(int("+o+") - 1),\n "+n+" ? float(round(sourceFracCol)) :\n float(floor(sourceFracCol))));\n\n if (r == sourceNearestRow && c == sourceNearestCol) {\n accumulator += getDy(b, dyR, dyC, d);\n }\n }\n }\n // End loop over dy\n\n setOutput(accumulator);\n }\n "},ki=function(t,e,n,r){this.variableNames=["A"],this.outputShape=[];var i=t[0],o=t[1],a=t[2],s=t[3];this.outputShape=[i,e,n,s];var u=[r&&e>1?o-1:o,r&&n>1?a-1:a],c=[r&&e>1?e-1:e,r&&n>1?n-1:n],l=r?"0.5":"0.0";this.userCode="\n const vec2 effectiveInputOverOutputRatioRC = vec2(\n "+u[0]/c[0]+",\n "+u[1]/c[1]+");\n const vec2 inputShapeRC = vec2("+o+".0, "+a+".0);\n\n void main() {\n ivec4 coords = getOutputCoords();\n int b = coords[0];\n int d = coords[3];\n ivec2 yRC = coords.yz;\n\n // Fractional source index.\n vec2 sourceFracIndexRC = vec2(yRC) * effectiveInputOverOutputRatioRC;\n\n // Compute the coordinators of nearest neighbor point.\n ivec2 sourceNearestRC = ivec2(\n min(inputShapeRC - 1.0, floor(sourceFracIndexRC + "+l+")));\n\n float newValue = getA(b, sourceNearestRC.x, sourceNearestRC.y, d);\n\n setOutput(newValue);\n }\n "},Li=function(t,e){this.variableNames=["x"];var n=t.length;if(n>4)throw new Error("WebGL backend: Reverse of rank-"+n+" tensor is not yet supported");if(this.outputShape=t,1!==n){var r=t.map(function(n,r){return function(n){return-1!==e.indexOf(n)&&1!==t[n]?t[n]+" - coords["+n+"] - 1":"coords["+n+"]"}(r)}).join(","),i=mn(n);this.userCode="\n void main() {\n "+i+" coords = getOutputCoords();\n setOutput(getX("+r+"));\n }\n "}else this.userCode="\n void main() {\n int coord = getOutputCoords();\n setOutput(getX("+t[0]+" - coord - 1));\n }\n "},Di=function(t,e){this.variableNames=["x"],this.usesPackedTextures=!0;var n=t.length;if(n>4)throw new Error("WebGL backend: Reverse of rank-"+n+" tensor is not yet supported");this.outputShape=t;var r=Ze("rc",n),i=r[n-1]+" + 1 < "+this.outputShape[n-1],o=r[n-2]+" + 1 < "+this.outputShape[n-2],a=mn(n);function s(n){var r=t.map(function(r,i){return function(n,r){return-1!==e.indexOf(n)&&1!==t[n]?t[n]+" - "+r[n]+" - 1":""+r[n]}(i,n)});return"getChannel(getX("+r.join(",")+"), vec2("+r.slice(-2).join(",")+"))"}this.userCode=1===n?"\n void main(){\n int rc = getOutputCoords();\n vec4 result = vec4(0.);\n result.r = getChannel(getX("+t[0]+" - rc - 1), rc);\n if("+i+"){\n result.g = getChannel(getX("+t[0]+" - (rc + 1) - 1), rc + 1);\n }\n setOutput(result);\n }\n ":"\n void main() {\n "+a+" rc = getOutputCoords();\n vec4 result = vec4(0.);\n result.r = "+s(r.slice())+";\n if("+i+"){\n result.g = "+function(t){return t[n-1]="("+t[n-1]+" + 1)",s(t)}(r.slice())+";\n }\n if("+o+") {\n result.b = "+function(t){return t[n-2]="("+t[n-2]+" + 1)",s(t)}(r.slice())+";\n if("+i+") {\n result.a = "+function(t){return t[n-1]="("+t[n-1]+" + 1)",t[n-2]="("+t[n-2]+" + 1)",s(t)}(r.slice())+";\n }\n }\n setOutput(result);\n }\n "},Ni=function(t,e,n,r,i,o,a){void 0===a&&(a=!0),this.variableNames=["updates","indices","defaultValue"],this.outputShape=o;var s=mn(i.length),u=mn(o.length),c="";1===n?c="i":2===n&&(c="i, j");var l="getIndices("+c+")",f="";1===r?f="i":2===r&&(f="i, coords[1]");var h="getUpdates("+f+")",p=e>1?"strides[j]":"strides";this.userCode="\n "+s+" strides = "+s+"("+i+");\n\n void main() {\n "+u+" coords = getOutputCoords();\n float sum = 0.0;\n bool found = false;\n for (int i = 0; i < "+t+"; i++) {\n int flattenedIndex = 0;\n for (int j = 0; j < "+e+"; j++) {\n int index = round("+l+");\n flattenedIndex += index * "+p+";\n }\n if (flattenedIndex == coords[0]) {\n sum += "+h+";\n found = true;\n }\n }\n setOutput(mix(getDefaultValue(), sum, float(found)));\n }\n "},Bi=function(t,e){this.variableNames=["x","segmentIds"];var n=t.windowSize,r=t.batchSize,i=t.inSize,o=t.numSegments,a=o*Math.ceil(i/n);this.outputShape=[r,a];var s=4*Math.floor(n/4),u=n%4,c="\n sumValue += dot(values, segFilter);\n ",l="";i%n>0&&(l="\n if (inIdx < 0 || inIdx >= "+i+") {\n return initializationValue;\n }\n ");var f="";i%n>0&&(f="\n if (inIdx < 0 || inIdx >= "+i+") {\n return -1.0;\n }\n "),this.userCode="\n const float initializationValue = 0.0;\n\n float getValue(int batch, int inIdx) {\n "+l+"\n return getX(batch, inIdx);\n }\n\n float getSegmentIdAtIndex(int inIdx) {\n "+f+"\n return getSegmentIds(inIdx);\n }\n\n void main() {\n ivec2 coords = getOutputCoords();\n int batch = coords[0];\n int outIdx = coords[1];\n int inOffset = int(floor(float(outIdx) / float(\n "+o+")) * float("+n+"));\n int currentSeg = int(mod(float(outIdx), float("+o+")));\n\n float sumValue = 0.0;\n\n for (int i = 0; i < "+s+"; i += 4) {\n int inIdx = inOffset + i;\n vec4 values = vec4(\n getValue(batch, inIdx),\n getValue(batch, inIdx + 1),\n getValue(batch, inIdx + 2),\n getValue(batch, inIdx + 3)\n );\n\n vec4 segFilter = vec4(\n int(getSegmentIdAtIndex(inIdx)) == currentSeg ? 1 : 0,\n int(getSegmentIdAtIndex(inIdx + 1)) == currentSeg ? 1 : 0,\n int(getSegmentIdAtIndex(inIdx + 2)) == currentSeg ? 1 : 0,\n int(getSegmentIdAtIndex(inIdx + 3)) == currentSeg ? 1 : 0\n );\n\n "+c+"\n }\n\n int inIdx = inOffset + "+s+";\n if ("+(1===u)+") {\n vec4 values = vec4(\n getValue(batch, inIdx),\n initializationValue,\n initializationValue,\n initializationValue\n );\n\n int inIdxSeg = int(getSegmentIdAtIndex(inIdx));\n\n vec4 segFilter = vec4(\n int(getSegmentIdAtIndex(inIdx)) == currentSeg ? 1 : 0,\n 0,\n 0,\n 0\n );\n\n "+c+"\n } else if ("+(2===u)+") {\n vec4 values = vec4(\n getValue(batch, inIdx),\n getValue(batch, inIdx + 1),\n initializationValue,\n initializationValue\n );\n\n vec4 segFilter = vec4(\n int(getSegmentIdAtIndex(inIdx)) == currentSeg ? 1 : 0,\n int(getSegmentIdAtIndex(inIdx + 1)) == currentSeg ? 1 : 0,\n 0,\n 0\n );\n\n "+c+"\n } else if ("+(3===u)+") {\n vec4 values = vec4(\n getValue(batch, inIdx),\n getValue(batch, inIdx + 1),\n getValue(batch, inIdx + 2),\n initializationValue\n );\n\n vec4 segFilter = vec4(\n int(getSegmentIdAtIndex(inIdx)) == currentSeg ? 1 : 0,\n int(getSegmentIdAtIndex(inIdx + 1)) == currentSeg ? 1 : 0,\n int(getSegmentIdAtIndex(inIdx + 2)) == currentSeg ? 1 : 0,\n 0\n );\n\n "+c+"\n }\n setOutput(sumValue);\n }\n "},Fi=function(t,e,n){var r,i;if(this.variableNames=["c","a","b"],this.outputShape=e,n>4)throw Error("Where for rank "+n+" is not yet supported");if(1===n)i="resRC",r="resRC";else{for(var o=["resRC.x","resRC.y","resRC.z","resRC.w"],a=[],s=[],u=0;u= 1.0) {\n setOutput(getA("+i+"));\n } else {\n setOutput(getB("+i+"));\n }\n }\n "},Ui=function(){function t(t){this.variableNames=["source"],this.outputShape=t,this.rank=t.length;var e,n=mn(this.rank),r="uniform int start["+this.rank+"];",i=function(t){if(1===t)return"sourceLoc";if(t<=6)return ji.slice(0,t).map(function(t){return"sourceLoc."+t}).join(",");throw Error("Slicing for rank "+t+" is not yet supported")}(this.rank);e="\n "+n+" sourceLoc;\n "+n+" coords = getOutputCoords();\n "+t.map(function(t,e){return"sourceLoc."+ji[e]+" = start["+e+"] + coords."+ji[e]+";"}).join("\n")+"\n ",this.userCode="\n "+r+"\n void main() {\n "+e+"\n setOutput(getSource("+i+"));\n }\n "}return t.prototype.getCustomSetupFunc=function(t){var e=this;if(t.length!==this.rank)throw Error("The rank ("+this.rank+") of the program must match the length of start ("+t.length+")");return function(n,r){null==e.startLoc&&(e.startLoc=n.getUniformLocationNoThrow(r,"start"),null==e.startLoc)||n.gl.uniform1iv(e.startLoc,t)}},t}(),ji=["x","y","z","w","u","v"];var zi=function(){function t(t){this.variableNames=["source"],this.usesPackedTextures=!0,this.outputShape=t,this.rank=t.length;var e=mn(this.rank),n=Ze("coords",this.rank),r=Ze("sourceLoc",this.rank),i=1===this.rank?"sourceLoc":"vec2("+r.slice(-2).join()+")",o="getChannel(getSource("+r.join()+"), "+i+")",a="\n result.x = "+o+";\n if (++"+n[this.rank-1]+" < "+t[this.rank-1]+") {\n ++"+r[this.rank-1]+";\n result.y = "+o+";\n --"+r[this.rank-1]+";\n }\n ",s=1===this.rank?"":"\n --"+n[this.rank-1]+";\n if (++"+n[this.rank-2]+" < "+t[this.rank-2]+") {\n ++"+r[this.rank-2]+";\n result.z = "+o+";\n if (++"+n[this.rank-1]+" < "+t[this.rank-1]+") {\n ++"+r[this.rank-1]+";\n result.w = "+o+";\n }\n }\n ",u=this.rank<=4?"sourceLoc = coords +\n "+e+"("+t.map(function(t,e){return"start["+e+"]"}).join()+");":t.map(function(t,e){return r[e]+" = "+n[e]+" + start["+e+"];"}).join("\n");this.userCode="\n uniform int start["+this.rank+"];\n void main() {\n "+e+" coords = getOutputCoords();\n "+e+" sourceLoc;\n "+u+" \n vec4 result = vec4(0.);\n "+a+"\n "+s+"\n setOutput(result);\n }\n "}return t.prototype.getCustomSetupFunc=function(t){var e=this;if(t.length!==this.rank)throw Error("The rank ("+this.rank+") of the program must match the length of start ("+t.length+")");return function(n,r){null==e.startLoc&&(e.startLoc=n.getUniformLocationNoThrow(r,"start"),null==e.startLoc)||n.gl.uniform1iv(e.startLoc,t)}},t}(),Gi=function(t,e,n,r){this.variableNames=["x"];var i=n.filter(function(t,e){return-1===r.indexOf(e)});this.outputShape=i;var o=n.length,a=mn(n.length),s=mn(i.length),u="";if(1===o)u="coords * strides + begin";else{var c=0;u=n.map(function(t,e){return-1===r.indexOf(e)?(c++,1===i.length?"coords * strides["+e+"] + begin["+e+"]":"coords["+(c-1)+"] * strides["+e+"] + begin["+e+"]"):"begin["+e+"]"}).join(",")}this.userCode="\n "+a+" begin = "+a+"("+t+");\n "+a+" strides = "+a+"("+e+");\n\n void main() {\n "+s+" coords = getOutputCoords();\n setOutput(getX("+u+"));\n }\n "},Vi=function(){function t(t){this.gpgpu=t,this.numUsedTextures=0,this.numFreeTextures=0,this.freeTextures={},this.logEnabled=!1,this.usedTextures={}}return t.prototype.acquireTexture=function(t,e,n){var r,i=Wi(e,n),o=Hi(t,i,n);if(o in this.freeTextures||(this.freeTextures[o]=[]),o in this.usedTextures||(this.usedTextures[o]=[]),this.freeTextures[o].length>0){this.numFreeTextures--,this.numUsedTextures++,this.log();var a=this.freeTextures[o].shift();return this.usedTextures[o].push(a),a}return this.numUsedTextures++,this.log(),i===rr.PACKED_2X2_FLOAT32?r=this.gpgpu.createPackedMatrixTexture(t[0],t[1]):i===rr.PACKED_2X2_FLOAT16?r=this.gpgpu.createFloat16PackedMatrixTexture(t[0],t[1]):i===rr.UNPACKED_FLOAT32?r=this.gpgpu.createFloat32MatrixTexture(t[0],t[1]):i===rr.UNPACKED_FLOAT16?r=this.gpgpu.createFloat16MatrixTexture(t[0],t[1]):i===rr.PACKED_4X1_UNSIGNED_BYTE&&(r=this.gpgpu.createUnsignedBytesMatrixTexture(t[0],t[1])),this.usedTextures[o].push(r),r},t.prototype.releaseTexture=function(t,e,n,r){if(null!=this.freeTextures){var i=Hi(e,Wi(n,r),r);i in this.freeTextures||(this.freeTextures[i]=[]),this.freeTextures[i].push(t),this.numFreeTextures++,this.numUsedTextures--;var o=this.usedTextures[i],a=o.indexOf(t);if(a<0)throw new Error("Cannot release a texture that was never provided by this texture manager");o.splice(a,1),this.log()}},t.prototype.log=function(){if(this.logEnabled){var t=this.numFreeTextures+this.numUsedTextures;console.log("Free/Used",this.numFreeTextures+" / "+this.numUsedTextures,"("+t+")")}},t.prototype.getNumUsedTextures=function(){return this.numUsedTextures},t.prototype.getNumFreeTextures=function(){return this.numFreeTextures},t.prototype.dispose=function(){var t=this;if(null!=this.freeTextures){for(var e in this.freeTextures)this.freeTextures[e].forEach(function(e){t.gpgpu.deleteMatrixTexture(e)});for(var e in this.usedTextures)this.usedTextures[e].forEach(function(e){t.gpgpu.deleteMatrixTexture(e)});this.freeTextures=null,this.usedTextures=null,this.numUsedTextures=0,this.numFreeTextures=0}},t}();function Wi(t,e){if(t===nr.UPLOAD)return e?rr.PACKED_2X2_FLOAT32:rr.UNPACKED_FLOAT32;if(t===nr.RENDER||null==t)return e?Gt.get("WEBGL_RENDER_FLOAT32_ENABLED")?rr.PACKED_2X2_FLOAT32:rr.PACKED_2X2_FLOAT16:Gt.get("WEBGL_RENDER_FLOAT32_ENABLED")?rr.UNPACKED_FLOAT32:rr.UNPACKED_FLOAT16;if(t===nr.DOWNLOAD||t===nr.PIXELS)return rr.PACKED_4X1_UNSIGNED_BYTE;throw new Error("Unknown logical texture type "+t)}function Hi(t,e,n){return t[0]+"_"+t[1]+"_"+e+"_"+n}var qi=function(t,e){this.variableNames=["A"];for(var n=new Array(t.length),r=0;r5)throw Error("Tile for rank "+e+" is not yet supported");if(1===e)return"imod(resRC, "+t[0]+")";for(var n=["resRC.x","resRC.y","resRC.z","resRC.w","resRC.u"],r=[],i=0;i6)throw Error("Transpose for rank "+e+" is not yet supported");for(var n=["resRC.x","resRC.y","resRC.z","resRC.w","resRC.u","resRC.v"],r=new Array(e),i=0;i6)throw Error("Packed transpose for rank "+this.rank+" is not yet supported.");var i=mn(this.rank),o=Je("rc",this.rank),a=new Array(this.rank);for(r=0;r= 0.0) ? scale * x : scaleAlpha * (exp(x) - 1.0);\n";var no="return exp(x);",ro=Zi+"\n return sin(x);\n",io=Zi+"\n return cos(x);\n",oo=Zi+"\n return atan(x);\n",ao=Zi+"\n if (x < 1.0) return NAN;\n return log(x + sqrt(x * x - 1.0));",so=Zi+"\n if ((x < -1.0) || (x > 1.0)) return NAN;\n return (log(1.0 + x) - log(1.0 - x)) / 2.0;",uo="return x;",co="\n vec4 result = x * vec4(greaterThanEqual(x, vec4(0.0)));\n bvec4 isNaN = isnan(x);\n\n result.r = isNaN.r ? x.r : result.r;\n result.g = isNaN.g ? x.g : result.g;\n result.b = isNaN.b ? x.b : result.b;\n result.a = isNaN.a ? x.a : result.a;\n\n return result;\n",lo=function(t,e){this.variableNames=["A"],this.usesPackedTextures=!0,this.outputShape=t,this.userCode="\n vec4 unaryOperation(vec4 x) {\n "+e+"\n }\n\n void main() {\n vec4 x = getAAtOutCoords();\n vec4 y = unaryOperation(x);\n\n setOutput(y);\n }\n "},fo=function(t){this.variableNames=["A"],this.usesPackedTextures=!0,this.outputShape=t;var e=t.length,n=Ze("rc",e),r=mn(e),i=function(t,e){if(1===t)return"rc";for(var n="",r=0;r=1,function(){return"Pass at least one tensor to concat"});var n=qt(t,"tensors","concat");e=O(e,n[0].shape)[0];var r=le(n.map(function(t){return t.shape}),e);if(0===S(r))return Ae([],r);if(1===(n=n.filter(function(t){return t.size>0})).length)return n[0];var i=n.map(function(t){return t.shape});!function(t,e){var n=t[0].length;t.forEach(function(t,e){b(t.length===n,function(){return"Error in concat"+n+"D: rank of tensors["+e+"] must be the same as the rank of the rest ("+n+")"})}),b(e>=0&&e>>0,e=(r*=e)>>>0,e+=4294967296*(r-=e)}return 2.3283064365386963e-10*(e>>>0)});n.next=function(){var t=2091639*n.s0+2.3283064365386963e-10*n.c;return n.s0=n.s1,n.s1=n.s2,n.s2=t-(n.c=0|t)},n.c=1,n.s0=r(" "),n.s1=r(" "),n.s2=r(" "),n.s0-=r(t),n.s0<0&&(n.s0+=1),n.s1-=r(t),n.s1<0&&(n.s1+=1),n.s2-=r(t),n.s2<0&&(n.s2+=1),r=null}(t),i=e&&e.state,o=n.next;return o.int32=function(){return 4294967296*n.next()|0},o.double=function(){return o()+1.1102230246251565e-16*(2097152*o()|0)},o.quick=o,i&&("object"==typeof i&&r(i,n),o.state=function(){return r(n,{})}),o}e&&e.exports?e.exports=i:this.alea=i}(0,t)}),xo=bo(function(t){!function(t,e,n){function r(t,e){return e.x=t.x,e.y=t.y,e.z=t.z,e.w=t.w,e}function i(t,e){var n=new function(t){var e=this,n="";e.x=0,e.y=0,e.z=0,e.w=0,e.next=function(){var t=e.x^e.x<<11;return e.x=e.y,e.y=e.z,e.z=e.w,e.w^=e.w>>>19^t^t>>>8},t===(0|t)?e.x=t:n+=t;for(var r=0;r>>0)/4294967296};return o.double=function(){do{var t=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21)}while(0===t);return t},o.int32=n.next,o.quick=o,i&&("object"==typeof i&&r(i,n),o.state=function(){return r(n,{})}),o}e&&e.exports?e.exports=i:this.xor128=i}(0,t)}),_o=bo(function(t){!function(t,e,n){function r(t,e){return e.x=t.x,e.y=t.y,e.z=t.z,e.w=t.w,e.v=t.v,e.d=t.d,e}function i(t,e){var n=new function(t){var e=this,n="";e.next=function(){var t=e.x^e.x>>>2;return e.x=e.y,e.y=e.z,e.z=e.w,e.w=e.v,(e.d=e.d+362437|0)+(e.v=e.v^e.v<<4^t^t<<1)|0},e.x=0,e.y=0,e.z=0,e.w=0,e.v=0,t===(0|t)?e.x=t:n+=t;for(var r=0;r>>4),e.next()}(t),i=e&&e.state,o=function(){return(n.next()>>>0)/4294967296};return o.double=function(){do{var t=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21)}while(0===t);return t},o.int32=n.next,o.quick=o,i&&("object"==typeof i&&r(i,n),o.state=function(){return r(n,{})}),o}e&&e.exports?e.exports=i:this.xorwow=i}(0,t)}),So=bo(function(t){!function(t,e,n){function r(t,e){return e.x=t.x.slice(),e.i=t.i,e}function i(t,e){null==t&&(t=+new Date);var n=new function(t){var e=this;e.next=function(){var t,n,r=e.x,i=e.i;return t=r[i],n=(t^=t>>>7)^t<<24,n^=(t=r[i+1&7])^t>>>10,n^=(t=r[i+3&7])^t>>>3,n^=(t=r[i+4&7])^t<<7,t=r[i+7&7],n^=(t^=t<<13)^t<<9,r[i]=n,e.i=i+1&7,n},function(t,e){var n,r=[];if(e===(0|e))r[0]=e;else for(e=""+e,n=0;n0;--n)t.next()}(e,t)}(t),i=e&&e.state,o=function(){return(n.next()>>>0)/4294967296};return o.double=function(){do{var t=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21)}while(0===t);return t},o.int32=n.next,o.quick=o,i&&(i.x&&r(i,n),o.state=function(){return r(n,{})}),o}e&&e.exports?e.exports=i:this.xorshift7=i}(0,t)}),Eo=bo(function(t){!function(t,e,n){function r(t,e){return e.i=t.i,e.w=t.w,e.X=t.X.slice(),e}function i(t,e){null==t&&(t=+new Date);var n=new function(t){var e=this;e.next=function(){var t,n,r=e.w,i=e.X,o=e.i;return e.w=r=r+1640531527|0,n=i[o+34&127],t=i[o=o+1&127],n^=n<<13,t^=t<<17,n^=n>>>15,t^=t>>>12,n=i[o]=n^t,e.i=o,n+(r^r>>>16)|0},function(t,e){var n,r,i,o,a,s=[],u=128;for(e===(0|e)?(r=e,e=null):(e+="\0",r=0,u=Math.max(u,e.length)),i=0,o=-32;o>>15,r^=r<<4,r^=r>>>13,o>=0&&(a=a+1640531527|0,i=0==(n=s[127&o]^=r+a)?i+1:0);for(i>=128&&(s[127&(e&&e.length||0)]=-1),i=127,o=512;o>0;--o)r=s[i+34&127],n=s[i=i+1&127],r^=r<<13,n^=n<<17,r^=r>>>15,n^=n>>>12,s[i]=r^n;t.w=a,t.X=s,t.i=i}(e,t)}(t),i=e&&e.state,o=function(){return(n.next()>>>0)/4294967296};return o.double=function(){do{var t=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21)}while(0===t);return t},o.int32=n.next,o.quick=o,i&&(i.X&&r(i,n),o.state=function(){return r(n,{})}),o}e&&e.exports?e.exports=i:this.xor4096=i}(0,t)}),To=bo(function(t){!function(t,e,n){function r(t,e){return e.a=t.a,e.b=t.b,e.c=t.c,e.d=t.d,e}function i(t,e){var n=new function(t){var e=this,n="";e.next=function(){var t=e.b,n=e.c,r=e.d,i=e.a;return t=t<<25^t>>>7^n,n=n-r|0,r=r<<24^r>>>8^i,i=i-t|0,e.b=t=t<<20^t>>>12^n,e.c=n=n-r|0,e.d=r<<16^n>>>16^i,e.a=i-t|0},e.a=0,e.b=0,e.c=-1640531527,e.d=1367130551,t===Math.floor(t)?(e.a=t/4294967296|0,e.b=0|t):n+=t;for(var r=0;r>>0)/4294967296};return o.double=function(){do{var t=((n.next()>>>11)+(n.next()>>>0)/4294967296)/(1<<21)}while(0===t);return t},o.int32=n.next,o.quick=o,i&&("object"==typeof i&&r(i,n),o.state=function(){return r(n,{})}),o}e&&e.exports?e.exports=i:this.tychei=i}(0,t)}),Mo=bo(function(t){!function(e,r){var i,o=this,a=256,s=6,u="random",c=r.pow(a,s),l=r.pow(2,52),f=2*l,h=a-1;function p(t,n,p){var v=[],y=m(function t(e,n){var r,i=[],o=typeof e;if(n&&"object"==o)for(r in e)try{i.push(t(e[r],n-1))}catch(t){}return i.length?i:"string"==o?e:e+"\0"}((n=1==n?{entropy:!0}:n||{}).entropy?[t,g(e)]:null==t?function(){try{var t;return i&&(t=i.randomBytes)?t=t(a):(t=new Uint8Array(a),(o.crypto||o.msCrypto).getRandomValues(t)),g(t)}catch(t){var n=o.navigator,r=n&&n.plugins;return[+new Date,o,r,o.screen,g(e)]}}():t,3),v),b=new function(t){var e,n=t.length,r=this,i=0,o=r.i=r.j=0,s=r.S=[];for(n||(t=[n++]);i=f;)t/=2,e/=2,n>>>=1;return(t+n)/e};return w.int32=function(){return 0|b.g(4)},w.quick=function(){return b.g(4)/4294967296},w.double=w,m(g(b.S),e),(n.pass||p||function(t,e,n,i){return i&&(i.S&&d(i,b),t.state=function(){return d(b,{})}),n?(r[u]=t,e):t})(w,y,"global"in n?n.global:this==r,n.state)}function d(t,e){return e.i=t.i,e.j=t.j,e.S=t.S.slice(),e}function m(t,e){for(var n,r=t+"",i=0;i=1||0===a);var s=Math.sqrt(-2*Math.log(a)/a);e=this.mean+this.stdDev*i*s,n=this.mean+this.stdDev*o*s,this.truncated&&!this.isValidTruncated(e)||(r=!0)}return this.truncated&&!this.isValidTruncated(n)||(this.nextVal=this.convertValue(n)),this.convertValue(e)},t.prototype.convertValue=function(t){return null==this.dtype||"float32"===this.dtype?t:Math.round(t)},t.prototype.isValidTruncated=function(t){return t<=this.upper&&t>=this.lower},t}();function Po(t,e,n){return void 0===e&&(e="float32"),e=e||"float32",Q(t),new ct(t,e,n)}var Io=xe({batchToSpaceND_:function(t,e,n){var r=Ht(t,"x","batchToSpaceND"),i=e.reduce(function(t,e){return t*e});return b(r.rank>=1+e.length,function(){return"input rank is "+r.rank+" but should be > than blockShape.length "+e.length}),b(n.length===e.length,function(){return"crops.length is "+n.length+" but should be equal to blockShape.length "+e.length}),b(r.shape[0]%i==0,function(){return"input tensor batch is "+r.shape[0]+" but is not divisible by the product of the elements of blockShape "+e.join(" * ")+" === "+i}),Gt.engine.runKernel(function(t){return t.batchToSpaceND(r,e,n)},{$x:r},function(t){return{$x:function(){return t.spaceToBatchND(e,n)}}})}}),Oo=xe({cast_:function(t,e){var n=Ht(t,"x","cast");return Gt.engine.runKernel(function(t){return t.cast(n,e)},{$x:n},function(t){return{$x:function(){return t.clone()}}})}}),Ro=xe({clone_:function(t){var e=Ht(t,"x","clone",null);return Gt.engine.runKernel(function(t){return pt.make(e.shape,{dataId:e.dataId},e.dtype)},{$x:e},function(t){return{$x:function(){return t.toFloat()}}})}}),ko=xe({cumsum_:function(t,e,n,r){void 0===e&&(e=0),void 0===n&&(n=!1),void 0===r&&(r=!1);var i=Ht(t,"x","cumsum"),o=se([e|=0],i.rank),a=i;null!=o&&(a=i.transpose(o));var s=ce(1,i.rank)[0],u=Gt.engine.runKernel(function(t){return t.cumsum(a,s,n,r)},{permutedX:a},function(t){return{permutedX:function(){return t.cumsum(e,n,!r)}}});return null!=o&&(u=u.transpose(o)),u}}),Lo=xe({depthToSpace_:function(t,e,n){void 0===n&&(n="NHWC");var r=Ht(t,"x","depthToSpace"),i="NHWC"===n?r.shape[1]:r.shape[2],o="NHWC"===n?r.shape[2]:r.shape[3],a="NHWC"===n?r.shape[3]:r.shape[1];return b(i*e>=0,function(){return"Negative dimension size caused by overflow when multiplying\n "+i+" and "+e+" for depthToSpace with input shape\n "+r.shape}),b(o*e>=0,function(){return"Negative dimension size caused by overflow when multiplying\n "+o+" and "+e+" for depthToSpace with input shape\n "+r.shape}),b(a%(e*e)==0,function(){return"Dimension size must be evenly divisible by "+e*e+" but is "+a+" for depthToSpace with input shape "+r.shape}),Gt.engine.runKernel(function(t){return t.depthToSpace(r,e,n)},{$x:r})}}),Do=xe({expandDims_:function(t,e){void 0===e&&(e=0);var n=Ht(t,"x","expandDims");b(e<=n.rank,function(){return"Axis must be <= rank of the tensor"});var r=n.shape.slice();return e<0&&(b(-(n.rank+1)<=e,function(){return"Axis must be in the interval ["+-(n.rank+1)+", "+n.rank+"]"}),e=n.rank+e+1),r.splice(e,0,1),Xo(n,r)}}),No=xe({eye_:function(t,e,n,r){void 0===r&&(r="float32"),null==e&&(e=t);for(var i=Po([t,e],r),o=t<=e?t:e,a=0;a2)throw new Error("Rank of probabilities must be 1 or 2, but is "+a);n=n||Math.random();var s=1===a?i.as2D(1,-1):i,u=Gt.engine.runKernel(function(t){return t.multinomial(s,r,e,n)},{logits2D:s});return 1===a?u.as1D():u}}),Fo=xe({oneHot_:function(t,e,n,r){if(void 0===n&&(n=1),void 0===r&&(r=0),e<2)throw new Error("Error in oneHot: depth must be >=2, but it is "+e);var i=Ht(t,"indices","oneHot","int32"),o=i.shape.concat([e]);return i=i.flatten(),Gt.engine.runKernel(function(t){return t.oneHot(i,e,n,r)},{$indices:i},function(t){return{$indices:function(){return Le(i.shape,"float32")}}}).reshape(o)}}),Uo=xe({pad_:function(t,e,n){void 0===n&&(n=0);var r=Ht(t,"x","pad");if(0===r.rank)throw new Error("pad(scalar) is not defined. Pass non-scalar to pad");var i=e.map(function(t){return t[0]});return Gt.engine.runKernel(function(t){return t.pad(r,e,n)},{$x:r},function(t){return{$x:function(){return t.slice(i,r.shape)}}})}}),jo=xe({pad1d_:function(t,e,n){return void 0===n&&(n=0),b(2===e.length,function(){return"Invalid number of paddings. Must be length of 2."}),Uo(t,[e],n)}}),zo=xe({pad2d_:function(t,e,n){return void 0===n&&(n=0),b(2===e.length&&2===e[0].length&&2===e[1].length,function(){return"Invalid number of paddings. Must be length of 2 each."}),Uo(t,e,n)}}),Go=xe({pad3d_:function(t,e,n){return void 0===n&&(n=0),b(3===e.length&&2===e[0].length&&2===e[1].length&&2===e[2].length,function(){return"Invalid number of paddings. Must be length of 2 each."}),Uo(t,e,n)}}),Vo=xe({pad4d_:function(t,e,n){return void 0===n&&(n=0),b(4===e.length&&2===e[0].length&&2===e[1].length&&2===e[2].length&&2===e[3].length,function(){return"Invalid number of paddings. Must be length of 2 each."}),Uo(t,e,n)}}),Wo=xe({rand_:function(t,e,n){var r=S(t),i=null;if(null==n||"float32"===n)i=new Float32Array(r);else if("int32"===n)i=new Int32Array(r);else{if("bool"!==n)throw new Error("Unknown data type "+n);i=new Uint8Array(r)}for(var o=0;o=1+e.length,function(){return"input rank "+r.rank+" should be > than [blockShape] "+e.length}),b(n.length===e.length,function(){return"paddings.shape[0] "+n.length+" must be equal to [blockShape] "+e.length}),b(r.shape.reduce(function(t,r,i){return i>0&&i<=e.length?t&&(r+n[i-1][0]+n[i-1][1])%e[i-1]==0:t},!0),function(){return"input spatial dimensions "+r.shape.slice(1)+" with paddings "+n.toString()+" must be divisible by blockShapes "+e.toString()}),Gt.engine.runKernel(function(t){return t.spaceToBatchND(r,e,n)},{$x:r},function(t){return{$x:function(){return t.batchToSpaceND(e,n)}}})}}),Ko=xe({squeeze_:function(t,e){var n=Ht(t,"x","squeeze");return Xo(n,R(n.shape,e).newShape)}}),$o=xe({stack_:function(t,e){void 0===e&&(e=0);var n=qt(t,"tensors","stack");if(b(n.length>=1,function(){return"Pass at least one tensor to tf.stack"}),1===n.length)return n[0].expandDims(e);var r=n[0].rank,i=n[0].shape,o=n[0].dtype;b(e<=r,function(){return"Axis must be <= rank of the tensor"}),n.forEach(function(t){w(i,t.shape,"All tensors passed to stack must have matching shapes")}),n.forEach(function(t){b(o===t.dtype,function(){return"All tensors passed to stack must have matching dtypes"})});var a=n.map(function(t){return t.expandDims(e)});return ho(a,e)}}),Jo=xe({tile_:function(t,e){var n=Ht(t,"x","tile");return b(n.rank===e.length,function(){return"Error in transpose: rank of input "+n.rank+" must match length of reps "+e+"."}),Gt.engine.runKernel(function(t,r){var i=t.tile(n,e);return r([n]),i},{$x:n},function(t,n){var r=n[0];return{$x:function(){var n=Fe(r);if(1===r.rank)for(var i=0;i=-n.shape.length&&e0?this.gpgpu.beginQuery():{startMs:performance.now(),endMs:null}},t.prototype.endTimer=function(t){return Gt.get("WEBGL_DISJOINT_QUERY_TIMER_EXTENSION_VERSION")>0?(this.gpgpu.endQuery(),t):(t.endMs=performance.now(),t)},t.prototype.getQueryTime=function(t){return c(this,void 0,void 0,function(){var e;return l(this,function(n){return Gt.get("WEBGL_DISJOINT_QUERY_TIMER_EXTENSION_VERSION")>0?[2,this.gpgpu.waitForQueryAndGetTime(t)]:[2,(e=t).endMs-e.startMs]})})},t.prototype.disposeData=function(t){if(!this.pendingDisposal.has(t))if(this.pendingRead.has(t))this.pendingDisposal.add(t);else if(this.texData.has(t)){var e=this.texData.get(t),n=e.texture,r=e.dtype,i=e.texShape,o=e.usage,a=e.complexTensors,s=e.isPacked,u=e.slice;if(null!=n){var c=u&&u.origDataId||t,l=this.dataRefCount.get(c);l>1?this.dataRefCount.set(c,l-1):(this.dataRefCount.delete(c),this.releaseTexture(t,n,i,o,r,s),this.texData.delete(t))}null!=a&&(a.real.dispose(),a.imag.dispose())}},t.prototype.getTexture=function(t){return this.uploadToGPU(t),this.texData.get(t).texture},t.prototype.getCPUBackend=function(){return Gt.get("WEBGL_CPU_FORWARD")?(null==this.cpuBackend&&(this.cpuBackend=Gt.findBackend("cpu")),this.cpuBackend):null},t.prototype.shouldExecuteOnCPU=function(t,e){var n=this;return void 0===e&&(e=128),null!=this.getCPUBackend()&&t.every(function(t){return null==n.texData.get(t.dataId).texture&&t.sizeGt.get("WEBGL_MAX_TEXTURES_IN_SHADER")){var n=Math.floor(t.length/2),r=this.concat(t.slice(0,n),e),i=this.concat(t.slice(n),e);return this.concat([r,i],e)}if(Gt.get("WEBGL_PACK_ARRAY_OPERATIONS")&&t[0].rank>1){var o=new Ln(t.map(function(t){return t.shape}),e);return this.compileAndRun(o,t)}var a=le(t.map(function(t){return t.shape}),e),s=t.map(function(t){return t.as2D(-1,S(t.shape.slice(e)))}),u=new kn(s.map(function(t){return t.shape}));return this.compileAndRun(u,s).reshape(a)},t.prototype.neg=function(t){var e=new Ji(t.shape,"return -x;");return this.compileAndRun(e,[t])},t.prototype.batchMatMul=function(t,e,n,r){var i=n?t.shape[2]:t.shape[1],o=r?e.shape[1]:e.shape[2],a=n?t.shape[1]:t.shape[2],s=t.shape[0];if((1===i||1===o)&&a>1e3){n&&(t=t.transpose([0,2,1])),r&&(e=e.transpose([0,2,1]));var u=1===o?t:t.as3D(s,a,1),c=1===o?2:1,l=1===o?e.as3D(s,1,a):e;return this.multiply(u,l).sum(c,!0)}var f=_t(t.dtype,e.dtype),h=new wi(t.shape,[s,i,o],n,r),p=this.makePackedTensor(h.outputShape,f);return this.compileAndRun(h,[t,e],p)},t.prototype.fusedBatchMatMul=function(t,e,n,r,i,o){var a=n?t.shape[2]:t.shape[1],s=r?e.shape[1]:e.shape[2],u=t.shape[0],c=_t(t.dtype,e.dtype),l=new wi(t.shape,[u,a,s],n,r,!!i,o?function(t,e){if(void 0===e&&(e=!1),"linear"===t)return e?uo:Qi;if("relu"===t)return e?co:to;throw new Error("Activation "+t+" has not been implemented for the WebGL backend.")}(o,!0):null),f=this.makePackedTensor(l.outputShape,c),h=[t,e];return i&&h.push(i),this.compileAndRun(l,h,f)},t.prototype.multiply=function(t,e){if("complex64"===t.dtype){var n=this.texData.get(t.dataId),r=this.texData.get(e.dataId),i=new En(_n,t.shape,e.shape),o=new En(Sn,t.shape,e.shape),a=[this.makeComplexComponentTensorHandle(t,n.complexTensors.real),this.makeComplexComponentTensorHandle(t,n.complexTensors.imag),this.makeComplexComponentTensorHandle(e,r.complexTensors.real),this.makeComplexComponentTensorHandle(e,r.complexTensors.imag)],s=this.compileAndRun(i,a),u=this.compileAndRun(o,a),c=this.complex(s,u);return s.dispose(),u.dispose(),c}if(this.shouldExecuteOnCPU([t,e]))return this.cpuBackend.multiply(t,e);if(Gt.get("WEBGL_PACK_BINARY_OPERATIONS"))return this.packedBinaryOp(t,e,An,t.dtype);var l=new Cn(An,t.shape,e.shape),f=this.makeOutputArray(l.outputShape,t.dtype);return this.compileAndRun(l,[t,e],f)},t.prototype.batchNormalization=function(t,e,n,r,i,o){var a=[t,e,n],s=null;null!=o&&(s=o.shape,a.push(o));var u=null;if(null!=i&&(u=i.shape,a.push(i)),Gt.get("WEBGL_PACK_BATCHNORMALIZATION")){var c=new xn(t.shape,e.shape,n.shape,s,u,r);return this.compileAndRun(c,a)}var l=new wn(t.shape,e.shape,n.shape,s,u,r);return this.compileAndRun(l,a)},t.prototype.localResponseNormalization4D=function(t,e,n,r,i){var o=new vi(t.shape,e,n,r,i);return this.compileAndRun(o,[t])},t.prototype.LRNGrad=function(t,e,n,r,i,o,a){var s=new yi(e.shape,r,i,o,a);return this.compileAndRun(s,[e,n,t])},t.prototype.tile=function(t,e){var n=new qi(t.shape,e);return this.compileAndRun(n,[t])},t.prototype.pad=function(t,e,n){var r=Gt.get("WEBGL_PACK_ARRAY_OPERATIONS")?new Ti(t.shape,e,n):new Ei(t.shape,e,n);return this.compileAndRun(r,[t])},t.prototype.transpose=function(t,e){if(this.shouldExecuteOnCPU([t]))return this.cpuBackend.transpose(t,e);var n=Gt.get("WEBGL_PACK_ARRAY_OPERATIONS")?new Yi(t.shape,e):new Xi(t.shape,e);return this.compileAndRun(n,[t])},t.prototype.gather=function(t,e,n){if(this.shouldExecuteOnCPU([t,e]))return this.cpuBackend.gather(t,e,n);var r=new er(t.shape,e.size,n);return this.compileAndRun(r,[t,e])},t.prototype.batchToSpaceND=function(t,e,n){b(t.rank<=4,function(){return"batchToSpaceND for rank > 4 with a WebGL backend not implemented yet"});var r=e.reduce(function(t,e){return t*e}),i=Zt(t.shape,e,r),o=Qt(i.length,e.length),a=te(t.shape,e,r),s=ee(n,e.length),u=ne(a,n,e.length);return t.reshape(i).transpose(o).reshape(a).slice(s,u)},t.prototype.spaceToBatchND=function(t,e,n){b(t.rank<=4,function(){return"spaceToBatchND for rank > 4 with a WebGL backend not implemented yet"});var r=e.reduce(function(t,e){return t*e}),i=[[0,0]];i.push.apply(i,n);for(var o=1+e.length;oe||n===t?r=!0:n=q(t,n+1);return n}(a,i),u=new Bi({windowSize:s,inSize:a,batchSize:o,numSegments:i},e),c=u.outputShape,l=c[0],f=c[1],h=this.makeOutputArray([l,f],r);return this.compileAndRun(u,[t,n],h),h.shape[1]===i?h:(n=Ne(0,i).tile([a/s]),this.segOpCompute(h,e,n,r,i))},t.prototype.argMinMaxReduce=function(t,e,n){var r=[e];if(ae("arg"+n.charAt(0).toUpperCase()+n.slice(1),r,t.rank),!Gt.get("WEBGL_PACK_REDUCE")||t.rank<=2){var i=ie(t.shape,r),o=i[0],a=S(i[1]),s=t.as2D(-1,a);return this.argReduce(s,n).reshape(o)}return this.argReducePacked(t,n)},t.prototype.argMin=function(t,e){return this.argMinMaxReduce(t,e,"min")},t.prototype.argMax=function(t,e){return this.argMinMaxReduce(t,e,"max")},t.prototype.cumsum=function(t,e,n,r){if(e!==t.rank-1)throw new Error("WebGL cumsum shader expects an inner-most axis="+(t.rank-1)+" but got axis="+e);var i=new qn(t.shape,n,r);return this.compileAndRun(i,[t])},t.prototype.equal=function(t,e){if(Gt.get("WEBGL_PACK_BINARY_OPERATIONS"))return this.packedBinaryOp(t,e,"\n return vec4(equal(a, b));\n","bool");var n=new Cn("return float(a == b);",t.shape,e.shape),r=this.makeOutputArray(n.outputShape,"bool");return this.compileAndRun(n,[t,e],r)},t.prototype.notEqual=function(t,e){if(Gt.get("WEBGL_PACK_BINARY_OPERATIONS"))return this.packedBinaryOp(t,e,"\n return vec4(notEqual(a, b));\n","bool");var n=new Cn("return float(a != b);",t.shape,e.shape),r=this.makeOutputArray(n.outputShape,"bool");return this.compileAndRun(n,[t,e],r)},t.prototype.less=function(t,e){if(this.shouldExecuteOnCPU([t,e]))return this.cpuBackend.less(t,e);if(Gt.get("WEBGL_PACK_BINARY_OPERATIONS"))return this.packedBinaryOp(t,e,"\n return vec4(lessThan(a, b));\n","bool");var n=new Cn("return float(a < b);",t.shape,e.shape),r=this.makeOutputArray(n.outputShape,"bool");return this.compileAndRun(n,[t,e],r)},t.prototype.lessEqual=function(t,e){if(Gt.get("WEBGL_PACK_BINARY_OPERATIONS"))return this.packedBinaryOp(t,e,"\n return vec4(lessThanEqual(a, b));\n","bool");var n=new Cn("return float(a <= b);",t.shape,e.shape),r=this.makeOutputArray(n.outputShape,"bool");return this.compileAndRun(n,[t,e],r)},t.prototype.greater=function(t,e){if(this.shouldExecuteOnCPU([t,e]))return this.cpuBackend.greater(t,e);if(Gt.get("WEBGL_PACK_BINARY_OPERATIONS"))return this.packedBinaryOp(t,e,"\n return vec4(greaterThan(a, b));\n","bool");var n=new Cn("return float(a > b);",t.shape,e.shape),r=this.makeOutputArray(n.outputShape,"bool");return this.compileAndRun(n,[t,e],r)},t.prototype.greaterEqual=function(t,e){if(Gt.get("WEBGL_PACK_BINARY_OPERATIONS"))return this.packedBinaryOp(t,e,"\n return vec4(greaterThanEqual(a, b));\n","bool");var n=new Cn("return float(a >= b);",t.shape,e.shape),r=this.makeOutputArray(n.outputShape,"bool");return this.compileAndRun(n,[t,e],r)},t.prototype.logicalNot=function(t){var e=new Ji(t.shape,"return float(!(x >= 1.0));");return this.compileAndRun(e,[t])},t.prototype.logicalAnd=function(t,e){if(Gt.get("WEBGL_PACK_BINARY_OPERATIONS"))return this.packedBinaryOp(t,e,"\n return vec4(\n vec4(greaterThanEqual(a, vec4(1.0))) *\n vec4(greaterThanEqual(b, vec4(1.0))));\n","bool");var n=new Cn("return float(a >= 1.0 && b >= 1.0);",t.shape,e.shape),r=this.makeOutputArray(n.outputShape,"bool");return this.compileAndRun(n,[t,e],r)},t.prototype.logicalOr=function(t,e){if(Gt.get("WEBGL_PACK_BINARY_OPERATIONS"))return this.packedBinaryOp(t,e,"\n return min(\n vec4(greaterThanEqual(a, vec4(1.0))) +\n vec4(greaterThanEqual(b, vec4(1.0))),\n vec4(1.0));\n","bool");var n=new Cn("return float(a >= 1.0 || b >= 1.0);",t.shape,e.shape),r=this.makeOutputArray(n.outputShape,"bool");return this.compileAndRun(n,[t,e],r)},t.prototype.select=function(t,e,n){var r=new Fi(t.rank,e.shape,e.rank),i=this.makeOutputArray(r.outputShape,_t(e.dtype,n.dtype));return this.compileAndRun(r,[t,e,n],i)},t.prototype.where=function(t){Jt("tf.where() in webgl locks the UI thread. Call tf.whereAsync() instead");var e=t.dataSync();return ea(t.shape,e)},t.prototype.topk=function(t,e,n){return Ke(t.dataSync(),t.shape,t.dtype,e)},t.prototype.min=function(t,e){ae("min",e,t.rank);var n=ie(t.shape,e),r=n[0],i=S(n[1]),o=t.as2D(-1,i);return this.reduce(o,"min",o.dtype).reshape(r)},t.prototype.minimum=function(t,e){if(this.shouldExecuteOnCPU([t,e]))return this.cpuBackend.minimum(t,e);var n=Gt.get("WEBGL_PACK_BINARY_OPERATIONS")?new Pn("\n vec4 result = vec4(min(a, b));\n vec4 isNaN = min(vec4(isnan(a)) + vec4(isnan(b)), vec4(1.0));\n \n result.r = isNaN.r > 0. ? NAN : result.r;\n result.g = isNaN.g > 0. ? NAN : result.g;\n result.b = isNaN.b > 0. ? NAN : result.b;\n result.a = isNaN.a > 0. ? NAN : result.a;\n\n return result;\n",t.shape,e.shape):new Cn("\n if (isnan(a)) return a;\n if (isnan(b)) return b;\n\n return min(a, b);\n",t.shape,e.shape);return this.compileAndRun(n,[t,e])},t.prototype.mod=function(t,e){var n=Gt.get("WEBGL_PACK_BINARY_OPERATIONS")?new Pn("\n vec4 result = mod(a, b);\n vec4 isNaN = vec4(equal(b, vec4(0.0)));\n \n result.r = isNaN.r > 0. ? NAN : result.r;\n result.g = isNaN.g > 0. ? NAN : result.g;\n result.b = isNaN.b > 0. ? NAN : result.b;\n result.a = isNaN.a > 0. ? NAN : result.a;\n\n return result;\n",t.shape,e.shape):new Cn("if (b == 0.0) return NAN;\n return mod(a, b);",t.shape,e.shape);return this.compileAndRun(n,[t,e])},t.prototype.max=function(t,e){if(this.shouldExecuteOnCPU([t]))return this.cpuBackend.max(t,e);ae("max",e,t.rank);var n=ie(t.shape,e),r=n[0],i=S(n[1]),o=t.as2D(-1,i);return this.reduce(o,"max",o.dtype).reshape(r)},t.prototype.maximum=function(t,e){if(this.shouldExecuteOnCPU([t,e]))return this.cpuBackend.maximum(t,e);var n=Gt.get("WEBGL_PACK_BINARY_OPERATIONS")?new Pn("\n vec4 result = vec4(max(a, b));\n vec4 isNaN = min(vec4(isnan(a)) + vec4(isnan(b)), vec4(1.0));\n \n result.r = isNaN.r > 0. ? NAN : result.r;\n result.g = isNaN.g > 0. ? NAN : result.g;\n result.b = isNaN.b > 0. ? NAN : result.b;\n result.a = isNaN.a > 0. ? NAN : result.a;\n\n return result;\n",t.shape,e.shape):new Cn("\n if (isnan(a)) return a;\n if (isnan(b)) return b;\n\n return max(a, b);\n",t.shape,e.shape);return this.compileAndRun(n,[t,e])},t.prototype.all=function(t,e){ae("all",e,t.rank);var n=ie(t.shape,e),r=n[0],i=S(n[1]),o=t.as2D(-1,i);return this.reduce(o,"all",o.dtype).reshape(r)},t.prototype.any=function(t,e){ae("any",e,t.rank);var n=ie(t.shape,e),r=n[0],i=S(n[1]),o=t.as2D(-1,i);return this.reduce(o,"any",o.dtype).reshape(r)},t.prototype.squaredDifference=function(t,e){var n=Gt.get("WEBGL_PACK_BINARY_OPERATIONS")?new Pn("return (a - b) * (a - b);",t.shape,e.shape):new Cn("return (a - b) * (a - b);",t.shape,e.shape);return this.compileAndRun(n,[t,e])},t.prototype.realDivide=function(t,e){var n=new Cn("if (a == b) return 1.0;\n return a / b;",t.shape,e.shape),r=this.makeOutputArray(n.outputShape,"float32");return this.compileAndRun(n,[t,e],r)},t.prototype.floorDiv=function(t,e){if(Gt.get("WEBGL_PACK_BINARY_OPERATIONS"))return this.packedBinaryOp(t,e,"\n vec4 resultSign = sign(a) * sign(b);\n ivec4 ia = round(a);\n ivec4 ib = round(b);\n ivec4 result = ia / ib;\n ivec4 amodb = ia - ib * result;\n\n // Vectorize INT_DIV\n // if (resultSign < 0.0 && amodb != 0) result -= 1;\n // return float(result);\n return vec4(result -\n ivec4(lessThan(resultSign, vec4(0.0))) * ivec4(notEqual(amodb, ivec4(0))));\n","int32");var n=new Cn("\n float resultSign = sign(a) * sign(b);\n int ia = round(a);\n int ib = round(b);\n int result = ia / ib;\n int amodb = ia - ib * result;\n\n if (resultSign < 0.0 && amodb != 0) {\n result -= 1;\n }\n return float(result);\n",t.shape,e.shape),r=this.makeOutputArray(n.outputShape,"int32");return this.compileAndRun(n,[t,e],r)},t.prototype.add=function(t,e){if("complex64"===t.dtype&&"complex64"===e.dtype)return this.complexSeparableBinaryOp(t,e,Tn);if(this.shouldExecuteOnCPU([t,e]))return this.cpuBackend.add(t,e);var n=_t(t.dtype,e.dtype);if(Gt.get("WEBGL_PACK_BINARY_OPERATIONS"))return this.packedBinaryOp(t,e,Tn,n);var r=new Cn(Tn,t.shape,e.shape),i=this.makeOutputArray(r.outputShape,n);return this.compileAndRun(r,[t,e],i)},t.prototype.packedBinaryOp=function(t,e,n,r){var i=new Pn(n,t.shape,e.shape),o=this.makePackedTensor(i.outputShape,r);return this.compileAndRun(i,[t,e],o)},t.prototype.complexSeparableBinaryOp=function(t,e,n){var r=this,i=this.texData.get(t.dataId),o=this.texData.get(e.dataId),a=[[i.complexTensors.real,o.complexTensors.real],[i.complexTensors.imag,o.complexTensors.imag]].map(function(i){var o=i[0],a=i[1],s=r.makeComplexComponentTensorHandle(t,o),u=r.makeComplexComponentTensorHandle(e,a),c=new Cn(n,t.shape,e.shape),l=r.makeOutputArray(c.outputShape,_t(o.dtype,a.dtype));return r.compileAndRun(c,[s,u],l)}),s=a[0],u=a[1],c=this.complex(s,u);return s.dispose(),u.dispose(),c},t.prototype.makeComplexComponentTensorHandle=function(t,e){return{dataId:e.dataId,dtype:e.dtype,shape:t.shape}},t.prototype.addN=function(t){for(var e=t[0],n=1;n 0. ? NAN : result.r;\n result.g = isNaN.g > 0. ? NAN : result.g;\n result.b = isNaN.b > 0. ? NAN : result.b;\n result.a = isNaN.a > 0. ? NAN : result.a;\n\n return result;\n",t.shape,e.shape):new Cn("\nif(a < 0.0 && floor(b) < b){\n return NAN;\n}\nreturn (round(mod(b, 2.0)) != 1) ?\n pow(abs(a), b) : sign(a) * pow(abs(a), b);\n",t.shape,e.shape),i=_t(t.dtype,e.dtype),o=n?this.makePackedTensor(r.outputShape,i):this.makeOutputArray(r.outputShape,i);return this.compileAndRun(r,[t,e],o)},t.prototype.ceil=function(t){var e=new Ji(t.shape,"return ceil(x);");return this.compileAndRun(e,[t])},t.prototype.floor=function(t){var e=new Ji(t.shape,"return floor(x);");return this.compileAndRun(e,[t])},t.prototype.sign=function(t){var e=new Ji(t.shape,"\n if (isnan(x)) { return 0.0; }\n return sign(x);\n");return this.compileAndRun(e,[t])},t.prototype.isNaN=function(t){var e=new Ji(t.shape,"return float(isnan(x));"),n=this.makeOutputArray(e.outputShape,"bool");return this.compileAndRun(e,[t],n)},t.prototype.isInf=function(t){var e=new Ji(t.shape,"return float(isinf(x));"),n=this.makeOutputArray(e.outputShape,"bool");return this.compileAndRun(e,[t],n)},t.prototype.isFinite=function(t){var e=new Ji(t.shape,"return float(!isnan(x) && !isinf(x));"),n=this.makeOutputArray(e.outputShape,"bool");return this.compileAndRun(e,[t],n)},t.prototype.round=function(t){var e=new Ji(t.shape,"\n // OpenGL ES does not support round function.\n // The algorithm is based on banker's rounding.\n float base = floor(x);\n if ((x - base) < 0.5) {\n return floor(x);\n } else if ((x - base) > 0.5) {\n return ceil(x);\n } else {\n if (mod(base, 2.0) == 0.0) {\n return base;\n } else {\n return base + 1.0;\n }\n }\n");return this.compileAndRun(e,[t])},t.prototype.exp=function(t){var e;return e=Gt.get("WEBGL_PACK")?new lo(t.shape,no):new Ji(t.shape,no),this.compileAndRun(e,[t])},t.prototype.expm1=function(t){var e=new Ji(t.shape,"return exp(x) - 1.0;");return this.compileAndRun(e,[t])},t.prototype.log=function(t){var e;return e=Gt.get("WEBGL_PACK")?new lo(t.shape,"\n vec4 result = log(x);\n vec4 isNaN = vec4(lessThan(x, vec4(0.0)));\n result.r = isNaN.r == 1.0 ? NAN : result.r;\n result.g = isNaN.g == 1.0 ? NAN : result.g;\n result.b = isNaN.b == 1.0 ? NAN : result.b;\n result.a = isNaN.a == 1.0 ? NAN : result.a;\n\n return result;\n"):new Ji(t.shape,"if (x < 0.0) return NAN;\n return log(x);"),this.compileAndRun(e,[t])},t.prototype.log1p=function(t){var e=new Ji(t.shape,"return log(1.0 + x);");return this.compileAndRun(e,[t])},t.prototype.sqrt=function(t){var e=new Ji(t.shape,"return sqrt(x);");return this.compileAndRun(e,[t])},t.prototype.rsqrt=function(t){if(this.shouldExecuteOnCPU([t]))return this.cpuBackend.rsqrt(t);var e=new Ji(t.shape,"return inversesqrt(x);");return this.compileAndRun(e,[t])},t.prototype.square=function(t){var e=new Ji(t.shape,"return x * x;");return this.compileAndRun(e,[t])},t.prototype.reciprocal=function(t){var e=new Ji(t.shape,"return 1.0 / x;");return this.compileAndRun(e,[t])},t.prototype.relu=function(t){var e;return e=Gt.get("WEBGL_PACK")?new lo(t.shape,co):new Ji(t.shape,to),this.compileAndRun(e,[t])},t.prototype.prelu=function(t,e){var n=Gt.get("WEBGL_PACK_BINARY_OPERATIONS")?new Pn("\n vec4 aLessThanZero = vec4(lessThan(a, vec4(0.)));\n return (aLessThanZero * (b * a)) + ((vec4(1.0) - aLessThanZero) * a);\n",t.shape,e.shape):new Cn("return (a < 0.) ? b * a : a;",t.shape,e.shape);return this.compileAndRun(n,[t,e])},t.prototype.elu=function(t){var e=new Ji(t.shape,"return (x >= 0.0) ? x : (exp(x) - 1.0);");return this.compileAndRun(e,[t])},t.prototype.eluDer=function(t,e){var n=Gt.get("WEBGL_PACK_BINARY_OPERATIONS")?new Pn("\n vec4 bGTEZero = vec4(greaterThanEqual(b, vec4(0.)));\n return (bGTEZero * a) + ((vec4(1.0) - bGTEZero) * (a * (b + vec4(1.0))));\n",t.shape,e.shape):new Cn("return (b >= 1.0) ? a : a * (b + 1.0);",t.shape,e.shape);return this.compileAndRun(n,[t,e])},t.prototype.selu=function(t){var e=new Ji(t.shape,eo);return this.compileAndRun(e,[t])},t.prototype.int=function(t){var e=new Ji(t.shape,"return float(int(x));"),n=this.makeOutputArray(e.outputShape,"int32");return this.compileAndRun(e,[t],n)},t.prototype.clip=function(t,e,n){var r,i=(r=Gt.get("WEBGL_PACK_CLIP")?new On(t.shape):new In(t.shape)).getCustomSetupFunc(e,n);return this.compileAndRun(r,[t],null,i)},t.prototype.abs=function(t){var e=new Ji(t.shape,"return abs(x);");return this.compileAndRun(e,[t])},t.prototype.complexAbs=function(t){var e=this.texData.get(t.dataId),n=new Rn(t.shape),r=[this.makeComplexComponentTensorHandle(t,e.complexTensors.real),this.makeComplexComponentTensorHandle(t,e.complexTensors.imag)];return this.compileAndRun(n,r)},t.prototype.sigmoid=function(t){var e=new Ji(t.shape,"return 1.0 / (1.0 + exp(-1.0 * x));");return this.compileAndRun(e,[t])},t.prototype.softplus=function(t){var e=new Ji(t.shape,"\n float epsilon = 1.1920928955078125e-7;\n float threshold = log(epsilon) + 2.0;\n\n bool too_large = x > -threshold;\n bool too_small = x < threshold;\n\n float result;\n float exp_x = exp(x);\n\n if (too_large){\n result = x;\n }\n else if (too_small){\n result = exp_x;\n }\n else{\n result = log(exp_x + 1.0);\n }\n return result;\n");return this.compileAndRun(e,[t])},t.prototype.sin=function(t){var e=new Ji(t.shape,ro);return this.compileAndRun(e,[t])},t.prototype.cos=function(t){var e=new Ji(t.shape,io);return this.compileAndRun(e,[t])},t.prototype.tan=function(t){var e=new Ji(t.shape,"return tan(x);");return this.compileAndRun(e,[t])},t.prototype.asin=function(t){var e=new Ji(t.shape,"return asin(x);");return this.compileAndRun(e,[t])},t.prototype.acos=function(t){var e=new Ji(t.shape,"return acos(x);");return this.compileAndRun(e,[t])},t.prototype.atan=function(t){var e=new Ji(t.shape,oo);return this.compileAndRun(e,[t])},t.prototype.atan2=function(t,e){var n=Gt.get("WEBGL_PACK_BINARY_OPERATIONS")?new Pn("\n vec4 result = atan(a, b);\n vec4 isNaN = min(vec4(isnan(a)) + vec4(isnan(b)), vec4(1.0));\n \n result.r = isNaN.r > 0. ? NAN : result.r;\n result.g = isNaN.g > 0. ? NAN : result.g;\n result.b = isNaN.b > 0. ? NAN : result.b;\n result.a = isNaN.a > 0. ? NAN : result.a;\n\n return result;\n",t.shape,e.shape):new Cn("\n if (isnan(a)) return a;\n if (isnan(b)) return b;\n\n return atan(a, b);\n",t.shape,e.shape);return this.compileAndRun(n,[t,e])},t.prototype.sinh=function(t){var e=new Ji(t.shape,"\n float e2x = exp(x);\n return (e2x - 1.0 / e2x) / 2.0;\n");return this.compileAndRun(e,[t])},t.prototype.cosh=function(t){var e=new Ji(t.shape,"\n float e2x = exp(-x);\n return (e2x + 1.0 / e2x) / 2.0;\n");return this.compileAndRun(e,[t])},t.prototype.tanh=function(t){var e=new Ji(t.shape,"\n float e2x = exp(-2.0 * abs(x));\n return sign(x) * (1.0 - e2x) / (1.0 + e2x);\n");return this.compileAndRun(e,[t])},t.prototype.asinh=function(t){var e=new Ji(t.shape,"return log(x + sqrt(x * x + 1.0));");return this.compileAndRun(e,[t])},t.prototype.acosh=function(t){var e=new Ji(t.shape,ao);return this.compileAndRun(e,[t])},t.prototype.atanh=function(t){var e=new Ji(t.shape,so);return this.compileAndRun(e,[t])},t.prototype.erf=function(t){var e=new Ji(t.shape,'\n // Error function is calculated approximately with elementary function.\n // See "Handbook of Mathematical Functions with Formulas,\n // Graphs, and Mathematical Tables", Abramowitz and Stegun.\n float p = 0.3275911;\n float a1 = 0.254829592;\n float a2 = -0.284496736;\n float a3 = 1.421413741;\n float a4 = -1.453152027;\n float a5 = 1.061405429;\n\n float t = 1.0 / (1.0 + p * x);\n return 1.0 - (((((a5*t + a4)*t) + a3)*t + a2)*t + a1)*t*exp(-x*x);\n');return this.compileAndRun(e,[t])},t.prototype.step=function(t,e){var n=new Ji(t.shape,function(t){return void 0===t&&(t=0),Zi+"\n return x > 0.0 ? 1.0 : float("+t+");\n "}(e));return this.compileAndRun(n,[t])},t.prototype.conv2dByMatMul=function(t,e,n){var r=t.shape,i=this.texData.get(t.dataId),o=n.inChannels,a=r[0]*r[1]*r[2],s=n.outChannels,u=(1===a||1===s)&&o>1e3,c=r[2]%2!=0&&!!i.isPacked;if(u||!Gt.get("WEBGL_LAZILY_UNPACK")||!Gt.get("WEBGL_PACK_BINARY_OPERATIONS")||!c){var l=this.reshape(t,[1,r[0]*r[1]*r[2],n.inChannels]),f=this.reshape(e,[1,n.inChannels,n.outChannels]);return this.reshape(this.batchMatMul(l,f,!1,!1),n.outShape)}var h=pt.make([1,r[0]*r[1]*(r[2]+1),n.inChannels],{dataId:t.dataId},t.dtype,this),p=i.shape;i.shape=i.shape.slice(),i.shape[i.shape.length-2]++,b(Wr(i.shape,h.shape),function(){return"packed reshape "+i.shape+" to "+h.shape+" isn't free"});var d=this.reshape(e,[1,n.inChannels,n.outChannels]),m=this.batchMatMul(h,d,!1,!1),g=this.texData.get(m.dataId);return b(g.isPacked,function(){return"batchMatMul result is expected to be packed"}),i.shape=p,g.shape=n.outShape,pt.make(n.outShape,{dataId:m.dataId},m.dtype,this)},t.prototype.conv2dWithIm2Row=function(t,e,n){var r=n.filterWidth,i=n.filterHeight,o=n.inChannels,a=n.outWidth,s=n.outHeight,u=r*i*o,c=s*a,l=[u,c],f=t.squeeze([0]),h=e.reshape([1,u,-1]),p=new gi(l,f.shape,n),d=this.compileAndRun(p,[f]).reshape([1,l[0],l[1]]),m=new wi(d.shape,[1,c,n.outChannels],!0,!1);return this.compileAndRun(m,[d,h]).reshape([1,s,a,n.outChannels])},t.prototype.conv2d=function(t,e,n){if(1===n.filterHeight&&1===n.filterWidth&&1===n.dilationHeight&&1===n.dilationWidth&&1===n.strideHeight&&1===n.strideWidth&&("SAME"===n.padInfo.type||"VALID"===n.padInfo.type))return this.conv2dByMatMul(t,e,n);if(Gt.get("WEBGL_CONV_IM2COL")&&1===t.shape[0])return this.conv2dWithIm2Row(t,e,n);var r=new zn(n);return this.compileAndRun(r,[t,e])},t.prototype.conv2dDerInput=function(t,e,n){var r=new Nn(n);return this.compileAndRun(r,[t,e])},t.prototype.conv2dDerFilter=function(t,e,n){var r=new Dn(n);return this.compileAndRun(r,[t,e])},t.prototype.depthwiseConv2D=function(t,e,n){var r;return Gt.get("WEBGL_PACK_DEPTHWISECONV")&&n.strideWidth<=2&&n.outChannels/n.inChannels==1?(r=new Wn(n),this.compileAndRun(r,[t,e],this.makePackedTensor(n.outShape,t.dtype))):(r=new Vn(n),this.compileAndRun(r,[t,e]))},t.prototype.depthwiseConv2DDerInput=function(t,e,n){var r=new jn(n);return this.compileAndRun(r,[t,e])},t.prototype.depthwiseConv2DDerFilter=function(t,e,n){var r=new Un(n);return this.compileAndRun(r,[t,e])},t.prototype.conv3d=function(t,e,n){var r=new Gn(n);return this.compileAndRun(r,[t,e])},t.prototype.conv3dDerInput=function(t,e,n){var r=new Fn(n);return this.compileAndRun(r,[t,e])},t.prototype.conv3dDerFilter=function(t,e,n){var r=new Bn(n);return this.compileAndRun(r,[t,e])},t.prototype.maxPool=function(t,e){var n=new Mi(e,"max",!1),r=this.makeOutputArray(n.outputShape,t.dtype);return this.compileAndRun(n,[t],r)},t.prototype.avgPool=function(t,e){var n=new Mi(e,"avg",!1),r=this.makeOutputArray(n.outputShape,"float32");return this.compileAndRun(n,[t],r)},t.prototype.maxPoolBackprop=function(t,e,n,r){var i=new Mi(r,"max",!0),o=this.compileAndRun(i,[e]),a=new bi(r),s=this.makeOutputArray(a.outputShape,e.dtype),u=this.compileAndRun(a,[t,o],s);return o.dispose(),u},t.prototype.avgPoolBackprop=function(t,e,n){var r=new bn(n),i=this.makeOutputArray(r.outputShape,e.dtype);return this.compileAndRun(r,[t],i)},t.prototype.cast=function(t,e){return je(t,e,this)},t.prototype.unstack=function(t,e){for(var n=t.shape[e],r=new Array(t.rank-1),i=0,o=0;o1,function(){return"blockSize should be > 1 for depthToSpace, but was: "+e});var r=t.shape[0],i="NHWC"===n?t.shape[1]:t.shape[2],o="NHWC"===n?t.shape[2]:t.shape[3],a="NHWC"===n?t.shape[3]:t.shape[1],s=i*e,u=o*e,c=a/(e*e),l=new Yn("NHWC"===n?[r,s,u,c]:[r,c,s,u],e,n);return this.compileAndRun(l,[t])},t.prototype.split=function(t,e,n){return Ye(t,e,n)},t.prototype.scatterND=function(t,e,n){var r=me(0,t,n),i=r.sliceRank,o=r.numUpdates,a=r.sliceSize,s=r.strides,u=r.outputSize,c=[u/a,a],l=t.reshape([o,i]),f=e.reshape([o,a]);if(0===u)return ze(Ae([]),n);var h=Ce(0),p=new Ni(o,i,l.rank,f.rank,s,c);return this.compileAndRun(p,[f,l,h]).reshape(n)},t.prototype.sparseToDense=function(t,e,n,r){var i=me(0,t,n),o=i.sliceRank,a=i.numUpdates,s=i.strides,u=i.outputSize,c=new Ni(a,o,t.rank,e.rank,s,[u,1],!1);return this.compileAndRun(c,[e,t,r]).reshape(n)},t.prototype.fft=function(t){return this.fftImpl(t,!1)},t.prototype.ifft=function(t){return this.fftImpl(t,!0)},t.prototype.fftImpl=function(t,e){var n=this.texData.get(t.dataId),r=new Zn($n,t.shape,e),i=new Zn(Jn,t.shape,e),o=[this.makeComplexComponentTensorHandle(t,n.complexTensors.real),this.makeComplexComponentTensorHandle(t,n.complexTensors.imag)],a=this.compileAndRun(r,o),s=this.compileAndRun(i,o),u=this.complex(a,s).as2D(t.shape[0],t.shape[1]);return a.dispose(),s.dispose(),u},t.prototype.gatherND=function(t,e){var n=e.shape,r=n[n.length-1],i=fe(t,e),o=i[0],a=i[1],s=i[2],u=i[3],c=e.reshape([a,r]),l=t.reshape([t.size/s,s]),f=new ir(r,u,[a,s]);return this.compileAndRun(f,[l,c]).reshape(o)},t.prototype.fill=function(t,e,n){if("string"===(n=n||W(e))){var r=L(n,S(t));return r.fill(e),pt.make(t,{values:r},n)}var i=new Qn(t,e),o=i.getCustomSetupFunc(e),a=this.makeOutputArray(t,n);return this.compileAndRun(i,[],a,o)},t.prototype.onesLike=function(t){if("string"===t.dtype)throw new Error("onesLike is not supported under string dtype");return this.fill(t.shape,1,t.dtype)},t.prototype.zerosLike=function(t){return this.fill(t.shape,"string"===t.dtype?"":0,t.dtype)},t.prototype.makeOutputArray=function(t,e){return pt.make(t,{},e,this)},t.prototype.makePackedTensor=function(t,e){var n=pt.make(t,{},e,this);return this.texData.get(n.dataId).isPacked=!0,n},t.prototype.unpackTensor=function(t){var e=new fo(t.shape);return this.compileAndRun(e,[t],pt.make(e.outputShape,{},t.dtype,this))},t.prototype.packTensor=function(t){var e=new Si(t.shape);return this.compileAndRun(e,[t],this.makePackedTensor(t.shape,t.dtype))},t.prototype.packedReshape=function(t,e){var n=t.reshape([jr(t.shape)].concat(zr(t.shape))),r=[jr(e)].concat(zr(e)),i=new Ci(r,n.shape);return this.compileAndRun(i,[n]).reshape(e)},t.prototype.compileAndRun=function(t,e,n,r,i){var o=this;if(void 0===i&&(i=!0),null==n&&(n=t.usesPackedTextures?this.makePackedTensor(t.outputShape,e[0].dtype):this.makeOutputArray(t.outputShape,e[0].dtype)),0===n.size)return this.texData.get(n.dataId).values=k(n.dtype,0),n;var a=e.map(function(e){if("complex64"===e.dtype)throw new Error("GPGPUProgram does not support complex64 input. For complex64 dtypes, please separate the program into real and imaginary parts.");var n=o.texData.get(e.dataId);if(null==n.texture){if(!t.usesPackedTextures&&S(e.shape)<=Gt.get("WEBGL_SIZE_UPLOAD_UNIFORM"))return{shape:e.shape,texData:null,isUniform:!0,uniformValues:o.readSync(e.dataId)};t.usesPackedTextures&&(n.isPacked=!0,n.shape=e.shape)}else if(!!n.isPacked!=!!t.usesPackedTextures)e=n.isPacked?o.unpackTensor(e):o.packTensor(e),n=o.texData.get(e.dataId);else if(n.isPacked&&!Wr(n.shape,e.shape)){var r=e,i=e.shape;e.shape=n.shape,e=o.packedReshape(e,i),n=o.texData.get(e.dataId),r.shape=i}return o.uploadToGPU(e.dataId),{shape:e.shape,texData:n,isUniform:!1}});this.uploadToGPU(n.dataId);var s,u={shape:n.shape,texData:this.texData.get(n.dataId),isUniform:!1},c=function(t,e,n){var r="";e.concat(n).forEach(function(t){var e=null!=t.texData&&null!=t.texData.slice&&t.texData.slice.flatOffset>0,n=t.isUniform?"uniform":t.texData.texShape;r+=t.shape+"_"+n+"_"+e});var i=t.userCode;return t.constructor.name+"_"+r+"_"+i}(t,a,u),l=this.getAndSaveBinary(c,function(){return function(t,e,n,r){var i=e.userCode,o=n.map(function(t,n){var r={logicalShape:t.shape,texShape:t.isUniform?null:t.texData.texShape,isUniform:t.isUniform,isPacked:!t.isUniform&&t.texData.isPacked,flatOffset:null};return null!=t.texData&&null!=t.texData.slice&&t.texData.slice.flatOffset>0&&(r.flatOffset=t.texData.slice.flatOffset),{name:e.variableNames[n],shapeInfo:r}}),a=o.map(function(t){return t.shapeInfo}),s={logicalShape:r.shape,texShape:r.texData.texShape,isUniform:!1,isPacked:r.texData.isPacked,flatOffset:null},u=an(o,s,i,e.usesPackedTextures),c=t.createProgram(u),l=null,f=null;1===Gt.get("WEBGL_VERSION")&&(l=t.getUniformLocation(c,"INFINITY",!1),f=t.getUniformLocation(c,"NAN",!1));for(var h={},p=0;ph)for(var p=this.numBytesInGPU-h;p>0&&this.lruDataGPU.length>0;){var d=this.lruDataGPU.shift(),m=this.texData.get(d),g=m.texShape,v=m.dtype;p-=this.computeBytes(g,v),this.read(d)}return f&&(s=this.endTimer(s),this.activeTimers.push({name:t.constructor.name,query:this.getQueryTime(s)})),Gt.get("WEBGL_LAZILY_UNPACK")||!this.texData.get(n.dataId).isPacked||t.isPackShader?n:this.unpackTensor(n)},t.prototype.getAndSaveBinary=function(t,e){return t in this.binaryCache||(this.binaryCache[t]=e()),this.binaryCache[t]},t.prototype.getTextureManager=function(){return this.textureManager},t.prototype.dispose=function(){this.disposed||(this.textureManager.dispose(),this.canvas.remove(),null!=this.fromPixels2DContext&&this.fromPixels2DContext.canvas.remove(),this.gpgpuCreatedLocally&&(this.gpgpu.program=null,this.gpgpu.dispose()),this.disposed=!0)},t.prototype.floatPrecision=function(){var t=this;return Yt(function(){var e=Gt.get("DEBUG");Gt.set("DEBUG",!1);var n=t.abs(Ce(1e-8)).dataSync()[0];return Gt.set("DEBUG",e),n>0?32:16})},t.prototype.uploadToGPU=function(t){var e,n=this.texData.get(t),r=n.shape,i=n.dtype,o=n.values,a=n.texture,s=n.usage,u=n.isPacked;if(null==a){var c,l=null!=this.activeTimers;l&&(c=performance.now());var f=Gr(r,u);n.texShape=f;var h=this.acquireTexture(t,f,s,i,u);if(n.texture=h,null!=o){if(u){var p=jr(r),d=1,m=1;r.length&&(d=(e=zr(r))[0],m=e[1]),this.gpgpu.uploadMatrixToPackedTexture(h,p,d,m,f[0],f[1],ia(o))}else this.gpgpu.uploadMatrixToTexture(h,f[0],f[1],ia(o));n.values=null,l&&(this.uploadWaitMs+=performance.now()-c)}}else Gt.get("WEBGL_NUM_MB_BEFORE_PAGING")=0&&(this.lruDataGPU.splice(this.lruDataGPU.indexOf(t),1),this.lruDataGPU.push(t))},t.prototype.convertAndCacheOnCPU=function(t,e){var n=this.texData.get(t),r=n.texture,i=n.texShape,o=n.dtype,a=n.usage,s=n.isPacked;return null!=r&&(this.releaseTexture(t,r,i,a,o,s),n.texture=null,n.texShape=null,n.isPacked=!1),n.usage=nr.UPLOAD,null!=e&&(n.values=function(t,e){if("float32"===e||"complex64"===e)return t;if("int32"===e||"bool"===e){for(var n="int32"===e?new Int32Array(t.length):new Uint8Array(t.length),r=0;r=0&&this.lruDataGPU.splice(a,1)}this.numBytesInGPU-=this.computeBytes(n,i),this.textureManager.releaseTexture(e,n,r,o)},t.prototype.acquireTexture=function(t,e,n,r,i){return Gt.get("WEBGL_NUM_MB_BEFORE_PAGING")=2&&a.rank>=2&&o.rank===a.rank,function(){return"Error in matMul: inputs must have the same rank of at least 2, got ranks "+o.rank+" and "+a.rank+"."}),b(E(f,h),function(){return"Error in matMul: outer dimensions ("+f+") and ("+h+") of Tensors with shapes "+o.shape+" and "+a.shape+" must match."}),b(s===u,function(){return"Error in matMul: inner shapes ("+s+") and ("+u+") of Tensors with shapes "+o.shape+" and "+a.shape+" and transposeA="+n+" and transposeB="+r+" must match."});var m=o.shape.slice(0,-2).concat([c,l]),g=n?o.as3D(p,s,c):o.as3D(p,c,s),v=r?a.as3D(d,l,u):a.as3D(d,u,l);return Gt.engine.runKernel(function(t,e){var i=t.batchMatMul(g,v,n,r);return e([g,v]),i},{$a:g,$b:v},function(t,e){var i=e,o=i[0],a=i[1];return n||r?!n&&r?{$a:function(){return t.matMul(a,!1,!1)},$b:function(){return t.matMul(o,!0,!1)}}:n&&!r?{$a:function(){return a.matMul(t,!1,!0)},$b:function(){return o.matMul(t,!1,!1)}}:{$a:function(){return a.matMul(t,!0,!0)},$b:function(){return t.matMul(o,!0,!0)}}:{$a:function(){return t.matMul(a,!1,!0)},$b:function(){return o.matMul(t,!0,!1)}}}).reshape(m)}}),ws=xe({dot_:function(t,e){var n=Ht(t,"t1","dot"),r=Ht(e,"t2","dot");b(!(1!==n.rank&&2!==n.rank||1!==r.rank&&2!==r.rank),function(){return"Error in dot: inputs must all be rank 1 or 2, but got ranks "+n.rank+" and "+r.rank+"."});var i=1===n.rank?n.size:n.shape[1],o=1===r.rank?r.size:r.shape[0];return b(i===o,function(){return"Error in dot: inner dimensions of inputs must match, but got "+i+" and "+o+"."}),1===n.rank&&1===r.rank?n.as2D(1,-1).matMul(r.as2D(-1,1)).asScalar():1===n.rank&&2===r.rank?n.as2D(1,-1).matMul(r.as2D(r.shape[0],r.shape[1])).as1D():2===n.rank&&1===r.rank?n.matMul(r.as2D(-1,1)).as1D():n.matMul(r.as2D(r.shape[0],r.shape[1]))}}),xs=xe({outerProduct_:function(t,e){var n=Ht(t,"v1","outerProduct"),r=Ht(e,"v2","outerProduct");return b(1===n.rank&&1===r.rank,function(){return"Error in outerProduct: inputs must be rank 1, but got ranks "+n.rank+" and "+r.rank+"."}),n.as2D(-1,1).matMul(r.as2D(1,-1))}});var _s=xe({reverse_:function(t,e){var n=Ht(t,"x","reverse");if(0===n.rank)return n.clone();var r=O(e,n.shape);return Gt.engine.runKernel(function(t){return t.reverse(n,r)},{$x:n},function(t){return{$x:function(){return t.reverse(r)}}}).reshapeAs(n)}}),Ss=xe({reverse1d_:function(t){var e=Ht(t,"x","reverse");return b(1===e.rank,function(){return"Error in reverse1D: x must be rank 1 but got rank "+e.rank+"."}),_s(e,0)}}),Es=xe({reverse2d_:function(t,e){var n=Ht(t,"x","reverse");return b(2===n.rank,function(){return"Error in reverse2D: x must be rank 2 but got rank "+n.rank+"."}),_s(n,e)}}),Ts=xe({reverse3d_:function(t,e){var n=Ht(t,"x","reverse");return b(3===n.rank,function(){return"Error in reverse3D: x must be rank 3 but got rank "+n.rank+"."}),_s(n,e)}}),Ms=xe({reverse4d_:function(t,e){var n=Ht(t,"x","reverse");return b(4===n.rank,function(){return"Error in reverse4D: x must be rank 4 but got rank "+n.rank+"."}),_s(n,e)}});function As(t,e,n,r,i,o){var a=Ht(t,"x","maxPool"),s=a,u=!1;3===a.rank&&(u=!0,s=a.as4D(1,a.shape[0],a.shape[1],a.shape[2])),null==r&&(r=[1,1]),b(4===s.rank,function(){return"Error in maxPool: input must be rank 4 but got rank "+s.rank+"."}),b(us(n,r),function(){return"Error in maxPool: Either strides or dilations must be 1. Got strides "+n+" and dilations '"+r+"'"}),null!=o&&b(T(i),function(){return"Error in maxPool: pad must be an integer when using, dimRoundingMode "+o+" but got pad "+i+"."});var c=ts(s.shape,e,n,r,i,o),l=Gt.engine.runKernel(function(t,e){var n=t.maxPool(s,c);return e([s,n]),n},{x:s},function(t,o){var a=o[0],s=o[1];return{x:function(){return function(t,e,n,r,i,o,a,s){var u=Ht(t,"dy","maxPoolBackprop"),c=Ht(e,"input","maxPoolBackprop"),l=Ht(n,"output","maxPoolBackprop");b(c.rank===u.rank,function(){return"Rank of input ("+c.rank+") does not match rank of dy ("+u.rank+")"}),null==o&&(o=[1,1]),b(us(i,o),function(){return"Error in maxPoolBackProp: Either strides or dilations must be 1. Got strides "+i+" and dilations '"+o+"'"}),b(4===u.rank,function(){return"Error in maxPoolBackprop: dy must be rank 4 but got rank "+u.rank+"."}),b(4===c.rank,function(){return"Error in maxPoolBackprop: input must be rank 4 but got rank "+c.rank+"."}),null!=s&&b(T(a),function(){return"Error in maxPoolBackprop: pad must be an integer when using, dimRoundingMode "+s+" but got pad "+a+"."});var f=ts(c.shape,r,i,o,a,s);return Gt.engine.runKernel(function(t){return t.maxPoolBackprop(u,c,l,f)},{$dy:u,$input:c})}(t,a,s,e,n,r,i)}}});return u?l.as3D(l.shape[1],l.shape[2],l.shape[3]):l}function Cs(t,e,n,r,i,o){var a=Ht(t,"x","avgPool","float32");null==r&&(r=[1,1]),b(us(n,r),function(){return"Error in avgPool: Either strides or dilations must be 1. Got strides "+n+" and dilations '"+r+"'"});var s=a,u=!1;3===a.rank&&(u=!0,s=a.as4D(1,a.shape[0],a.shape[1],a.shape[2])),b(4===s.rank,function(){return"Error in avgPool: x must be rank 4 but got rank "+s.rank+"."}),null!=o&&b(T(i),function(){return"Error in avgPool: pad must be an integer when using, dimRoundingMode "+o+" but got pad "+i+"."});var c=ts(s.shape,e,n,r,i,o),l=Gt.engine.runKernel(function(t){return t.avgPool(s,c)},{x:s},function(t){return{x:function(){return function(t,e,n,r,i,o){var a=Ht(t,"dy","avgPoolBackprop"),s=Ht(e,"input","avgPoolBackprop");b(s.rank===a.rank,function(){return"Rank of input ("+s.rank+") does not match rank of dy ("+a.rank+")"}),null==i&&(i=[1,1]),b(us(r,i),function(){return"Error in avgPoolBackprop: Either strides or dilations must be 1. Got strides "+r+" and dilations '"+i+"'"});var u=s,c=a,l=!1;3===s.rank&&(l=!0,u=s.as4D(1,s.shape[0],s.shape[1],s.shape[2]),c=a.as4D(1,a.shape[0],a.shape[1],a.shape[2])),b(4===c.rank,function(){return"Error in avgPoolBackprop: dy must be rank 4 but got rank "+c.rank+"."}),b(4===u.rank,function(){return"Error in avgPoolBackprop: input must be rank 4 but got rank "+u.rank+"."});var f=ts(u.shape,n,r,i,o),h=Gt.engine.runKernel(function(t){return t.avgPoolBackprop(c,u,f)},{dy4D:c,input4D:u});return l?h.as3D(h.shape[1],h.shape[2],h.shape[3]):h}(t,s,e,n,r,i)}}});return l=l.cast(a.dtype),u?l.as3D(l.shape[1],l.shape[2],l.shape[3]):l}var Ps=xe({maxPool_:function(t,e,n,r,i){return As(t,e,n,1,r,i)}}),Is=xe({avgPool_:function(t,e,n,r,i){return Cs(t,e,n,1,r,i)}}),Os=xe({pool_:function(t,e,n,r,i,o){null==i&&(i=[1,1]),null==o&&(o=1),0===r&&(r="valid");var a=Ht(t,"x","maxPool"),s=a,u=!1;3===a.rank&&(u=!0,s=a.as4D(1,a.shape[0],a.shape[1],a.shape[2])),b(us(o,i),function(){return"Error in pool: Either strides or dilations must be 1. Got strides "+o+" and dilations '"+i+"'"});var c,l=ts(s.shape,e,o,i,r),f=[l.dilationHeight,l.dilationWidth];c="same"===r?function(t,e){var n=t.map(function(t,n){return t+(t-1)*(e[n]-1)}).map(function(t){return t-1}),r=n.map(function(t){return Math.floor(t/2)}),i=n.map(function(t,e){return t-r[e]});return n.map(function(t,e){return[r[e],i[e]]})}([l.filterHeight,l.filterWidth],f):[[0,0],[0,0]];var h=1===f[0]&&1===f[1],p=function(t,e,n){var r=n.map(function(t){return t[0]}),i=n.map(function(t){return t[1]}),o=t.concat(r,i),a=e.map(function(t,e){return(t-o[e]%t)%t}),s=i.map(function(t,e){return t+a[e]});return[e.map(function(t,e){return[r[e],s[e]]}),e.map(function(t,e){return[0,a[e]]})]}([l.inHeight,l.inWidth],f,c),d=p[0],m=p[1],g=h?r:"valid",v=h?s:Yo(s,f,d),y=("avg"===n?function(){return Cs(v,e,o,1,g)}:function(){return As(v,e,o,1,g)})(),w=h?y:Io(y,f,m);return u?w.as3D(w.shape[1],w.shape[2],w.shape[3]):w}});var Rs=xe({slice_:function(t,e,n){var r,i,o=Ht(t,"x","slice");if(0===o.rank)throw new Error("Slicing scalar is not possible");r="number"==typeof e?[e].concat(new Array(o.rank-1).fill(0)):e.length=0?t:(b(-1===t,function(){return"Bad value in size"}),o.shape[e]-r[e])}),function(t,e,n){b(t.rank===e.length,function(){return"Error in slice"+t.rank+"D: Length of begin "+e+" must match the rank of the array ("+t.rank+")."}),b(t.rank===n.length,function(){return"Error in slice"+t.rank+"D: Length of size "+n+" must match the rank of the array ("+t.rank+")."});for(var r=function(r){b(e[r]+n[r]<=t.shape[r],function(){return"Error in slice"+t.rank+"D: begin["+r+"] + size["+r+"] ("+(e[r]+n[r])+") would overflow input.shape["+r+"] ("+t.shape[r]+")"})},i=0;i0&&(e=e.sum(n)),e.reshape(r.shape)},$b:function(){var e=t,n=tn(i.shape,o);return n.length>0&&(e=e.sum(n)),e.reshape(i.shape)}}})}}),uu=xe({addN_:function(t){b(Array.isArray(t),function(){return"The argument passed to tf.addN() must be a list of tensors"}),b(t.length>=1,function(){return"Must pass at least one tensor to tf.addN(), but got "+t.length});var e=t.map(function(t,e){return Ht(t,"tensors"+e,"addN")}),n=e[0];e.forEach(function(t){if(t.dtype!==n.dtype)throw new Error("All tensors passed to tf.addN() must have the same dtype")}),e.forEach(function(t){if(!E(t.shape,n.shape))throw new Error("All tensors passed to tf.addN() must have the same shape")});var r=e;return Gt.engine.runKernel(function(t){return t.addN(e)},r,function(t){var n={};return e.forEach(function(e,r){n[r]=function(){return t.clone()}}),n})}}),cu=xe({addStrict_:function(t,e){var n=Ht(t,"a","addStrict"),r=Ht(e,"b","addStrict");return w(n.shape,r.shape,"Error in addStrict: "),n.add(r)}}),lu=xe({atan2_:function(t,e){var n,r=Ht(t,"a","atan2"),i=Ht(e,"b","atan2");n=Et(r,i),r=n[0],i=n[1];var o=en(r.shape,i.shape);return Gt.engine.runKernel(function(t,e){var n=t.atan2(r,i);return e([r,i]),n},{$a:r,$b:i},function(t,e){var n=e[0],r=e[1];return{$a:function(){var e=su(n.square(),r.square()),i=t.mul(r.div(e)),a=tn(n.shape,o);return a.length>0&&(i=i.sum(a)),i.reshape(n.shape)},$b:function(){var e=su(n.square(),r.square()),i=Sa(t.mul(n.div(e))),a=tn(r.shape,o);return a.length>0&&(i=i.sum(a)),i.reshape(r.shape)}}})}}),fu=xe({div_:function(t,e){var n,r=Ht(t,"a","div"),i=Ht(e,"b","div");if(n=Et(r,i),r=n[0],i=n[1],"int32"===r.dtype&&"int32"===i.dtype)return pu(r,i);var o=en(r.shape,i.shape);return Gt.engine.runKernel(function(t,e){var n=t.realDivide(r,i);return e([r,i]),n},{$a:r,$b:i},function(t,e){var n=e[0],r=e[1];return{$a:function(){var e=t.div(r.toFloat()),i=tn(n.shape,o);return i.length>0?e.sum(i).reshape(n.shape):e},$b:function(){var e=t.mul(n.toFloat()),i=tn(r.shape,o);i.length>0&&(e=e.sum(i).reshape(r.shape));var a=r.square();return e.div(a.toFloat()).neg()}}})}}),hu=xe({divStrict_:function(t,e){var n=Ht(t,"a","div"),r=Ht(e,"b","div");return w(n.shape,r.shape,"Error in divideStrict: "),n.div(r)}}),pu=xe({floorDiv_:function(t,e){var n,r=Ht(t,"a","floorDiv"),i=Ht(e,"b","floorDiv");n=Et(r,i),r=n[0],i=n[1];var o=en(r.shape,i.shape);return Gt.engine.runKernel(function(t,e){var n=t.floorDiv(r,i);return e([r,i]),n},{$a:r,$b:i},function(t,e){var n=e[0],r=e[1];return{$a:function(){var e=t.div(r.toFloat()),i=tn(n.shape,o);return i.length>0?e.sum(i).reshape(n.shape):e},$b:function(){var e=t.mul(n.toFloat()),i=tn(r.shape,o);i.length>0&&(e=e.sum(i).reshape(r.shape));var a=r.square();return e.div(a.toFloat()).neg()}}})}}),du=xe({maximum_:function(t,e){var n,r=Ht(t,"a","maximum"),i=Ht(e,"b","maximum");return n=Et(r,i),r=n[0],i=n[1],"bool"===r.dtype&&(r=r.toInt(),i=i.toInt()),en(r.shape,i.shape),Gt.engine.runKernel(function(t,e){var n=t.maximum(r,i);return e([r,i]),n},{$a:r,$b:i},function(t,e){var n=e[0],r=e[1];return{$a:function(){return t.mul(n.greaterEqual(r).toFloat())},$b:function(){return t.mul(n.less(r).toFloat())}}})}}),mu=xe({maximumStrict_:function(t,e){var n=Ht(t,"a","maximumStrict"),r=Ht(e,"b","maximumStrict");return w(n.shape,r.shape,"Error in maximumStrict: "),n.maximum(r)}}),gu=xe({minimum_:function(t,e){var n,r=Ht(t,"a","minimum"),i=Ht(e,"b","minimum");return n=Et(r,i),r=n[0],i=n[1],"bool"===r.dtype&&(r=r.toInt(),i=i.toInt()),en(r.shape,i.shape),Gt.engine.runKernel(function(t,e){var n=t.minimum(r,i);return e([r,i]),n},{$a:r,$b:i},function(t,e){var n=e[0],r=e[1];return{$a:function(){return t.mul(n.lessEqual(r).toFloat())},$b:function(){return t.mul(n.greater(r).toFloat())}}})}}),vu=xe({minimumStrict_:function(t,e){var n=Ht(t,"a","minimumStrict"),r=Ht(e,"b","minimumStrict");return w(n.shape,r.shape,"Error in minimumStrict: "),n.minimum(r)}}),yu=xe({mod_:function(t,e){var n,r=Ht(t,"a","mod"),i=Ht(e,"b","mod");n=Et(r,i),r=n[0],i=n[1];var o=en(r.shape,i.shape);return Gt.engine.runKernel(function(t,e){var n=t.mod(r,i);return e([r,i]),n},{$a:r,$b:i},function(t,e){var n=e[0],r=e[1];return{$a:function(){var e=tn(n.shape,o);return e.length>0?t.sum(e).reshape(n.shape):t},$b:function(){var e=t.mul(n.div(r).floor().neg()),i=tn(r.shape,o);return i.length>0?e.sum(i).reshape(r.shape):e}}})}}),bu=xe({modStrict_:function(t,e){var n=Ht(t,"a","modStrict"),r=Ht(e,"b","modStrict");return w(n.shape,r.shape,"Error in modStrict: "),n.mod(r)}}),wu=xe({mul_:function(t,e){var n,r=Ht(t,"a","mul"),i=Ht(e,"b","mul");n=Et(r,i),r=n[0],i=n[1];var o=en(r.shape,i.shape);return Gt.engine.runKernel(function(t,e){var n=t.multiply(r,i);return e([r,i]),n},{$a:r,$b:i},function(t,e){var n=e[0],r=e[1];return{$a:function(){var e=t.mul(r.toFloat()),i=tn(n.shape,o);return i.length>0?e.sum(i).reshape(n.shape):e},$b:function(){var e=t.mul(n.toFloat()),i=tn(r.shape,o);return i.length>0?e.sum(i).reshape(r.shape):e}}})}}),xu=xe({mulStrict_:function(t,e){var n=Ht(t,"a","mul"),r=Ht(e,"b","mul");return w(n.shape,r.shape,"Error in multiplyStrict: "),n.mul(r)}}),_u=xe({pow_:function(t,e){var n=Ht(t,"base","pow"),r=Ht(e,"exp","pow"),i=en(n.shape,r.shape);return t=n.cast(_t(n.dtype,r.dtype)),e=r.cast(_t(n.dtype,r.dtype)),Gt.engine.runKernel(function(t,e){var i=t.pow(n,r);return e([n,r,i]),i},{$base:n,$exp:r},function(t,e){var n=e[0],r=e[1],o=e[2];return{$base:function(){var e=r.toFloat(),o=t.mul(e.mul(n.pow(e.sub(Ce(1))))),a=tn(n.shape,i);return a.length>0&&(o=o.sum(a)),o.reshape(n.shape)},$exp:function(){var e=n.greater(0),a=n.log().where(e,Fe(n)),s=t.mul(o.mul(a)),u=tn(r.shape,i);return u.length>0&&(s=s.sum(u)),s.reshape(r.shape)}}})}}),Su=xe({powStrict_:function(t,e){return w(t.shape,e.shape,"Error in powStrict: "),t.pow(e)}}),Eu=xe({squaredDifference_:function(t,e){var n,r=Ht(t,"a","squaredDifference"),i=Ht(e,"b","squaredDifference");return n=Et(r,i),r=n[0],i=n[1],en(r.shape,i.shape),Gt.engine.runKernel(function(t,e){var n=t.squaredDifference(r,i);return e([r,i]),n},{$a:r,$b:i},function(t,e){var n=e[0],r=e[1],i=Ce(2);return{$a:function(){return t.mul(n.sub(r).mul(i))},$b:function(){return t.mul(r.sub(n).mul(i))}}})}}),Tu=xe({squaredDifferenceStrict_:function(t,e){var n=Ht(t,"a","squaredDifferenceStrict"),r=Ht(e,"b","squaredDifferenceStrict");return w(n.shape,r.shape,"Error in squaredDifferenceStrict: "),n.squaredDifference(r)}}),Mu=xe({sub_:function(t,e){var n,r=Ht(t,"a","sub"),i=Ht(e,"b","sub");n=Et(r,i),r=n[0],i=n[1];var o=en(r.shape,i.shape);return Gt.engine.runKernel(function(t){return t.subtract(r,i)},{$a:r,$b:i},function(t){return{$a:function(){var e=t,n=tn(r.shape,o);return n.length>0&&(e=e.sum(n)),e.reshape(r.shape)},$b:function(){var e=t,n=tn(i.shape,o);return n.length>0&&(e=e.sum(n)),e.neg().reshape(i.shape)}}})}}),Au=xe({subStrict_:function(t,e){var n=Ht(t,"a","subStrict"),r=Ht(e,"b","subStrict");return w(n.shape,r.shape,"Error in subStrict: "),n.sub(r)}});var Cu=xe({logicalAnd_:function(t,e){var n=Ht(t,"a","logicalAnd","bool"),r=Ht(e,"b","logicalAnd","bool");return en(n.shape,r.shape),Gt.engine.runKernel(function(t){return t.logicalAnd(n,r)},{$a:n,$b:r})}}),Pu=xe({logicalNot_:function(t){var e=Ht(t,"x","logicalNot","bool");return Gt.engine.runKernel(function(t){return t.logicalNot(e)},{$x:e})}}),Iu=xe({logicalOr_:function(t,e){var n=Ht(t,"a","logicalOr","bool"),r=Ht(e,"b","logicalOr","bool");return en(n.shape,r.shape),Gt.engine.runKernel(function(t){return t.logicalOr(n,r)},{$a:n,$b:r})}}),Ou=xe({logicalXor_:function(t,e){var n=Ht(t,"a","logicalXor","bool"),r=Ht(e,"b","logicalXor","bool");return en(n.shape,r.shape),Iu(t,e).logicalAnd(Cu(t,e).logicalNot())}}),Ru=xe({where_:function(t,e,n){var r=Ht(e,"a","where"),i=Ht(n,"b","where"),o=Ht(t,"condition","where","bool");return w(r.shape,i.shape,"Error in where: "),1===o.rank?b(o.shape[0]===r.shape[0],function(){return"The first dimension of `a` must match the size of `condition`."}):w(o.shape,i.shape,"Error in where: "),Gt.engine.runKernel(function(t,e){var n=t.select(o,r,i);return e([o]),n},{$condition:o,$a:r,$b:i},function(t,e){var n=e[0];return{$condition:function(){return Fe(n).toFloat()},$a:function(){return t.mul(n.cast(t.dtype))},$b:function(){return t.mul(n.logicalNot().cast(t.dtype))}}})}}),ku=function(t){return c(this,void 0,void 0,function(){var e,n,r;return l(this,function(i){switch(i.label){case 0:return[4,(e=Ht(t,"condition","whereAsync","bool")).data()];case 1:return n=i.sent(),r=ea(e.shape,n),t!==e&&e.dispose(),[2,r]}})})};var Lu=xe({elu_:function(t){var e=Ht(t,"x","elu");return Gt.engine.runKernel(function(t,n){var r=t.elu(e);return n([r]),r},{$x:e},function(t,e){var n=e[0];return{$x:function(){return Gt.engine.runKernel(function(e){return e.eluDer(t,n)},{dy:t,y:n})}}})}}),Du=xe({leakyRelu_:function(t,e){void 0===e&&(e=.2);var n=Ht(t,"x","leakyRelu");return du(Ce(e).mul(n),n)}}),Nu=xe({prelu_:function(t,e){var n=Ht(t,"x","prelu"),r=Ht(e,"alpha","prelu");return Gt.engine.runKernel(function(t,e){var i=t.prelu(n,r);return e([n,r]),i},{$x:n,$alpha:r},function(t,e){var n=e[0],r=e[1],i=n.greater(0);return{$x:function(){return Ru(i,t,t.mul(r))},$alpha:function(){var e=Ru(i,Fe(t),t.mul(n)),o=tn(r.shape,t.shape);return o.length>0&&(e=e.sum(o)),e.reshape(r.shape)}}})}}),Bu=xe({relu_:function(t){var e=Ht(t,"x","relu");return"bool"===e.dtype?e.toInt():Gt.engine.runKernel(function(t,n){var r=t.relu(e);return n([e]),r},{$x:e},function(t,e){var n=e[0];return{$x:function(){return t.mulStrict(n.step().toFloat())}}})}}),Fu=xe({selu_:function(t){var e=Ht(t,"x","selu");return Gt.engine.runKernel(function(t,n){var r=t.selu(e);return n([e]),r},{$x:e},function(t,e){var n=e[0];return{$x:function(){var e=n.greater(Ce(0)),r=Ce(Ki),i=Ce($i),o=t.mul(i),a=t.mul(r).mul(n.toFloat().exp());return Ru(e,o,a)}}})}});var Uu=xe({transpose_:function(t,e){var n=Ht(t,"x","transpose");return null==e&&(e=n.shape.map(function(t,e){return e}).reverse()),b(n.rank===e.length,function(){return"Error in transpose: rank of input "+n.rank+" must match length of perm "+e+"."}),e.forEach(function(t){b(t>=0&&ti)throw new Error("'k' passed to topk() must be <= the last dimension ("+i+") but got "+e);var o=Gt.engine.runKernel(function(t){return t.topk(r,e,n)},{$x:r});return{values:o[0],indices:o[1]}}});var Ju=xe({scatterND_:function(t,e,n){var r=Ht(t,"indices","scatterND","int32"),i=Ht(e,"updates","scatterND");return de(i,r,n),Gt.engine.runKernel(function(t){return t.scatterND(r,i,n)},{$indices:r,$updates:i})}});var Zu=xe({fft_:function(t){b("complex64"===t.dtype,function(){return"The dtype for tf.spectral.fft() must be complex64 but got "+t.dtype+"."});var e=t.shape[t.shape.length-1],n=t.size/e,r=t.as2D(n,e);return Gt.engine.runKernel(function(t){return t.fft(r)},{input:t}).reshape(t.shape)}}),Qu=xe({ifft_:function(t){b("complex64"===t.dtype,function(){return"The dtype for tf.spectral.ifft() must be complex64 but got "+t.dtype+"."});var e=t.shape[t.shape.length-1],n=t.size/e,r=t.as2D(n,e);return Gt.engine.runKernel(function(t){return t.ifft(r)},{input:t}).reshape(t.shape)}}),tc=xe({rfft_:function(t){b("float32"===t.dtype,function(){return"The dtype for rfft() must be real value but got "+t.dtype});var e=t.shape[t.shape.length-1],n=t.size/e,r=t.zerosLike(),i=Ee(t,r).as2D(n,e),o=Zu(i),a=Math.floor(e/2)+1,s=Te(o),u=Me(o),c=s.split([a,e-a],s.shape.length-1),l=u.split([a,e-a],u.shape.length-1),f=t.shape.slice();return f[t.shape.length-1]=a,Ee(c[0],l[0]).reshape(f)}}),ec=xe({irfft_:function(t){var e=t.shape[t.shape.length-1],n=t.size/e;if(e<=2){var r=t.as2D(n,e),i=Qu(r);return Te(i)}var o=[n,2*(e-1)],a=Te(t).as2D(n,e),s=Me(t).as2D(n,e),u=a.slice([0,1],[n,e-2]).reverse(1),c=s.slice([0,1],[n,e-2]).reverse(1).mul(Ce(-1)),l=a.concat(u,1),f=s.concat(c,1);return r=Ee(l,f).as2D(o[0],o[1]),i=Qu(r),Te(i)}}),nc=Object.freeze({fft:Zu,ifft:Qu,rfft:tc,irfft:ec});var rc=xe({sparseToDense_:function(t,e,n,r){void 0===r&&(r=0);var i=Ht(t,"sparseIndices","sparseToDense","int32"),o=Ht(e,"sparseValues","sparseToDense"),a=Ht(r,"defaultValue","sparseToDense",o.dtype);return function(t,e,n,r){if("int32"!==t.dtype)throw new Error("tf.sparseToDense() expects the indices to be int32 type, but the dtype was "+t.dtype+".");if(t.rank>2)throw new Error("sparseIndices should be a scalar, vector, or matrix, but got shape "+t.shape+".");var i=t.rank>0?t.shape[0]:1,o=t.rank>1?t.shape[1]:1;if(n.length!==o)throw new Error("outputShape has incorrect number of elements:, "+n.length+", should be: "+o+".");var a=e.size;if(0!==e.rank&&(1!==e.rank||a!==i))throw new Error("sparseValues has incorrect shape "+e.shape+", should be [] or ["+i+"]");if(e.dtype!==r.dtype)throw new Error("sparseValues.dtype must match defaultValues.dtype")}(i,o,n,a),Gt.engine.runKernel(function(t){return t.sparseToDense(i,o,n,a)},{$sparseIndices:i,$sparseValues:o,$defaultValue:a})}});var ic,oc=xe({gatherND_:function(t,e){var n=Ht(e,"indices","gatherND","int32"),r=Ht(t,"x","gatherND");return Gt.engine.runKernel(function(t){return t.gatherND(r,n)},{$x:r,$indices:n})}});!function(t){t[t.NONE=0]="NONE",t[t.MEAN=1]="MEAN",t[t.SUM=2]="SUM",t[t.SUM_BY_NONZERO_WEIGHTS=3]="SUM_BY_NONZERO_WEIGHTS"}(ic||(ic={}));var ac=xe({absoluteDifference_:function(t,e,n,r){void 0===r&&(r=ic.SUM_BY_NONZERO_WEIGHTS);var i=Ht(t,"labels","absoluteDifference"),o=Ht(e,"predictions","absoluteDifference"),a=null;null!=n&&(a=Ht(n,"weights","absoluteDifference")),w(i.shape,o.shape,"Error in absoluteDifference: ");var s=i.sub(o).abs();return sc(s,a,r)}}),sc=xe({computeWeightedLoss_:function(t,e,n){void 0===n&&(n=ic.SUM_BY_NONZERO_WEIGHTS);var r=Ht(t,"losses","computeWeightedLoss"),i=null;null!=e&&(i=Ht(e,"weights","computeWeightedLoss"));var o=null==i?r:r.mul(i);if(n===ic.NONE)return o;if(n===ic.SUM)return o.sum();if(n===ic.MEAN){if(null==i)return o.mean();var a=r.size/i.size,s=o.sum().div(i.sum());return a>1?s.div(Ce(a)):s}if(n===ic.SUM_BY_NONZERO_WEIGHTS){if(null==i)return o.sum().div(Ce(r.size));var u=i.mul(ke(r.shape)).notEqual(Ce(0)).sum().toFloat();return o.sum().div(u)}throw Error("Unknown reduction: "+n)}}),uc=xe({cosineDistance_:function(t,e,n,r,i){void 0===i&&(i=ic.SUM_BY_NONZERO_WEIGHTS);var o=Ht(t,"labels","cosineDistance"),a=Ht(e,"predictions","cosineDistance"),s=null;null!=r&&(s=Ht(r,"weights","cosineDistance")),w(o.shape,a.shape,"Error in cosineDistance: ");var u=Ce(1).sub(o.mul(a).sum(n,!0));return sc(u,s,i)}}),cc=xe({hingeLoss_:function(t,e,n,r){void 0===r&&(r=ic.SUM_BY_NONZERO_WEIGHTS);var i=Ht(t,"labels","hingeLoss"),o=Ht(e,"predictions","hingeLoss"),a=null;null!=n&&(a=Ht(n,"weights","hingeLoss")),w(i.shape,o.shape,"Error in hingeLoss: ");var s=Ce(1);i=Ce(2).mul(i).sub(s);var u=s.sub(i.mul(o)).relu();return sc(u,a,r)}}),lc=xe({huberLoss_:function(t,e,n,r,i){void 0===r&&(r=1),void 0===i&&(i=ic.SUM_BY_NONZERO_WEIGHTS);var o=Ht(t,"labels","huberLoss"),a=Ht(e,"predictions","huberLoss"),s=null;null!=n&&(s=Ht(n,"weights","huberLoss")),w(o.shape,a.shape,"Error in huberLoss: ");var u=Ce(r),c=a.sub(o).abs(),l=gu(c,u),f=c.sub(l),h=Ce(.5).mul(l.square()).add(u.mul(f));return sc(h,s,i)}}),fc=xe({logLoss_:function(t,e,n,r,i){void 0===r&&(r=1e-7),void 0===i&&(i=ic.SUM_BY_NONZERO_WEIGHTS);var o=Ht(t,"labels","logLoss"),a=Ht(e,"predictions","logLoss"),s=null;null!=n&&(s=Ht(n,"weights","logLoss")),w(o.shape,a.shape,"Error in logLoss: ");var u=Ce(1),c=Ce(r),l=o.mul(a.add(c).log()).neg().sub(u.sub(o).mul(u.sub(a).add(c).log()));return sc(l,s,i)}}),hc=xe({meanSquaredError_:function(t,e,n,r){void 0===r&&(r=ic.SUM_BY_NONZERO_WEIGHTS);var i=Ht(t,"labels","meanSquaredError"),o=Ht(e,"predictions","meanSquaredError"),a=null;null!=n&&(a=Ht(n,"weights","meanSquaredError")),w(i.shape,o.shape,"Error in meanSquaredError: ");var s=i.squaredDifference(o);return sc(s,a,r)}}),pc=xe({sigmoidCrossEntropy_:function(t,e,n,r,i){void 0===r&&(r=0),void 0===i&&(i=ic.SUM_BY_NONZERO_WEIGHTS);var o=Ht(t,"multiClassLabels","sigmoidCrossEntropy"),a=Ht(e,"logits","sigmoidCrossEntropy"),s=null;if(null!=n&&(s=Ht(n,"weights","sigmoidCrossEntropy")),w(o.shape,a.shape,"Error in sigmoidCrossEntropy: "),r>0){var u=Ce(r),c=Ce(1),l=Ce(.5);o=o.mul(c.sub(u)).add(l.mul(u))}var f=function(t,e){var n=Ht(t,"labels","sigmoidCrossEntropyWithLogits"),r=Ht(e,"logits","sigmoidCrossEntropyWithLogits");w(n.shape,r.shape,"Error in sigmoidCrossEntropyWithLogits: ");var i=r.relu(),o=r.mul(n),a=r.abs().neg().exp().log1p();return i.sub(o).add(a)}(o,a);return sc(f,s,i)}}),dc=xe({softmaxCrossEntropy_:function(t,e,n,r,i){void 0===r&&(r=0),void 0===i&&(i=ic.SUM_BY_NONZERO_WEIGHTS);var o=Ht(t,"onehotLabels","softmaxCrossEntropy"),a=Ht(e,"logits","softmaxCrossEntropy"),s=null;if(null!=n&&(s=Ht(n,"weights","softmaxCrossEntropy")),w(o.shape,a.shape,"Error in softmaxCrossEntropy: "),r>0){var u=Ce(r),c=Ce(1),l=Ce(o.shape[1]);o=o.mul(c.sub(u)).add(u.div(l))}var f=function(t,e,n){if(void 0===n&&(n=-1),-1===n&&(n=e.rank-1),n!==e.rank-1)throw Error("Softmax cross entropy along a non-last dimension is not yet supported. Labels / logits was rank "+e.rank+" and dim was "+n);return Xt(function(t,e,r){var i=e.logSumExp([n],!0),o=e.toFloat().sub(i);return r([t,o]),{value:o.mul(t).neg().sum([n]),gradFunc:function(t,e){var r=e[0],i=e[1],o=oe(t.shape,[n]);return[t.reshape(o).mul(r.toFloat().sub(i.exp())),t.reshape(o).mul(i.exp().sub(r.toFloat()))]}}})(t,e)}(o,a);return sc(f,s,i)}}),mc=Object.freeze({get Reduction(){return ic},absoluteDifference:ac,computeWeightedLoss:sc,cosineDistance:uc,hingeLoss:cc,huberLoss:lc,logLoss:fc,meanSquaredError:hc,sigmoidCrossEntropy:pc,softmaxCrossEntropy:dc});function gc(t,e){return void 0===e&&(e=!1),Gt.engine.tidy(function(){if(2!==t.shape.length)throw new Error("qr2d() requires a 2D Tensor, but got a "+t.shape.length+"D Tensor.");for(var n=t.shape[0],r=t.shape[1],i=No(n),o=t.clone(),a=Ie([[1]],[1,1]),s=a.clone(),u=n>=r?r:n,c=function(t){var e,u=o,c=s,l=i;e=Gt.engine.tidy(function(){var e=o.slice([t,t],[n-t,1]),u=e.norm(),c=o.slice([t,t],[1,1]),l=c.sign().neg(),f=c.sub(l.mul(u)),h=e.div(f);s=1===h.shape[0]?a.clone():a.concat(h.slice([1,0],[h.shape[0]-1,h.shape[1]]),0);var p=l.matMul(f).div(u).neg(),d=o.slice([t,0],[n-t,r]),m=p.mul(s);o=0===t?d.sub(m.matMul(s.transpose().matMul(d))):o.slice([0,0],[t,r]).concat(d.sub(m.matMul(s.transpose().matMul(d))),0);var g=i.slice([0,t],[n,i.shape[1]-t]);return i=0===t?g.sub(g.matMul(s).matMul(m.transpose())):i.slice([0,0],[n,t]).concat(g.sub(g.matMul(s).matMul(m.transpose())),1),[s,o,i]}),s=e[0],o=e[1],i=e[2],$t([u,c,l])},l=0;lr&&(i=i.slice([0,0],[n,r]),o=o.slice([0,0],[r,r])),[i,o]})}var vc=xe({gramSchmidt_:function(t){var e;if(Array.isArray(t)){e=!1,b(null!=t&&t.length>0,function(){return"Gram-Schmidt process: input must not be null, undefined, or empty"});for(var n=t[0].shape[0],r=function(e){b(t[e].shape[0]===n,function(){return"Gram-Schmidt: Non-unique lengths found in the input vectors: ("+t[e].shape[0]+" vs. "+n+")"})},i=1;i0)for(var n=0;n= 2, but got rank "+t.rank);if(2===t.rank)return gc(t,e);var n=t.shape.slice(0,t.shape.length-2).reduce(function(t,e){return t*e}),r=[],i=[];return Qo(t.reshape([n,t.shape[t.shape.length-2],t.shape[t.shape.length-1]]),0).forEach(function(t){var n=gc(t,e),o=n[0],a=n[1];r.push(o),i.push(a)}),[$o(r,0).reshape(t.shape),$o(i,0).reshape(t.shape)]}}),bc=Object.freeze({gramSchmidt:vc,qr:yc});function wc(t,e,n,r,i){null==r&&(r=.5),null==i&&(i=Number.NEGATIVE_INFINITY);var o=t.shape[0];return n=Math.min(n,o),b(0<=r&&r<=1,function(){return"iouThreshold must be in [0, 1], but was '"+r+"'"}),b(2===t.rank,function(){return"boxes must be a 2D tensor, but was of rank '"+t.rank+"'"}),b(4===t.shape[1],function(){return"boxes must have 4 columns, but 2nd dimension was "+t.shape[1]}),b(1===e.rank,function(){return"scores must be a 1D tensor"}),b(e.shape[0]===o,function(){return"scores has incompatible shape with boxes. Expected "+o+", but was "+e.shape[0]}),{maxOutputSize:n,iouThreshold:r,scoreThreshold:i}}var xc=xe({resizeBilinear_:function(t,e,n){void 0===n&&(n=!1);var r=Ht(t,"images","resizeBilinear");b(3===r.rank||4===r.rank,function(){return"Error in resizeBilinear: x must be rank 3 or 4, but got rank "+r.rank+"."}),b(2===e.length,function(){return"Error in resizeBilinear: new shape must 2D, but got shape "+e+"."});var i=r,o=!1;3===r.rank&&(o=!0,i=r.as4D(1,r.shape[0],r.shape[1],r.shape[2]));var a=e[0],s=e[1],u=Gt.engine.runKernel(function(t,e){return e([i]),t.resizeBilinear(i,a,s,n)},{batchImages:i},function(t,e){return{batchImages:function(){return Gt.engine.runKernel(function(r){return r.resizeBilinearBackprop(t,e[0],n)},{})}}});return o?u.as3D(u.shape[1],u.shape[2],u.shape[3]):u}}),_c=xe({resizeNearestNeighbor_:function(t,e,n){void 0===n&&(n=!1);var r=Ht(t,"images","resizeNearestNeighbor");b(3===r.rank||4===r.rank,function(){return"Error in resizeNearestNeighbor: x must be rank 3 or 4, but got rank "+r.rank+"."}),b(2===e.length,function(){return"Error in resizeNearestNeighbor: new shape must 2D, but got shape "+e+"."}),b("float32"===r.dtype||"int32"===r.dtype,function(){return"`images` must have `int32` or `float32` as dtype"});var i=r,o=!1;3===r.rank&&(o=!0,i=r.as4D(1,r.shape[0],r.shape[1],r.shape[2]));var a=e[0],s=e[1],u=Gt.engine.runKernel(function(t,e){return e([i]),t.resizeNearestNeighbor(i,a,s,n)},{batchImages:i},function(t,e){return{batchImages:function(){return Gt.engine.runKernel(function(r){return r.resizeNearestNeighborBackprop(t,e[0],n)},{})}}});return o?u.as3D(u.shape[1],u.shape[2],u.shape[3]):u}}),Sc=xe({nonMaxSuppression_:function(t,e,n,r,i){void 0===r&&(r=.5),void 0===i&&(i=Number.NEGATIVE_INFINITY);var o=Ht(t,"boxes","nonMaxSuppression"),a=Ht(e,"scores","nonMaxSuppression"),s=wc(o,a,n,r,i);return n=s.maxOutputSize,r=s.iouThreshold,i=s.scoreThreshold,Gt.engine.runKernel(function(t){return t.nonMaxSuppression(o,a,n,r,i)},{$boxes:o})}}),Ec=function(t,e,n,r,i){return void 0===r&&(r=.5),void 0===i&&(i=Number.NEGATIVE_INFINITY),c(this,void 0,void 0,function(){var o,a,s,u,c,f;return l(this,function(l){switch(l.label){case 0:return o=Ht(t,"boxes","nonMaxSuppressionAsync"),a=Ht(e,"scores","nonMaxSuppressionAsync"),s=wc(o,a,n,r,i),n=s.maxOutputSize,r=s.iouThreshold,i=s.scoreThreshold,[4,o.data()];case 1:return u=l.sent(),[4,a.data()];case 2:return c=l.sent(),f=qe(u,c,n,r,i),o!==t&&o.dispose(),a!==e&&a.dispose(),[2,f]}})})},Tc=xe({cropAndResize_:function(t,e,n,r,i,o){var a=Ht(t,"image","cropAndResize","float32"),s=Ht(e,"boxes","cropAndResize","float32"),u=Ht(n,"boxInd","cropAndResize","int32");i=i||"bilinear",o=o||0;var c=s.shape[0];return b(4===a.rank,function(){return"Error in cropAndResize: image must be rank 4,but got rank "+a.rank+"."}),b(2===s.rank&&4===s.shape[1],function(){return"Error in cropAndResize: boxes must be have size ["+c+",4] but had shape "+s.shape+"."}),b(1===u.rank&&u.shape[0]===c,function(){return"Error in cropAndResize: boxInd must be have size ["+c+"] but had shape "+s.shape+"."}),b(2===r.length,function(){return"Error in cropAndResize: cropSize must be of length 2, but got length "+r.length+"."}),b(r[0]>=1&&r[1]>=1,function(){return"cropSize must be atleast [1,1], but was "+r}),b("bilinear"===i||"nearest"===i,function(){return"method must be bilinear or nearest, but was "+i}),Gt.engine.runKernel(function(t,e){return t.cropAndResize(a,s,u,r,i,o)},{$image:a,$boxes:s})}}),Mc=Object.freeze({resizeBilinear:xc,resizeNearestNeighbor:_c,nonMaxSuppression:Sc,nonMaxSuppressionAsync:Ec,cropAndResize:Tc});var Ac=xe({matMul_:function(t,e,n,r,i,o){var a;void 0===n&&(n=!1),void 0===r&&(r=!1),void 0===o&&(o="linear");var s=Ht(t,"a","fused matMul"),u=Ht(e,"b","fused matMul");a=Et(s,u),s=a[0],u=a[1];var c=n?s.shape[s.rank-2]:s.shape[s.rank-1],l=r?u.shape[u.rank-1]:u.shape[u.rank-2],f=n?s.shape[s.rank-1]:s.shape[s.rank-2],h=r?u.shape[u.rank-2]:u.shape[u.rank-1],p=s.shape.slice(0,-2),d=u.shape.slice(0,-2),m=S(p),g=S(d);b(s.rank>=2&&u.rank>=2&&s.rank===u.rank,function(){return"Error in fused matMul: inputs must have the same rank of at least 2, got ranks "+s.rank+" and "+u.rank+"."}),b(E(p,d),function(){return"Error in fused matMul: outer dimensions ("+p+") and ("+d+") of Tensors with shapes "+s.shape+" and "+u.shape+" must match."}),b(c===l,function(){return"Error in fused matMul: inner shapes ("+c+") and ("+l+") of Tensors with shapes "+s.shape+" and "+u.shape+" and transposeA="+n+" and transposeB="+r+" must match."});var v,y=s.shape.slice(0,-2).concat([f,h]),w=n?s.as3D(m,c,f):s.as3D(m,f,c),x=r?u.as3D(g,h,l):u.as3D(g,l,h);null!=i&&en(y,(v=Et(v=Ht(i,"bias","fused matMul"),s)[0]).shape);var _={$a:w,$b:x};return null!=i&&(_.$bias=v),Gt.engine.runKernel(function(t,e){var i=t.fusedBatchMatMul(w,x,n,r,v,o);return e([w,x,i]),i},_,function(t,e){var a,s=e[0],u=e[1],c=e[2];if(null==o||"linear"===o)a=t;else{if("relu"!==o)throw new Error("Gradient for activation "+o+" has not been implemented yet.");a=t.mul(c.step())}var l={};return null!=i&&(l={$bias:function(){var t=a,e=tn(v.shape,a.shape);return e.length>0&&(t=t.sum(e)),t.reshape(v.shape)}}),n||r?!n&&r?Object.assign({$a:function(){return a.matMul(u,!1,!1)},$b:function(){return a.matMul(s,!0,!1)}},l):n&&!r?Object.assign({$a:function(){return u.matMul(a,!1,!0)},$b:function(){return s.matMul(a,!1,!1)}},l):Object.assign({$a:function(){return u.matMul(a,!0,!0)},$b:function(){return a.matMul(s,!0,!0)}},l):Object.assign({$a:function(){return a.matMul(u,!1,!0)},$b:function(){return s.matMul(a,!0,!1)}},l)}).reshape(y)}}),Cc=Object.freeze({matMul:Ac}),Pc=Object.freeze({image:Mc,linalg:bc,losses:mc,spectral:nc,fused:Cc,op:xe,batchNormalization2d:qa,batchNormalization3d:Xa,batchNormalization4d:Ya,batchNormalization:Ka,batchNorm:$a,batchNorm2d:Ja,batchNorm3d:Za,batchNorm4d:Qa,complex:Ee,real:Te,imag:Me,concat:ho,concat1d:po,concat2d:mo,concat3d:go,concat4d:vo,split:yo,conv1d:hs,conv2d:ps,conv3d:ds,conv2dDerFilter:ms,depthwiseConv2d:gs,separableConv2d:vs,conv2dTranspose:ys,matMul:bs,dot:ws,outerProduct:xs,reverse:_s,reverse1d:Ss,reverse2d:Es,reverse3d:Ts,reverse4d:Ms,maxPool:Ps,avgPool:Is,pool:Os,slice:Rs,slice1d:ks,slice2d:Ls,slice3d:Ds,slice4d:Ns,abs:oa,acos:aa,acosh:sa,asin:ua,asinh:ca,atan:la,atanh:fa,ceil:ha,clipByValue:pa,cos:da,cosh:ma,erf:ga,exp:va,expm1:ya,floor:ba,log:wa,log1p:xa,logSigmoid:_a,neg:Sa,reciprocal:Ea,round:Ta,rsqrt:Ma,sigmoid:Aa,sign:Ca,isNaN:Pa,isInf:Ia,isFinite:Oa,sin:Ra,sinh:ka,softplus:La,sqrt:Da,square:Na,step:Ba,tan:Fa,tanh:Ua,all:Fs,any:Us,argMax:js,argMin:zs,logSumExp:Gs,max:Vs,mean:Ws,min:Hs,moments:qs,sum:Xs,prod:Ys,equal:Ks,equalStrict:$s,greater:Js,greaterEqual:Zs,greaterEqualStrict:Qs,greaterStrict:tu,less:eu,lessEqual:nu,lessEqualStrict:ru,lessStrict:iu,notEqual:ou,notEqualStrict:au,add:su,addN:uu,addStrict:cu,atan2:lu,div:fu,divStrict:hu,floorDiv:pu,maximum:du,maximumStrict:mu,minimum:gu,minimumStrict:vu,mod:yu,modStrict:bu,mul:wu,mulStrict:xu,pow:_u,powStrict:Su,squaredDifference:Eu,squaredDifferenceStrict:Tu,sub:Mu,subStrict:Au,elu:Lu,leakyRelu:Du,prelu:Nu,relu:Bu,selu:Fu,logicalAnd:Cu,logicalNot:Pu,logicalOr:Iu,logicalXor:Ou,where:Ru,whereAsync:ku,buffer:Po,print:function(t,e){void 0===e&&(e=!1),console.log(t.toString(e))},batchToSpaceND:Io,cast:Oo,clone:Ro,cumsum:ko,depthToSpace:Lo,expandDims:Do,eye:No,multinomial:Bo,oneHot:Fo,pad:Uo,pad1d:jo,pad2d:zo,pad3d:Go,pad4d:Vo,rand:Wo,randomNormal:Ho,randomUniform:qo,reshape:Xo,spaceToBatchND:Yo,squeeze:Ko,stack:$o,tile:Jo,truncatedNormal:Zo,unstack:Qo,setdiff1dAsync:ta,fill:De,linspace:function(t,e,n){if(0===n)throw new Error("Cannot request zero samples");var r=(e-t)/(n-1),i=J(n,"float32");i[0]=t;for(var o=1;oh&&(h=m,p=d)}u[l]=p}return a},t.prototype.cumsum=function(t,e,n,r){if(this.assertNotComplex(t,"cumsum"),e!==t.rank-1)throw new Error("backend.cumsum in CPU expects an inner-most axis="+(t.rank-1)+" but got axis="+e);for(var i=_t(t.dtype,"int32"),o=Le(t.shape,i),a=o.dataSync(),s=t.dataSync(),u=t.shape[t.rank-1],c=r?function(t,e){return t+u-e-1}:function(t,e){return t+e},l=0;le?1:0})},t.prototype.greaterEqual=function(t,e){return this.assertNotComplex([t,e],"greaterEqual"),this.broadcastedBinaryOp(t,e,"bool",function(t,e){return t>=e?1:0})},t.prototype.logicalNot=function(t){this.assertNotComplex(t,"logicalNot");for(var e=t.dataSync(),n=new Uint8Array(e.length),r=0;r1||1===e.rank?1:e.shape[1],l=0;l=0&&e>=0?n:(n+e)%e})},t.prototype.max=function(t,e){this.assertNotComplex(t,"max"),ae("max",e,t.rank);for(var n=ie(t.shape,e),r=n[0],i=n[1],o=Le(r,t.dtype),a=S(i),s=o.dataSync(),u=t.dataSync(),c=0;cf&&(f=p)}s[c]=f}return o},t.prototype.maximum=function(t,e){return this.assertNotComplex([t,e],"maximum"),this.broadcastedBinaryOp(t,e,t.dtype,function(t,e){return Math.max(t,e)})},t.prototype.all=function(t,e){this.assertNotComplex(t,"all"),ae("all",e,t.rank);for(var n=ie(t.shape,e),r=n[0],i=n[1],o=Le(r,t.dtype),a=S(i),s=o.dataSync(),u=t.dataSync(),c=0;c0?n[r]=1:n[r]=0;return pt.make(t.shape,{values:n})},t.prototype.isNaN=function(t){this.assertNotComplex(t,"x");for(var e=t.dataSync(),n=new Uint8Array(e.length),r=0;r.5?n[r]=Math.ceil(e[r]):n[r]=i%2==0?i:i+1}return pt.make(t.shape,{values:n})},t.prototype.exp=function(t){this.assertNotComplex(t,"exp");for(var e=t.dataSync(),n=new Float32Array(e.length),r=0;r=0?i:Math.exp(i)-1}return pt.make(t.shape,{values:e})},t.prototype.eluDer=function(t,e){this.assertNotComplex([t,e],"eluDer");for(var n=new Float32Array(e.size),r=e.dataSync(),i=t.dataSync(),o=0;o=1?i[o]:i[o]*(a+1)}return pt.make(e.shape,{values:n})},t.prototype.selu=function(t){this.assertNotComplex(t,"selu");for(var e=Ki,n=$i,r=new Float32Array(t.size),i=t.dataSync(),o=0;o=0?n*a:e*(Math.exp(a)-1)}return pt.make(t.shape,{values:r})},t.prototype.clip=function(t,e,n){this.assertNotComplex(t,"clip");for(var r=new Float32Array(t.size),i=t.dataSync(),o=0;on?n:a-e,s=r[i]0?1:e}return pt.make(t.shape,{values:n})},t.prototype.conv2d=function(t,e,n){this.assertNotComplex([t,e],"conv2d");for(var r=n.filterHeight,i=n.filterWidth,o=n.dilationHeight,a=n.dilationWidth,s=n.padInfo.left,u=n.padInfo.top,c=Po(n.outShape,t.dtype),l=t.dataSync(),f=e.dataSync(),h=c.values,p=0;p=n.inHeight))for(var x=b*e.strides[0],_=d+w*t.strides[1],S=0;S=n.inWidth))for(var C=x+M*e.strides[1],P=_+A*n.inChannels,I=C,O=0;O=n.inDepth))for(var E=_*e.strides[0],T=v+S*t.strides[1],M=0;M=n.inHeight))for(var O=E+P*e.strides[1],R=T+I*t.strides[2],k=0;k=n.inWidth))for(var F=O+N*e.strides[2],U=R+B*n.inChannels,j=F,z=0;z=n.inHeight))for(var _=w*e.strides[0],S=m+x*t.strides[1],E=0;E=n.inWidth))for(var P=_+A*e.strides[1],I=S+C*n.inChannels,O=T,R=P,k=0;kO?O=B:"avg"===n&&(R+=B,k++)}if(isNaN(O))break}d[M+A*v+x]="avg"===n?R/k:O}return p.toTensor()},t.prototype.maxPool=function(t,e){return this.pool(t,e,"max")},t.prototype.maxPoolPositions=function(t,e){for(var n=Po(e.outShape,"int32"),r=e.strideHeight,i=e.strideWidth,o=e.dilationHeight,a=e.dilationWidth,s=e.effectiveFilterHeight,u=e.effectiveFilterWidth,c=e.padInfo.top,l=e.padInfo.left,f=t.bufferSync(),h=0;h_&&(_=C,S=T*u+A)}n.set(S,h,d,y,p)}}return n.toTensor()},t.prototype.maxPoolBackprop=function(t,e,n,r){this.assertNotComplex([e,n],"maxPoolBackprop");for(var i=this.maxPoolPositions(e,r),o=r.strideHeight,a=r.strideWidth,s=r.dilationHeight,u=r.dilationWidth,c=r.effectiveFilterHeight,l=r.effectiveFilterWidth,f=l-1-r.padInfo.left,h=c-1-r.padInfo.top,p=Po(e.shape,"float32"),d=i.bufferSync(),m=t.bufferSync(),g=0;g=r.outHeight||Math.floor(E)!==E))for(var T=0;T=r.outWidth||Math.floor(M)!==M)){var A=c*l-1-d.get(g,E,M,v)===S*l+T?1:0;0!==A&&(_+=m.get(g,E,M,v)*A)}}}p.set(_,g,y,b,v)}return p.toTensor()},t.prototype.avgPoolBackprop=function(t,e,n){this.assertNotComplex([t,e],"avgPoolBackprop");for(var r=n.strideHeight,i=n.strideWidth,o=n.filterHeight,a=n.filterWidth,s=n.dilationHeight,u=n.dilationWidth,c=n.effectiveFilterHeight,l=n.effectiveFilterWidth,f=l-1-n.padInfo.left,h=c-1-n.padInfo.top,p=Po(e.shape,"float32"),d=1/(o*a),m=t.bufferSync(),g=0;g=n.outHeight||Math.floor(E)!==E))for(var T=0;T=n.outWidth||Math.floor(M)!==M||(_+=m.get(g,E,M,v))}}p.set(_*d,g,y,b,v)}return p.toTensor()},t.prototype.cast=function(t,e){return je(t,e,this)},t.prototype.reshape=function(t,e){return ze(t,e)},t.prototype.avgPool=function(t,e){return this.assertNotComplex(t,"avgPool"),this.pool(t,e,"avg").toFloat()},t.prototype.resizeBilinear=function(t,e,n,r){this.assertNotComplex(t,"resizeBilinear");for(var i=t.shape,o=i[0],a=i[1],s=i[2],u=i[3],c=t.dataSync(),l=new Float32Array(S([o,e,n,u])),f=[r&&e>1?a-1:a,r&&n>1?s-1:s],h=[r&&e>1?e-1:e,r&&n>1?n-1:n],p=0,d=f[0]/h[0],m=f[1]/h[1],g=0;g1?o-1:o,n&&l>1?a-1:a],p=[n&&c>1?c-1:c,n&&l>1?l-1:l],d=h[0]/p[0],m=h[1]/p[1],g=t.dataSync(),v=0,y=0;y1?a-1:a,r&&n>1?s-1:s],h=[r&&e>1?e-1:e,r&&n>1?n-1:n],p=f[0]/h[0],d=f[1]/h[1],m=0,g=0;g1?o-1:o,n&&l>1?a-1:a],d=[n&&c>1?c-1:c,n&&l>1?l-1:l],m=p[0]/d[0],g=p[1]/d[1],v=1/m,y=1/g,b=2*Math.ceil(v)+2,w=2*Math.ceil(y)+2,x=0;x=c)){var D=_+L*t.strides[1],N=L*m;if(S===Math.min(o-1,n?Math.round(N):Math.floor(N)))for(var B=0;B=l)){var U=D+F*t.strides[2],j=F*g;A===Math.min(a-1,n?Math.round(j):Math.floor(j))&&(R+=h[U+O])}}}}f[C+O]=R}return Re(f,e.shape,e.dtype)},t.prototype.batchNormalization=function(t,e,n,r,i,o){this.assertNotComplex([t,e,n,i,o],"batchNorm");for(var a=t.dataSync(),s=e.dataSync(),u=n.dataSync(),c=i?i.dataSync():new Float32Array([1]),l=o?o.dataSync():new Float32Array([0]),f=new Float32Array(a.length),h=l.length,p=c.length,d=u.length,m=s.length,g=0,v=0,y=0,b=0,w=0;w=h&&(g=0),v>=m&&(v=0),y>=p&&(y=0),b>=d&&(b=0);return Re(f,t.shape)},t.prototype.localResponseNormalization4D=function(t,e,n,r,i){this.assertNotComplex(t,"localResponseNormalization4D");var o=t.shape[3],a=o-1,s=t.dataSync(),u=t.size,c=new Float32Array(u);function l(t){for(var n=t%o,r=t-n+Math.max(0,n-e),i=t-n+Math.min(n+e,a),u=0;r<=i;r++){var c=s[r];u+=c*c}return u}for(var f=0;f=0&&o[a]1,function(){return"blockSize should be > 1 for depthToSpace, but was: "+e});for(var r=t.shape[0],i=t.shape[1],o=t.shape[2],a=t.shape[3],s=i*e,u=o*e,c=a/(e*e),l=t.dataSync(),f=new Float32Array(r*s*u*c),h=0,p=0;p=s))for(var A=h>1?(E-_)*(u-1)/(h-1):0,C=p>1?(T-S)*(c-1)/(p-1):0,P=0;P1?_*(u-1)+P*A:.5*(_+E)*(u-1);if(I<0||I>u-1)for(var O=0;O1?S*(c-1)+O*C:.5*(S+T)*(c-1))<0||H>c-1)for(R=0;R1?S*(c-1)+O*C:.5*(S+T)*(c-1))<0||H>c-1)for(R=0;R=t.size/s)throw new Error("Invalid indices: "+p+" does not index into "+t.shape);for(var v=0;v=r/i)throw new Error("Invalid indices: "+m+" does not index into "+n);for(var b=0;b0,function(){return"scheme must not be an empty string."});var r=t.getInstance();b(null==r.managers[e],function(){return"A model store manager is already registered for scheme '"+e+"'."}),r.managers[e]=n},t.getManager=function(t){var e=this.getInstance().managers[t];if(null==e)throw new Error("Cannot find model manager for scheme '"+t+"'");return e},t.getSchemes=function(){return Object.keys(this.getInstance().managers)},t}();function Gc(t){if(-1===t.indexOf(jc))throw new Error("The url string provided does not contain a scheme. Supported schemes are: "+zc.getSchemes().join(","));return{scheme:t.split(jc)[0],path:t.split(jc)[1]}}function Vc(t,e,n){return void 0===n&&(n=!1),c(this,void 0,void 0,function(){var r,i,o,a,s,u,c,f,h;return l(this,function(l){switch(l.label){case 0:return b(t!==e,function(){return"Old path and new path are the same: '"+t+"'"}),b((r=Uc.getLoadHandlers(t)).length>0,function(){return"Copying failed because no load handler is found for source URL "+t+"."}),b(r.length<2,function(){return"Copying failed because more than one ("+r.length+") load handlers for source URL "+t+"."}),i=r[0],b((o=Uc.getSaveHandlers(e)).length>0,function(){return"Copying failed because no save handler is found for destination URL "+e+"."}),b(o.length<2,function(){return"Copying failed because more than one ("+r.length+") save handlers for destination URL "+e+"."}),a=o[0],s=Gc(t).scheme,u=Gc(t).path,c=s===Gc(t).scheme,[4,i.load()];case 1:return f=l.sent(),n&&c?[4,zc.getManager(s).removeModel(u)]:[3,3];case 2:l.sent(),l.label=3;case 3:return[4,a.save(f)];case 4:return h=l.sent(),!n||c?[3,6]:[4,zc.getManager(s).removeModel(u)];case 5:l.sent(),l.label=6;case 6:return[2,h.modelArtifactsInfo]}})})}var Wc="models_store",Hc="model_info_store";function qc(){if(!Gt.get("IS_BROWSER"))throw new Error("Failed to obtain IndexedDB factory because the current environmentis not a web browser.");var t=window,e=t.indexedDB||t.mozIndexedDB||t.webkitIndexedDB||t.msIndexedDB||t.shimIndexedDB;if(null==e)throw new Error("The current browser does not appear to support IndexedDB.");return e}function Xc(t){var e=t.result;e.createObjectStore(Wc,{keyPath:"modelPath"}),e.createObjectStore(Hc,{keyPath:"modelPath"})}var Yc=function(){function t(t){if(this.indexedDB=qc(),null==t||!t)throw new Error("For IndexedDB, modelPath must not be null, undefined or empty.");this.modelPath=t}return t.prototype.save=function(t){return c(this,void 0,void 0,function(){return l(this,function(e){if(t.modelTopology instanceof ArrayBuffer)throw new Error("BrowserLocalStorage.save() does not support saving model topology in binary formats yet.");return[2,this.databaseAction(this.modelPath,t)]})})},t.prototype.load=function(){return c(this,void 0,void 0,function(){return l(this,function(t){return[2,this.databaseAction(this.modelPath)]})})},t.prototype.databaseAction=function(t,e){var n=this;return new Promise(function(t,r){var i=n.indexedDB.open("tensorflowjs",1);i.onupgradeneeded=function(){return Xc(i)},i.onsuccess=function(){var o=i.result;if(null==e){var a=o.transaction(Wc,"readonly"),s=a.objectStore(Wc).get(n.modelPath);s.onsuccess=function(){if(null==s.result)return o.close(),r(new Error("Cannot find model with path '"+n.modelPath+"' in IndexedDB."));t(s.result.modelArtifacts)},s.onerror=function(t){return o.close(),r(s.error)},a.oncomplete=function(){return o.close()}}else{var u,c=Fc(e),l=o.transaction(Hc,"readwrite"),f=l.objectStore(Hc),h=f.put({modelPath:n.modelPath,modelArtifactsInfo:c});h.onsuccess=function(){var i=(u=o.transaction(Wc,"readwrite")).objectStore(Wc).put({modelPath:n.modelPath,modelArtifacts:e,modelArtifactsInfo:c});i.onsuccess=function(){return t({modelArtifactsInfo:c})},i.onerror=function(t){var e=(f=l.objectStore(Hc)).delete(n.modelPath);e.onsuccess=function(){return o.close(),r(i.error)},e.onerror=function(t){return o.close(),r(i.error)}}},h.onerror=function(t){return o.close(),r(h.error)},l.oncomplete=function(){null==u?o.close():u.oncomplete=function(){return o.close()}}}},i.onerror=function(t){return r(i.error)}})},t.URL_SCHEME="indexeddb://",t}(),Kc=function(t){return Gt.get("IS_BROWSER")&&!Array.isArray(t)&&t.startsWith(Yc.URL_SCHEME)?function(t){return new Yc(t)}(t.slice(Yc.URL_SCHEME.length)):null};Uc.registerSaveRouter(Kc),Uc.registerLoadRouter(Kc);var $c=function(){function t(){this.indexedDB=qc()}return t.prototype.listModels=function(){return c(this,void 0,void 0,function(){var t=this;return l(this,function(e){return[2,new Promise(function(e,n){var r=t.indexedDB.open("tensorflowjs",1);r.onupgradeneeded=function(){return Xc(r)},r.onsuccess=function(){var t=r.result,i=t.transaction(Hc,"readonly"),o=i.objectStore(Hc).getAll();o.onsuccess=function(){for(var t={},n=0,r=o.result;n0,function(){return"promises must be a none empty array"})}(t),function(t,e){b(t>=0&&t<=1,function(){return"Progress fraction must be in range [0, 1], but got startFraction "+t}),b(e>=0&&e<=1,function(){return"Progress fraction must be in range [0, 1], but got endFraction "+e}),b(e>=t,function(){return"startFraction must be no more than endFraction, but got startFraction "+t+" and endFraction "+e})}(n=null==n?0:n,r=null==r?1:r);var i=0;return Promise.all(t.map(function(o){return o.then(function(o){var a=n+ ++i/t.length*(r-n);return e(a),o}),o}))}function ml(t,e){return c(this,void 0,void 0,function(){var n,r,i,o,a,s,u,c,f;return l(this,function(l){switch(l.label){case 0:return null==e&&(e={}),n=null==e.fetchFunc?fetch:e.fetchFunc,r=t.map(function(t){return n(t,e.requestInit)}),i=0,o=.5,null!=e.onProgress?[3,2]:[4,Promise.all(r)];case 1:return a=l.sent(),[3,4];case 2:return[4,dl(r,e.onProgress,i,o)];case 3:a=l.sent(),l.label=4;case 4:return s=a.map(function(t){return t.arrayBuffer()}),u=.5,c=1,null!=e.onProgress?[3,6]:[4,Promise.all(s)];case 5:return f=l.sent(),[3,8];case 6:return[4,dl(s,e.onProgress,u,c)];case 7:f=l.sent(),l.label=8;case 8:return[2,f]}})})}function gl(t){var e=this;return function(n,r,i){return void 0===r&&(r=""),c(e,void 0,void 0,function(){var e,o,a,s,u,c,f,h,p,d;return l(this,function(l){switch(l.label){case 0:if(e=n.map(function(){return!1}),o={},a=null!=i?i.map(function(){return!1}):[],s=[],n.forEach(function(t,n){var r=0;t.weights.forEach(function(t){var u="quantization"in t?t.quantization.dtype:t.dtype,c=Oc[u]*S(t.shape),l=function(){e[n]=!0,null==o[n]&&(o[n]=[]),o[n].push({manifestEntry:t,groupOffset:r,sizeBytes:c})};null!=i?i.forEach(function(e,n){e===t.name&&(l(),a[n]=!0)}):l(),s.push(t.name),r+=c})}),!a.every(function(t){return t}))throw u=i.filter(function(t,e){return!a[e]}),new Error("Could not find weights in manifest with names: "+u.join(", ")+". \nManifest JSON has weights with names: "+s.join(", ")+".");return c=e.reduce(function(t,e,n){return e&&t.push(n),t},[]),f=[],c.forEach(function(t){n[t].paths.forEach(function(t){var e=r+(r.endsWith("/")?"":"/")+t;f.push(e)})}),[4,t(f)];case 1:return h=l.sent(),p={},d=0,c.forEach(function(t){for(var e=n[t].paths.length,r=0,i=0;i0,function(){return"URL path for browserHTTPRequest must not be null, undefined or empty."}),Array.isArray(t)&&b(2===t.length,function(){return"URL paths for browserHTTPRequest must have a length of 2, (actual length is "+t.length+")."}),this.path=t,null!=e.requestInit&&null!=e.requestInit.body)throw new Error("requestInit is expected to have no pre-existing body, but has one.");this.requestInit=e.requestInit||{}}return t.prototype.save=function(t){return c(this,void 0,void 0,function(){var e,n,r,i;return l(this,function(o){switch(o.label){case 0:if(t.modelTopology instanceof ArrayBuffer)throw new Error("BrowserHTTPRequest.save() does not support saving model topology in binary formats yet.");return(e=Object.assign({method:this.DEFAULT_METHOD},this.requestInit)).body=new FormData,n=[{paths:["./model.weights.bin"],weights:t.weightSpecs}],r={modelTopology:t.modelTopology,format:t.format,generatedBy:t.generatedBy,convertedBy:t.convertedBy,weightsManifest:n},e.body.append("model.json",new Blob([JSON.stringify(r)],{type:"application/json"}),"model.json"),null!=t.weightData&&e.body.append("model.weights.bin",new Blob([t.weightData],{type:"application/octet-stream"}),"model.weights.bin"),[4,this.getFetchFunc()(this.path,e)];case 1:if((i=o.sent()).ok)return[2,{modelArtifactsInfo:Fc(t),responses:[i]}];throw new Error("BrowserHTTPRequest.save() failed due to HTTP response status "+i.status+".")}})})},t.prototype.load=function(){return c(this,void 0,void 0,function(){var t,e,n,r,i,o,a,s;return l(this,function(u){switch(u.label){case 0:return[4,this.getFetchFunc()(this.path,this.requestInit)];case 1:if(!(t=u.sent()).ok)throw new Error("Request to "+this.path+" failed with status code "+t.status+". Please verify this URL points to the model JSON of the model to load.");u.label=2;case 2:return u.trys.push([2,4,,5]),[4,t.json()];case 3:return e=u.sent(),[3,5];case 4:throw u.sent(),n="Failed to parse model JSON of response from "+this.path+".",this.path.endsWith(".pb")?n+=" Your path contains a .pb file extension. Support for .pb models have been removed in TensorFlow.js 1.0 in favor of .json models. You can re-convert your Python TensorFlow model using the TensorFlow.js 1.0 conversion scripts or you can convert your.pb models with the 'pb2json'NPM script in the tensorflow/tfjs-converter repository.":n+=" Please make sure the server is serving valid JSON for this request.",new Error(n);case 5:if(r=e.modelTopology,i=e.weightsManifest,null==r&&null==i)throw new Error("The JSON from HTTP path "+this.path+" contains neither model topology or manifest for weights.");return null==i?[3,7]:[4,this.loadWeights(i)];case 6:s=u.sent(),o=s[0],a=s[1],u.label=7;case 7:return[2,{modelTopology:r,weightSpecs:o,weightData:a}]}})})},t.prototype.loadWeights=function(t){return c(this,void 0,void 0,function(){var e,n,r,i,o,a,s,u,c,f,h;return l(this,function(l){switch(l.label){case 0:for(e=Array.isArray(this.path)?this.path[1]:this.path,n=function(t){var e=t.lastIndexOf("/"),n=t.lastIndexOf("?");return[t.substring(0,e)+"/",n>e?t.substring(n):""]}(e),r=n[0],i=n[1],o=this.weightPathPrefix||r,a=[],s=0,u=t;s0&&(t=u({weightSpecs:this.weightSpecs},t)),null!=this.weightData&&this.weightData.byteLength>0&&(t=u({weightData:this.weightData},t)),[2,t]})})},t}(),_l=function(){function t(t){this.saveHandler=t}return t.prototype.save=function(t){return c(this,void 0,void 0,function(){return l(this,function(e){return[2,this.saveHandler(t)]})})},t}();var Sl=Object.freeze({browserFiles:function(t){return new pl(t)},browserHTTPRequest:wl,concatenateArrayBuffers:Nc,decodeWeights:Rc,encodeWeights:function(t){return c(this,void 0,void 0,function(){var e,n,r,i;return l(this,function(o){switch(o.label){case 0:for(r in e=[],n=[],t){if("float32"!==(i=t[r]).dtype&&"int32"!==i.dtype&&"bool"!==i.dtype)throw new Error("Unsupported dtype in weight '"+r+"': "+i.dtype);e.push({name:r,shape:i.shape,dtype:i.dtype}),n.push(i.data())}return[4,Promise.all(n)];case 1:return[2,{data:kc(o.sent()),specs:e}]}})})},fromMemory:function(t,e,n){return new xl(t,e,n)},getLoadHandlers:function(t,e){return Uc.getLoadHandlers(t)},getModelArtifactsInfoForJSON:Fc,getSaveHandlers:function(t){return Uc.getSaveHandlers(t)},isHTTPScheme:yl,loadWeights:function(t,e,n,r){return void 0===e&&(e=""),c(this,void 0,void 0,function(){return l(this,function(i){return[2,gl(function(t){return ml(t,{requestInit:r})})(t,e,n)]})})},registerLoadRouter:function(t){return Uc.registerLoadRouter(t)},registerSaveRouter:function(t){return Uc.registerSaveRouter(t)},weightsLoaderFactory:gl,withSaveHandler:function(t){return new _l(t)},copyModel:function(t,e){return c(this,void 0,void 0,function(){return l(this,function(n){switch(n.label){case 0:return[4,Vc(t,e,!1)];case 1:return[2,n.sent()]}})})},listModels:function(){return c(this,void 0,void 0,function(){var t,e,n,r,i,o,a;return l(this,function(s){switch(s.label){case 0:t=zc.getSchemes(),e={},n=0,r=t,s.label=1;case 1:return n0&&Number.isInteger(n),function(){return"If provided, numClasses must be a positive integer, but got "+n}),b(1===r.rank,function(){return"Expected the rank of labels to be 1, but got "+r.rank}),b(1===i.rank,function(){return"Expected the rank of predictions to be 1, but got "+i.rank}),b(r.shape[0]===i.shape[0],function(){return"Mismatch in the number of examples: "+r.shape[0]+" vs. "+i.shape[0]+". Labels and predictions should have the same number of elements."}),b(n>0&&Number.isInteger(n),function(){return"numClasses is required to be a positive integer, but got "+n});var o=Fo(r.asType("int32"),n),a=Fo(i.asType("int32"),n);return o.transpose().matMul(a).asType("int32")}});Object.freeze({confusionMatrix:El});var Tl=xe({fromPixels_:function(t,e){if(void 0===e&&(e=3),e>4)throw new Error("Cannot construct Tensor with more than 4 channels from pixels.");return Gt.engine.fromPixels(t,e)}}),Ml=Object.freeze({toPixels:function(t,e){return c(this,void 0,void 0,function(){var n,r,i,o,a,s,u,c,f,h,p,d,m,g,v,y,b,w,x,_;return l(this,function(l){switch(l.label){case 0:if(n=Ht(t,"img","toPixels"),t instanceof pt||(n=n.toInt()),2!==n.rank&&3!==n.rank)throw new Error("toPixels only supports rank 2 or 3 tensors, got rank "+n.rank+".");if(r=n.shape.slice(0,2),i=r[0],o=r[1],(a=2===n.rank?1:n.shape[2])>4||2===a)throw new Error("toPixels only supports depth of size 1, 3 or 4 but got "+a);return s=n.min(),u=n.max(),[4,s.data()];case 1:return c=l.sent()[0],[4,u.data()];case 2:if(f=l.sent()[0],s.dispose(),u.dispose(),"float32"===n.dtype){if(c<0||f>1)throw new Error("Tensor values for a float32 Tensor must be in the range [0 - 1] but got range ["+c+" - "+f+"].")}else{if("int32"!==n.dtype)throw new Error("Unsupported type for toPixels: "+n.dtype+". Please use float32 or int32 tensors.");if(c<0||f>255)throw new Error("Tensor values for a int32 Tensor must be in the range [0 - 255] but got range ["+c+" - "+f+"].")}return[4,n.data()];case 3:for(h=l.sent(),p="float32"===n.dtype?255:1,d=new Uint8ClampedArray(o*i*4),m=0;m0,function(){return"Class being registered has an empty-string as its className, which is disallowed."}),Cl.register(t)}Object.freeze({Serializable:Al,SerializationMap:Cl,registerClass:Pl});function Il(t,e,n){return null==n&&(n=Gt.get("TEST_EPSILON")),Ol(t,"number"==typeof e||"boolean"==typeof e?[e]:e,function(t,e){return Rl(t,Number(e),n)})}function Ol(t,e,n){if(t instanceof pt||e instanceof pt){if(t instanceof pt&&e instanceof pt){if(t.dtype!==e.dtype)throw new Error("Arrays are of different type actual: "+t.dtype+" vs expected: "+e.dtype+".");if(!E(t.shape,e.shape))throw new Error("Arrays are of different shape actual: "+t.shape+" vs expected: "+e.shape+".")}}else{var r=t.constructor.name,i=e.constructor.name;if(r!==i)throw new Error("Arrays are of different type actual: "+r+" vs expected: "+i)}var o,a;if(o=t instanceof pt?t.dataSync():t,a=e instanceof pt?e.dataSync():e,o.length!==a.length)throw new Error("Arrays have different lengths actual: "+o.length+" vs expected: "+a.length+".\nActual: "+o+".\nExpected: "+a+".");for(var s=0;sn)}Object.freeze({WEBGL_ENVS:{HAS_WEBGL:!0},PACKED_ENVS:{WEBGL_PACK:!0},NODE_ENVS:{IS_NODE:!0},CHROME_ENVS:{IS_CHROME:!0},BROWSER_ENVS:{IS_BROWSER:!0},CPU_ENVS:{HAS_WEBGL:!1},ALL_ENVS:{},expectArraysClose:Il,expectPromiseToFail:function(t,e){t().then(function(){return e.fail()},function(){return e()})},expectArraysEqual:function(t,e){var n="string"==typeof e||"number"==typeof e||"boolean"==typeof e?[e]:e;return t instanceof pt&&"string"===t.dtype||e instanceof pt&&"string"===e.dtype||Array.isArray(t)&&z(t[0])||Array.isArray(e)&&z(e[0])?Ol(t,n,function(t,e){return t==e}):Il(t,e,0)},expectNumbersClose:function(t,e,n){if(null==n&&(n=Gt.get("TEST_EPSILON")),!Rl(t,e,n))throw new Error("Numbers differ: actual === "+t+", expected === "+e)},expectValuesInRange:function(t,e,n){var r;r=t instanceof pt?t.dataSync():t;for(var i=0;in)throw new Error("Value out of range:"+r[i]+" low: "+e+", high: "+n)},expectArrayBuffersEqual:function(t,e){expect(new Float32Array(t)).toEqual(new Float32Array(e))}}),Object.freeze({gpgpu_util:pi,webgl_util:Hr,MathBackendWebGL:ra,GPGPUContext:di});var kl=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return s(e,t),e.prototype.minimize=function(t,e,n){void 0===e&&(e=!1);var r=this.computeGradients(t,n),i=r.value,o=r.grads;return this.applyGradients(o),Object.keys(o).forEach(function(t){return o[t].dispose()}),e?i:(i.dispose(),null)},e.prototype.computeGradients=function(t,e){return function(t,e){if(b(H(t),function(){return"The f passed in variableGrads(f) must be a function"}),b(null==e||Array.isArray(e)&&e.every(function(t){return t instanceof dt}),function(){return"The varList passed in variableGrads(f, varList) must be an array of variables"}),null==e)for(var n in e=[],Gt.engine.registeredVariables)e.push(Gt.engine.registeredVariables[n]);var r=e.length;b((e=e.filter(function(t){return t.trainable})).length>0,function(){return"variableGrads() expects at least one of the input variables to be trainable, but none of the "+r+" variables is trainable."});var i=Gt.engine.gradients(t,e,null,!0),o=i.value,a=i.grads;b(a.some(function(t){return null!=t}),function(){return"Cannot find a connection between any variable and the result of the loss function y=f(x). Please make sure the operations that use variables are inside the function f passed to minimize()."}),b(0===o.rank,function(){return"The f passed in variableGrads(f) must return a scalar, but it returned a rank-"+o.rank+" tensor"});var s={};return e.forEach(function(t,e){null!=a[e]&&(s[t.name]=a[e])}),{value:o,grads:s}}(t,e)},e.prototype.dispose=function(){},e}(Al);Object.defineProperty(kl,Symbol.hasInstance,{value:function(t){return null!=t.minimize&&null!=t.computeGradients&&null!=t.applyGradients}});var Ll=function(t){function e(e,n,r){void 0===r&&(r=null);var i=t.call(this)||this;return i.learningRate=e,i.rho=n,i.epsilon=r,i.accumulatedGrads={},i.accumulatedUpdates={},i.c=Kt(Ce(-e)),i.rhoScalar=Kt(Ce(n)),i.oneMinusRho=Kt(Ce(1-n)),null===r&&(r=Gt.get("EPSILON")),i.epsilonScalar=Kt(Ce(r)),i}return s(e,t),e.prototype.applyGradients=function(t){var e=this,n=function(n){var i=Gt.engine.registeredVariables[n];null==r.accumulatedGrads[n]&&Yt(function(){e.accumulatedGrads[n]=Fe(i).variable(!1)}),null==r.accumulatedUpdates[n]&&Yt(function(){e.accumulatedUpdates[n]=Fe(i).variable(!1)});var o=t[n],a=r.accumulatedGrads[n],s=r.accumulatedUpdates[n];Yt(function(){var t=e.rhoScalar.mul(a).add(e.oneMinusRho.mul(o.square())),r=s.add(e.epsilonScalar).sqrt().div(a.add(e.epsilonScalar).sqrt()).mul(o),u=e.rhoScalar.mul(s).add(e.oneMinusRho.mul(r.square()));e.accumulatedGrads[n].assign(t),e.accumulatedUpdates[n].assign(u);var c=e.c.mul(r).add(i);i.assign(c)})},r=this;for(var i in t)n(i)},e.prototype.dispose=function(){var t=this;this.c.dispose(),this.epsilonScalar.dispose(),this.rhoScalar.dispose(),this.oneMinusRho.dispose(),null!=this.accumulatedUpdates&&(Object.keys(this.accumulatedUpdates).forEach(function(e){return t.accumulatedUpdates[e].dispose()}),Object.keys(this.accumulatedGrads).forEach(function(e){return t.accumulatedGrads[e].dispose()}))},e.prototype.getConfig=function(){return{learningRate:this.learningRate,rho:this.rho,epsilon:this.epsilon}},e.fromConfig=function(t,e){return new t(e.learningRate,e.rho,e.epsilon)},e.className="AdadeltaOptimizer",e}(kl);Pl(Ll);var Dl=function(t){function e(e,n){void 0===n&&(n=.1);var r=t.call(this)||this;return r.learningRate=e,r.initialAccumulatorValue=n,r.accumulatedGrads={},r.c=Kt(Ce(-e)),r.epsilon=Kt(Ce(Gt.get("EPSILON"))),r}return s(e,t),e.prototype.applyGradients=function(t){var e=this,n=function(n){var i=Gt.engine.registeredVariables[n];null==r.accumulatedGrads[n]&&Yt(function(){e.accumulatedGrads[n]=De(i.shape,e.initialAccumulatorValue).variable(!1)});var o=t[n],a=r.accumulatedGrads[n];Yt(function(){var t=a.add(o.square());e.accumulatedGrads[n].assign(t);var r=e.c.mul(o.div(t.add(e.epsilon).sqrt())).add(i);i.assign(r)})},r=this;for(var i in t)n(i)},e.prototype.dispose=function(){var t=this;this.epsilon.dispose(),this.c.dispose(),null!=this.accumulatedGrads&&Object.keys(this.accumulatedGrads).forEach(function(e){return t.accumulatedGrads[e].dispose()})},e.prototype.getConfig=function(){return{learningRate:this.learningRate,initialAccumulatorValue:this.initialAccumulatorValue}},e.fromConfig=function(t,e){return new t(e.learningRate,e.initialAccumulatorValue)},e.className="AdagradOptimizer",e}(kl);Pl(Dl);var Nl=function(t){function e(e,n,r,i){void 0===i&&(i=null);var o=t.call(this)||this;return o.learningRate=e,o.beta1=n,o.beta2=r,o.epsilon=i,o.accumulatedFirstMoment={},o.accumulatedSecondMoment={},o.c=Kt(Ce(-e)),o.beta1Scalar=Kt(Ce(n)),o.beta2Scalar=Kt(Ce(r)),Yt(function(){o.accBeta1=Ce(n).variable(),o.accBeta2=Ce(r).variable()}),o.oneMinusBeta1=Kt(Ce(1-n)),o.oneMinusBeta2=Kt(Ce(1-r)),o.one=Kt(Ce(1)),null===i&&(i=Gt.get("EPSILON")),o.epsScalar=Kt(Ce(i)),o}return s(e,t),e.prototype.applyGradients=function(t){var e=this;Yt(function(){var n=e.one.sub(e.accBeta1),r=e.one.sub(e.accBeta2);for(var i in t){var o=Gt.engine.registeredVariables[i];if(null==e.accumulatedFirstMoment[i]){var a=!1;e.accumulatedFirstMoment[i]=Fe(o).variable(a)}null==e.accumulatedSecondMoment[i]&&(a=!1,e.accumulatedSecondMoment[i]=Fe(o).variable(a));var s=t[i],u=e.accumulatedFirstMoment[i],c=e.accumulatedSecondMoment[i],l=e.beta1Scalar.mul(u).add(e.oneMinusBeta1.mul(s)),f=e.beta2Scalar.mul(c).add(e.oneMinusBeta2.mul(s.square())),h=l.div(n),p=f.div(r);e.accumulatedFirstMoment[i].assign(l),e.accumulatedSecondMoment[i].assign(f);var d=e.c.mul(h.div(e.epsScalar.add(p.sqrt()))).add(o);o.assign(d)}e.accBeta1.assign(e.accBeta1.mul(e.beta1Scalar)),e.accBeta2.assign(e.accBeta2.mul(e.beta2Scalar))})},e.prototype.dispose=function(){var t=this;this.c.dispose(),this.epsScalar.dispose(),this.beta1Scalar.dispose(),this.beta2Scalar.dispose(),this.accBeta1.dispose(),this.accBeta2.dispose(),this.oneMinusBeta1.dispose(),this.oneMinusBeta2.dispose(),this.one.dispose(),null!=this.accumulatedFirstMoment&&Object.keys(this.accumulatedFirstMoment).forEach(function(e){return t.accumulatedFirstMoment[e].dispose()}),null!=this.accumulatedSecondMoment&&Object.keys(this.accumulatedSecondMoment).forEach(function(e){return t.accumulatedSecondMoment[e].dispose()})},e.prototype.getConfig=function(){return{learningRate:this.learningRate,beta1:this.beta1,beta2:this.beta2,epsilon:this.epsilon}},e.fromConfig=function(t,e){return new t(e.learningRate,e.beta1,e.beta2,e.epsilon)},e.className="AdamOptimizer",e}(kl);Pl(Nl);var Bl=function(t){function e(e,n,r,i,o){void 0===i&&(i=null),void 0===o&&(o=0);var a=t.call(this)||this;return a.learningRate=e,a.beta1=n,a.beta2=r,a.epsilon=i,a.decay=o,a.accumulatedFirstMoment={},a.accumulatedWeightedInfNorm={},a.c=Kt(Ce(-e)),a.beta1Scalar=Kt(Ce(n)),a.beta2Scalar=Kt(Ce(r)),a.decayScalar=Kt(Ce(o)),Yt(function(){a.iteration=Ce(0).variable(),a.accBeta1=Ce(n).variable()}),a.oneMinusBeta1=Kt(Ce(1-n)),a.one=Kt(Ce(1)),null===i&&(i=Gt.get("EPSILON")),a.epsScalar=Kt(Ce(i)),a}return s(e,t),e.prototype.applyGradients=function(t){var e=this;Yt(function(){var n=e.one.sub(e.accBeta1),r=e.c.div(e.one.add(e.decayScalar.mul(e.iteration)));for(var i in t){var o=Gt.engine.registeredVariables[i];if(null==e.accumulatedFirstMoment[i]){var a=!1;e.accumulatedFirstMoment[i]=Fe(o).variable(a)}null==e.accumulatedWeightedInfNorm[i]&&(a=!1,e.accumulatedWeightedInfNorm[i]=Fe(o).variable(a));var s=t[i],u=e.accumulatedFirstMoment[i],c=e.accumulatedWeightedInfNorm[i],l=e.beta1Scalar.mul(u).add(e.oneMinusBeta1.mul(s)),f=e.beta2Scalar.mul(c),h=s.abs(),p=f.maximum(h);e.accumulatedFirstMoment[i].assign(l),e.accumulatedWeightedInfNorm[i].assign(p);var d=r.div(n).mul(l.div(e.epsScalar.add(p))).add(o);o.assign(d)}e.iteration.assign(e.iteration.add(e.one)),e.accBeta1.assign(e.accBeta1.mul(e.beta1Scalar))})},e.prototype.dispose=function(){var t=this;this.c.dispose(),this.epsScalar.dispose(),this.accBeta1.dispose(),this.beta1Scalar.dispose(),this.beta2Scalar.dispose(),this.oneMinusBeta1.dispose(),this.decayScalar.dispose(),this.iteration.dispose(),this.one.dispose(),null!=this.accumulatedFirstMoment&&Object.keys(this.accumulatedFirstMoment).forEach(function(e){return t.accumulatedFirstMoment[e].dispose()}),null!=this.accumulatedWeightedInfNorm&&Object.keys(this.accumulatedWeightedInfNorm).forEach(function(e){return t.accumulatedWeightedInfNorm[e].dispose()})},e.prototype.getConfig=function(){return{learningRate:this.learningRate,beta1:this.beta1,beta2:this.beta2,epsilon:this.epsilon,decay:this.decay}},e.fromConfig=function(t,e){return new t(e.learningRate,e.beta1,e.beta2,e.epsilon,e.decay)},e.className="AdamaxOptimizer",e}(kl);Pl(Bl);var Fl=function(t){function e(e){var n=t.call(this)||this;return n.learningRate=e,n.setLearningRate(e),n}return s(e,t),e.prototype.applyGradients=function(t){var e=this;Object.keys(t).forEach(function(n){var r=t[n],i=Gt.engine.registeredVariables[n];Yt(function(){var t=e.c.mul(r).add(i);i.assign(t)})})},e.prototype.setLearningRate=function(t){this.learningRate=t,null!=this.c&&this.c.dispose(),this.c=Kt(Ce(-t))},e.prototype.dispose=function(){this.c.dispose()},e.prototype.getConfig=function(){return{learningRate:this.learningRate}},e.fromConfig=function(t,e){return new t(e.learningRate)},e.className="SGDOptimizer",e}(kl);Pl(Fl);var Ul=function(t){function e(e,n,r){void 0===r&&(r=!1);var i=t.call(this,e)||this;return i.learningRate=e,i.momentum=n,i.useNesterov=r,i.m=Ce(i.momentum),i.accumulations={},i}return s(e,t),e.prototype.applyGradients=function(t){var e=this,n=function(n){var i=Gt.engine.registeredVariables[n];null==r.accumulations[n]&&Yt(function(){e.accumulations[n]=Fe(i).variable(!1)});var o=r.accumulations[n],a=t[n];Yt(function(){var t,r=e.m.mul(o).add(a);t=e.useNesterov?e.c.mul(a.add(r.mul(e.m))).add(i):e.c.mul(r).add(i),e.accumulations[n].assign(r),i.assign(t)})},r=this;for(var i in t)n(i)},e.prototype.dispose=function(){if(t.prototype.dispose.call(this),this.m.dispose(),null!=this.accumulations)for(var e in this.accumulations)this.accumulations[e].dispose()},e.prototype.setMomentum=function(t){this.momentum=t},e.prototype.getConfig=function(){return{learningRate:this.learningRate,momentum:this.momentum,useNesterov:this.useNesterov}},e.fromConfig=function(t,e){return new t(e.learningRate,e.momentum,e.useNesterov)},e.className="MomentumOptimizer",e}(Fl);Pl(Ul);var jl=function(t){function e(e,n,r,i,o){void 0===n&&(n=.9),void 0===r&&(r=0),void 0===i&&(i=null),void 0===o&&(o=!1);var a=t.call(this)||this;return a.learningRate=e,a.decay=n,a.momentum=r,a.epsilon=i,a.accumulatedMeanSquares={},a.accumulatedMeanGrads={},a.accumulatedMoments={},a.c=Kt(Ce(e)),a.decayScalar=Kt(Ce(n)),a.momentumScalar=Kt(Ce(r)),a.oneMinusDecay=Kt(Ce(1-n)),a.centered=o,null===i&&(i=Gt.get("EPSILON")),a.epsilonScalar=Kt(Ce(i)),a}return s(e,t),e.prototype.applyGradients=function(t){var e=this,n=function(n){var i=Gt.engine.registeredVariables[n];null==r.accumulatedMeanSquares[n]&&Yt(function(){e.accumulatedMeanSquares[n]=Fe(i).variable(!1)}),null==r.accumulatedMeanGrads[n]&&r.centered&&Yt(function(){e.accumulatedMeanGrads[n]=Fe(i).variable(!1)}),null==r.accumulatedMoments[n]&&Yt(function(){e.accumulatedMoments[n]=Fe(i).variable(!1)});var o=r.accumulatedMeanSquares[n],a=r.accumulatedMeanGrads[n],s=r.accumulatedMoments[n],u=t[n];Yt(function(){var t=e.decayScalar.mul(o).add(e.oneMinusDecay.mul(u.square()));if(e.centered){var r=e.decayScalar.mul(a).add(e.oneMinusDecay.mul(u)),c=e.momentumScalar.mul(s).add(e.c.mul(u).div(t.sub(r.square().add(e.epsilonScalar)).sqrt()));e.accumulatedMeanSquares[n].assign(t),e.accumulatedMeanGrads[n].assign(r),e.accumulatedMoments[n].assign(c);var l=i.sub(c);i.assign(l)}else{var f=e.decayScalar.mul(o).add(e.oneMinusDecay.mul(u.square()));c=e.momentumScalar.mul(s).add(e.c.mul(u).div(f.add(e.epsilonScalar).sqrt())),e.accumulatedMeanSquares[n].assign(f),e.accumulatedMoments[n].assign(c),l=i.sub(c),i.assign(l)}})},r=this;for(var i in t)n(i)},e.prototype.dispose=function(){var t=this;this.c.dispose(),this.epsilonScalar.dispose(),this.decayScalar.dispose(),this.momentumScalar.dispose(),this.oneMinusDecay.dispose(),null!=this.accumulatedMeanSquares&&Object.keys(this.accumulatedMeanSquares).forEach(function(e){return t.accumulatedMeanSquares[e].dispose()}),null!=this.accumulatedMeanGrads&&this.centered&&Object.keys(this.accumulatedMeanGrads).forEach(function(e){return t.accumulatedMeanGrads[e].dispose()}),null!=this.accumulatedMoments&&Object.keys(this.accumulatedMoments).forEach(function(e){return t.accumulatedMoments[e].dispose()})},e.prototype.getConfig=function(){return{learningRate:this.learningRate,decay:this.decay,momentum:this.momentum,epsilon:this.epsilon,centered:this.centered}},e.fromConfig=function(t,e){return new t(e.learningRate,e.decay,e.momentum,e.epsilon,e.centered)},e.className="RMSPropOptimizer",e}(kl);Pl(jl);var zl=function(){function t(){}return t.sgd=function(t){return new Fl(t)},t.momentum=function(t,e,n){return void 0===n&&(n=!1),new Ul(t,e,n)},t.rmsprop=function(t,e,n,r,i){return void 0===e&&(e=.9),void 0===n&&(n=0),void 0===r&&(r=null),void 0===i&&(i=!1),new jl(t,e,n,r,i)},t.adam=function(t,e,n,r){return void 0===t&&(t=.001),void 0===e&&(e=.9),void 0===n&&(n=.999),void 0===r&&(r=null),new Nl(t,e,n,r)},t.adadelta=function(t,e,n){return void 0===t&&(t=.001),void 0===e&&(e=.95),void 0===n&&(n=null),new Ll(t,e,n)},t.adamax=function(t,e,n,r,i){return void 0===t&&(t=.002),void 0===e&&(e=.9),void 0===n&&(n=.999),void 0===r&&(r=null),void 0===i&&(i=0),new Bl(t,e,n,r,i)},t.adagrad=function(t,e){return void 0===e&&(e=.1),new Dl(t,e)},t}();zl.sgd,zl.momentum,zl.adadelta,zl.adagrad,zl.rmsprop,zl.adamax,zl.adam,Ut.setBackend,Ut.getBackend,Ut.disposeVariables,Ut.memory;!function(t){ft=t}(Pc)}).call(this,n(12),n(9),n(63).setImmediate,n(7).Buffer)},function(t,e,n){"use strict";n.d(e,"c",function(){return i}),n.d(e,"a",function(){return o}),n.d(e,"b",function(){return a}),n.d(e,"d",function(){return s});var r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)};function i(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}var o=function(){return(o=Object.assign||function(t){for(var e,n=1,r=arguments.length;n0&&i[i.length-1])&&(6===o[0]||2===o[0])){a=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]=0&&(t=[t]);var n=l.shapeSize(t),r=l.getType(e),i=new c(new r(n),t);return"array"===i.dtype&&o.assigns(i.selection,0),i}function g(t,e){l.isNumber(t)&&t>=0&&(t=[t]);var n=l.shapeSize(t),r=l.getType(e),i=new c(new r(n),t);return o.assigns(i.selection,1),i}var v=i({args:["array","scalar"],body:function(t,e){t=t<-30?0:t>30?1:1/(1+Math.exp(-1*e*t))}});var y=i({args:["array","scalar","scalar"],body:function(t,e,n){t=Math.min(Math.max(e,t),n)}});var b=i({args:["array","scalar"],body:function(t,e){t=Math.max(e*t,t)}});var w=i({args:["array"],body:function(t){t=(Math.exp(2*t)-1)/(Math.exp(2*t)+1)}});function x(t){var e=t instanceof c?t.clone():c.new(t);return o.abseq(e.selection),e}function _(t){var e,n;for(arguments.length>1&&(t=[].slice.call(arguments)),e=0;e=0&&(t=[t]);var n=l.shapeSize(t),r=l.getType(e);return new c(new r(n),t)},flatten:function(t){return c.new(t).flatten()},flip:S,random:function(t){if(0===arguments.length)return c.new(Math.random());t=1===arguments.length?l.isNumber(t)?[0|t]:t:[].slice.call(arguments);var e=l.shapeSize(t),n=new c(new Float64Array(e),t);return o.random(n.selection),n},softmax:function(t){var e=c.new(t).exp(),n=e.sum();return o.divseq(e.selection,n),e},sigmoid:function(t,e){return t=c.new(t).clone(),e=e||1,v(t.selection,e),t},leakyRelu:function(t,e){e=e||.001;var n=t instanceof c?t.clone():c.new(t);return b(n.selection,e),n},abs:x,arccos:function(t){var e=t instanceof c?t.clone():c.new(t);return o.acoseq(e.selection),e},arcsin:function(t){var e=t instanceof c?t.clone():c.new(t);return o.asineq(e.selection),e},arctan:function(t){var e=t instanceof c?t.clone():c.new(t);return o.ataneq(e.selection),e},cos:function(t){var e=t instanceof c?t.clone():c.new(t);return o.coseq(e.selection),e},sin:function(t){var e=t instanceof c?t.clone():c.new(t);return o.sineq(e.selection),e},tan:function(t){var e=t instanceof c?t.clone():c.new(t);return o.taneq(e.selection),e},tanh:function(t){var e=t instanceof c?t.clone():c.new(t);return w(e.selection),e},clip:function(t,e,n){1===arguments.length?(e=0,n=1):2===arguments.length&&(n=1);var r=t instanceof c?t.clone():c.new(t);return y(r.selection,e,n),r},exp:function(t){return c.new(t).exp()},log:function(t){return c.new(t).log()},sqrt:function(t){return c.new(t).sqrt()},power:function(t,e){return c.new(t).pow(e)},sum:function(t){return c.new(t).sum()},mean:function(t){return c.new(t).mean()},std:function(t,e){return c.new(t).std(e)},dot:function(t,e){return c.new(t).dot(e)},add:function(t,e){return c.new(t).add(e)},subtract:function(t,e){return c.new(t).subtract(e)},multiply:function(t,e){return c.new(t).multiply(e)},divide:function(t,e){return c.new(t).divide(e)},negative:function(t){return c.new(t).negative()},equal:function(t,e){return c.new(t).equal(e)},max:function(t){return c.new(t).max()},min:function(t){return c.new(t).min()},mod:h,remainder:h,concatenate:_,transpose:p,errors:f,broadcast:function(t,e){if(0!==t.length&&0!==e.length){for(var n=t.slice().reverse(),r=e.slice().reverse(),i=Math.max(t.length,e.length),o=new Array(i),a=0;a=49&&a<=54?a-49+10:a>=17&&a<=22?a-17+10:15&a}return r}function u(t,e,n,r){for(var i=0,o=Math.min(t.length,n),a=e;a=49?s-49+10:s>=17?s-17+10:s}return i}o.isBN=function(t){return t instanceof o||null!==t&&"object"===typeof t&&t.constructor.wordSize===o.wordSize&&Array.isArray(t.words)},o.max=function(t,e){return t.cmp(e)>0?t:e},o.min=function(t,e){return t.cmp(e)<0?t:e},o.prototype._init=function(t,e,n){if("number"===typeof t)return this._initNumber(t,e,n);if("object"===typeof t)return this._initArray(t,e,n);"hex"===e&&(e=16),r(e===(0|e)&&e>=2&&e<=36);var i=0;"-"===(t=t.toString().replace(/\s+/g,""))[0]&&i++,16===e?this._parseHex(t,i):this._parseBase(t,e,i),"-"===t[0]&&(this.negative=1),this.strip(),"le"===n&&this._initArray(this.toArray(),e,n)},o.prototype._initNumber=function(t,e,n){t<0&&(this.negative=1,t=-t),t<67108864?(this.words=[67108863&t],this.length=1):t<4503599627370496?(this.words=[67108863&t,t/67108864&67108863],this.length=2):(r(t<9007199254740992),this.words=[67108863&t,t/67108864&67108863,1],this.length=3),"le"===n&&this._initArray(this.toArray(),e,n)},o.prototype._initArray=function(t,e,n){if(r("number"===typeof t.length),t.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(t.length/3),this.words=new Array(this.length);for(var i=0;i=0;i-=3)a=t[i]|t[i-1]<<8|t[i-2]<<16,this.words[o]|=a<>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);else if("le"===n)for(i=0,o=0;i>>26-s&67108863,(s+=24)>=26&&(s-=26,o++);return this.strip()},o.prototype._parseHex=function(t,e){this.length=Math.ceil((t.length-e)/6),this.words=new Array(this.length);for(var n=0;n=e;n-=6)i=s(t,n,n+6),this.words[r]|=i<>>26-o&4194303,(o+=24)>=26&&(o-=26,r++);n+6!==e&&(i=s(t,e,n+6),this.words[r]|=i<>>26-o&4194303),this.strip()},o.prototype._parseBase=function(t,e,n){this.words=[0],this.length=1;for(var r=0,i=1;i<=67108863;i*=e)r++;r--,i=i/e|0;for(var o=t.length-n,a=o%r,s=Math.min(o,o-a)+n,c=0,l=n;l1&&0===this.words[this.length-1];)this.length--;return this._normSign()},o.prototype._normSign=function(){return 1===this.length&&0===this.words[0]&&(this.negative=0),this},o.prototype.inspect=function(){return(this.red?""};var c=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],l=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],f=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function h(t,e,n){n.negative=e.negative^t.negative;var r=t.length+e.length|0;n.length=r,r=r-1|0;var i=0|t.words[0],o=0|e.words[0],a=i*o,s=67108863&a,u=a/67108864|0;n.words[0]=s;for(var c=1;c>>26,f=67108863&u,h=Math.min(c,e.length-1),p=Math.max(0,c-t.length+1);p<=h;p++){var d=c-p|0;l+=(a=(i=0|t.words[d])*(o=0|e.words[p])+f)/67108864|0,f=67108863&a}n.words[c]=0|f,u=0|l}return 0!==u?n.words[c]=0|u:n.length--,n.strip()}o.prototype.toString=function(t,e){var n;if(e=0|e||1,16===(t=t||10)||"hex"===t){n="";for(var i=0,o=0,a=0;a>>24-i&16777215)||a!==this.length-1?c[6-u.length]+u+n:u+n,(i+=2)>=26&&(i-=26,a--)}for(0!==o&&(n=o.toString(16)+n);n.length%e!==0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}if(t===(0|t)&&t>=2&&t<=36){var h=l[t],p=f[t];n="";var d=this.clone();for(d.negative=0;!d.isZero();){var m=d.modn(p).toString(t);n=(d=d.idivn(p)).isZero()?m+n:c[h-m.length]+m+n}for(this.isZero()&&(n="0"+n);n.length%e!==0;)n="0"+n;return 0!==this.negative&&(n="-"+n),n}r(!1,"Base should be between 2 and 36")},o.prototype.toNumber=function(){var t=this.words[0];return 2===this.length?t+=67108864*this.words[1]:3===this.length&&1===this.words[2]?t+=4503599627370496+67108864*this.words[1]:this.length>2&&r(!1,"Number can only safely store up to 53 bits"),0!==this.negative?-t:t},o.prototype.toJSON=function(){return this.toString(16)},o.prototype.toBuffer=function(t,e){return r("undefined"!==typeof a),this.toArrayLike(a,t,e)},o.prototype.toArray=function(t,e){return this.toArrayLike(Array,t,e)},o.prototype.toArrayLike=function(t,e,n){var i=this.byteLength(),o=n||Math.max(1,i);r(i<=o,"byte array longer than desired length"),r(o>0,"Requested array length <= 0"),this.strip();var a,s,u="le"===e,c=new t(o),l=this.clone();if(u){for(s=0;!l.isZero();s++)a=l.andln(255),l.iushrn(8),c[s]=a;for(;s=4096&&(n+=13,e>>>=13),e>=64&&(n+=7,e>>>=7),e>=8&&(n+=4,e>>>=4),e>=2&&(n+=2,e>>>=2),n+e},o.prototype._zeroBits=function(t){if(0===t)return 26;var e=t,n=0;return 0===(8191&e)&&(n+=13,e>>>=13),0===(127&e)&&(n+=7,e>>>=7),0===(15&e)&&(n+=4,e>>>=4),0===(3&e)&&(n+=2,e>>>=2),0===(1&e)&&n++,n},o.prototype.bitLength=function(){var t=this.words[this.length-1],e=this._countBits(t);return 26*(this.length-1)+e},o.prototype.zeroBits=function(){if(this.isZero())return 0;for(var t=0,e=0;et.length?this.clone().ior(t):t.clone().ior(this)},o.prototype.uor=function(t){return this.length>t.length?this.clone().iuor(t):t.clone().iuor(this)},o.prototype.iuand=function(t){var e;e=this.length>t.length?t:this;for(var n=0;nt.length?this.clone().iand(t):t.clone().iand(this)},o.prototype.uand=function(t){return this.length>t.length?this.clone().iuand(t):t.clone().iuand(this)},o.prototype.iuxor=function(t){var e,n;this.length>t.length?(e=this,n=t):(e=t,n=this);for(var r=0;rt.length?this.clone().ixor(t):t.clone().ixor(this)},o.prototype.uxor=function(t){return this.length>t.length?this.clone().iuxor(t):t.clone().iuxor(this)},o.prototype.inotn=function(t){r("number"===typeof t&&t>=0);var e=0|Math.ceil(t/26),n=t%26;this._expand(e),n>0&&e--;for(var i=0;i0&&(this.words[i]=~this.words[i]&67108863>>26-n),this.strip()},o.prototype.notn=function(t){return this.clone().inotn(t)},o.prototype.setn=function(t,e){r("number"===typeof t&&t>=0);var n=t/26|0,i=t%26;return this._expand(n+1),this.words[n]=e?this.words[n]|1<t.length?(n=this,r=t):(n=t,r=this);for(var i=0,o=0;o>>26;for(;0!==i&&o>>26;if(this.length=n.length,0!==i)this.words[this.length]=i,this.length++;else if(n!==this)for(;ot.length?this.clone().iadd(t):t.clone().iadd(this)},o.prototype.isub=function(t){if(0!==t.negative){t.negative=0;var e=this.iadd(t);return t.negative=1,e._normSign()}if(0!==this.negative)return this.negative=0,this.iadd(t),this.negative=1,this._normSign();var n,r,i=this.cmp(t);if(0===i)return this.negative=0,this.length=1,this.words[0]=0,this;i>0?(n=this,r=t):(n=t,r=this);for(var o=0,a=0;a>26,this.words[a]=67108863&e;for(;0!==o&&a>26,this.words[a]=67108863&e;if(0===o&&a>>13,p=0|a[1],d=8191&p,m=p>>>13,g=0|a[2],v=8191&g,y=g>>>13,b=0|a[3],w=8191&b,x=b>>>13,_=0|a[4],S=8191&_,E=_>>>13,T=0|a[5],M=8191&T,A=T>>>13,C=0|a[6],P=8191&C,I=C>>>13,O=0|a[7],R=8191&O,k=O>>>13,L=0|a[8],D=8191&L,N=L>>>13,B=0|a[9],F=8191&B,U=B>>>13,j=0|s[0],z=8191&j,G=j>>>13,V=0|s[1],W=8191&V,H=V>>>13,q=0|s[2],X=8191&q,Y=q>>>13,K=0|s[3],$=8191&K,J=K>>>13,Z=0|s[4],Q=8191&Z,tt=Z>>>13,et=0|s[5],nt=8191&et,rt=et>>>13,it=0|s[6],ot=8191&it,at=it>>>13,st=0|s[7],ut=8191&st,ct=st>>>13,lt=0|s[8],ft=8191<,ht=lt>>>13,pt=0|s[9],dt=8191&pt,mt=pt>>>13;n.negative=t.negative^e.negative,n.length=19;var gt=(c+(r=Math.imul(f,z))|0)+((8191&(i=(i=Math.imul(f,G))+Math.imul(h,z)|0))<<13)|0;c=((o=Math.imul(h,G))+(i>>>13)|0)+(gt>>>26)|0,gt&=67108863,r=Math.imul(d,z),i=(i=Math.imul(d,G))+Math.imul(m,z)|0,o=Math.imul(m,G);var vt=(c+(r=r+Math.imul(f,W)|0)|0)+((8191&(i=(i=i+Math.imul(f,H)|0)+Math.imul(h,W)|0))<<13)|0;c=((o=o+Math.imul(h,H)|0)+(i>>>13)|0)+(vt>>>26)|0,vt&=67108863,r=Math.imul(v,z),i=(i=Math.imul(v,G))+Math.imul(y,z)|0,o=Math.imul(y,G),r=r+Math.imul(d,W)|0,i=(i=i+Math.imul(d,H)|0)+Math.imul(m,W)|0,o=o+Math.imul(m,H)|0;var yt=(c+(r=r+Math.imul(f,X)|0)|0)+((8191&(i=(i=i+Math.imul(f,Y)|0)+Math.imul(h,X)|0))<<13)|0;c=((o=o+Math.imul(h,Y)|0)+(i>>>13)|0)+(yt>>>26)|0,yt&=67108863,r=Math.imul(w,z),i=(i=Math.imul(w,G))+Math.imul(x,z)|0,o=Math.imul(x,G),r=r+Math.imul(v,W)|0,i=(i=i+Math.imul(v,H)|0)+Math.imul(y,W)|0,o=o+Math.imul(y,H)|0,r=r+Math.imul(d,X)|0,i=(i=i+Math.imul(d,Y)|0)+Math.imul(m,X)|0,o=o+Math.imul(m,Y)|0;var bt=(c+(r=r+Math.imul(f,$)|0)|0)+((8191&(i=(i=i+Math.imul(f,J)|0)+Math.imul(h,$)|0))<<13)|0;c=((o=o+Math.imul(h,J)|0)+(i>>>13)|0)+(bt>>>26)|0,bt&=67108863,r=Math.imul(S,z),i=(i=Math.imul(S,G))+Math.imul(E,z)|0,o=Math.imul(E,G),r=r+Math.imul(w,W)|0,i=(i=i+Math.imul(w,H)|0)+Math.imul(x,W)|0,o=o+Math.imul(x,H)|0,r=r+Math.imul(v,X)|0,i=(i=i+Math.imul(v,Y)|0)+Math.imul(y,X)|0,o=o+Math.imul(y,Y)|0,r=r+Math.imul(d,$)|0,i=(i=i+Math.imul(d,J)|0)+Math.imul(m,$)|0,o=o+Math.imul(m,J)|0;var wt=(c+(r=r+Math.imul(f,Q)|0)|0)+((8191&(i=(i=i+Math.imul(f,tt)|0)+Math.imul(h,Q)|0))<<13)|0;c=((o=o+Math.imul(h,tt)|0)+(i>>>13)|0)+(wt>>>26)|0,wt&=67108863,r=Math.imul(M,z),i=(i=Math.imul(M,G))+Math.imul(A,z)|0,o=Math.imul(A,G),r=r+Math.imul(S,W)|0,i=(i=i+Math.imul(S,H)|0)+Math.imul(E,W)|0,o=o+Math.imul(E,H)|0,r=r+Math.imul(w,X)|0,i=(i=i+Math.imul(w,Y)|0)+Math.imul(x,X)|0,o=o+Math.imul(x,Y)|0,r=r+Math.imul(v,$)|0,i=(i=i+Math.imul(v,J)|0)+Math.imul(y,$)|0,o=o+Math.imul(y,J)|0,r=r+Math.imul(d,Q)|0,i=(i=i+Math.imul(d,tt)|0)+Math.imul(m,Q)|0,o=o+Math.imul(m,tt)|0;var xt=(c+(r=r+Math.imul(f,nt)|0)|0)+((8191&(i=(i=i+Math.imul(f,rt)|0)+Math.imul(h,nt)|0))<<13)|0;c=((o=o+Math.imul(h,rt)|0)+(i>>>13)|0)+(xt>>>26)|0,xt&=67108863,r=Math.imul(P,z),i=(i=Math.imul(P,G))+Math.imul(I,z)|0,o=Math.imul(I,G),r=r+Math.imul(M,W)|0,i=(i=i+Math.imul(M,H)|0)+Math.imul(A,W)|0,o=o+Math.imul(A,H)|0,r=r+Math.imul(S,X)|0,i=(i=i+Math.imul(S,Y)|0)+Math.imul(E,X)|0,o=o+Math.imul(E,Y)|0,r=r+Math.imul(w,$)|0,i=(i=i+Math.imul(w,J)|0)+Math.imul(x,$)|0,o=o+Math.imul(x,J)|0,r=r+Math.imul(v,Q)|0,i=(i=i+Math.imul(v,tt)|0)+Math.imul(y,Q)|0,o=o+Math.imul(y,tt)|0,r=r+Math.imul(d,nt)|0,i=(i=i+Math.imul(d,rt)|0)+Math.imul(m,nt)|0,o=o+Math.imul(m,rt)|0;var _t=(c+(r=r+Math.imul(f,ot)|0)|0)+((8191&(i=(i=i+Math.imul(f,at)|0)+Math.imul(h,ot)|0))<<13)|0;c=((o=o+Math.imul(h,at)|0)+(i>>>13)|0)+(_t>>>26)|0,_t&=67108863,r=Math.imul(R,z),i=(i=Math.imul(R,G))+Math.imul(k,z)|0,o=Math.imul(k,G),r=r+Math.imul(P,W)|0,i=(i=i+Math.imul(P,H)|0)+Math.imul(I,W)|0,o=o+Math.imul(I,H)|0,r=r+Math.imul(M,X)|0,i=(i=i+Math.imul(M,Y)|0)+Math.imul(A,X)|0,o=o+Math.imul(A,Y)|0,r=r+Math.imul(S,$)|0,i=(i=i+Math.imul(S,J)|0)+Math.imul(E,$)|0,o=o+Math.imul(E,J)|0,r=r+Math.imul(w,Q)|0,i=(i=i+Math.imul(w,tt)|0)+Math.imul(x,Q)|0,o=o+Math.imul(x,tt)|0,r=r+Math.imul(v,nt)|0,i=(i=i+Math.imul(v,rt)|0)+Math.imul(y,nt)|0,o=o+Math.imul(y,rt)|0,r=r+Math.imul(d,ot)|0,i=(i=i+Math.imul(d,at)|0)+Math.imul(m,ot)|0,o=o+Math.imul(m,at)|0;var St=(c+(r=r+Math.imul(f,ut)|0)|0)+((8191&(i=(i=i+Math.imul(f,ct)|0)+Math.imul(h,ut)|0))<<13)|0;c=((o=o+Math.imul(h,ct)|0)+(i>>>13)|0)+(St>>>26)|0,St&=67108863,r=Math.imul(D,z),i=(i=Math.imul(D,G))+Math.imul(N,z)|0,o=Math.imul(N,G),r=r+Math.imul(R,W)|0,i=(i=i+Math.imul(R,H)|0)+Math.imul(k,W)|0,o=o+Math.imul(k,H)|0,r=r+Math.imul(P,X)|0,i=(i=i+Math.imul(P,Y)|0)+Math.imul(I,X)|0,o=o+Math.imul(I,Y)|0,r=r+Math.imul(M,$)|0,i=(i=i+Math.imul(M,J)|0)+Math.imul(A,$)|0,o=o+Math.imul(A,J)|0,r=r+Math.imul(S,Q)|0,i=(i=i+Math.imul(S,tt)|0)+Math.imul(E,Q)|0,o=o+Math.imul(E,tt)|0,r=r+Math.imul(w,nt)|0,i=(i=i+Math.imul(w,rt)|0)+Math.imul(x,nt)|0,o=o+Math.imul(x,rt)|0,r=r+Math.imul(v,ot)|0,i=(i=i+Math.imul(v,at)|0)+Math.imul(y,ot)|0,o=o+Math.imul(y,at)|0,r=r+Math.imul(d,ut)|0,i=(i=i+Math.imul(d,ct)|0)+Math.imul(m,ut)|0,o=o+Math.imul(m,ct)|0;var Et=(c+(r=r+Math.imul(f,ft)|0)|0)+((8191&(i=(i=i+Math.imul(f,ht)|0)+Math.imul(h,ft)|0))<<13)|0;c=((o=o+Math.imul(h,ht)|0)+(i>>>13)|0)+(Et>>>26)|0,Et&=67108863,r=Math.imul(F,z),i=(i=Math.imul(F,G))+Math.imul(U,z)|0,o=Math.imul(U,G),r=r+Math.imul(D,W)|0,i=(i=i+Math.imul(D,H)|0)+Math.imul(N,W)|0,o=o+Math.imul(N,H)|0,r=r+Math.imul(R,X)|0,i=(i=i+Math.imul(R,Y)|0)+Math.imul(k,X)|0,o=o+Math.imul(k,Y)|0,r=r+Math.imul(P,$)|0,i=(i=i+Math.imul(P,J)|0)+Math.imul(I,$)|0,o=o+Math.imul(I,J)|0,r=r+Math.imul(M,Q)|0,i=(i=i+Math.imul(M,tt)|0)+Math.imul(A,Q)|0,o=o+Math.imul(A,tt)|0,r=r+Math.imul(S,nt)|0,i=(i=i+Math.imul(S,rt)|0)+Math.imul(E,nt)|0,o=o+Math.imul(E,rt)|0,r=r+Math.imul(w,ot)|0,i=(i=i+Math.imul(w,at)|0)+Math.imul(x,ot)|0,o=o+Math.imul(x,at)|0,r=r+Math.imul(v,ut)|0,i=(i=i+Math.imul(v,ct)|0)+Math.imul(y,ut)|0,o=o+Math.imul(y,ct)|0,r=r+Math.imul(d,ft)|0,i=(i=i+Math.imul(d,ht)|0)+Math.imul(m,ft)|0,o=o+Math.imul(m,ht)|0;var Tt=(c+(r=r+Math.imul(f,dt)|0)|0)+((8191&(i=(i=i+Math.imul(f,mt)|0)+Math.imul(h,dt)|0))<<13)|0;c=((o=o+Math.imul(h,mt)|0)+(i>>>13)|0)+(Tt>>>26)|0,Tt&=67108863,r=Math.imul(F,W),i=(i=Math.imul(F,H))+Math.imul(U,W)|0,o=Math.imul(U,H),r=r+Math.imul(D,X)|0,i=(i=i+Math.imul(D,Y)|0)+Math.imul(N,X)|0,o=o+Math.imul(N,Y)|0,r=r+Math.imul(R,$)|0,i=(i=i+Math.imul(R,J)|0)+Math.imul(k,$)|0,o=o+Math.imul(k,J)|0,r=r+Math.imul(P,Q)|0,i=(i=i+Math.imul(P,tt)|0)+Math.imul(I,Q)|0,o=o+Math.imul(I,tt)|0,r=r+Math.imul(M,nt)|0,i=(i=i+Math.imul(M,rt)|0)+Math.imul(A,nt)|0,o=o+Math.imul(A,rt)|0,r=r+Math.imul(S,ot)|0,i=(i=i+Math.imul(S,at)|0)+Math.imul(E,ot)|0,o=o+Math.imul(E,at)|0,r=r+Math.imul(w,ut)|0,i=(i=i+Math.imul(w,ct)|0)+Math.imul(x,ut)|0,o=o+Math.imul(x,ct)|0,r=r+Math.imul(v,ft)|0,i=(i=i+Math.imul(v,ht)|0)+Math.imul(y,ft)|0,o=o+Math.imul(y,ht)|0;var Mt=(c+(r=r+Math.imul(d,dt)|0)|0)+((8191&(i=(i=i+Math.imul(d,mt)|0)+Math.imul(m,dt)|0))<<13)|0;c=((o=o+Math.imul(m,mt)|0)+(i>>>13)|0)+(Mt>>>26)|0,Mt&=67108863,r=Math.imul(F,X),i=(i=Math.imul(F,Y))+Math.imul(U,X)|0,o=Math.imul(U,Y),r=r+Math.imul(D,$)|0,i=(i=i+Math.imul(D,J)|0)+Math.imul(N,$)|0,o=o+Math.imul(N,J)|0,r=r+Math.imul(R,Q)|0,i=(i=i+Math.imul(R,tt)|0)+Math.imul(k,Q)|0,o=o+Math.imul(k,tt)|0,r=r+Math.imul(P,nt)|0,i=(i=i+Math.imul(P,rt)|0)+Math.imul(I,nt)|0,o=o+Math.imul(I,rt)|0,r=r+Math.imul(M,ot)|0,i=(i=i+Math.imul(M,at)|0)+Math.imul(A,ot)|0,o=o+Math.imul(A,at)|0,r=r+Math.imul(S,ut)|0,i=(i=i+Math.imul(S,ct)|0)+Math.imul(E,ut)|0,o=o+Math.imul(E,ct)|0,r=r+Math.imul(w,ft)|0,i=(i=i+Math.imul(w,ht)|0)+Math.imul(x,ft)|0,o=o+Math.imul(x,ht)|0;var At=(c+(r=r+Math.imul(v,dt)|0)|0)+((8191&(i=(i=i+Math.imul(v,mt)|0)+Math.imul(y,dt)|0))<<13)|0;c=((o=o+Math.imul(y,mt)|0)+(i>>>13)|0)+(At>>>26)|0,At&=67108863,r=Math.imul(F,$),i=(i=Math.imul(F,J))+Math.imul(U,$)|0,o=Math.imul(U,J),r=r+Math.imul(D,Q)|0,i=(i=i+Math.imul(D,tt)|0)+Math.imul(N,Q)|0,o=o+Math.imul(N,tt)|0,r=r+Math.imul(R,nt)|0,i=(i=i+Math.imul(R,rt)|0)+Math.imul(k,nt)|0,o=o+Math.imul(k,rt)|0,r=r+Math.imul(P,ot)|0,i=(i=i+Math.imul(P,at)|0)+Math.imul(I,ot)|0,o=o+Math.imul(I,at)|0,r=r+Math.imul(M,ut)|0,i=(i=i+Math.imul(M,ct)|0)+Math.imul(A,ut)|0,o=o+Math.imul(A,ct)|0,r=r+Math.imul(S,ft)|0,i=(i=i+Math.imul(S,ht)|0)+Math.imul(E,ft)|0,o=o+Math.imul(E,ht)|0;var Ct=(c+(r=r+Math.imul(w,dt)|0)|0)+((8191&(i=(i=i+Math.imul(w,mt)|0)+Math.imul(x,dt)|0))<<13)|0;c=((o=o+Math.imul(x,mt)|0)+(i>>>13)|0)+(Ct>>>26)|0,Ct&=67108863,r=Math.imul(F,Q),i=(i=Math.imul(F,tt))+Math.imul(U,Q)|0,o=Math.imul(U,tt),r=r+Math.imul(D,nt)|0,i=(i=i+Math.imul(D,rt)|0)+Math.imul(N,nt)|0,o=o+Math.imul(N,rt)|0,r=r+Math.imul(R,ot)|0,i=(i=i+Math.imul(R,at)|0)+Math.imul(k,ot)|0,o=o+Math.imul(k,at)|0,r=r+Math.imul(P,ut)|0,i=(i=i+Math.imul(P,ct)|0)+Math.imul(I,ut)|0,o=o+Math.imul(I,ct)|0,r=r+Math.imul(M,ft)|0,i=(i=i+Math.imul(M,ht)|0)+Math.imul(A,ft)|0,o=o+Math.imul(A,ht)|0;var Pt=(c+(r=r+Math.imul(S,dt)|0)|0)+((8191&(i=(i=i+Math.imul(S,mt)|0)+Math.imul(E,dt)|0))<<13)|0;c=((o=o+Math.imul(E,mt)|0)+(i>>>13)|0)+(Pt>>>26)|0,Pt&=67108863,r=Math.imul(F,nt),i=(i=Math.imul(F,rt))+Math.imul(U,nt)|0,o=Math.imul(U,rt),r=r+Math.imul(D,ot)|0,i=(i=i+Math.imul(D,at)|0)+Math.imul(N,ot)|0,o=o+Math.imul(N,at)|0,r=r+Math.imul(R,ut)|0,i=(i=i+Math.imul(R,ct)|0)+Math.imul(k,ut)|0,o=o+Math.imul(k,ct)|0,r=r+Math.imul(P,ft)|0,i=(i=i+Math.imul(P,ht)|0)+Math.imul(I,ft)|0,o=o+Math.imul(I,ht)|0;var It=(c+(r=r+Math.imul(M,dt)|0)|0)+((8191&(i=(i=i+Math.imul(M,mt)|0)+Math.imul(A,dt)|0))<<13)|0;c=((o=o+Math.imul(A,mt)|0)+(i>>>13)|0)+(It>>>26)|0,It&=67108863,r=Math.imul(F,ot),i=(i=Math.imul(F,at))+Math.imul(U,ot)|0,o=Math.imul(U,at),r=r+Math.imul(D,ut)|0,i=(i=i+Math.imul(D,ct)|0)+Math.imul(N,ut)|0,o=o+Math.imul(N,ct)|0,r=r+Math.imul(R,ft)|0,i=(i=i+Math.imul(R,ht)|0)+Math.imul(k,ft)|0,o=o+Math.imul(k,ht)|0;var Ot=(c+(r=r+Math.imul(P,dt)|0)|0)+((8191&(i=(i=i+Math.imul(P,mt)|0)+Math.imul(I,dt)|0))<<13)|0;c=((o=o+Math.imul(I,mt)|0)+(i>>>13)|0)+(Ot>>>26)|0,Ot&=67108863,r=Math.imul(F,ut),i=(i=Math.imul(F,ct))+Math.imul(U,ut)|0,o=Math.imul(U,ct),r=r+Math.imul(D,ft)|0,i=(i=i+Math.imul(D,ht)|0)+Math.imul(N,ft)|0,o=o+Math.imul(N,ht)|0;var Rt=(c+(r=r+Math.imul(R,dt)|0)|0)+((8191&(i=(i=i+Math.imul(R,mt)|0)+Math.imul(k,dt)|0))<<13)|0;c=((o=o+Math.imul(k,mt)|0)+(i>>>13)|0)+(Rt>>>26)|0,Rt&=67108863,r=Math.imul(F,ft),i=(i=Math.imul(F,ht))+Math.imul(U,ft)|0,o=Math.imul(U,ht);var kt=(c+(r=r+Math.imul(D,dt)|0)|0)+((8191&(i=(i=i+Math.imul(D,mt)|0)+Math.imul(N,dt)|0))<<13)|0;c=((o=o+Math.imul(N,mt)|0)+(i>>>13)|0)+(kt>>>26)|0,kt&=67108863;var Lt=(c+(r=Math.imul(F,dt))|0)+((8191&(i=(i=Math.imul(F,mt))+Math.imul(U,dt)|0))<<13)|0;return c=((o=Math.imul(U,mt))+(i>>>13)|0)+(Lt>>>26)|0,Lt&=67108863,u[0]=gt,u[1]=vt,u[2]=yt,u[3]=bt,u[4]=wt,u[5]=xt,u[6]=_t,u[7]=St,u[8]=Et,u[9]=Tt,u[10]=Mt,u[11]=At,u[12]=Ct,u[13]=Pt,u[14]=It,u[15]=Ot,u[16]=Rt,u[17]=kt,u[18]=Lt,0!==c&&(u[19]=c,n.length++),n};function d(t,e,n){return(new m).mulp(t,e,n)}function m(t,e){this.x=t,this.y=e}Math.imul||(p=h),o.prototype.mulTo=function(t,e){var n=this.length+t.length;return 10===this.length&&10===t.length?p(this,t,e):n<63?h(this,t,e):n<1024?function(t,e,n){n.negative=e.negative^t.negative,n.length=t.length+e.length;for(var r=0,i=0,o=0;o>>26)|0)>>>26,a&=67108863}n.words[o]=s,r=a,a=i}return 0!==r?n.words[o]=r:n.length--,n.strip()}(this,t,e):d(this,t,e)},m.prototype.makeRBT=function(t){for(var e=new Array(t),n=o.prototype._countBits(t)-1,r=0;r>=1;return r},m.prototype.permute=function(t,e,n,r,i,o){for(var a=0;a>>=1)i++;return 1<>>=13,n[2*a+1]=8191&o,o>>>=13;for(a=2*e;a>=26,e+=i/67108864|0,e+=o>>>26,this.words[n]=67108863&o}return 0!==e&&(this.words[n]=e,this.length++),this},o.prototype.muln=function(t){return this.clone().imuln(t)},o.prototype.sqr=function(){return this.mul(this)},o.prototype.isqr=function(){return this.imul(this.clone())},o.prototype.pow=function(t){var e=function(t){for(var e=new Array(t.bitLength()),n=0;n>>i}return e}(t);if(0===e.length)return new o(1);for(var n=this,r=0;r=0);var e,n=t%26,i=(t-n)/26,o=67108863>>>26-n<<26-n;if(0!==n){var a=0;for(e=0;e>>26-n}a&&(this.words[e]=a,this.length++)}if(0!==i){for(e=this.length-1;e>=0;e--)this.words[e+i]=this.words[e];for(e=0;e=0),i=e?(e-e%26)/26:0;var o=t%26,a=Math.min((t-o)/26,this.length),s=67108863^67108863>>>o<a)for(this.length-=a,c=0;c=0&&(0!==l||c>=i);c--){var f=0|this.words[c];this.words[c]=l<<26-o|f>>>o,l=f&s}return u&&0!==l&&(u.words[u.length++]=l),0===this.length&&(this.words[0]=0,this.length=1),this.strip()},o.prototype.ishrn=function(t,e,n){return r(0===this.negative),this.iushrn(t,e,n)},o.prototype.shln=function(t){return this.clone().ishln(t)},o.prototype.ushln=function(t){return this.clone().iushln(t)},o.prototype.shrn=function(t){return this.clone().ishrn(t)},o.prototype.ushrn=function(t){return this.clone().iushrn(t)},o.prototype.testn=function(t){r("number"===typeof t&&t>=0);var e=t%26,n=(t-e)/26,i=1<=0);var e=t%26,n=(t-e)/26;if(r(0===this.negative,"imaskn works only with positive numbers"),this.length<=n)return this;if(0!==e&&n++,this.length=Math.min(n,this.length),0!==e){var i=67108863^67108863>>>e<=67108864;e++)this.words[e]-=67108864,e===this.length-1?this.words[e+1]=1:this.words[e+1]++;return this.length=Math.max(this.length,e+1),this},o.prototype.isubn=function(t){if(r("number"===typeof t),r(t<67108864),t<0)return this.iaddn(-t);if(0!==this.negative)return this.negative=0,this.iaddn(t),this.negative=1,this;if(this.words[0]-=t,1===this.length&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var e=0;e>26)-(u/67108864|0),this.words[i+n]=67108863&o}for(;i>26,this.words[i+n]=67108863&o;if(0===s)return this.strip();for(r(-1===s),s=0,i=0;i>26,this.words[i]=67108863&o;return this.negative=1,this.strip()},o.prototype._wordDiv=function(t,e){var n=(this.length,t.length),r=this.clone(),i=t,a=0|i.words[i.length-1];0!==(n=26-this._countBits(a))&&(i=i.ushln(n),r.iushln(n),a=0|i.words[i.length-1]);var s,u=r.length-i.length;if("mod"!==e){(s=new o(null)).length=u+1,s.words=new Array(s.length);for(var c=0;c=0;f--){var h=67108864*(0|r.words[i.length+f])+(0|r.words[i.length+f-1]);for(h=Math.min(h/a|0,67108863),r._ishlnsubmul(i,h,f);0!==r.negative;)h--,r.negative=0,r._ishlnsubmul(i,1,f),r.isZero()||(r.negative^=1);s&&(s.words[f]=h)}return s&&s.strip(),r.strip(),"div"!==e&&0!==n&&r.iushrn(n),{div:s||null,mod:r}},o.prototype.divmod=function(t,e,n){return r(!t.isZero()),this.isZero()?{div:new o(0),mod:new o(0)}:0!==this.negative&&0===t.negative?(s=this.neg().divmod(t,e),"mod"!==e&&(i=s.div.neg()),"div"!==e&&(a=s.mod.neg(),n&&0!==a.negative&&a.iadd(t)),{div:i,mod:a}):0===this.negative&&0!==t.negative?(s=this.divmod(t.neg(),e),"mod"!==e&&(i=s.div.neg()),{div:i,mod:s.mod}):0!==(this.negative&t.negative)?(s=this.neg().divmod(t.neg(),e),"div"!==e&&(a=s.mod.neg(),n&&0!==a.negative&&a.isub(t)),{div:s.div,mod:a}):t.length>this.length||this.cmp(t)<0?{div:new o(0),mod:this}:1===t.length?"div"===e?{div:this.divn(t.words[0]),mod:null}:"mod"===e?{div:null,mod:new o(this.modn(t.words[0]))}:{div:this.divn(t.words[0]),mod:new o(this.modn(t.words[0]))}:this._wordDiv(t,e);var i,a,s},o.prototype.div=function(t){return this.divmod(t,"div",!1).div},o.prototype.mod=function(t){return this.divmod(t,"mod",!1).mod},o.prototype.umod=function(t){return this.divmod(t,"mod",!0).mod},o.prototype.divRound=function(t){var e=this.divmod(t);if(e.mod.isZero())return e.div;var n=0!==e.div.negative?e.mod.isub(t):e.mod,r=t.ushrn(1),i=t.andln(1),o=n.cmp(r);return o<0||1===i&&0===o?e.div:0!==e.div.negative?e.div.isubn(1):e.div.iaddn(1)},o.prototype.modn=function(t){r(t<=67108863);for(var e=(1<<26)%t,n=0,i=this.length-1;i>=0;i--)n=(e*n+(0|this.words[i]))%t;return n},o.prototype.idivn=function(t){r(t<=67108863);for(var e=0,n=this.length-1;n>=0;n--){var i=(0|this.words[n])+67108864*e;this.words[n]=i/t|0,e=i%t}return this.strip()},o.prototype.divn=function(t){return this.clone().idivn(t)},o.prototype.egcd=function(t){r(0===t.negative),r(!t.isZero());var e=this,n=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var i=new o(1),a=new o(0),s=new o(0),u=new o(1),c=0;e.isEven()&&n.isEven();)e.iushrn(1),n.iushrn(1),++c;for(var l=n.clone(),f=e.clone();!e.isZero();){for(var h=0,p=1;0===(e.words[0]&p)&&h<26;++h,p<<=1);if(h>0)for(e.iushrn(h);h-- >0;)(i.isOdd()||a.isOdd())&&(i.iadd(l),a.isub(f)),i.iushrn(1),a.iushrn(1);for(var d=0,m=1;0===(n.words[0]&m)&&d<26;++d,m<<=1);if(d>0)for(n.iushrn(d);d-- >0;)(s.isOdd()||u.isOdd())&&(s.iadd(l),u.isub(f)),s.iushrn(1),u.iushrn(1);e.cmp(n)>=0?(e.isub(n),i.isub(s),a.isub(u)):(n.isub(e),s.isub(i),u.isub(a))}return{a:s,b:u,gcd:n.iushln(c)}},o.prototype._invmp=function(t){r(0===t.negative),r(!t.isZero());var e=this,n=t.clone();e=0!==e.negative?e.umod(t):e.clone();for(var i,a=new o(1),s=new o(0),u=n.clone();e.cmpn(1)>0&&n.cmpn(1)>0;){for(var c=0,l=1;0===(e.words[0]&l)&&c<26;++c,l<<=1);if(c>0)for(e.iushrn(c);c-- >0;)a.isOdd()&&a.iadd(u),a.iushrn(1);for(var f=0,h=1;0===(n.words[0]&h)&&f<26;++f,h<<=1);if(f>0)for(n.iushrn(f);f-- >0;)s.isOdd()&&s.iadd(u),s.iushrn(1);e.cmp(n)>=0?(e.isub(n),a.isub(s)):(n.isub(e),s.isub(a))}return(i=0===e.cmpn(1)?a:s).cmpn(0)<0&&i.iadd(t),i},o.prototype.gcd=function(t){if(this.isZero())return t.abs();if(t.isZero())return this.abs();var e=this.clone(),n=t.clone();e.negative=0,n.negative=0;for(var r=0;e.isEven()&&n.isEven();r++)e.iushrn(1),n.iushrn(1);for(;;){for(;e.isEven();)e.iushrn(1);for(;n.isEven();)n.iushrn(1);var i=e.cmp(n);if(i<0){var o=e;e=n,n=o}else if(0===i||0===n.cmpn(1))break;e.isub(n)}return n.iushln(r)},o.prototype.invm=function(t){return this.egcd(t).a.umod(t)},o.prototype.isEven=function(){return 0===(1&this.words[0])},o.prototype.isOdd=function(){return 1===(1&this.words[0])},o.prototype.andln=function(t){return this.words[0]&t},o.prototype.bincn=function(t){r("number"===typeof t);var e=t%26,n=(t-e)/26,i=1<>>26,s&=67108863,this.words[a]=s}return 0!==o&&(this.words[a]=o,this.length++),this},o.prototype.isZero=function(){return 1===this.length&&0===this.words[0]},o.prototype.cmpn=function(t){var e,n=t<0;if(0!==this.negative&&!n)return-1;if(0===this.negative&&n)return 1;if(this.strip(),this.length>1)e=1;else{n&&(t=-t),r(t<=67108863,"Number is too big");var i=0|this.words[0];e=i===t?0:it.length)return 1;if(this.length=0;n--){var r=0|this.words[n],i=0|t.words[n];if(r!==i){ri&&(e=1);break}}return e},o.prototype.gtn=function(t){return 1===this.cmpn(t)},o.prototype.gt=function(t){return 1===this.cmp(t)},o.prototype.gten=function(t){return this.cmpn(t)>=0},o.prototype.gte=function(t){return this.cmp(t)>=0},o.prototype.ltn=function(t){return-1===this.cmpn(t)},o.prototype.lt=function(t){return-1===this.cmp(t)},o.prototype.lten=function(t){return this.cmpn(t)<=0},o.prototype.lte=function(t){return this.cmp(t)<=0},o.prototype.eqn=function(t){return 0===this.cmpn(t)},o.prototype.eq=function(t){return 0===this.cmp(t)},o.red=function(t){return new _(t)},o.prototype.toRed=function(t){return r(!this.red,"Already a number in reduction context"),r(0===this.negative,"red works only with positives"),t.convertTo(this)._forceRed(t)},o.prototype.fromRed=function(){return r(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},o.prototype._forceRed=function(t){return this.red=t,this},o.prototype.forceRed=function(t){return r(!this.red,"Already a number in reduction context"),this._forceRed(t)},o.prototype.redAdd=function(t){return r(this.red,"redAdd works only with red numbers"),this.red.add(this,t)},o.prototype.redIAdd=function(t){return r(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,t)},o.prototype.redSub=function(t){return r(this.red,"redSub works only with red numbers"),this.red.sub(this,t)},o.prototype.redISub=function(t){return r(this.red,"redISub works only with red numbers"),this.red.isub(this,t)},o.prototype.redShl=function(t){return r(this.red,"redShl works only with red numbers"),this.red.shl(this,t)},o.prototype.redMul=function(t){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.mul(this,t)},o.prototype.redIMul=function(t){return r(this.red,"redMul works only with red numbers"),this.red._verify2(this,t),this.red.imul(this,t)},o.prototype.redSqr=function(){return r(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},o.prototype.redISqr=function(){return r(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},o.prototype.redSqrt=function(){return r(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},o.prototype.redInvm=function(){return r(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},o.prototype.redNeg=function(){return r(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},o.prototype.redPow=function(t){return r(this.red&&!t.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,t)};var g={k256:null,p224:null,p192:null,p25519:null};function v(t,e){this.name=t,this.p=new o(e,16),this.n=this.p.bitLength(),this.k=new o(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function y(){v.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function b(){v.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function w(){v.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function x(){v.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function _(t){if("string"===typeof t){var e=o._prime(t);this.m=e.p,this.prime=e}else r(t.gtn(1),"modulus must be greater than 1"),this.m=t,this.prime=null}function S(t){_.call(this,t),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new o(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}v.prototype._tmp=function(){var t=new o(null);return t.words=new Array(Math.ceil(this.n/13)),t},v.prototype.ireduce=function(t){var e,n=t;do{this.split(n,this.tmp),e=(n=(n=this.imulK(n)).iadd(this.tmp)).bitLength()}while(e>this.n);var r=e0?n.isub(this.p):n.strip(),n},v.prototype.split=function(t,e){t.iushrn(this.n,0,e)},v.prototype.imulK=function(t){return t.imul(this.k)},i(y,v),y.prototype.split=function(t,e){for(var n=Math.min(t.length,9),r=0;r>>22,i=o}i>>>=22,t.words[r-10]=i,0===i&&t.length>10?t.length-=10:t.length-=9},y.prototype.imulK=function(t){t.words[t.length]=0,t.words[t.length+1]=0,t.length+=2;for(var e=0,n=0;n>>=26,t.words[n]=i,e=r}return 0!==e&&(t.words[t.length++]=e),t},o._prime=function(t){if(g[t])return g[t];var e;if("k256"===t)e=new y;else if("p224"===t)e=new b;else if("p192"===t)e=new w;else{if("p25519"!==t)throw new Error("Unknown prime "+t);e=new x}return g[t]=e,e},_.prototype._verify1=function(t){r(0===t.negative,"red works only with positives"),r(t.red,"red works only with red numbers")},_.prototype._verify2=function(t,e){r(0===(t.negative|e.negative),"red works only with positives"),r(t.red&&t.red===e.red,"red works only with red numbers")},_.prototype.imod=function(t){return this.prime?this.prime.ireduce(t)._forceRed(this):t.umod(this.m)._forceRed(this)},_.prototype.neg=function(t){return t.isZero()?t.clone():this.m.sub(t)._forceRed(this)},_.prototype.add=function(t,e){this._verify2(t,e);var n=t.add(e);return n.cmp(this.m)>=0&&n.isub(this.m),n._forceRed(this)},_.prototype.iadd=function(t,e){this._verify2(t,e);var n=t.iadd(e);return n.cmp(this.m)>=0&&n.isub(this.m),n},_.prototype.sub=function(t,e){this._verify2(t,e);var n=t.sub(e);return n.cmpn(0)<0&&n.iadd(this.m),n._forceRed(this)},_.prototype.isub=function(t,e){this._verify2(t,e);var n=t.isub(e);return n.cmpn(0)<0&&n.iadd(this.m),n},_.prototype.shl=function(t,e){return this._verify1(t),this.imod(t.ushln(e))},_.prototype.imul=function(t,e){return this._verify2(t,e),this.imod(t.imul(e))},_.prototype.mul=function(t,e){return this._verify2(t,e),this.imod(t.mul(e))},_.prototype.isqr=function(t){return this.imul(t,t.clone())},_.prototype.sqr=function(t){return this.mul(t,t)},_.prototype.sqrt=function(t){if(t.isZero())return t.clone();var e=this.m.andln(3);if(r(e%2===1),3===e){var n=this.m.add(new o(1)).iushrn(2);return this.pow(t,n)}for(var i=this.m.subn(1),a=0;!i.isZero()&&0===i.andln(1);)a++,i.iushrn(1);r(!i.isZero());var s=new o(1).toRed(this),u=s.redNeg(),c=this.m.subn(1).iushrn(1),l=this.m.bitLength();for(l=new o(2*l*l).toRed(this);0!==this.pow(l,c).cmp(u);)l.redIAdd(u);for(var f=this.pow(l,i),h=this.pow(t,i.addn(1).iushrn(1)),p=this.pow(t,i),d=a;0!==p.cmp(s);){for(var m=p,g=0;0!==m.cmp(s);g++)m=m.redSqr();r(g=0;r--){for(var c=e.words[r],l=u-1;l>=0;l--){var f=c>>l&1;i!==n[0]&&(i=this.sqr(i)),0!==f||0!==a?(a<<=1,a|=f,(4===++s||0===r&&0===l)&&(i=this.mul(i,n[a]),s=0,a=0)):s=0}u=26}return i},_.prototype.convertTo=function(t){var e=t.umod(this.m);return e===t?e.clone():e},_.prototype.convertFrom=function(t){var e=t.clone();return e.red=null,e},o.mont=function(t){return new S(t)},i(S,_),S.prototype.convertTo=function(t){return this.imod(t.ushln(this.shift))},S.prototype.convertFrom=function(t){var e=this.imod(t.mul(this.rinv));return e.red=null,e},S.prototype.imul=function(t,e){if(t.isZero()||e.isZero())return t.words[0]=0,t.length=1,t;var n=t.imul(e),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=n.isub(r).iushrn(this.shift),o=i;return i.cmp(this.m)>=0?o=i.isub(this.m):i.cmpn(0)<0&&(o=i.iadd(this.m)),o._forceRed(this)},S.prototype.mul=function(t,e){if(t.isZero()||e.isZero())return new o(0)._forceRed(this);var n=t.mul(e),r=n.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),i=n.isub(r).iushrn(this.shift),a=i;return i.cmp(this.m)>=0?a=i.isub(this.m):i.cmpn(0)<0&&(a=i.iadd(this.m)),a._forceRed(this)},S.prototype.invm=function(t){return this.imod(t._invmp(this.m).mul(this.r2))._forceRed(this)}}(t,this)}).call(this,n(85)(t))},function(t,e,n){"use strict";(function(t){var r=n(126),i=n(127),o=n(64);function a(){return u.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function s(t,e){if(a()=a())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a().toString(16)+" bytes");return 0|t}function d(t,e){if(u.isBuffer(t))return t.length;if("undefined"!==typeof ArrayBuffer&&"function"===typeof ArrayBuffer.isView&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer))return t.byteLength;"string"!==typeof t&&(t=""+t);var n=t.length;if(0===n)return 0;for(var r=!1;;)switch(e){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return j(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return z(t).length;default:if(r)return j(t).length;e=(""+e).toLowerCase(),r=!0}}function m(t,e,n){var r=t[e];t[e]=t[n],t[n]=r}function g(t,e,n,r,i){if(0===t.length)return-1;if("string"===typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=i?0:t.length-1),n<0&&(n=t.length+n),n>=t.length){if(i)return-1;n=t.length-1}else if(n<0){if(!i)return-1;n=0}if("string"===typeof e&&(e=u.from(e,r)),u.isBuffer(e))return 0===e.length?-1:v(t,e,n,r,i);if("number"===typeof e)return e&=255,u.TYPED_ARRAY_SUPPORT&&"function"===typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(t,e,n):Uint8Array.prototype.lastIndexOf.call(t,e,n):v(t,[e],n,r,i);throw new TypeError("val must be string, number or Buffer")}function v(t,e,n,r,i){var o,a=1,s=t.length,u=e.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(t.length<2||e.length<2)return-1;a=2,s/=2,u/=2,n/=2}function c(t,e){return 1===a?t[e]:t.readUInt16BE(e*a)}if(i){var l=-1;for(o=n;os&&(n=s-u),o=n;o>=0;o--){for(var f=!0,h=0;hi&&(r=i):r=i;var o=e.length;if(o%2!==0)throw new TypeError("Invalid hex string");r>o/2&&(r=o/2);for(var a=0;a>8,i=n%256,o.push(i),o.push(r);return o}(e,t.length-n),t,n,r)}function E(t,e,n){return 0===e&&n===t.length?r.fromByteArray(t):r.fromByteArray(t.slice(e,n))}function T(t,e,n){n=Math.min(t.length,n);for(var r=[],i=e;i239?4:c>223?3:c>191?2:1;if(i+f<=n)switch(f){case 1:c<128&&(l=c);break;case 2:128===(192&(o=t[i+1]))&&(u=(31&c)<<6|63&o)>127&&(l=u);break;case 3:o=t[i+1],a=t[i+2],128===(192&o)&&128===(192&a)&&(u=(15&c)<<12|(63&o)<<6|63&a)>2047&&(u<55296||u>57343)&&(l=u);break;case 4:o=t[i+1],a=t[i+2],s=t[i+3],128===(192&o)&&128===(192&a)&&128===(192&s)&&(u=(15&c)<<18|(63&o)<<12|(63&a)<<6|63&s)>65535&&u<1114112&&(l=u)}null===l?(l=65533,f=1):l>65535&&(l-=65536,r.push(l>>>10&1023|55296),l=56320|1023&l),r.push(l),i+=f}return function(t){var e=t.length;if(e<=M)return String.fromCharCode.apply(String,t);var n="",r=0;for(;rthis.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return P(this,e,n);case"utf8":case"utf-8":return T(this,e,n);case"ascii":return A(this,e,n);case"latin1":case"binary":return C(this,e,n);case"base64":return E(this,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return I(this,e,n);default:if(r)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),r=!0}}.apply(this,arguments)},u.prototype.equals=function(t){if(!u.isBuffer(t))throw new TypeError("Argument must be a Buffer");return this===t||0===u.compare(this,t)},u.prototype.inspect=function(){var t="",n=e.INSPECT_MAX_BYTES;return this.length>0&&(t=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(t+=" ... ")),""},u.prototype.compare=function(t,e,n,r,i){if(!u.isBuffer(t))throw new TypeError("Argument must be a Buffer");if(void 0===e&&(e=0),void 0===n&&(n=t?t.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),e<0||n>t.length||r<0||i>this.length)throw new RangeError("out of range index");if(r>=i&&e>=n)return 0;if(r>=i)return-1;if(e>=n)return 1;if(this===t)return 0;for(var o=(i>>>=0)-(r>>>=0),a=(n>>>=0)-(e>>>=0),s=Math.min(o,a),c=this.slice(r,i),l=t.slice(e,n),f=0;fi)&&(n=i),t.length>0&&(n<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var o=!1;;)switch(r){case"hex":return y(this,t,e,n);case"utf8":case"utf-8":return b(this,t,e,n);case"ascii":return w(this,t,e,n);case"latin1":case"binary":return x(this,t,e,n);case"base64":return _(this,t,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return S(this,t,e,n);default:if(o)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),o=!0}},u.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var M=4096;function A(t,e,n){var r="";n=Math.min(t.length,n);for(var i=e;ir)&&(n=r);for(var i="",o=e;on)throw new RangeError("Trying to access beyond buffer length")}function R(t,e,n,r,i,o){if(!u.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>i||et.length)throw new RangeError("Index out of range")}function k(t,e,n,r){e<0&&(e=65535+e+1);for(var i=0,o=Math.min(t.length-n,2);i>>8*(r?i:1-i)}function L(t,e,n,r){e<0&&(e=4294967295+e+1);for(var i=0,o=Math.min(t.length-n,4);i>>8*(r?i:3-i)&255}function D(t,e,n,r,i,o){if(n+r>t.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function N(t,e,n,r,o){return o||D(t,0,n,4),i.write(t,e,n,r,23,4),n+4}function B(t,e,n,r,o){return o||D(t,0,n,8),i.write(t,e,n,r,52,8),n+8}u.prototype.slice=function(t,e){var n,r=this.length;if((t=~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),(e=void 0===e?r:~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),e0&&(i*=256);)r+=this[t+--e]*i;return r},u.prototype.readUInt8=function(t,e){return e||O(t,1,this.length),this[t]},u.prototype.readUInt16LE=function(t,e){return e||O(t,2,this.length),this[t]|this[t+1]<<8},u.prototype.readUInt16BE=function(t,e){return e||O(t,2,this.length),this[t]<<8|this[t+1]},u.prototype.readUInt32LE=function(t,e){return e||O(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},u.prototype.readUInt32BE=function(t,e){return e||O(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},u.prototype.readIntLE=function(t,e,n){t|=0,e|=0,n||O(t,e,this.length);for(var r=this[t],i=1,o=0;++o=(i*=128)&&(r-=Math.pow(2,8*e)),r},u.prototype.readIntBE=function(t,e,n){t|=0,e|=0,n||O(t,e,this.length);for(var r=e,i=1,o=this[t+--r];r>0&&(i*=256);)o+=this[t+--r]*i;return o>=(i*=128)&&(o-=Math.pow(2,8*e)),o},u.prototype.readInt8=function(t,e){return e||O(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},u.prototype.readInt16LE=function(t,e){e||O(t,2,this.length);var n=this[t]|this[t+1]<<8;return 32768&n?4294901760|n:n},u.prototype.readInt16BE=function(t,e){e||O(t,2,this.length);var n=this[t+1]|this[t]<<8;return 32768&n?4294901760|n:n},u.prototype.readInt32LE=function(t,e){return e||O(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},u.prototype.readInt32BE=function(t,e){return e||O(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},u.prototype.readFloatLE=function(t,e){return e||O(t,4,this.length),i.read(this,t,!0,23,4)},u.prototype.readFloatBE=function(t,e){return e||O(t,4,this.length),i.read(this,t,!1,23,4)},u.prototype.readDoubleLE=function(t,e){return e||O(t,8,this.length),i.read(this,t,!0,52,8)},u.prototype.readDoubleBE=function(t,e){return e||O(t,8,this.length),i.read(this,t,!1,52,8)},u.prototype.writeUIntLE=function(t,e,n,r){(t=+t,e|=0,n|=0,r)||R(this,t,e,n,Math.pow(2,8*n)-1,0);var i=1,o=0;for(this[e]=255&t;++o=0&&(o*=256);)this[e+i]=t/o&255;return e+n},u.prototype.writeUInt8=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,1,255,0),u.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),this[e]=255&t,e+1},u.prototype.writeUInt16LE=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):k(this,t,e,!0),e+2},u.prototype.writeUInt16BE=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):k(this,t,e,!1),e+2},u.prototype.writeUInt32LE=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t):L(this,t,e,!0),e+4},u.prototype.writeUInt32BE=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):L(this,t,e,!1),e+4},u.prototype.writeIntLE=function(t,e,n,r){if(t=+t,e|=0,!r){var i=Math.pow(2,8*n-1);R(this,t,e,n,i-1,-i)}var o=0,a=1,s=0;for(this[e]=255&t;++o>0)-s&255;return e+n},u.prototype.writeIntBE=function(t,e,n,r){if(t=+t,e|=0,!r){var i=Math.pow(2,8*n-1);R(this,t,e,n,i-1,-i)}var o=n-1,a=1,s=0;for(this[e+o]=255&t;--o>=0&&(a*=256);)t<0&&0===s&&0!==this[e+o+1]&&(s=1),this[e+o]=(t/a>>0)-s&255;return e+n},u.prototype.writeInt8=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,1,127,-128),u.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),t<0&&(t=255+t+1),this[e]=255&t,e+1},u.prototype.writeInt16LE=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):k(this,t,e,!0),e+2},u.prototype.writeInt16BE=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):k(this,t,e,!1),e+2},u.prototype.writeInt32LE=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,4,2147483647,-2147483648),u.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24):L(this,t,e,!0),e+4},u.prototype.writeInt32BE=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):L(this,t,e,!1),e+4},u.prototype.writeFloatLE=function(t,e,n){return N(this,t,e,!0,n)},u.prototype.writeFloatBE=function(t,e,n){return N(this,t,e,!1,n)},u.prototype.writeDoubleLE=function(t,e,n){return B(this,t,e,!0,n)},u.prototype.writeDoubleBE=function(t,e,n){return B(this,t,e,!1,n)},u.prototype.copy=function(t,e,n,r){if(n||(n=0),r||0===r||(r=this.length),e>=t.length&&(e=t.length),e||(e=0),r>0&&r=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),t.length-e=0;--i)t[i+e]=this[i+n];else if(o<1e3||!u.TYPED_ARRAY_SUPPORT)for(i=0;i>>=0,n=void 0===n?this.length:n>>>0,t||(t=0),"number"===typeof t)for(o=e;o55295&&n<57344){if(!i){if(n>56319){(e-=3)>-1&&o.push(239,191,189);continue}if(a+1===r){(e-=3)>-1&&o.push(239,191,189);continue}i=n;continue}if(n<56320){(e-=3)>-1&&o.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(e-=3)>-1&&o.push(239,191,189);if(i=null,n<128){if((e-=1)<0)break;o.push(n)}else if(n<2048){if((e-=2)<0)break;o.push(n>>6|192,63&n|128)}else if(n<65536){if((e-=3)<0)break;o.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;o.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return o}function z(t){return r.toByteArray(function(t){if((t=function(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}(t).replace(F,"")).length<2)return"";for(;t.length%4!==0;)t+="=";return t}(t))}function G(t,e,n,r){for(var i=0;i=e.length||i>=t.length);++i)e[i+n]=t[i];return i}}).call(this,n(9))},function(t,e,n){"use strict";function r(){}n.r(e),n.d(e,"ACESFilmicToneMapping",function(){return ut}),n.d(e,"AddEquation",function(){return I}),n.d(e,"AddOperation",function(){return nt}),n.d(e,"AdditiveBlending",function(){return M}),n.d(e,"AlphaFormat",function(){return Ft}),n.d(e,"AlwaysDepth",function(){return X}),n.d(e,"AmbientLight",function(){return Us}),n.d(e,"AmbientLightProbe",function(){return cu}),n.d(e,"AnimationClip",function(){return Ya}),n.d(e,"AnimationLoader",function(){return es}),n.d(e,"AnimationMixer",function(){return Mu}),n.d(e,"AnimationObjectGroup",function(){return Eu}),n.d(e,"AnimationUtils",function(){return Da}),n.d(e,"ArcCurve",function(){return cs}),n.d(e,"ArrayCamera",function(){return Di}),n.d(e,"ArrowHelper",function(){return Qu}),n.d(e,"Audio",function(){return gu}),n.d(e,"AudioAnalyser",function(){return yu}),n.d(e,"AudioContext",function(){return iu}),n.d(e,"AudioListener",function(){return mu}),n.d(e,"AudioLoader",function(){return ou}),n.d(e,"AxesHelper",function(){return tc}),n.d(e,"AxisHelper",function(){return Mc}),n.d(e,"BackSide",function(){return v}),n.d(e,"BasicDepthPacking",function(){return Ne}),n.d(e,"BasicShadowMap",function(){return p}),n.d(e,"BinaryTextureLoader",function(){return Oc}),n.d(e,"Bone",function(){return Qi}),n.d(e,"BooleanKeyframeTrack",function(){return za}),n.d(e,"BoundingBoxHelper",function(){return Ac}),n.d(e,"Box2",function(){return Lu}),n.d(e,"Box3",function(){return Qe}),n.d(e,"Box3Helper",function(){return Ju}),n.d(e,"BoxBufferGeometry",function(){return Bn}),n.d(e,"BoxGeometry",function(){return Nn}),n.d(e,"BoxHelper",function(){return $u}),n.d(e,"BufferAttribute",function(){return _n}),n.d(e,"BufferGeometry",function(){return Dn}),n.d(e,"BufferGeometryLoader",function(){return Hs}),n.d(e,"ByteType",function(){return At}),n.d(e,"Cache",function(){return $a}),n.d(e,"Camera",function(){return ki}),n.d(e,"CameraHelper",function(){return Ku}),n.d(e,"CanvasRenderer",function(){return kc}),n.d(e,"CanvasTexture",function(){return uo}),n.d(e,"CatmullRomCurve3",function(){return ms}),n.d(e,"CineonToneMapping",function(){return st}),n.d(e,"CircleBufferGeometry",function(){return _a}),n.d(e,"CircleGeometry",function(){return xa}),n.d(e,"ClampToEdgeWrapping",function(){return yt}),n.d(e,"Clock",function(){return du}),n.d(e,"ClosedSplineCurve3",function(){return Sc}),n.d(e,"Color",function(){return ln}),n.d(e,"ColorKeyframeTrack",function(){return Ga}),n.d(e,"CompressedTexture",function(){return so}),n.d(e,"CompressedTextureLoader",function(){return ns}),n.d(e,"ConeBufferGeometry",function(){return wa}),n.d(e,"ConeGeometry",function(){return ba}),n.d(e,"CubeCamera",function(){return pu}),n.d(e,"CubeGeometry",function(){return Nn}),n.d(e,"CubeReflectionMapping",function(){return lt}),n.d(e,"CubeRefractionMapping",function(){return ft}),n.d(e,"CubeTexture",function(){return ar}),n.d(e,"CubeTextureLoader",function(){return os}),n.d(e,"CubeUVReflectionMapping",function(){return mt}),n.d(e,"CubeUVRefractionMapping",function(){return gt}),n.d(e,"CubicBezierCurve",function(){return bs}),n.d(e,"CubicBezierCurve3",function(){return ws}),n.d(e,"CubicInterpolant",function(){return Ba}),n.d(e,"CullFaceBack",function(){return u}),n.d(e,"CullFaceFront",function(){return c}),n.d(e,"CullFaceFrontBack",function(){return l}),n.d(e,"CullFaceNone",function(){return s}),n.d(e,"Curve",function(){return ss}),n.d(e,"CurvePath",function(){return As}),n.d(e,"CustomBlending",function(){return P}),n.d(e,"CylinderBufferGeometry",function(){return ya}),n.d(e,"CylinderGeometry",function(){return va}),n.d(e,"Cylindrical",function(){return ku}),n.d(e,"DataTexture",function(){return Ze}),n.d(e,"DataTexture2DArray",function(){return sr}),n.d(e,"DataTexture3D",function(){return ur}),n.d(e,"DataTextureLoader",function(){return rs}),n.d(e,"DefaultLoadingManager",function(){return Za}),n.d(e,"DepthFormat",function(){return Wt}),n.d(e,"DepthStencilFormat",function(){return Ht}),n.d(e,"DepthTexture",function(){return co}),n.d(e,"DirectionalLight",function(){return Fs}),n.d(e,"DirectionalLightHelper",function(){return Yu}),n.d(e,"DirectionalLightShadow",function(){return Bs}),n.d(e,"DiscreteInterpolant",function(){return Ua}),n.d(e,"DodecahedronBufferGeometry",function(){return So}),n.d(e,"DodecahedronGeometry",function(){return _o}),n.d(e,"DoubleSide",function(){return y}),n.d(e,"DstAlphaFactor",function(){return z}),n.d(e,"DstColorFactor",function(){return V}),n.d(e,"DynamicBufferAttribute",function(){return pc}),n.d(e,"EdgesGeometry",function(){return ga}),n.d(e,"EdgesHelper",function(){return Cc}),n.d(e,"EllipseCurve",function(){return us}),n.d(e,"EqualDepth",function(){return $}),n.d(e,"EquirectangularReflectionMapping",function(){return ht}),n.d(e,"EquirectangularRefractionMapping",function(){return pt}),n.d(e,"Euler",function(){return gn}),n.d(e,"EventDispatcher",function(){return r}),n.d(e,"ExtrudeBufferGeometry",function(){return na}),n.d(e,"ExtrudeGeometry",function(){return ea}),n.d(e,"Face3",function(){return mn}),n.d(e,"Face4",function(){return ec}),n.d(e,"FaceColors",function(){return _}),n.d(e,"FaceNormalsHelper",function(){return Xu}),n.d(e,"FileLoader",function(){return ts}),n.d(e,"FlatShading",function(){return b}),n.d(e,"Float32Attribute",function(){return xc}),n.d(e,"Float32BufferAttribute",function(){return In}),n.d(e,"Float64Attribute",function(){return _c}),n.d(e,"Float64BufferAttribute",function(){return On}),n.d(e,"FloatType",function(){return Rt}),n.d(e,"Fog",function(){return Wi}),n.d(e,"FogExp2",function(){return Vi}),n.d(e,"Font",function(){return tu}),n.d(e,"FontLoader",function(){return nu}),n.d(e,"FrontFaceDirectionCCW",function(){return h}),n.d(e,"FrontFaceDirectionCW",function(){return f}),n.d(e,"FrontSide",function(){return g}),n.d(e,"Frustum",function(){return nn}),n.d(e,"GammaEncoding",function(){return Ie}),n.d(e,"Geometry",function(){return xn}),n.d(e,"GeometryUtils",function(){return Rc}),n.d(e,"GreaterDepth",function(){return Z}),n.d(e,"GreaterEqualDepth",function(){return J}),n.d(e,"GridHelper",function(){return Wu}),n.d(e,"Group",function(){return Ri}),n.d(e,"HalfFloatType",function(){return kt}),n.d(e,"HemisphereLight",function(){return Os}),n.d(e,"HemisphereLightHelper",function(){return Gu}),n.d(e,"HemisphereLightProbe",function(){return uu}),n.d(e,"IcosahedronBufferGeometry",function(){return xo}),n.d(e,"IcosahedronGeometry",function(){return wo}),n.d(e,"ImageBitmapLoader",function(){return Zs}),n.d(e,"ImageLoader",function(){return is}),n.d(e,"ImageUtils",function(){return He}),n.d(e,"ImmediateRenderObject",function(){return Nu}),n.d(e,"InstancedBufferAttribute",function(){return Ws}),n.d(e,"InstancedBufferGeometry",function(){return Vs}),n.d(e,"InstancedInterleavedBuffer",function(){return Cu}),n.d(e,"Int16Attribute",function(){return vc}),n.d(e,"Int16BufferAttribute",function(){return Mn}),n.d(e,"Int32Attribute",function(){return bc}),n.d(e,"Int32BufferAttribute",function(){return Cn}),n.d(e,"Int8Attribute",function(){return dc}),n.d(e,"Int8BufferAttribute",function(){return Sn}),n.d(e,"IntType",function(){return It}),n.d(e,"InterleavedBuffer",function(){return qi}),n.d(e,"InterleavedBufferAttribute",function(){return Xi}),n.d(e,"Interpolant",function(){return Na}),n.d(e,"InterpolateDiscrete",function(){return be}),n.d(e,"InterpolateLinear",function(){return we}),n.d(e,"InterpolateSmooth",function(){return xe}),n.d(e,"JSONLoader",function(){return Lc}),n.d(e,"KeyframeTrack",function(){return ja}),n.d(e,"LOD",function(){return $i}),n.d(e,"LatheBufferGeometry",function(){return ha}),n.d(e,"LatheGeometry",function(){return fa}),n.d(e,"Layers",function(){return vn}),n.d(e,"LensFlare",function(){return Nc}),n.d(e,"LessDepth",function(){return Y}),n.d(e,"LessEqualDepth",function(){return K}),n.d(e,"Light",function(){return Is}),n.d(e,"LightProbe",function(){return su}),n.d(e,"LightProbeHelper",function(){return Vu}),n.d(e,"LightShadow",function(){return Rs}),n.d(e,"Line",function(){return eo}),n.d(e,"Line3",function(){return Du}),n.d(e,"LineBasicMaterial",function(){return to}),n.d(e,"LineCurve",function(){return xs}),n.d(e,"LineCurve3",function(){return _s}),n.d(e,"LineDashedMaterial",function(){return ka}),n.d(e,"LineLoop",function(){return ro}),n.d(e,"LinePieces",function(){return rc}),n.d(e,"LineSegments",function(){return no}),n.d(e,"LineStrip",function(){return nc}),n.d(e,"LinearEncoding",function(){return Ce}),n.d(e,"LinearFilter",function(){return St}),n.d(e,"LinearInterpolant",function(){return Fa}),n.d(e,"LinearMipMapLinearFilter",function(){return Tt}),n.d(e,"LinearMipMapNearestFilter",function(){return Et}),n.d(e,"LinearToneMapping",function(){return it}),n.d(e,"Loader",function(){return ru}),n.d(e,"LoaderUtils",function(){return Gs}),n.d(e,"LoadingManager",function(){return Ja}),n.d(e,"LogLuvEncoding",function(){return Re}),n.d(e,"LoopOnce",function(){return ge}),n.d(e,"LoopPingPong",function(){return ye}),n.d(e,"LoopRepeat",function(){return ve}),n.d(e,"LuminanceAlphaFormat",function(){return Gt}),n.d(e,"LuminanceFormat",function(){return zt}),n.d(e,"MOUSE",function(){return a}),n.d(e,"Material",function(){return zn}),n.d(e,"MaterialLoader",function(){return zs}),n.d(e,"Math",function(){return je}),n.d(e,"Matrix3",function(){return We}),n.d(e,"Matrix4",function(){return rn}),n.d(e,"MaxEquation",function(){return L}),n.d(e,"Mesh",function(){return Yn}),n.d(e,"MeshBasicMaterial",function(){return Xn}),n.d(e,"MeshDepthMaterial",function(){return Mi}),n.d(e,"MeshDistanceMaterial",function(){return Ai}),n.d(e,"MeshFaceMaterial",function(){return ic}),n.d(e,"MeshLambertMaterial",function(){return Oa}),n.d(e,"MeshMatcapMaterial",function(){return Ra}),n.d(e,"MeshNormalMaterial",function(){return Ia}),n.d(e,"MeshPhongMaterial",function(){return Ca}),n.d(e,"MeshPhysicalMaterial",function(){return Aa}),n.d(e,"MeshStandardMaterial",function(){return Ma}),n.d(e,"MeshToonMaterial",function(){return Pa}),n.d(e,"MinEquation",function(){return k}),n.d(e,"MirroredRepeatWrapping",function(){return bt}),n.d(e,"MixOperation",function(){return et}),n.d(e,"MultiMaterial",function(){return oc}),n.d(e,"MultiplyBlending",function(){return C}),n.d(e,"MultiplyOperation",function(){return tt}),n.d(e,"NearestFilter",function(){return wt}),n.d(e,"NearestMipMapLinearFilter",function(){return _t}),n.d(e,"NearestMipMapNearestFilter",function(){return xt}),n.d(e,"NeverDepth",function(){return q}),n.d(e,"NoBlending",function(){return E}),n.d(e,"NoColors",function(){return x}),n.d(e,"NoToneMapping",function(){return rt}),n.d(e,"NormalBlending",function(){return T}),n.d(e,"NotEqualDepth",function(){return Q}),n.d(e,"NumberKeyframeTrack",function(){return Va}),n.d(e,"Object3D",function(){return bn}),n.d(e,"ObjectLoader",function(){return Xs}),n.d(e,"ObjectSpaceNormalMap",function(){return Ue}),n.d(e,"OctahedronBufferGeometry",function(){return bo}),n.d(e,"OctahedronGeometry",function(){return yo}),n.d(e,"OneFactor",function(){return N}),n.d(e,"OneMinusDstAlphaFactor",function(){return G}),n.d(e,"OneMinusDstColorFactor",function(){return W}),n.d(e,"OneMinusSrcAlphaFactor",function(){return j}),n.d(e,"OneMinusSrcColorFactor",function(){return F}),n.d(e,"OrthographicCamera",function(){return Ns}),n.d(e,"PCFShadowMap",function(){return d}),n.d(e,"PCFSoftShadowMap",function(){return m}),n.d(e,"ParametricBufferGeometry",function(){return ho}),n.d(e,"ParametricGeometry",function(){return fo}),n.d(e,"Particle",function(){return sc}),n.d(e,"ParticleBasicMaterial",function(){return lc}),n.d(e,"ParticleSystem",function(){return uc}),n.d(e,"ParticleSystemMaterial",function(){return fc}),n.d(e,"Path",function(){return Cs}),n.d(e,"PerspectiveCamera",function(){return Li}),n.d(e,"Plane",function(){return en}),n.d(e,"PlaneBufferGeometry",function(){return Un}),n.d(e,"PlaneGeometry",function(){return Fn}),n.d(e,"PlaneHelper",function(){return Zu}),n.d(e,"PointCloud",function(){return ac}),n.d(e,"PointCloudMaterial",function(){return cc}),n.d(e,"PointLight",function(){return Ds}),n.d(e,"PointLightHelper",function(){return ju}),n.d(e,"Points",function(){return oo}),n.d(e,"PointsMaterial",function(){return io}),n.d(e,"PolarGridHelper",function(){return Hu}),n.d(e,"PolyhedronBufferGeometry",function(){return mo}),n.d(e,"PolyhedronGeometry",function(){return po}),n.d(e,"PositionalAudio",function(){return vu}),n.d(e,"PositionalAudioHelper",function(){return qu}),n.d(e,"PropertyBinding",function(){return Su}),n.d(e,"PropertyMixer",function(){return bu}),n.d(e,"QuadraticBezierCurve",function(){return Ss}),n.d(e,"QuadraticBezierCurve3",function(){return Es}),n.d(e,"Quaternion",function(){return Ge}),n.d(e,"QuaternionKeyframeTrack",function(){return Ha}),n.d(e,"QuaternionLinearInterpolant",function(){return Wa}),n.d(e,"REVISION",function(){return o}),n.d(e,"RGBADepthPacking",function(){return Be}),n.d(e,"RGBAFormat",function(){return jt}),n.d(e,"RGBA_ASTC_10x10_Format",function(){return pe}),n.d(e,"RGBA_ASTC_10x5_Format",function(){return le}),n.d(e,"RGBA_ASTC_10x6_Format",function(){return fe}),n.d(e,"RGBA_ASTC_10x8_Format",function(){return he}),n.d(e,"RGBA_ASTC_12x10_Format",function(){return de}),n.d(e,"RGBA_ASTC_12x12_Format",function(){return me}),n.d(e,"RGBA_ASTC_4x4_Format",function(){return ne}),n.d(e,"RGBA_ASTC_5x4_Format",function(){return re}),n.d(e,"RGBA_ASTC_5x5_Format",function(){return ie}),n.d(e,"RGBA_ASTC_6x5_Format",function(){return oe}),n.d(e,"RGBA_ASTC_6x6_Format",function(){return ae}),n.d(e,"RGBA_ASTC_8x5_Format",function(){return se}),n.d(e,"RGBA_ASTC_8x6_Format",function(){return ue}),n.d(e,"RGBA_ASTC_8x8_Format",function(){return ce}),n.d(e,"RGBA_PVRTC_2BPPV1_Format",function(){return te}),n.d(e,"RGBA_PVRTC_4BPPV1_Format",function(){return Qt}),n.d(e,"RGBA_S3TC_DXT1_Format",function(){return Yt}),n.d(e,"RGBA_S3TC_DXT3_Format",function(){return Kt}),n.d(e,"RGBA_S3TC_DXT5_Format",function(){return $t}),n.d(e,"RGBDEncoding",function(){return De}),n.d(e,"RGBEEncoding",function(){return Oe}),n.d(e,"RGBEFormat",function(){return Vt}),n.d(e,"RGBFormat",function(){return Ut}),n.d(e,"RGBM16Encoding",function(){return Le}),n.d(e,"RGBM7Encoding",function(){return ke}),n.d(e,"RGB_ETC1_Format",function(){return ee}),n.d(e,"RGB_PVRTC_2BPPV1_Format",function(){return Zt}),n.d(e,"RGB_PVRTC_4BPPV1_Format",function(){return Jt}),n.d(e,"RGB_S3TC_DXT1_Format",function(){return Xt}),n.d(e,"RawShaderMaterial",function(){return Ta}),n.d(e,"Ray",function(){return Hn}),n.d(e,"Raycaster",function(){return Pu}),n.d(e,"RectAreaLight",function(){return js}),n.d(e,"RectAreaLightHelper",function(){return zu}),n.d(e,"RedFormat",function(){return qt}),n.d(e,"ReinhardToneMapping",function(){return ot}),n.d(e,"RepeatWrapping",function(){return vt}),n.d(e,"ReverseSubtractEquation",function(){return R}),n.d(e,"RingBufferGeometry",function(){return la}),n.d(e,"RingGeometry",function(){return ca}),n.d(e,"Scene",function(){return Hi}),n.d(e,"SceneUtils",function(){return Dc}),n.d(e,"ShaderChunk",function(){return on}),n.d(e,"ShaderLib",function(){return hn}),n.d(e,"ShaderMaterial",function(){return Wn}),n.d(e,"ShadowMaterial",function(){return Ea}),n.d(e,"Shape",function(){return Ps}),n.d(e,"ShapeBufferGeometry",function(){return da}),n.d(e,"ShapeGeometry",function(){return pa}),n.d(e,"ShapePath",function(){return Qs}),n.d(e,"ShapeUtils",function(){return Zo}),n.d(e,"ShortType",function(){return Ct}),n.d(e,"Skeleton",function(){return Zi}),n.d(e,"SkeletonHelper",function(){return Uu}),n.d(e,"SkinnedMesh",function(){return Ji}),n.d(e,"SmoothShading",function(){return w}),n.d(e,"Sphere",function(){return tn}),n.d(e,"SphereBufferGeometry",function(){return ua}),n.d(e,"SphereGeometry",function(){return sa}),n.d(e,"Spherical",function(){return Ru}),n.d(e,"SphericalHarmonics3",function(){return au}),n.d(e,"SphericalReflectionMapping",function(){return dt}),n.d(e,"Spline",function(){return Tc}),n.d(e,"SplineCurve",function(){return Ts}),n.d(e,"SplineCurve3",function(){return Ec}),n.d(e,"SpotLight",function(){return Ls}),n.d(e,"SpotLightHelper",function(){return Fu}),n.d(e,"SpotLightShadow",function(){return ks}),n.d(e,"Sprite",function(){return Ki}),n.d(e,"SpriteMaterial",function(){return Yi}),n.d(e,"SrcAlphaFactor",function(){return U}),n.d(e,"SrcAlphaSaturateFactor",function(){return H}),n.d(e,"SrcColorFactor",function(){return B}),n.d(e,"StereoCamera",function(){return lu}),n.d(e,"StringKeyframeTrack",function(){return qa}),n.d(e,"SubtractEquation",function(){return O}),n.d(e,"SubtractiveBlending",function(){return A}),n.d(e,"TangentSpaceNormalMap",function(){return Fe}),n.d(e,"TetrahedronBufferGeometry",function(){return vo}),n.d(e,"TetrahedronGeometry",function(){return go}),n.d(e,"TextBufferGeometry",function(){return aa}),n.d(e,"TextGeometry",function(){return oa}),n.d(e,"Texture",function(){return Xe}),n.d(e,"TextureLoader",function(){return as}),n.d(e,"TorusBufferGeometry",function(){return Po}),n.d(e,"TorusGeometry",function(){return Co}),n.d(e,"TorusKnotBufferGeometry",function(){return Ao}),n.d(e,"TorusKnotGeometry",function(){return Mo}),n.d(e,"Triangle",function(){return qn}),n.d(e,"TriangleFanDrawMode",function(){return Ae}),n.d(e,"TriangleStripDrawMode",function(){return Me}),n.d(e,"TrianglesDrawMode",function(){return Te}),n.d(e,"TubeBufferGeometry",function(){return To}),n.d(e,"TubeGeometry",function(){return Eo}),n.d(e,"UVMapping",function(){return ct}),n.d(e,"Uint16Attribute",function(){return yc}),n.d(e,"Uint16BufferAttribute",function(){return An}),n.d(e,"Uint32Attribute",function(){return wc}),n.d(e,"Uint32BufferAttribute",function(){return Pn}),n.d(e,"Uint8Attribute",function(){return mc}),n.d(e,"Uint8BufferAttribute",function(){return En}),n.d(e,"Uint8ClampedAttribute",function(){return gc}),n.d(e,"Uint8ClampedBufferAttribute",function(){return Tn}),n.d(e,"Uncharted2ToneMapping",function(){return at}),n.d(e,"Uniform",function(){return Au}),n.d(e,"UniformsLib",function(){return fn}),n.d(e,"UniformsUtils",function(){return un}),n.d(e,"UnsignedByteType",function(){return Mt}),n.d(e,"UnsignedInt248Type",function(){return Bt}),n.d(e,"UnsignedIntType",function(){return Ot}),n.d(e,"UnsignedShort4444Type",function(){return Lt}),n.d(e,"UnsignedShort5551Type",function(){return Dt}),n.d(e,"UnsignedShort565Type",function(){return Nt}),n.d(e,"UnsignedShortType",function(){return Pt}),n.d(e,"Vector2",function(){return ze}),n.d(e,"Vector3",function(){return Ve}),n.d(e,"Vector4",function(){return Ye}),n.d(e,"VectorKeyframeTrack",function(){return Xa}),n.d(e,"Vertex",function(){return hc}),n.d(e,"VertexColors",function(){return S}),n.d(e,"VertexNormalsHelper",function(){return Bu}),n.d(e,"VideoTexture",function(){return ao}),n.d(e,"WebGLMultisampleRenderTarget",function(){return $e}),n.d(e,"WebGLRenderTarget",function(){return Ke}),n.d(e,"WebGLRenderTargetCube",function(){return Je}),n.d(e,"WebGLRenderer",function(){return Gi}),n.d(e,"WebGLUtils",function(){return Oi}),n.d(e,"WireframeGeometry",function(){return lo}),n.d(e,"WireframeHelper",function(){return Pc}),n.d(e,"WrapAroundEnding",function(){return Ee}),n.d(e,"XHRLoader",function(){return Ic}),n.d(e,"ZeroCurvatureEnding",function(){return _e}),n.d(e,"ZeroFactor",function(){return D}),n.d(e,"ZeroSlopeEnding",function(){return Se}),n.d(e,"sRGBEncoding",function(){return Pe}),void 0===Number.EPSILON&&(Number.EPSILON=Math.pow(2,-52)),void 0===Number.isInteger&&(Number.isInteger=function(t){return"number"===typeof t&&isFinite(t)&&Math.floor(t)===t}),void 0===Math.sign&&(Math.sign=function(t){return t<0?-1:t>0?1:+t}),"name"in Function.prototype===!1&&Object.defineProperty(Function.prototype,"name",{get:function(){return this.toString().match(/^\s*function\s*([^\(\s]*)/)[1]}}),void 0===Object.assign&&(Object.assign=function(t){if(void 0===t||null===t)throw new TypeError("Cannot convert undefined or null to object");for(var e=Object(t),n=1;n>8&255]+t[e>>16&255]+t[e>>24&255]+"-"+t[255&n]+t[n>>8&255]+"-"+t[n>>16&15|64]+t[n>>24&255]+"-"+t[63&r|128]+t[r>>8&255]+"-"+t[r>>16&255]+t[r>>24&255]+t[255&i]+t[i>>8&255]+t[i>>16&255]+t[i>>24&255]).toUpperCase()}}(),clamp:function(t,e,n){return Math.max(e,Math.min(n,t))},euclideanModulo:function(t,e){return(t%e+e)%e},mapLinear:function(t,e,n,r,i){return r+(t-e)*(i-r)/(n-e)},lerp:function(t,e,n){return(1-n)*t+n*e},smoothstep:function(t,e,n){return t<=e?0:t>=n?1:(t=(t-e)/(n-e))*t*(3-2*t)},smootherstep:function(t,e,n){return t<=e?0:t>=n?1:(t=(t-e)/(n-e))*t*t*(t*(6*t-15)+10)},randInt:function(t,e){return t+Math.floor(Math.random()*(e-t+1))},randFloat:function(t,e){return t+Math.random()*(e-t)},randFloatSpread:function(t){return t*(.5-Math.random())},degToRad:function(t){return t*je.DEG2RAD},radToDeg:function(t){return t*je.RAD2DEG},isPowerOfTwo:function(t){return 0===(t&t-1)&&0!==t},ceilPowerOfTwo:function(t){return Math.pow(2,Math.ceil(Math.log(t)/Math.LN2))},floorPowerOfTwo:function(t){return Math.pow(2,Math.floor(Math.log(t)/Math.LN2))}};function ze(t,e){this.x=t||0,this.y=e||0}function Ge(t,e,n,r){this._x=t||0,this._y=e||0,this._z=n||0,this._w=void 0!==r?r:1}function Ve(t,e,n){this.x=t||0,this.y=e||0,this.z=n||0}function We(){this.elements=[1,0,0,0,1,0,0,0,1],arguments.length>0&&console.error("THREE.Matrix3: the constructor no longer reads arguments. use .set() instead.")}Object.defineProperties(ze.prototype,{width:{get:function(){return this.x},set:function(t){this.x=t}},height:{get:function(){return this.y},set:function(t){this.y=t}}}),Object.assign(ze.prototype,{isVector2:!0,set:function(t,e){return this.x=t,this.y=e,this},setScalar:function(t){return this.x=t,this.y=t,this},setX:function(t){return this.x=t,this},setY:function(t){return this.y=t,this},setComponent:function(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;default:throw new Error("index is out of range: "+t)}return this},getComponent:function(t){switch(t){case 0:return this.x;case 1:return this.y;default:throw new Error("index is out of range: "+t)}},clone:function(){return new this.constructor(this.x,this.y)},copy:function(t){return this.x=t.x,this.y=t.y,this},add:function(t,e){return void 0!==e?(console.warn("THREE.Vector2: .add() now only accepts one argument. Use .addVectors( a, b ) instead."),this.addVectors(t,e)):(this.x+=t.x,this.y+=t.y,this)},addScalar:function(t){return this.x+=t,this.y+=t,this},addVectors:function(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this},addScaledVector:function(t,e){return this.x+=t.x*e,this.y+=t.y*e,this},sub:function(t,e){return void 0!==e?(console.warn("THREE.Vector2: .sub() now only accepts one argument. Use .subVectors( a, b ) instead."),this.subVectors(t,e)):(this.x-=t.x,this.y-=t.y,this)},subScalar:function(t){return this.x-=t,this.y-=t,this},subVectors:function(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this},multiply:function(t){return this.x*=t.x,this.y*=t.y,this},multiplyScalar:function(t){return this.x*=t,this.y*=t,this},divide:function(t){return this.x/=t.x,this.y/=t.y,this},divideScalar:function(t){return this.multiplyScalar(1/t)},applyMatrix3:function(t){var e=this.x,n=this.y,r=t.elements;return this.x=r[0]*e+r[3]*n+r[6],this.y=r[1]*e+r[4]*n+r[7],this},min:function(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this},max:function(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this},clamp:function(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this},clampScalar:function(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this},clampLength:function(t,e){var n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))},floor:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this},ceil:function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this},round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this},roundToZero:function(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this},negate:function(){return this.x=-this.x,this.y=-this.y,this},dot:function(t){return this.x*t.x+this.y*t.y},cross:function(t){return this.x*t.y-this.y*t.x},lengthSq:function(){return this.x*this.x+this.y*this.y},length:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},manhattanLength:function(){return Math.abs(this.x)+Math.abs(this.y)},normalize:function(){return this.divideScalar(this.length()||1)},angle:function(){var t=Math.atan2(this.y,this.x);return t<0&&(t+=2*Math.PI),t},distanceTo:function(t){return Math.sqrt(this.distanceToSquared(t))},distanceToSquared:function(t){var e=this.x-t.x,n=this.y-t.y;return e*e+n*n},manhattanDistanceTo:function(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)},setLength:function(t){return this.normalize().multiplyScalar(t)},lerp:function(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this},lerpVectors:function(t,e,n){return this.subVectors(e,t).multiplyScalar(n).add(t)},equals:function(t){return t.x===this.x&&t.y===this.y},fromArray:function(t,e){return void 0===e&&(e=0),this.x=t[e],this.y=t[e+1],this},toArray:function(t,e){return void 0===t&&(t=[]),void 0===e&&(e=0),t[e]=this.x,t[e+1]=this.y,t},fromBufferAttribute:function(t,e,n){return void 0!==n&&console.warn("THREE.Vector2: offset has been removed from .fromBufferAttribute()."),this.x=t.getX(e),this.y=t.getY(e),this},rotateAround:function(t,e){var n=Math.cos(e),r=Math.sin(e),i=this.x-t.x,o=this.y-t.y;return this.x=i*n-o*r+t.x,this.y=i*r+o*n+t.y,this}}),Object.assign(Ge,{slerp:function(t,e,n,r){return n.copy(t).slerp(e,r)},slerpFlat:function(t,e,n,r,i,o,a){var s=n[r+0],u=n[r+1],c=n[r+2],l=n[r+3],f=i[o+0],h=i[o+1],p=i[o+2],d=i[o+3];if(l!==d||s!==f||u!==h||c!==p){var m=1-a,g=s*f+u*h+c*p+l*d,v=g>=0?1:-1,y=1-g*g;if(y>Number.EPSILON){var b=Math.sqrt(y),w=Math.atan2(b,g*v);m=Math.sin(m*w)/b,a=Math.sin(a*w)/b}var x=a*v;if(s=s*m+f*x,u=u*m+h*x,c=c*m+p*x,l=l*m+d*x,m===1-a){var _=1/Math.sqrt(s*s+u*u+c*c+l*l);s*=_,u*=_,c*=_,l*=_}}t[e]=s,t[e+1]=u,t[e+2]=c,t[e+3]=l}}),Object.defineProperties(Ge.prototype,{x:{get:function(){return this._x},set:function(t){this._x=t,this.onChangeCallback()}},y:{get:function(){return this._y},set:function(t){this._y=t,this.onChangeCallback()}},z:{get:function(){return this._z},set:function(t){this._z=t,this.onChangeCallback()}},w:{get:function(){return this._w},set:function(t){this._w=t,this.onChangeCallback()}}}),Object.assign(Ge.prototype,{isQuaternion:!0,set:function(t,e,n,r){return this._x=t,this._y=e,this._z=n,this._w=r,this.onChangeCallback(),this},clone:function(){return new this.constructor(this._x,this._y,this._z,this._w)},copy:function(t){return this._x=t.x,this._y=t.y,this._z=t.z,this._w=t.w,this.onChangeCallback(),this},setFromEuler:function(t,e){if(!t||!t.isEuler)throw new Error("THREE.Quaternion: .setFromEuler() now expects an Euler rotation rather than a Vector3 and order.");var n=t._x,r=t._y,i=t._z,o=t.order,a=Math.cos,s=Math.sin,u=a(n/2),c=a(r/2),l=a(i/2),f=s(n/2),h=s(r/2),p=s(i/2);return"XYZ"===o?(this._x=f*c*l+u*h*p,this._y=u*h*l-f*c*p,this._z=u*c*p+f*h*l,this._w=u*c*l-f*h*p):"YXZ"===o?(this._x=f*c*l+u*h*p,this._y=u*h*l-f*c*p,this._z=u*c*p-f*h*l,this._w=u*c*l+f*h*p):"ZXY"===o?(this._x=f*c*l-u*h*p,this._y=u*h*l+f*c*p,this._z=u*c*p+f*h*l,this._w=u*c*l-f*h*p):"ZYX"===o?(this._x=f*c*l-u*h*p,this._y=u*h*l+f*c*p,this._z=u*c*p-f*h*l,this._w=u*c*l+f*h*p):"YZX"===o?(this._x=f*c*l+u*h*p,this._y=u*h*l+f*c*p,this._z=u*c*p-f*h*l,this._w=u*c*l-f*h*p):"XZY"===o&&(this._x=f*c*l-u*h*p,this._y=u*h*l-f*c*p,this._z=u*c*p+f*h*l,this._w=u*c*l+f*h*p),!1!==e&&this.onChangeCallback(),this},setFromAxisAngle:function(t,e){var n=e/2,r=Math.sin(n);return this._x=t.x*r,this._y=t.y*r,this._z=t.z*r,this._w=Math.cos(n),this.onChangeCallback(),this},setFromRotationMatrix:function(t){var e,n=t.elements,r=n[0],i=n[4],o=n[8],a=n[1],s=n[5],u=n[9],c=n[2],l=n[6],f=n[10],h=r+s+f;return h>0?(e=.5/Math.sqrt(h+1),this._w=.25/e,this._x=(l-u)*e,this._y=(o-c)*e,this._z=(a-i)*e):r>s&&r>f?(e=2*Math.sqrt(1+r-s-f),this._w=(l-u)/e,this._x=.25*e,this._y=(i+a)/e,this._z=(o+c)/e):s>f?(e=2*Math.sqrt(1+s-r-f),this._w=(o-c)/e,this._x=(i+a)/e,this._y=.25*e,this._z=(u+l)/e):(e=2*Math.sqrt(1+f-r-s),this._w=(a-i)/e,this._x=(o+c)/e,this._y=(u+l)/e,this._z=.25*e),this.onChangeCallback(),this},setFromUnitVectors:function(t,e){var n=t.dot(e)+1;return n<1e-6?(n=0,Math.abs(t.x)>Math.abs(t.z)?(this._x=-t.y,this._y=t.x,this._z=0,this._w=n):(this._x=0,this._y=-t.z,this._z=t.y,this._w=n)):(this._x=t.y*e.z-t.z*e.y,this._y=t.z*e.x-t.x*e.z,this._z=t.x*e.y-t.y*e.x,this._w=n),this.normalize()},angleTo:function(t){return 2*Math.acos(Math.abs(je.clamp(this.dot(t),-1,1)))},rotateTowards:function(t,e){var n=this.angleTo(t);if(0===n)return this;var r=Math.min(1,e/n);return this.slerp(t,r),this},inverse:function(){return this.conjugate()},conjugate:function(){return this._x*=-1,this._y*=-1,this._z*=-1,this.onChangeCallback(),this},dot:function(t){return this._x*t._x+this._y*t._y+this._z*t._z+this._w*t._w},lengthSq:function(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w},length:function(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)},normalize:function(){var t=this.length();return 0===t?(this._x=0,this._y=0,this._z=0,this._w=1):(t=1/t,this._x=this._x*t,this._y=this._y*t,this._z=this._z*t,this._w=this._w*t),this.onChangeCallback(),this},multiply:function(t,e){return void 0!==e?(console.warn("THREE.Quaternion: .multiply() now only accepts one argument. Use .multiplyQuaternions( a, b ) instead."),this.multiplyQuaternions(t,e)):this.multiplyQuaternions(this,t)},premultiply:function(t){return this.multiplyQuaternions(t,this)},multiplyQuaternions:function(t,e){var n=t._x,r=t._y,i=t._z,o=t._w,a=e._x,s=e._y,u=e._z,c=e._w;return this._x=n*c+o*a+r*u-i*s,this._y=r*c+o*s+i*a-n*u,this._z=i*c+o*u+n*s-r*a,this._w=o*c-n*a-r*s-i*u,this.onChangeCallback(),this},slerp:function(t,e){if(0===e)return this;if(1===e)return this.copy(t);var n=this._x,r=this._y,i=this._z,o=this._w,a=o*t._w+n*t._x+r*t._y+i*t._z;if(a<0?(this._w=-t._w,this._x=-t._x,this._y=-t._y,this._z=-t._z,a=-a):this.copy(t),a>=1)return this._w=o,this._x=n,this._y=r,this._z=i,this;var s=1-a*a;if(s<=Number.EPSILON){var u=1-e;return this._w=u*o+e*this._w,this._x=u*n+e*this._x,this._y=u*r+e*this._y,this._z=u*i+e*this._z,this.normalize()}var c=Math.sqrt(s),l=Math.atan2(c,a),f=Math.sin((1-e)*l)/c,h=Math.sin(e*l)/c;return this._w=o*f+this._w*h,this._x=n*f+this._x*h,this._y=r*f+this._y*h,this._z=i*f+this._z*h,this.onChangeCallback(),this},equals:function(t){return t._x===this._x&&t._y===this._y&&t._z===this._z&&t._w===this._w},fromArray:function(t,e){return void 0===e&&(e=0),this._x=t[e],this._y=t[e+1],this._z=t[e+2],this._w=t[e+3],this.onChangeCallback(),this},toArray:function(t,e){return void 0===t&&(t=[]),void 0===e&&(e=0),t[e]=this._x,t[e+1]=this._y,t[e+2]=this._z,t[e+3]=this._w,t},onChange:function(t){return this.onChangeCallback=t,this},onChangeCallback:function(){}}),Object.assign(Ve.prototype,{isVector3:!0,set:function(t,e,n){return this.x=t,this.y=e,this.z=n,this},setScalar:function(t){return this.x=t,this.y=t,this.z=t,this},setX:function(t){return this.x=t,this},setY:function(t){return this.y=t,this},setZ:function(t){return this.z=t,this},setComponent:function(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;default:throw new Error("index is out of range: "+t)}return this},getComponent:function(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw new Error("index is out of range: "+t)}},clone:function(){return new this.constructor(this.x,this.y,this.z)},copy:function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this},add:function(t,e){return void 0!==e?(console.warn("THREE.Vector3: .add() now only accepts one argument. Use .addVectors( a, b ) instead."),this.addVectors(t,e)):(this.x+=t.x,this.y+=t.y,this.z+=t.z,this)},addScalar:function(t){return this.x+=t,this.y+=t,this.z+=t,this},addVectors:function(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this.z=t.z+e.z,this},addScaledVector:function(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this},sub:function(t,e){return void 0!==e?(console.warn("THREE.Vector3: .sub() now only accepts one argument. Use .subVectors( a, b ) instead."),this.subVectors(t,e)):(this.x-=t.x,this.y-=t.y,this.z-=t.z,this)},subScalar:function(t){return this.x-=t,this.y-=t,this.z-=t,this},subVectors:function(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this},multiply:function(t,e){return void 0!==e?(console.warn("THREE.Vector3: .multiply() now only accepts one argument. Use .multiplyVectors( a, b ) instead."),this.multiplyVectors(t,e)):(this.x*=t.x,this.y*=t.y,this.z*=t.z,this)},multiplyScalar:function(t){return this.x*=t,this.y*=t,this.z*=t,this},multiplyVectors:function(t,e){return this.x=t.x*e.x,this.y=t.y*e.y,this.z=t.z*e.z,this},applyEuler:function(){var t=new Ge;return function(e){return e&&e.isEuler||console.error("THREE.Vector3: .applyEuler() now expects an Euler rotation rather than a Vector3 and order."),this.applyQuaternion(t.setFromEuler(e))}}(),applyAxisAngle:function(){var t=new Ge;return function(e,n){return this.applyQuaternion(t.setFromAxisAngle(e,n))}}(),applyMatrix3:function(t){var e=this.x,n=this.y,r=this.z,i=t.elements;return this.x=i[0]*e+i[3]*n+i[6]*r,this.y=i[1]*e+i[4]*n+i[7]*r,this.z=i[2]*e+i[5]*n+i[8]*r,this},applyMatrix4:function(t){var e=this.x,n=this.y,r=this.z,i=t.elements,o=1/(i[3]*e+i[7]*n+i[11]*r+i[15]);return this.x=(i[0]*e+i[4]*n+i[8]*r+i[12])*o,this.y=(i[1]*e+i[5]*n+i[9]*r+i[13])*o,this.z=(i[2]*e+i[6]*n+i[10]*r+i[14])*o,this},applyQuaternion:function(t){var e=this.x,n=this.y,r=this.z,i=t.x,o=t.y,a=t.z,s=t.w,u=s*e+o*r-a*n,c=s*n+a*e-i*r,l=s*r+i*n-o*e,f=-i*e-o*n-a*r;return this.x=u*s+f*-i+c*-a-l*-o,this.y=c*s+f*-o+l*-i-u*-a,this.z=l*s+f*-a+u*-o-c*-i,this},project:function(t){return this.applyMatrix4(t.matrixWorldInverse).applyMatrix4(t.projectionMatrix)},unproject:function(t){return this.applyMatrix4(t.projectionMatrixInverse).applyMatrix4(t.matrixWorld)},transformDirection:function(t){var e=this.x,n=this.y,r=this.z,i=t.elements;return this.x=i[0]*e+i[4]*n+i[8]*r,this.y=i[1]*e+i[5]*n+i[9]*r,this.z=i[2]*e+i[6]*n+i[10]*r,this.normalize()},divide:function(t){return this.x/=t.x,this.y/=t.y,this.z/=t.z,this},divideScalar:function(t){return this.multiplyScalar(1/t)},min:function(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.z=Math.min(this.z,t.z),this},max:function(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this.z=Math.max(this.z,t.z),this},clamp:function(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this.z=Math.max(t.z,Math.min(e.z,this.z)),this},clampScalar:function(t,e){return this.x=Math.max(t,Math.min(e,this.x)),this.y=Math.max(t,Math.min(e,this.y)),this.z=Math.max(t,Math.min(e,this.z)),this},clampLength:function(t,e){var n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))},floor:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this},ceil:function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this},round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this},roundToZero:function(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this.z=this.z<0?Math.ceil(this.z):Math.floor(this.z),this},negate:function(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this},dot:function(t){return this.x*t.x+this.y*t.y+this.z*t.z},lengthSq:function(){return this.x*this.x+this.y*this.y+this.z*this.z},length:function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)},manhattanLength:function(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)},normalize:function(){return this.divideScalar(this.length()||1)},setLength:function(t){return this.normalize().multiplyScalar(t)},lerp:function(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this.z+=(t.z-this.z)*e,this},lerpVectors:function(t,e,n){return this.subVectors(e,t).multiplyScalar(n).add(t)},cross:function(t,e){return void 0!==e?(console.warn("THREE.Vector3: .cross() now only accepts one argument. Use .crossVectors( a, b ) instead."),this.crossVectors(t,e)):this.crossVectors(this,t)},crossVectors:function(t,e){var n=t.x,r=t.y,i=t.z,o=e.x,a=e.y,s=e.z;return this.x=r*s-i*a,this.y=i*o-n*s,this.z=n*a-r*o,this},projectOnVector:function(t){var e=t.dot(this)/t.lengthSq();return this.copy(t).multiplyScalar(e)},projectOnPlane:function(){var t=new Ve;return function(e){return t.copy(this).projectOnVector(e),this.sub(t)}}(),reflect:function(){var t=new Ve;return function(e){return this.sub(t.copy(e).multiplyScalar(2*this.dot(e)))}}(),angleTo:function(t){var e=this.dot(t)/Math.sqrt(this.lengthSq()*t.lengthSq());return Math.acos(je.clamp(e,-1,1))},distanceTo:function(t){return Math.sqrt(this.distanceToSquared(t))},distanceToSquared:function(t){var e=this.x-t.x,n=this.y-t.y,r=this.z-t.z;return e*e+n*n+r*r},manhattanDistanceTo:function(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)+Math.abs(this.z-t.z)},setFromSpherical:function(t){return this.setFromSphericalCoords(t.radius,t.phi,t.theta)},setFromSphericalCoords:function(t,e,n){var r=Math.sin(e)*t;return this.x=r*Math.sin(n),this.y=Math.cos(e)*t,this.z=r*Math.cos(n),this},setFromCylindrical:function(t){return this.setFromCylindricalCoords(t.radius,t.theta,t.y)},setFromCylindricalCoords:function(t,e,n){return this.x=t*Math.sin(e),this.y=n,this.z=t*Math.cos(e),this},setFromMatrixPosition:function(t){var e=t.elements;return this.x=e[12],this.y=e[13],this.z=e[14],this},setFromMatrixScale:function(t){var e=this.setFromMatrixColumn(t,0).length(),n=this.setFromMatrixColumn(t,1).length(),r=this.setFromMatrixColumn(t,2).length();return this.x=e,this.y=n,this.z=r,this},setFromMatrixColumn:function(t,e){return this.fromArray(t.elements,4*e)},equals:function(t){return t.x===this.x&&t.y===this.y&&t.z===this.z},fromArray:function(t,e){return void 0===e&&(e=0),this.x=t[e],this.y=t[e+1],this.z=t[e+2],this},toArray:function(t,e){return void 0===t&&(t=[]),void 0===e&&(e=0),t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t},fromBufferAttribute:function(t,e,n){return void 0!==n&&console.warn("THREE.Vector3: offset has been removed from .fromBufferAttribute()."),this.x=t.getX(e),this.y=t.getY(e),this.z=t.getZ(e),this}}),Object.assign(We.prototype,{isMatrix3:!0,set:function(t,e,n,r,i,o,a,s,u){var c=this.elements;return c[0]=t,c[1]=r,c[2]=a,c[3]=e,c[4]=i,c[5]=s,c[6]=n,c[7]=o,c[8]=u,this},identity:function(){return this.set(1,0,0,0,1,0,0,0,1),this},clone:function(){return(new this.constructor).fromArray(this.elements)},copy:function(t){var e=this.elements,n=t.elements;return e[0]=n[0],e[1]=n[1],e[2]=n[2],e[3]=n[3],e[4]=n[4],e[5]=n[5],e[6]=n[6],e[7]=n[7],e[8]=n[8],this},setFromMatrix4:function(t){var e=t.elements;return this.set(e[0],e[4],e[8],e[1],e[5],e[9],e[2],e[6],e[10]),this},applyToBufferAttribute:function(){var t=new Ve;return function(e){for(var n=0,r=e.count;n2048||e.height>2048?e.toDataURL("image/jpeg",.6):e.toDataURL("image/png")}},qe=0;function Xe(t,e,n,r,i,o,a,s,u,c){Object.defineProperty(this,"id",{value:qe++}),this.uuid=je.generateUUID(),this.name="",this.image=void 0!==t?t:Xe.DEFAULT_IMAGE,this.mipmaps=[],this.mapping=void 0!==e?e:Xe.DEFAULT_MAPPING,this.wrapS=void 0!==n?n:yt,this.wrapT=void 0!==r?r:yt,this.magFilter=void 0!==i?i:St,this.minFilter=void 0!==o?o:Tt,this.anisotropy=void 0!==u?u:1,this.format=void 0!==a?a:jt,this.type=void 0!==s?s:Mt,this.offset=new ze(0,0),this.repeat=new ze(1,1),this.center=new ze(0,0),this.rotation=0,this.matrixAutoUpdate=!0,this.matrix=new We,this.generateMipmaps=!0,this.premultiplyAlpha=!1,this.flipY=!0,this.unpackAlignment=4,this.encoding=void 0!==c?c:Ce,this.version=0,this.onUpdate=null}function Ye(t,e,n,r){this.x=t||0,this.y=e||0,this.z=n||0,this.w=void 0!==r?r:1}function Ke(t,e,n){this.width=t,this.height=e,this.scissor=new Ye(0,0,t,e),this.scissorTest=!1,this.viewport=new Ye(0,0,t,e),n=n||{},this.texture=new Xe(void 0,void 0,n.wrapS,n.wrapT,n.magFilter,n.minFilter,n.format,n.type,n.anisotropy,n.encoding),this.texture.generateMipmaps=void 0!==n.generateMipmaps&&n.generateMipmaps,this.texture.minFilter=void 0!==n.minFilter?n.minFilter:St,this.depthBuffer=void 0===n.depthBuffer||n.depthBuffer,this.stencilBuffer=void 0===n.stencilBuffer||n.stencilBuffer,this.depthTexture=void 0!==n.depthTexture?n.depthTexture:null}function $e(t,e,n){Ke.call(this,t,e,n),this.samples=4}function Je(t,e,n){Ke.call(this,t,e,n)}function Ze(t,e,n,r,i,o,a,s,u,c,l,f){Xe.call(this,null,o,a,s,u,c,r,i,l,f),this.image={data:t,width:e,height:n},this.magFilter=void 0!==u?u:wt,this.minFilter=void 0!==c?c:wt,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}function Qe(t,e){this.min=void 0!==t?t:new Ve(1/0,1/0,1/0),this.max=void 0!==e?e:new Ve(-1/0,-1/0,-1/0)}function tn(t,e){this.center=void 0!==t?t:new Ve,this.radius=void 0!==e?e:0}function en(t,e){this.normal=void 0!==t?t:new Ve(1,0,0),this.constant=void 0!==e?e:0}function nn(t,e,n,r,i,o){this.planes=[void 0!==t?t:new en,void 0!==e?e:new en,void 0!==n?n:new en,void 0!==r?r:new en,void 0!==i?i:new en,void 0!==o?o:new en]}function rn(){this.elements=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],arguments.length>0&&console.error("THREE.Matrix4: the constructor no longer reads arguments. use .set() instead.")}Xe.DEFAULT_IMAGE=void 0,Xe.DEFAULT_MAPPING=ct,Xe.prototype=Object.assign(Object.create(r.prototype),{constructor:Xe,isTexture:!0,updateMatrix:function(){this.matrix.setUvTransform(this.offset.x,this.offset.y,this.repeat.x,this.repeat.y,this.rotation,this.center.x,this.center.y)},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.name=t.name,this.image=t.image,this.mipmaps=t.mipmaps.slice(0),this.mapping=t.mapping,this.wrapS=t.wrapS,this.wrapT=t.wrapT,this.magFilter=t.magFilter,this.minFilter=t.minFilter,this.anisotropy=t.anisotropy,this.format=t.format,this.type=t.type,this.offset.copy(t.offset),this.repeat.copy(t.repeat),this.center.copy(t.center),this.rotation=t.rotation,this.matrixAutoUpdate=t.matrixAutoUpdate,this.matrix.copy(t.matrix),this.generateMipmaps=t.generateMipmaps,this.premultiplyAlpha=t.premultiplyAlpha,this.flipY=t.flipY,this.unpackAlignment=t.unpackAlignment,this.encoding=t.encoding,this},toJSON:function(t){var e=void 0===t||"string"===typeof t;if(!e&&void 0!==t.textures[this.uuid])return t.textures[this.uuid];var n={metadata:{version:4.5,type:"Texture",generator:"Texture.toJSON"},uuid:this.uuid,name:this.name,mapping:this.mapping,repeat:[this.repeat.x,this.repeat.y],offset:[this.offset.x,this.offset.y],center:[this.center.x,this.center.y],rotation:this.rotation,wrap:[this.wrapS,this.wrapT],format:this.format,type:this.type,encoding:this.encoding,minFilter:this.minFilter,magFilter:this.magFilter,anisotropy:this.anisotropy,flipY:this.flipY,premultiplyAlpha:this.premultiplyAlpha,unpackAlignment:this.unpackAlignment};if(void 0!==this.image){var r=this.image;if(void 0===r.uuid&&(r.uuid=je.generateUUID()),!e&&void 0===t.images[r.uuid]){var i;if(Array.isArray(r)){i=[];for(var o=0,a=r.length;o1)switch(this.wrapS){case vt:t.x=t.x-Math.floor(t.x);break;case yt:t.x=t.x<0?0:1;break;case bt:1===Math.abs(Math.floor(t.x)%2)?t.x=Math.ceil(t.x)-t.x:t.x=t.x-Math.floor(t.x)}if(t.y<0||t.y>1)switch(this.wrapT){case vt:t.y=t.y-Math.floor(t.y);break;case yt:t.y=t.y<0?0:1;break;case bt:1===Math.abs(Math.floor(t.y)%2)?t.y=Math.ceil(t.y)-t.y:t.y=t.y-Math.floor(t.y)}return this.flipY&&(t.y=1-t.y),t}}),Object.defineProperty(Xe.prototype,"needsUpdate",{set:function(t){!0===t&&this.version++}}),Object.assign(Ye.prototype,{isVector4:!0,set:function(t,e,n,r){return this.x=t,this.y=e,this.z=n,this.w=r,this},setScalar:function(t){return this.x=t,this.y=t,this.z=t,this.w=t,this},setX:function(t){return this.x=t,this},setY:function(t){return this.y=t,this},setZ:function(t){return this.z=t,this},setW:function(t){return this.w=t,this},setComponent:function(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;case 3:this.w=e;break;default:throw new Error("index is out of range: "+t)}return this},getComponent:function(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;case 3:return this.w;default:throw new Error("index is out of range: "+t)}},clone:function(){return new this.constructor(this.x,this.y,this.z,this.w)},copy:function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this.w=void 0!==t.w?t.w:1,this},add:function(t,e){return void 0!==e?(console.warn("THREE.Vector4: .add() now only accepts one argument. Use .addVectors( a, b ) instead."),this.addVectors(t,e)):(this.x+=t.x,this.y+=t.y,this.z+=t.z,this.w+=t.w,this)},addScalar:function(t){return this.x+=t,this.y+=t,this.z+=t,this.w+=t,this},addVectors:function(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this.z=t.z+e.z,this.w=t.w+e.w,this},addScaledVector:function(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this.w+=t.w*e,this},sub:function(t,e){return void 0!==e?(console.warn("THREE.Vector4: .sub() now only accepts one argument. Use .subVectors( a, b ) instead."),this.subVectors(t,e)):(this.x-=t.x,this.y-=t.y,this.z-=t.z,this.w-=t.w,this)},subScalar:function(t){return this.x-=t,this.y-=t,this.z-=t,this.w-=t,this},subVectors:function(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this.w=t.w-e.w,this},multiplyScalar:function(t){return this.x*=t,this.y*=t,this.z*=t,this.w*=t,this},applyMatrix4:function(t){var e=this.x,n=this.y,r=this.z,i=this.w,o=t.elements;return this.x=o[0]*e+o[4]*n+o[8]*r+o[12]*i,this.y=o[1]*e+o[5]*n+o[9]*r+o[13]*i,this.z=o[2]*e+o[6]*n+o[10]*r+o[14]*i,this.w=o[3]*e+o[7]*n+o[11]*r+o[15]*i,this},divideScalar:function(t){return this.multiplyScalar(1/t)},setAxisAngleFromQuaternion:function(t){this.w=2*Math.acos(t.w);var e=Math.sqrt(1-t.w*t.w);return e<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=t.x/e,this.y=t.y/e,this.z=t.z/e),this},setAxisAngleFromRotationMatrix:function(t){var e,n,r,i,o=t.elements,a=o[0],s=o[4],u=o[8],c=o[1],l=o[5],f=o[9],h=o[2],p=o[6],d=o[10];if(Math.abs(s-c)<.01&&Math.abs(u-h)<.01&&Math.abs(f-p)<.01){if(Math.abs(s+c)<.1&&Math.abs(u+h)<.1&&Math.abs(f+p)<.1&&Math.abs(a+l+d-3)<.1)return this.set(1,0,0,0),this;e=Math.PI;var m=(a+1)/2,g=(l+1)/2,v=(d+1)/2,y=(s+c)/4,b=(u+h)/4,w=(f+p)/4;return m>g&&m>v?m<.01?(n=0,r=.707106781,i=.707106781):(r=y/(n=Math.sqrt(m)),i=b/n):g>v?g<.01?(n=.707106781,r=0,i=.707106781):(n=y/(r=Math.sqrt(g)),i=w/r):v<.01?(n=.707106781,r=.707106781,i=0):(n=b/(i=Math.sqrt(v)),r=w/i),this.set(n,r,i,e),this}var x=Math.sqrt((p-f)*(p-f)+(u-h)*(u-h)+(c-s)*(c-s));return Math.abs(x)<.001&&(x=1),this.x=(p-f)/x,this.y=(u-h)/x,this.z=(c-s)/x,this.w=Math.acos((a+l+d-1)/2),this},min:function(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.z=Math.min(this.z,t.z),this.w=Math.min(this.w,t.w),this},max:function(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this.z=Math.max(this.z,t.z),this.w=Math.max(this.w,t.w),this},clamp:function(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this.z=Math.max(t.z,Math.min(e.z,this.z)),this.w=Math.max(t.w,Math.min(e.w,this.w)),this},clampScalar:function(){var t,e;return function(n,r){return void 0===t&&(t=new Ye,e=new Ye),t.set(n,n,n,n),e.set(r,r,r,r),this.clamp(t,e)}}(),clampLength:function(t,e){var n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))},floor:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this.w=Math.floor(this.w),this},ceil:function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this.w=Math.ceil(this.w),this},round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this.w=Math.round(this.w),this},roundToZero:function(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this.z=this.z<0?Math.ceil(this.z):Math.floor(this.z),this.w=this.w<0?Math.ceil(this.w):Math.floor(this.w),this},negate:function(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this.w=-this.w,this},dot:function(t){return this.x*t.x+this.y*t.y+this.z*t.z+this.w*t.w},lengthSq:function(){return this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w},length:function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w)},manhattanLength:function(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)+Math.abs(this.w)},normalize:function(){return this.divideScalar(this.length()||1)},setLength:function(t){return this.normalize().multiplyScalar(t)},lerp:function(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this.z+=(t.z-this.z)*e,this.w+=(t.w-this.w)*e,this},lerpVectors:function(t,e,n){return this.subVectors(e,t).multiplyScalar(n).add(t)},equals:function(t){return t.x===this.x&&t.y===this.y&&t.z===this.z&&t.w===this.w},fromArray:function(t,e){return void 0===e&&(e=0),this.x=t[e],this.y=t[e+1],this.z=t[e+2],this.w=t[e+3],this},toArray:function(t,e){return void 0===t&&(t=[]),void 0===e&&(e=0),t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t[e+3]=this.w,t},fromBufferAttribute:function(t,e,n){return void 0!==n&&console.warn("THREE.Vector4: offset has been removed from .fromBufferAttribute()."),this.x=t.getX(e),this.y=t.getY(e),this.z=t.getZ(e),this.w=t.getW(e),this}}),Ke.prototype=Object.assign(Object.create(r.prototype),{constructor:Ke,isWebGLRenderTarget:!0,setSize:function(t,e){this.width===t&&this.height===e||(this.width=t,this.height=e,this.dispose()),this.viewport.set(0,0,t,e),this.scissor.set(0,0,t,e)},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.width=t.width,this.height=t.height,this.viewport.copy(t.viewport),this.texture=t.texture.clone(),this.depthBuffer=t.depthBuffer,this.stencilBuffer=t.stencilBuffer,this.depthTexture=t.depthTexture,this},dispose:function(){this.dispatchEvent({type:"dispose"})}}),$e.prototype=Object.assign(Object.create(Ke.prototype),{constructor:$e,isWebGLMultisampleRenderTarget:!0,copy:function(t){return Ke.prototype.copy.call(this,t),this.samples=t.samples,this}}),Je.prototype=Object.create(Ke.prototype),Je.prototype.constructor=Je,Je.prototype.isWebGLRenderTargetCube=!0,Ze.prototype=Object.create(Xe.prototype),Ze.prototype.constructor=Ze,Ze.prototype.isDataTexture=!0,Object.assign(Qe.prototype,{isBox3:!0,set:function(t,e){return this.min.copy(t),this.max.copy(e),this},setFromArray:function(t){for(var e=1/0,n=1/0,r=1/0,i=-1/0,o=-1/0,a=-1/0,s=0,u=t.length;si&&(i=c),l>o&&(o=l),f>a&&(a=f)}return this.min.set(e,n,r),this.max.set(i,o,a),this},setFromBufferAttribute:function(t){for(var e=1/0,n=1/0,r=1/0,i=-1/0,o=-1/0,a=-1/0,s=0,u=t.count;si&&(i=c),l>o&&(o=l),f>a&&(a=f)}return this.min.set(e,n,r),this.max.set(i,o,a),this},setFromPoints:function(t){this.makeEmpty();for(var e=0,n=t.length;ethis.max.x||t.ythis.max.y||t.zthis.max.z)},containsBox:function(t){return this.min.x<=t.min.x&&t.max.x<=this.max.x&&this.min.y<=t.min.y&&t.max.y<=this.max.y&&this.min.z<=t.min.z&&t.max.z<=this.max.z},getParameter:function(t,e){return void 0===e&&(console.warn("THREE.Box3: .getParameter() target is now required"),e=new Ve),e.set((t.x-this.min.x)/(this.max.x-this.min.x),(t.y-this.min.y)/(this.max.y-this.min.y),(t.z-this.min.z)/(this.max.z-this.min.z))},intersectsBox:function(t){return!(t.max.xthis.max.x||t.max.ythis.max.y||t.max.zthis.max.z)},intersectsSphere:function(){var t=new Ve;return function(e){return this.clampPoint(e.center,t),t.distanceToSquared(e.center)<=e.radius*e.radius}}(),intersectsPlane:function(t){var e,n;return t.normal.x>0?(e=t.normal.x*this.min.x,n=t.normal.x*this.max.x):(e=t.normal.x*this.max.x,n=t.normal.x*this.min.x),t.normal.y>0?(e+=t.normal.y*this.min.y,n+=t.normal.y*this.max.y):(e+=t.normal.y*this.max.y,n+=t.normal.y*this.min.y),t.normal.z>0?(e+=t.normal.z*this.min.z,n+=t.normal.z*this.max.z):(e+=t.normal.z*this.max.z,n+=t.normal.z*this.min.z),e<=-t.constant&&n>=-t.constant},intersectsTriangle:function(){var t=new Ve,e=new Ve,n=new Ve,r=new Ve,i=new Ve,o=new Ve,a=new Ve,s=new Ve,u=new Ve,c=new Ve;function l(r){var i,o;for(i=0,o=r.length-3;i<=o;i+=3){a.fromArray(r,i);var s=u.x*Math.abs(a.x)+u.y*Math.abs(a.y)+u.z*Math.abs(a.z),c=t.dot(a),l=e.dot(a),f=n.dot(a);if(Math.max(-Math.max(c,l,f),Math.min(c,l,f))>s)return!1}return!0}return function(a){if(this.isEmpty())return!1;this.getCenter(s),u.subVectors(this.max,s),t.subVectors(a.a,s),e.subVectors(a.b,s),n.subVectors(a.c,s),r.subVectors(e,t),i.subVectors(n,e),o.subVectors(t,n);var f=[0,-r.z,r.y,0,-i.z,i.y,0,-o.z,o.y,r.z,0,-r.x,i.z,0,-i.x,o.z,0,-o.x,-r.y,r.x,0,-i.y,i.x,0,-o.y,o.x,0];return!!l(f)&&(!!l(f=[1,0,0,0,1,0,0,0,1])&&(c.crossVectors(r,i),l(f=[c.x,c.y,c.z])))}}(),clampPoint:function(t,e){return void 0===e&&(console.warn("THREE.Box3: .clampPoint() target is now required"),e=new Ve),e.copy(t).clamp(this.min,this.max)},distanceToPoint:function(){var t=new Ve;return function(e){return t.copy(e).clamp(this.min,this.max).sub(e).length()}}(),getBoundingSphere:function(){var t=new Ve;return function(e){return void 0===e&&console.error("THREE.Box3: .getBoundingSphere() target is now required"),this.getCenter(e.center),e.radius=.5*this.getSize(t).length(),e}}(),intersect:function(t){return this.min.max(t.min),this.max.min(t.max),this.isEmpty()&&this.makeEmpty(),this},union:function(t){return this.min.min(t.min),this.max.max(t.max),this},applyMatrix4:function(){var t=[new Ve,new Ve,new Ve,new Ve,new Ve,new Ve,new Ve,new Ve];return function(e){return this.isEmpty()?this:(t[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(e),t[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(e),t[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(e),t[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(e),t[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(e),t[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(e),t[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(e),t[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(e),this.setFromPoints(t),this)}}(),translate:function(t){return this.min.add(t),this.max.add(t),this},equals:function(t){return t.min.equals(this.min)&&t.max.equals(this.max)}}),Object.assign(tn.prototype,{set:function(t,e){return this.center.copy(t),this.radius=e,this},setFromPoints:function(){var t=new Qe;return function(e,n){var r=this.center;void 0!==n?r.copy(n):t.setFromPoints(e).getCenter(r);for(var i=0,o=0,a=e.length;othis.radius*this.radius&&(e.sub(this.center).normalize(),e.multiplyScalar(this.radius).add(this.center)),e},getBoundingBox:function(t){return void 0===t&&(console.warn("THREE.Sphere: .getBoundingBox() target is now required"),t=new Qe),t.set(this.center,this.center),t.expandByScalar(this.radius),t},applyMatrix4:function(t){return this.center.applyMatrix4(t),this.radius=this.radius*t.getMaxScaleOnAxis(),this},translate:function(t){return this.center.add(t),this},equals:function(t){return t.center.equals(this.center)&&t.radius===this.radius}}),Object.assign(en.prototype,{set:function(t,e){return this.normal.copy(t),this.constant=e,this},setComponents:function(t,e,n,r){return this.normal.set(t,e,n),this.constant=r,this},setFromNormalAndCoplanarPoint:function(t,e){return this.normal.copy(t),this.constant=-e.dot(this.normal),this},setFromCoplanarPoints:function(){var t=new Ve,e=new Ve;return function(n,r,i){var o=t.subVectors(i,r).cross(e.subVectors(n,r)).normalize();return this.setFromNormalAndCoplanarPoint(o,n),this}}(),clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.normal.copy(t.normal),this.constant=t.constant,this},normalize:function(){var t=1/this.normal.length();return this.normal.multiplyScalar(t),this.constant*=t,this},negate:function(){return this.constant*=-1,this.normal.negate(),this},distanceToPoint:function(t){return this.normal.dot(t)+this.constant},distanceToSphere:function(t){return this.distanceToPoint(t.center)-t.radius},projectPoint:function(t,e){return void 0===e&&(console.warn("THREE.Plane: .projectPoint() target is now required"),e=new Ve),e.copy(this.normal).multiplyScalar(-this.distanceToPoint(t)).add(t)},intersectLine:function(){var t=new Ve;return function(e,n){void 0===n&&(console.warn("THREE.Plane: .intersectLine() target is now required"),n=new Ve);var r=e.delta(t),i=this.normal.dot(r);if(0===i)return 0===this.distanceToPoint(e.start)?n.copy(e.start):void 0;var o=-(e.start.dot(this.normal)+this.constant)/i;return o<0||o>1?void 0:n.copy(r).multiplyScalar(o).add(e.start)}}(),intersectsLine:function(t){var e=this.distanceToPoint(t.start),n=this.distanceToPoint(t.end);return e<0&&n>0||n<0&&e>0},intersectsBox:function(t){return t.intersectsPlane(this)},intersectsSphere:function(t){return t.intersectsPlane(this)},coplanarPoint:function(t){return void 0===t&&(console.warn("THREE.Plane: .coplanarPoint() target is now required"),t=new Ve),t.copy(this.normal).multiplyScalar(-this.constant)},applyMatrix4:function(){var t=new Ve,e=new We;return function(n,r){var i=r||e.getNormalMatrix(n),o=this.coplanarPoint(t).applyMatrix4(n),a=this.normal.applyMatrix3(i).normalize();return this.constant=-o.dot(a),this}}(),translate:function(t){return this.constant-=t.dot(this.normal),this},equals:function(t){return t.normal.equals(this.normal)&&t.constant===this.constant}}),Object.assign(nn.prototype,{set:function(t,e,n,r,i,o){var a=this.planes;return a[0].copy(t),a[1].copy(e),a[2].copy(n),a[3].copy(r),a[4].copy(i),a[5].copy(o),this},clone:function(){return(new this.constructor).copy(this)},copy:function(t){for(var e=this.planes,n=0;n<6;n++)e[n].copy(t.planes[n]);return this},setFromMatrix:function(t){var e=this.planes,n=t.elements,r=n[0],i=n[1],o=n[2],a=n[3],s=n[4],u=n[5],c=n[6],l=n[7],f=n[8],h=n[9],p=n[10],d=n[11],m=n[12],g=n[13],v=n[14],y=n[15];return e[0].setComponents(a-r,l-s,d-f,y-m).normalize(),e[1].setComponents(a+r,l+s,d+f,y+m).normalize(),e[2].setComponents(a+i,l+u,d+h,y+g).normalize(),e[3].setComponents(a-i,l-u,d-h,y-g).normalize(),e[4].setComponents(a-o,l-c,d-p,y-v).normalize(),e[5].setComponents(a+o,l+c,d+p,y+v).normalize(),this},intersectsObject:function(){var t=new tn;return function(e){var n=e.geometry;return null===n.boundingSphere&&n.computeBoundingSphere(),t.copy(n.boundingSphere).applyMatrix4(e.matrixWorld),this.intersectsSphere(t)}}(),intersectsSprite:function(){var t=new tn;return function(e){return t.center.set(0,0,0),t.radius=.7071067811865476,t.applyMatrix4(e.matrixWorld),this.intersectsSphere(t)}}(),intersectsSphere:function(t){for(var e=this.planes,n=t.center,r=-t.radius,i=0;i<6;i++){if(e[i].distanceToPoint(n)0?e.max.x:e.min.x,t.y=i.normal.y>0?e.max.y:e.min.y,t.z=i.normal.z>0?e.max.z:e.min.z,i.distanceToPoint(t)<0)return!1}return!0}}(),containsPoint:function(t){for(var e=this.planes,n=0;n<6;n++)if(e[n].distanceToPoint(t)<0)return!1;return!0}}),Object.assign(rn.prototype,{isMatrix4:!0,set:function(t,e,n,r,i,o,a,s,u,c,l,f,h,p,d,m){var g=this.elements;return g[0]=t,g[4]=e,g[8]=n,g[12]=r,g[1]=i,g[5]=o,g[9]=a,g[13]=s,g[2]=u,g[6]=c,g[10]=l,g[14]=f,g[3]=h,g[7]=p,g[11]=d,g[15]=m,this},identity:function(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this},clone:function(){return(new rn).fromArray(this.elements)},copy:function(t){var e=this.elements,n=t.elements;return e[0]=n[0],e[1]=n[1],e[2]=n[2],e[3]=n[3],e[4]=n[4],e[5]=n[5],e[6]=n[6],e[7]=n[7],e[8]=n[8],e[9]=n[9],e[10]=n[10],e[11]=n[11],e[12]=n[12],e[13]=n[13],e[14]=n[14],e[15]=n[15],this},copyPosition:function(t){var e=this.elements,n=t.elements;return e[12]=n[12],e[13]=n[13],e[14]=n[14],this},extractBasis:function(t,e,n){return t.setFromMatrixColumn(this,0),e.setFromMatrixColumn(this,1),n.setFromMatrixColumn(this,2),this},makeBasis:function(t,e,n){return this.set(t.x,e.x,n.x,0,t.y,e.y,n.y,0,t.z,e.z,n.z,0,0,0,0,1),this},extractRotation:function(){var t=new Ve;return function(e){var n=this.elements,r=e.elements,i=1/t.setFromMatrixColumn(e,0).length(),o=1/t.setFromMatrixColumn(e,1).length(),a=1/t.setFromMatrixColumn(e,2).length();return n[0]=r[0]*i,n[1]=r[1]*i,n[2]=r[2]*i,n[3]=0,n[4]=r[4]*o,n[5]=r[5]*o,n[6]=r[6]*o,n[7]=0,n[8]=r[8]*a,n[9]=r[9]*a,n[10]=r[10]*a,n[11]=0,n[12]=0,n[13]=0,n[14]=0,n[15]=1,this}}(),makeRotationFromEuler:function(t){t&&t.isEuler||console.error("THREE.Matrix4: .makeRotationFromEuler() now expects a Euler rotation rather than a Vector3 and order.");var e=this.elements,n=t.x,r=t.y,i=t.z,o=Math.cos(n),a=Math.sin(n),s=Math.cos(r),u=Math.sin(r),c=Math.cos(i),l=Math.sin(i);if("XYZ"===t.order){var f=o*c,h=o*l,p=a*c,d=a*l;e[0]=s*c,e[4]=-s*l,e[8]=u,e[1]=h+p*u,e[5]=f-d*u,e[9]=-a*s,e[2]=d-f*u,e[6]=p+h*u,e[10]=o*s}else if("YXZ"===t.order){var m=s*c,g=s*l,v=u*c,y=u*l;e[0]=m+y*a,e[4]=v*a-g,e[8]=o*u,e[1]=o*l,e[5]=o*c,e[9]=-a,e[2]=g*a-v,e[6]=y+m*a,e[10]=o*s}else if("ZXY"===t.order){m=s*c,g=s*l,v=u*c,y=u*l;e[0]=m-y*a,e[4]=-o*l,e[8]=v+g*a,e[1]=g+v*a,e[5]=o*c,e[9]=y-m*a,e[2]=-o*u,e[6]=a,e[10]=o*s}else if("ZYX"===t.order){f=o*c,h=o*l,p=a*c,d=a*l;e[0]=s*c,e[4]=p*u-h,e[8]=f*u+d,e[1]=s*l,e[5]=d*u+f,e[9]=h*u-p,e[2]=-u,e[6]=a*s,e[10]=o*s}else if("YZX"===t.order){var b=o*s,w=o*u,x=a*s,_=a*u;e[0]=s*c,e[4]=_-b*l,e[8]=x*l+w,e[1]=l,e[5]=o*c,e[9]=-a*c,e[2]=-u*c,e[6]=w*l+x,e[10]=b-_*l}else if("XZY"===t.order){b=o*s,w=o*u,x=a*s,_=a*u;e[0]=s*c,e[4]=-l,e[8]=u*c,e[1]=b*l+_,e[5]=o*c,e[9]=w*l-x,e[2]=x*l-w,e[6]=a*c,e[10]=_*l+b}return e[3]=0,e[7]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this},makeRotationFromQuaternion:function(){var t=new Ve(0,0,0),e=new Ve(1,1,1);return function(n){return this.compose(t,n,e)}}(),lookAt:function(){var t=new Ve,e=new Ve,n=new Ve;return function(r,i,o){var a=this.elements;return n.subVectors(r,i),0===n.lengthSq()&&(n.z=1),n.normalize(),t.crossVectors(o,n),0===t.lengthSq()&&(1===Math.abs(o.z)?n.x+=1e-4:n.z+=1e-4,n.normalize(),t.crossVectors(o,n)),t.normalize(),e.crossVectors(n,t),a[0]=t.x,a[4]=e.x,a[8]=n.x,a[1]=t.y,a[5]=e.y,a[9]=n.y,a[2]=t.z,a[6]=e.z,a[10]=n.z,this}}(),multiply:function(t,e){return void 0!==e?(console.warn("THREE.Matrix4: .multiply() now only accepts one argument. Use .multiplyMatrices( a, b ) instead."),this.multiplyMatrices(t,e)):this.multiplyMatrices(this,t)},premultiply:function(t){return this.multiplyMatrices(t,this)},multiplyMatrices:function(t,e){var n=t.elements,r=e.elements,i=this.elements,o=n[0],a=n[4],s=n[8],u=n[12],c=n[1],l=n[5],f=n[9],h=n[13],p=n[2],d=n[6],m=n[10],g=n[14],v=n[3],y=n[7],b=n[11],w=n[15],x=r[0],_=r[4],S=r[8],E=r[12],T=r[1],M=r[5],A=r[9],C=r[13],P=r[2],I=r[6],O=r[10],R=r[14],k=r[3],L=r[7],D=r[11],N=r[15];return i[0]=o*x+a*T+s*P+u*k,i[4]=o*_+a*M+s*I+u*L,i[8]=o*S+a*A+s*O+u*D,i[12]=o*E+a*C+s*R+u*N,i[1]=c*x+l*T+f*P+h*k,i[5]=c*_+l*M+f*I+h*L,i[9]=c*S+l*A+f*O+h*D,i[13]=c*E+l*C+f*R+h*N,i[2]=p*x+d*T+m*P+g*k,i[6]=p*_+d*M+m*I+g*L,i[10]=p*S+d*A+m*O+g*D,i[14]=p*E+d*C+m*R+g*N,i[3]=v*x+y*T+b*P+w*k,i[7]=v*_+y*M+b*I+w*L,i[11]=v*S+y*A+b*O+w*D,i[15]=v*E+y*C+b*R+w*N,this},multiplyScalar:function(t){var e=this.elements;return e[0]*=t,e[4]*=t,e[8]*=t,e[12]*=t,e[1]*=t,e[5]*=t,e[9]*=t,e[13]*=t,e[2]*=t,e[6]*=t,e[10]*=t,e[14]*=t,e[3]*=t,e[7]*=t,e[11]*=t,e[15]*=t,this},applyToBufferAttribute:function(){var t=new Ve;return function(e){for(var n=0,r=e.count;n 0.0 ) {\n\t\tdistanceFalloff *= pow2( saturate( 1.0 - pow4( lightDistance / cutoffDistance ) ) );\n\t}\n\treturn distanceFalloff;\n#else\n\tif( cutoffDistance > 0.0 && decayExponent > 0.0 ) {\n\t\treturn pow( saturate( -lightDistance / cutoffDistance + 1.0 ), decayExponent );\n\t}\n\treturn 1.0;\n#endif\n}\nvec3 BRDF_Diffuse_Lambert( const in vec3 diffuseColor ) {\n\treturn RECIPROCAL_PI * diffuseColor;\n}\nvec3 F_Schlick( const in vec3 specularColor, const in float dotLH ) {\n\tfloat fresnel = exp2( ( -5.55473 * dotLH - 6.98316 ) * dotLH );\n\treturn ( 1.0 - specularColor ) * fresnel + specularColor;\n}\nvec3 F_Schlick_RoughnessDependent( const in vec3 F0, const in float dotNV, const in float roughness ) {\n\tfloat fresnel = exp2( ( -5.55473 * dotNV - 6.98316 ) * dotNV );\n\tvec3 Fr = max( vec3( 1.0 - roughness ), F0 ) - F0;\n\treturn Fr * fresnel + F0;\n}\nfloat G_GGX_Smith( const in float alpha, const in float dotNL, const in float dotNV ) {\n\tfloat a2 = pow2( alpha );\n\tfloat gl = dotNL + sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNL ) );\n\tfloat gv = dotNV + sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNV ) );\n\treturn 1.0 / ( gl * gv );\n}\nfloat G_GGX_SmithCorrelated( const in float alpha, const in float dotNL, const in float dotNV ) {\n\tfloat a2 = pow2( alpha );\n\tfloat gv = dotNL * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNV ) );\n\tfloat gl = dotNV * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNL ) );\n\treturn 0.5 / max( gv + gl, EPSILON );\n}\nfloat D_GGX( const in float alpha, const in float dotNH ) {\n\tfloat a2 = pow2( alpha );\n\tfloat denom = pow2( dotNH ) * ( a2 - 1.0 ) + 1.0;\n\treturn RECIPROCAL_PI * a2 / pow2( denom );\n}\nvec3 BRDF_Specular_GGX( const in IncidentLight incidentLight, const in GeometricContext geometry, const in vec3 specularColor, const in float roughness ) {\n\tfloat alpha = pow2( roughness );\n\tvec3 halfDir = normalize( incidentLight.direction + geometry.viewDir );\n\tfloat dotNL = saturate( dot( geometry.normal, incidentLight.direction ) );\n\tfloat dotNV = saturate( dot( geometry.normal, geometry.viewDir ) );\n\tfloat dotNH = saturate( dot( geometry.normal, halfDir ) );\n\tfloat dotLH = saturate( dot( incidentLight.direction, halfDir ) );\n\tvec3 F = F_Schlick( specularColor, dotLH );\n\tfloat G = G_GGX_SmithCorrelated( alpha, dotNL, dotNV );\n\tfloat D = D_GGX( alpha, dotNH );\n\treturn F * ( G * D );\n}\nvec2 LTC_Uv( const in vec3 N, const in vec3 V, const in float roughness ) {\n\tconst float LUT_SIZE = 64.0;\n\tconst float LUT_SCALE = ( LUT_SIZE - 1.0 ) / LUT_SIZE;\n\tconst float LUT_BIAS = 0.5 / LUT_SIZE;\n\tfloat dotNV = saturate( dot( N, V ) );\n\tvec2 uv = vec2( roughness, sqrt( 1.0 - dotNV ) );\n\tuv = uv * LUT_SCALE + LUT_BIAS;\n\treturn uv;\n}\nfloat LTC_ClippedSphereFormFactor( const in vec3 f ) {\n\tfloat l = length( f );\n\treturn max( ( l * l + f.z ) / ( l + 1.0 ), 0.0 );\n}\nvec3 LTC_EdgeVectorFormFactor( const in vec3 v1, const in vec3 v2 ) {\n\tfloat x = dot( v1, v2 );\n\tfloat y = abs( x );\n\tfloat a = 0.8543985 + ( 0.4965155 + 0.0145206 * y ) * y;\n\tfloat b = 3.4175940 + ( 4.1616724 + y ) * y;\n\tfloat v = a / b;\n\tfloat theta_sintheta = ( x > 0.0 ) ? v : 0.5 * inversesqrt( max( 1.0 - x * x, 1e-7 ) ) - v;\n\treturn cross( v1, v2 ) * theta_sintheta;\n}\nvec3 LTC_Evaluate( const in vec3 N, const in vec3 V, const in vec3 P, const in mat3 mInv, const in vec3 rectCoords[ 4 ] ) {\n\tvec3 v1 = rectCoords[ 1 ] - rectCoords[ 0 ];\n\tvec3 v2 = rectCoords[ 3 ] - rectCoords[ 0 ];\n\tvec3 lightNormal = cross( v1, v2 );\n\tif( dot( lightNormal, P - rectCoords[ 0 ] ) < 0.0 ) return vec3( 0.0 );\n\tvec3 T1, T2;\n\tT1 = normalize( V - N * dot( V, N ) );\n\tT2 = - cross( N, T1 );\n\tmat3 mat = mInv * transposeMat3( mat3( T1, T2, N ) );\n\tvec3 coords[ 4 ];\n\tcoords[ 0 ] = mat * ( rectCoords[ 0 ] - P );\n\tcoords[ 1 ] = mat * ( rectCoords[ 1 ] - P );\n\tcoords[ 2 ] = mat * ( rectCoords[ 2 ] - P );\n\tcoords[ 3 ] = mat * ( rectCoords[ 3 ] - P );\n\tcoords[ 0 ] = normalize( coords[ 0 ] );\n\tcoords[ 1 ] = normalize( coords[ 1 ] );\n\tcoords[ 2 ] = normalize( coords[ 2 ] );\n\tcoords[ 3 ] = normalize( coords[ 3 ] );\n\tvec3 vectorFormFactor = vec3( 0.0 );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 0 ], coords[ 1 ] );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 1 ], coords[ 2 ] );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 2 ], coords[ 3 ] );\n\tvectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 3 ], coords[ 0 ] );\n\tfloat result = LTC_ClippedSphereFormFactor( vectorFormFactor );\n\treturn vec3( result );\n}\nvec3 BRDF_Specular_GGX_Environment( const in GeometricContext geometry, const in vec3 specularColor, const in float roughness ) {\n\tfloat dotNV = saturate( dot( geometry.normal, geometry.viewDir ) );\n\tvec2 brdf = integrateSpecularBRDF( dotNV, roughness );\n\treturn specularColor * brdf.x + brdf.y;\n}\nvoid BRDF_Specular_Multiscattering_Environment( const in GeometricContext geometry, const in vec3 specularColor, const in float roughness, inout vec3 singleScatter, inout vec3 multiScatter ) {\n\tfloat dotNV = saturate( dot( geometry.normal, geometry.viewDir ) );\n\tvec3 F = F_Schlick_RoughnessDependent( specularColor, dotNV, roughness );\n\tvec2 brdf = integrateSpecularBRDF( dotNV, roughness );\n\tvec3 FssEss = F * brdf.x + brdf.y;\n\tfloat Ess = brdf.x + brdf.y;\n\tfloat Ems = 1.0 - Ess;\n\tvec3 Favg = specularColor + ( 1.0 - specularColor ) * 0.047619;\tvec3 Fms = FssEss * Favg / ( 1.0 - Ems * Favg );\n\tsingleScatter += FssEss;\n\tmultiScatter += Fms * Ems;\n}\nfloat G_BlinnPhong_Implicit( ) {\n\treturn 0.25;\n}\nfloat D_BlinnPhong( const in float shininess, const in float dotNH ) {\n\treturn RECIPROCAL_PI * ( shininess * 0.5 + 1.0 ) * pow( dotNH, shininess );\n}\nvec3 BRDF_Specular_BlinnPhong( const in IncidentLight incidentLight, const in GeometricContext geometry, const in vec3 specularColor, const in float shininess ) {\n\tvec3 halfDir = normalize( incidentLight.direction + geometry.viewDir );\n\tfloat dotNH = saturate( dot( geometry.normal, halfDir ) );\n\tfloat dotLH = saturate( dot( incidentLight.direction, halfDir ) );\n\tvec3 F = F_Schlick( specularColor, dotLH );\n\tfloat G = G_BlinnPhong_Implicit( );\n\tfloat D = D_BlinnPhong( shininess, dotNH );\n\treturn F * ( G * D );\n}\nfloat GGXRoughnessToBlinnExponent( const in float ggxRoughness ) {\n\treturn ( 2.0 / pow2( ggxRoughness + 0.0001 ) - 2.0 );\n}\nfloat BlinnExponentToGGXRoughness( const in float blinnExponent ) {\n\treturn sqrt( 2.0 / ( blinnExponent + 2.0 ) );\n}",bumpmap_pars_fragment:"#ifdef USE_BUMPMAP\n\tuniform sampler2D bumpMap;\n\tuniform float bumpScale;\n\tvec2 dHdxy_fwd() {\n\t\tvec2 dSTdx = dFdx( vUv );\n\t\tvec2 dSTdy = dFdy( vUv );\n\t\tfloat Hll = bumpScale * texture2D( bumpMap, vUv ).x;\n\t\tfloat dBx = bumpScale * texture2D( bumpMap, vUv + dSTdx ).x - Hll;\n\t\tfloat dBy = bumpScale * texture2D( bumpMap, vUv + dSTdy ).x - Hll;\n\t\treturn vec2( dBx, dBy );\n\t}\n\tvec3 perturbNormalArb( vec3 surf_pos, vec3 surf_norm, vec2 dHdxy ) {\n\t\tvec3 vSigmaX = vec3( dFdx( surf_pos.x ), dFdx( surf_pos.y ), dFdx( surf_pos.z ) );\n\t\tvec3 vSigmaY = vec3( dFdy( surf_pos.x ), dFdy( surf_pos.y ), dFdy( surf_pos.z ) );\n\t\tvec3 vN = surf_norm;\n\t\tvec3 R1 = cross( vSigmaY, vN );\n\t\tvec3 R2 = cross( vN, vSigmaX );\n\t\tfloat fDet = dot( vSigmaX, R1 );\n\t\tfDet *= ( float( gl_FrontFacing ) * 2.0 - 1.0 );\n\t\tvec3 vGrad = sign( fDet ) * ( dHdxy.x * R1 + dHdxy.y * R2 );\n\t\treturn normalize( abs( fDet ) * surf_norm - vGrad );\n\t}\n#endif",clipping_planes_fragment:"#if NUM_CLIPPING_PLANES > 0\n\tvec4 plane;\n\t#pragma unroll_loop\n\tfor ( int i = 0; i < UNION_CLIPPING_PLANES; i ++ ) {\n\t\tplane = clippingPlanes[ i ];\n\t\tif ( dot( vViewPosition, plane.xyz ) > plane.w ) discard;\n\t}\n\t#if UNION_CLIPPING_PLANES < NUM_CLIPPING_PLANES\n\t\tbool clipped = true;\n\t\t#pragma unroll_loop\n\t\tfor ( int i = UNION_CLIPPING_PLANES; i < NUM_CLIPPING_PLANES; i ++ ) {\n\t\t\tplane = clippingPlanes[ i ];\n\t\t\tclipped = ( dot( vViewPosition, plane.xyz ) > plane.w ) && clipped;\n\t\t}\n\t\tif ( clipped ) discard;\n\t#endif\n#endif",clipping_planes_pars_fragment:"#if NUM_CLIPPING_PLANES > 0\n\t#if ! defined( PHYSICAL ) && ! defined( PHONG ) && ! defined( MATCAP )\n\t\tvarying vec3 vViewPosition;\n\t#endif\n\tuniform vec4 clippingPlanes[ NUM_CLIPPING_PLANES ];\n#endif",clipping_planes_pars_vertex:"#if NUM_CLIPPING_PLANES > 0 && ! defined( PHYSICAL ) && ! defined( PHONG ) && ! defined( MATCAP )\n\tvarying vec3 vViewPosition;\n#endif",clipping_planes_vertex:"#if NUM_CLIPPING_PLANES > 0 && ! defined( PHYSICAL ) && ! defined( PHONG ) && ! defined( MATCAP )\n\tvViewPosition = - mvPosition.xyz;\n#endif",color_fragment:"#ifdef USE_COLOR\n\tdiffuseColor.rgb *= vColor;\n#endif",color_pars_fragment:"#ifdef USE_COLOR\n\tvarying vec3 vColor;\n#endif",color_pars_vertex:"#ifdef USE_COLOR\n\tvarying vec3 vColor;\n#endif",color_vertex:"#ifdef USE_COLOR\n\tvColor.xyz = color.xyz;\n#endif",common:"#define PI 3.14159265359\n#define PI2 6.28318530718\n#define PI_HALF 1.5707963267949\n#define RECIPROCAL_PI 0.31830988618\n#define RECIPROCAL_PI2 0.15915494\n#define LOG2 1.442695\n#define EPSILON 1e-6\n#define saturate(a) clamp( a, 0.0, 1.0 )\n#define whiteCompliment(a) ( 1.0 - saturate( a ) )\nfloat pow2( const in float x ) { return x*x; }\nfloat pow3( const in float x ) { return x*x*x; }\nfloat pow4( const in float x ) { float x2 = x*x; return x2*x2; }\nfloat average( const in vec3 color ) { return dot( color, vec3( 0.3333 ) ); }\nhighp float rand( const in vec2 uv ) {\n\tconst highp float a = 12.9898, b = 78.233, c = 43758.5453;\n\thighp float dt = dot( uv.xy, vec2( a,b ) ), sn = mod( dt, PI );\n\treturn fract(sin(sn) * c);\n}\nstruct IncidentLight {\n\tvec3 color;\n\tvec3 direction;\n\tbool visible;\n};\nstruct ReflectedLight {\n\tvec3 directDiffuse;\n\tvec3 directSpecular;\n\tvec3 indirectDiffuse;\n\tvec3 indirectSpecular;\n};\nstruct GeometricContext {\n\tvec3 position;\n\tvec3 normal;\n\tvec3 viewDir;\n};\nvec3 transformDirection( in vec3 dir, in mat4 matrix ) {\n\treturn normalize( ( matrix * vec4( dir, 0.0 ) ).xyz );\n}\nvec3 inverseTransformDirection( in vec3 dir, in mat4 matrix ) {\n\treturn normalize( ( vec4( dir, 0.0 ) * matrix ).xyz );\n}\nvec3 projectOnPlane(in vec3 point, in vec3 pointOnPlane, in vec3 planeNormal ) {\n\tfloat distance = dot( planeNormal, point - pointOnPlane );\n\treturn - distance * planeNormal + point;\n}\nfloat sideOfPlane( in vec3 point, in vec3 pointOnPlane, in vec3 planeNormal ) {\n\treturn sign( dot( point - pointOnPlane, planeNormal ) );\n}\nvec3 linePlaneIntersect( in vec3 pointOnLine, in vec3 lineDirection, in vec3 pointOnPlane, in vec3 planeNormal ) {\n\treturn lineDirection * ( dot( planeNormal, pointOnPlane - pointOnLine ) / dot( planeNormal, lineDirection ) ) + pointOnLine;\n}\nmat3 transposeMat3( const in mat3 m ) {\n\tmat3 tmp;\n\ttmp[ 0 ] = vec3( m[ 0 ].x, m[ 1 ].x, m[ 2 ].x );\n\ttmp[ 1 ] = vec3( m[ 0 ].y, m[ 1 ].y, m[ 2 ].y );\n\ttmp[ 2 ] = vec3( m[ 0 ].z, m[ 1 ].z, m[ 2 ].z );\n\treturn tmp;\n}\nfloat linearToRelativeLuminance( const in vec3 color ) {\n\tvec3 weights = vec3( 0.2126, 0.7152, 0.0722 );\n\treturn dot( weights, color.rgb );\n}",cube_uv_reflection_fragment:"#ifdef ENVMAP_TYPE_CUBE_UV\n#define cubeUV_textureSize (1024.0)\nint getFaceFromDirection(vec3 direction) {\n\tvec3 absDirection = abs(direction);\n\tint face = -1;\n\tif( absDirection.x > absDirection.z ) {\n\t\tif(absDirection.x > absDirection.y )\n\t\t\tface = direction.x > 0.0 ? 0 : 3;\n\t\telse\n\t\t\tface = direction.y > 0.0 ? 1 : 4;\n\t}\n\telse {\n\t\tif(absDirection.z > absDirection.y )\n\t\t\tface = direction.z > 0.0 ? 2 : 5;\n\t\telse\n\t\t\tface = direction.y > 0.0 ? 1 : 4;\n\t}\n\treturn face;\n}\n#define cubeUV_maxLods1 (log2(cubeUV_textureSize*0.25) - 1.0)\n#define cubeUV_rangeClamp (exp2((6.0 - 1.0) * 2.0))\nvec2 MipLevelInfo( vec3 vec, float roughnessLevel, float roughness ) {\n\tfloat scale = exp2(cubeUV_maxLods1 - roughnessLevel);\n\tfloat dxRoughness = dFdx(roughness);\n\tfloat dyRoughness = dFdy(roughness);\n\tvec3 dx = dFdx( vec * scale * dxRoughness );\n\tvec3 dy = dFdy( vec * scale * dyRoughness );\n\tfloat d = max( dot( dx, dx ), dot( dy, dy ) );\n\td = clamp(d, 1.0, cubeUV_rangeClamp);\n\tfloat mipLevel = 0.5 * log2(d);\n\treturn vec2(floor(mipLevel), fract(mipLevel));\n}\n#define cubeUV_maxLods2 (log2(cubeUV_textureSize*0.25) - 2.0)\n#define cubeUV_rcpTextureSize (1.0 / cubeUV_textureSize)\nvec2 getCubeUV(vec3 direction, float roughnessLevel, float mipLevel) {\n\tmipLevel = roughnessLevel > cubeUV_maxLods2 - 3.0 ? 0.0 : mipLevel;\n\tfloat a = 16.0 * cubeUV_rcpTextureSize;\n\tvec2 exp2_packed = exp2( vec2( roughnessLevel, mipLevel ) );\n\tvec2 rcp_exp2_packed = vec2( 1.0 ) / exp2_packed;\n\tfloat powScale = exp2_packed.x * exp2_packed.y;\n\tfloat scale = rcp_exp2_packed.x * rcp_exp2_packed.y * 0.25;\n\tfloat mipOffset = 0.75*(1.0 - rcp_exp2_packed.y) * rcp_exp2_packed.x;\n\tbool bRes = mipLevel == 0.0;\n\tscale = bRes && (scale < a) ? a : scale;\n\tvec3 r;\n\tvec2 offset;\n\tint face = getFaceFromDirection(direction);\n\tfloat rcpPowScale = 1.0 / powScale;\n\tif( face == 0) {\n\t\tr = vec3(direction.x, -direction.z, direction.y);\n\t\toffset = vec2(0.0+mipOffset,0.75 * rcpPowScale);\n\t\toffset.y = bRes && (offset.y < 2.0*a) ? a : offset.y;\n\t}\n\telse if( face == 1) {\n\t\tr = vec3(direction.y, direction.x, direction.z);\n\t\toffset = vec2(scale+mipOffset, 0.75 * rcpPowScale);\n\t\toffset.y = bRes && (offset.y < 2.0*a) ? a : offset.y;\n\t}\n\telse if( face == 2) {\n\t\tr = vec3(direction.z, direction.x, direction.y);\n\t\toffset = vec2(2.0*scale+mipOffset, 0.75 * rcpPowScale);\n\t\toffset.y = bRes && (offset.y < 2.0*a) ? a : offset.y;\n\t}\n\telse if( face == 3) {\n\t\tr = vec3(direction.x, direction.z, direction.y);\n\t\toffset = vec2(0.0+mipOffset,0.5 * rcpPowScale);\n\t\toffset.y = bRes && (offset.y < 2.0*a) ? 0.0 : offset.y;\n\t}\n\telse if( face == 4) {\n\t\tr = vec3(direction.y, direction.x, -direction.z);\n\t\toffset = vec2(scale+mipOffset, 0.5 * rcpPowScale);\n\t\toffset.y = bRes && (offset.y < 2.0*a) ? 0.0 : offset.y;\n\t}\n\telse {\n\t\tr = vec3(direction.z, -direction.x, direction.y);\n\t\toffset = vec2(2.0*scale+mipOffset, 0.5 * rcpPowScale);\n\t\toffset.y = bRes && (offset.y < 2.0*a) ? 0.0 : offset.y;\n\t}\n\tr = normalize(r);\n\tfloat texelOffset = 0.5 * cubeUV_rcpTextureSize;\n\tvec2 s = ( r.yz / abs( r.x ) + vec2( 1.0 ) ) * 0.5;\n\tvec2 base = offset + vec2( texelOffset );\n\treturn base + s * ( scale - 2.0 * texelOffset );\n}\n#define cubeUV_maxLods3 (log2(cubeUV_textureSize*0.25) - 3.0)\nvec4 textureCubeUV( sampler2D envMap, vec3 reflectedDirection, float roughness ) {\n\tfloat roughnessVal = roughness* cubeUV_maxLods3;\n\tfloat r1 = floor(roughnessVal);\n\tfloat r2 = r1 + 1.0;\n\tfloat t = fract(roughnessVal);\n\tvec2 mipInfo = MipLevelInfo(reflectedDirection, r1, roughness);\n\tfloat s = mipInfo.y;\n\tfloat level0 = mipInfo.x;\n\tfloat level1 = level0 + 1.0;\n\tlevel1 = level1 > 5.0 ? 5.0 : level1;\n\tlevel0 += min( floor( s + 0.5 ), 5.0 );\n\tvec2 uv_10 = getCubeUV(reflectedDirection, r1, level0);\n\tvec4 color10 = envMapTexelToLinear(texture2D(envMap, uv_10));\n\tvec2 uv_20 = getCubeUV(reflectedDirection, r2, level0);\n\tvec4 color20 = envMapTexelToLinear(texture2D(envMap, uv_20));\n\tvec4 result = mix(color10, color20, t);\n\treturn vec4(result.rgb, 1.0);\n}\n#endif",defaultnormal_vertex:"vec3 transformedNormal = normalMatrix * objectNormal;\n#ifdef FLIP_SIDED\n\ttransformedNormal = - transformedNormal;\n#endif\n#ifdef USE_TANGENT\n\tvec3 transformedTangent = normalMatrix * objectTangent;\n\t#ifdef FLIP_SIDED\n\t\ttransformedTangent = - transformedTangent;\n\t#endif\n#endif",displacementmap_pars_vertex:"#ifdef USE_DISPLACEMENTMAP\n\tuniform sampler2D displacementMap;\n\tuniform float displacementScale;\n\tuniform float displacementBias;\n#endif",displacementmap_vertex:"#ifdef USE_DISPLACEMENTMAP\n\ttransformed += normalize( objectNormal ) * ( texture2D( displacementMap, uv ).x * displacementScale + displacementBias );\n#endif",emissivemap_fragment:"#ifdef USE_EMISSIVEMAP\n\tvec4 emissiveColor = texture2D( emissiveMap, vUv );\n\temissiveColor.rgb = emissiveMapTexelToLinear( emissiveColor ).rgb;\n\ttotalEmissiveRadiance *= emissiveColor.rgb;\n#endif",emissivemap_pars_fragment:"#ifdef USE_EMISSIVEMAP\n\tuniform sampler2D emissiveMap;\n#endif",encodings_fragment:"gl_FragColor = linearToOutputTexel( gl_FragColor );",encodings_pars_fragment:"\nvec4 LinearToLinear( in vec4 value ) {\n\treturn value;\n}\nvec4 GammaToLinear( in vec4 value, in float gammaFactor ) {\n\treturn vec4( pow( value.rgb, vec3( gammaFactor ) ), value.a );\n}\nvec4 LinearToGamma( in vec4 value, in float gammaFactor ) {\n\treturn vec4( pow( value.rgb, vec3( 1.0 / gammaFactor ) ), value.a );\n}\nvec4 sRGBToLinear( in vec4 value ) {\n\treturn vec4( mix( pow( value.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), value.rgb * 0.0773993808, vec3( lessThanEqual( value.rgb, vec3( 0.04045 ) ) ) ), value.a );\n}\nvec4 LinearTosRGB( in vec4 value ) {\n\treturn vec4( mix( pow( value.rgb, vec3( 0.41666 ) ) * 1.055 - vec3( 0.055 ), value.rgb * 12.92, vec3( lessThanEqual( value.rgb, vec3( 0.0031308 ) ) ) ), value.a );\n}\nvec4 RGBEToLinear( in vec4 value ) {\n\treturn vec4( value.rgb * exp2( value.a * 255.0 - 128.0 ), 1.0 );\n}\nvec4 LinearToRGBE( in vec4 value ) {\n\tfloat maxComponent = max( max( value.r, value.g ), value.b );\n\tfloat fExp = clamp( ceil( log2( maxComponent ) ), -128.0, 127.0 );\n\treturn vec4( value.rgb / exp2( fExp ), ( fExp + 128.0 ) / 255.0 );\n}\nvec4 RGBMToLinear( in vec4 value, in float maxRange ) {\n\treturn vec4( value.rgb * value.a * maxRange, 1.0 );\n}\nvec4 LinearToRGBM( in vec4 value, in float maxRange ) {\n\tfloat maxRGB = max( value.r, max( value.g, value.b ) );\n\tfloat M = clamp( maxRGB / maxRange, 0.0, 1.0 );\n\tM = ceil( M * 255.0 ) / 255.0;\n\treturn vec4( value.rgb / ( M * maxRange ), M );\n}\nvec4 RGBDToLinear( in vec4 value, in float maxRange ) {\n\treturn vec4( value.rgb * ( ( maxRange / 255.0 ) / value.a ), 1.0 );\n}\nvec4 LinearToRGBD( in vec4 value, in float maxRange ) {\n\tfloat maxRGB = max( value.r, max( value.g, value.b ) );\n\tfloat D = max( maxRange / maxRGB, 1.0 );\n\tD = min( floor( D ) / 255.0, 1.0 );\n\treturn vec4( value.rgb * ( D * ( 255.0 / maxRange ) ), D );\n}\nconst mat3 cLogLuvM = mat3( 0.2209, 0.3390, 0.4184, 0.1138, 0.6780, 0.7319, 0.0102, 0.1130, 0.2969 );\nvec4 LinearToLogLuv( in vec4 value ) {\n\tvec3 Xp_Y_XYZp = cLogLuvM * value.rgb;\n\tXp_Y_XYZp = max( Xp_Y_XYZp, vec3( 1e-6, 1e-6, 1e-6 ) );\n\tvec4 vResult;\n\tvResult.xy = Xp_Y_XYZp.xy / Xp_Y_XYZp.z;\n\tfloat Le = 2.0 * log2(Xp_Y_XYZp.y) + 127.0;\n\tvResult.w = fract( Le );\n\tvResult.z = ( Le - ( floor( vResult.w * 255.0 ) ) / 255.0 ) / 255.0;\n\treturn vResult;\n}\nconst mat3 cLogLuvInverseM = mat3( 6.0014, -2.7008, -1.7996, -1.3320, 3.1029, -5.7721, 0.3008, -1.0882, 5.6268 );\nvec4 LogLuvToLinear( in vec4 value ) {\n\tfloat Le = value.z * 255.0 + value.w;\n\tvec3 Xp_Y_XYZp;\n\tXp_Y_XYZp.y = exp2( ( Le - 127.0 ) / 2.0 );\n\tXp_Y_XYZp.z = Xp_Y_XYZp.y / value.y;\n\tXp_Y_XYZp.x = value.x * Xp_Y_XYZp.z;\n\tvec3 vRGB = cLogLuvInverseM * Xp_Y_XYZp.rgb;\n\treturn vec4( max( vRGB, 0.0 ), 1.0 );\n}",envmap_fragment:"#ifdef USE_ENVMAP\n\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG )\n\t\tvec3 cameraToVertex = normalize( vWorldPosition - cameraPosition );\n\t\tvec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\n\t\t#ifdef ENVMAP_MODE_REFLECTION\n\t\t\tvec3 reflectVec = reflect( cameraToVertex, worldNormal );\n\t\t#else\n\t\t\tvec3 reflectVec = refract( cameraToVertex, worldNormal, refractionRatio );\n\t\t#endif\n\t#else\n\t\tvec3 reflectVec = vReflect;\n\t#endif\n\t#ifdef ENVMAP_TYPE_CUBE\n\t\tvec4 envColor = textureCube( envMap, vec3( flipEnvMap * reflectVec.x, reflectVec.yz ) );\n\t#elif defined( ENVMAP_TYPE_EQUIREC )\n\t\tvec2 sampleUV;\n\t\treflectVec = normalize( reflectVec );\n\t\tsampleUV.y = asin( clamp( reflectVec.y, - 1.0, 1.0 ) ) * RECIPROCAL_PI + 0.5;\n\t\tsampleUV.x = atan( reflectVec.z, reflectVec.x ) * RECIPROCAL_PI2 + 0.5;\n\t\tvec4 envColor = texture2D( envMap, sampleUV );\n\t#elif defined( ENVMAP_TYPE_SPHERE )\n\t\treflectVec = normalize( reflectVec );\n\t\tvec3 reflectView = normalize( ( viewMatrix * vec4( reflectVec, 0.0 ) ).xyz + vec3( 0.0, 0.0, 1.0 ) );\n\t\tvec4 envColor = texture2D( envMap, reflectView.xy * 0.5 + 0.5 );\n\t#else\n\t\tvec4 envColor = vec4( 0.0 );\n\t#endif\n\tenvColor = envMapTexelToLinear( envColor );\n\t#ifdef ENVMAP_BLENDING_MULTIPLY\n\t\toutgoingLight = mix( outgoingLight, outgoingLight * envColor.xyz, specularStrength * reflectivity );\n\t#elif defined( ENVMAP_BLENDING_MIX )\n\t\toutgoingLight = mix( outgoingLight, envColor.xyz, specularStrength * reflectivity );\n\t#elif defined( ENVMAP_BLENDING_ADD )\n\t\toutgoingLight += envColor.xyz * specularStrength * reflectivity;\n\t#endif\n#endif",envmap_pars_fragment:"#if defined( USE_ENVMAP ) || defined( PHYSICAL )\n\tuniform float reflectivity;\n\tuniform float envMapIntensity;\n#endif\n#ifdef USE_ENVMAP\n\t#if ! defined( PHYSICAL ) && ( defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG ) )\n\t\tvarying vec3 vWorldPosition;\n\t#endif\n\t#ifdef ENVMAP_TYPE_CUBE\n\t\tuniform samplerCube envMap;\n\t#else\n\t\tuniform sampler2D envMap;\n\t#endif\n\tuniform float flipEnvMap;\n\tuniform int maxMipLevel;\n\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG ) || defined( PHYSICAL )\n\t\tuniform float refractionRatio;\n\t#else\n\t\tvarying vec3 vReflect;\n\t#endif\n#endif",envmap_pars_vertex:"#ifdef USE_ENVMAP\n\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG )\n\t\tvarying vec3 vWorldPosition;\n\t#else\n\t\tvarying vec3 vReflect;\n\t\tuniform float refractionRatio;\n\t#endif\n#endif",envmap_physical_pars_fragment:"#if defined( USE_ENVMAP ) && defined( PHYSICAL )\n\tvec3 getLightProbeIndirectIrradiance( const in GeometricContext geometry, const in int maxMIPLevel ) {\n\t\tvec3 worldNormal = inverseTransformDirection( geometry.normal, viewMatrix );\n\t\t#ifdef ENVMAP_TYPE_CUBE\n\t\t\tvec3 queryVec = vec3( flipEnvMap * worldNormal.x, worldNormal.yz );\n\t\t\t#ifdef TEXTURE_LOD_EXT\n\t\t\t\tvec4 envMapColor = textureCubeLodEXT( envMap, queryVec, float( maxMIPLevel ) );\n\t\t\t#else\n\t\t\t\tvec4 envMapColor = textureCube( envMap, queryVec, float( maxMIPLevel ) );\n\t\t\t#endif\n\t\t\tenvMapColor.rgb = envMapTexelToLinear( envMapColor ).rgb;\n\t\t#elif defined( ENVMAP_TYPE_CUBE_UV )\n\t\t\tvec3 queryVec = vec3( flipEnvMap * worldNormal.x, worldNormal.yz );\n\t\t\tvec4 envMapColor = textureCubeUV( envMap, queryVec, 1.0 );\n\t\t#else\n\t\t\tvec4 envMapColor = vec4( 0.0 );\n\t\t#endif\n\t\treturn PI * envMapColor.rgb * envMapIntensity;\n\t}\n\tfloat getSpecularMIPLevel( const in float blinnShininessExponent, const in int maxMIPLevel ) {\n\t\tfloat maxMIPLevelScalar = float( maxMIPLevel );\n\t\tfloat desiredMIPLevel = maxMIPLevelScalar + 0.79248 - 0.5 * log2( pow2( blinnShininessExponent ) + 1.0 );\n\t\treturn clamp( desiredMIPLevel, 0.0, maxMIPLevelScalar );\n\t}\n\tvec3 getLightProbeIndirectRadiance( const in GeometricContext geometry, const in float blinnShininessExponent, const in int maxMIPLevel ) {\n\t\t#ifdef ENVMAP_MODE_REFLECTION\n\t\t\tvec3 reflectVec = reflect( -geometry.viewDir, geometry.normal );\n\t\t#else\n\t\t\tvec3 reflectVec = refract( -geometry.viewDir, geometry.normal, refractionRatio );\n\t\t#endif\n\t\treflectVec = inverseTransformDirection( reflectVec, viewMatrix );\n\t\tfloat specularMIPLevel = getSpecularMIPLevel( blinnShininessExponent, maxMIPLevel );\n\t\t#ifdef ENVMAP_TYPE_CUBE\n\t\t\tvec3 queryReflectVec = vec3( flipEnvMap * reflectVec.x, reflectVec.yz );\n\t\t\t#ifdef TEXTURE_LOD_EXT\n\t\t\t\tvec4 envMapColor = textureCubeLodEXT( envMap, queryReflectVec, specularMIPLevel );\n\t\t\t#else\n\t\t\t\tvec4 envMapColor = textureCube( envMap, queryReflectVec, specularMIPLevel );\n\t\t\t#endif\n\t\t\tenvMapColor.rgb = envMapTexelToLinear( envMapColor ).rgb;\n\t\t#elif defined( ENVMAP_TYPE_CUBE_UV )\n\t\t\tvec3 queryReflectVec = vec3( flipEnvMap * reflectVec.x, reflectVec.yz );\n\t\t\tvec4 envMapColor = textureCubeUV( envMap, queryReflectVec, BlinnExponentToGGXRoughness(blinnShininessExponent ));\n\t\t#elif defined( ENVMAP_TYPE_EQUIREC )\n\t\t\tvec2 sampleUV;\n\t\t\tsampleUV.y = asin( clamp( reflectVec.y, - 1.0, 1.0 ) ) * RECIPROCAL_PI + 0.5;\n\t\t\tsampleUV.x = atan( reflectVec.z, reflectVec.x ) * RECIPROCAL_PI2 + 0.5;\n\t\t\t#ifdef TEXTURE_LOD_EXT\n\t\t\t\tvec4 envMapColor = texture2DLodEXT( envMap, sampleUV, specularMIPLevel );\n\t\t\t#else\n\t\t\t\tvec4 envMapColor = texture2D( envMap, sampleUV, specularMIPLevel );\n\t\t\t#endif\n\t\t\tenvMapColor.rgb = envMapTexelToLinear( envMapColor ).rgb;\n\t\t#elif defined( ENVMAP_TYPE_SPHERE )\n\t\t\tvec3 reflectView = normalize( ( viewMatrix * vec4( reflectVec, 0.0 ) ).xyz + vec3( 0.0,0.0,1.0 ) );\n\t\t\t#ifdef TEXTURE_LOD_EXT\n\t\t\t\tvec4 envMapColor = texture2DLodEXT( envMap, reflectView.xy * 0.5 + 0.5, specularMIPLevel );\n\t\t\t#else\n\t\t\t\tvec4 envMapColor = texture2D( envMap, reflectView.xy * 0.5 + 0.5, specularMIPLevel );\n\t\t\t#endif\n\t\t\tenvMapColor.rgb = envMapTexelToLinear( envMapColor ).rgb;\n\t\t#endif\n\t\treturn envMapColor.rgb * envMapIntensity;\n\t}\n#endif",envmap_vertex:"#ifdef USE_ENVMAP\n\t#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG )\n\t\tvWorldPosition = worldPosition.xyz;\n\t#else\n\t\tvec3 cameraToVertex = normalize( worldPosition.xyz - cameraPosition );\n\t\tvec3 worldNormal = inverseTransformDirection( transformedNormal, viewMatrix );\n\t\t#ifdef ENVMAP_MODE_REFLECTION\n\t\t\tvReflect = reflect( cameraToVertex, worldNormal );\n\t\t#else\n\t\t\tvReflect = refract( cameraToVertex, worldNormal, refractionRatio );\n\t\t#endif\n\t#endif\n#endif",fog_vertex:"#ifdef USE_FOG\n\tfogDepth = -mvPosition.z;\n#endif",fog_pars_vertex:"#ifdef USE_FOG\n\tvarying float fogDepth;\n#endif",fog_fragment:"#ifdef USE_FOG\n\t#ifdef FOG_EXP2\n\t\tfloat fogFactor = whiteCompliment( exp2( - fogDensity * fogDensity * fogDepth * fogDepth * LOG2 ) );\n\t#else\n\t\tfloat fogFactor = smoothstep( fogNear, fogFar, fogDepth );\n\t#endif\n\tgl_FragColor.rgb = mix( gl_FragColor.rgb, fogColor, fogFactor );\n#endif",fog_pars_fragment:"#ifdef USE_FOG\n\tuniform vec3 fogColor;\n\tvarying float fogDepth;\n\t#ifdef FOG_EXP2\n\t\tuniform float fogDensity;\n\t#else\n\t\tuniform float fogNear;\n\t\tuniform float fogFar;\n\t#endif\n#endif",gradientmap_pars_fragment:"#ifdef TOON\n\tuniform sampler2D gradientMap;\n\tvec3 getGradientIrradiance( vec3 normal, vec3 lightDirection ) {\n\t\tfloat dotNL = dot( normal, lightDirection );\n\t\tvec2 coord = vec2( dotNL * 0.5 + 0.5, 0.0 );\n\t\t#ifdef USE_GRADIENTMAP\n\t\t\treturn texture2D( gradientMap, coord ).rgb;\n\t\t#else\n\t\t\treturn ( coord.x < 0.7 ) ? vec3( 0.7 ) : vec3( 1.0 );\n\t\t#endif\n\t}\n#endif",lightmap_fragment:"#ifdef USE_LIGHTMAP\n\treflectedLight.indirectDiffuse += PI * texture2D( lightMap, vUv2 ).xyz * lightMapIntensity;\n#endif",lightmap_pars_fragment:"#ifdef USE_LIGHTMAP\n\tuniform sampler2D lightMap;\n\tuniform float lightMapIntensity;\n#endif",lights_lambert_vertex:"vec3 diffuse = vec3( 1.0 );\nGeometricContext geometry;\ngeometry.position = mvPosition.xyz;\ngeometry.normal = normalize( transformedNormal );\ngeometry.viewDir = normalize( -mvPosition.xyz );\nGeometricContext backGeometry;\nbackGeometry.position = geometry.position;\nbackGeometry.normal = -geometry.normal;\nbackGeometry.viewDir = geometry.viewDir;\nvLightFront = vec3( 0.0 );\nvIndirectFront = vec3( 0.0 );\n#ifdef DOUBLE_SIDED\n\tvLightBack = vec3( 0.0 );\n\tvIndirectBack = vec3( 0.0 );\n#endif\nIncidentLight directLight;\nfloat dotNL;\nvec3 directLightColor_Diffuse;\n#if NUM_POINT_LIGHTS > 0\n\t#pragma unroll_loop\n\tfor ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\n\t\tgetPointDirectLightIrradiance( pointLights[ i ], geometry, directLight );\n\t\tdotNL = dot( geometry.normal, directLight.direction );\n\t\tdirectLightColor_Diffuse = PI * directLight.color;\n\t\tvLightFront += saturate( dotNL ) * directLightColor_Diffuse;\n\t\t#ifdef DOUBLE_SIDED\n\t\t\tvLightBack += saturate( -dotNL ) * directLightColor_Diffuse;\n\t\t#endif\n\t}\n#endif\n#if NUM_SPOT_LIGHTS > 0\n\t#pragma unroll_loop\n\tfor ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\n\t\tgetSpotDirectLightIrradiance( spotLights[ i ], geometry, directLight );\n\t\tdotNL = dot( geometry.normal, directLight.direction );\n\t\tdirectLightColor_Diffuse = PI * directLight.color;\n\t\tvLightFront += saturate( dotNL ) * directLightColor_Diffuse;\n\t\t#ifdef DOUBLE_SIDED\n\t\t\tvLightBack += saturate( -dotNL ) * directLightColor_Diffuse;\n\t\t#endif\n\t}\n#endif\n#if NUM_DIR_LIGHTS > 0\n\t#pragma unroll_loop\n\tfor ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\n\t\tgetDirectionalDirectLightIrradiance( directionalLights[ i ], geometry, directLight );\n\t\tdotNL = dot( geometry.normal, directLight.direction );\n\t\tdirectLightColor_Diffuse = PI * directLight.color;\n\t\tvLightFront += saturate( dotNL ) * directLightColor_Diffuse;\n\t\t#ifdef DOUBLE_SIDED\n\t\t\tvLightBack += saturate( -dotNL ) * directLightColor_Diffuse;\n\t\t#endif\n\t}\n#endif\n#if NUM_HEMI_LIGHTS > 0\n\t#pragma unroll_loop\n\tfor ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) {\n\t\tvIndirectFront += getHemisphereLightIrradiance( hemisphereLights[ i ], geometry );\n\t\t#ifdef DOUBLE_SIDED\n\t\t\tvIndirectBack += getHemisphereLightIrradiance( hemisphereLights[ i ], backGeometry );\n\t\t#endif\n\t}\n#endif",lights_pars_begin:"uniform vec3 ambientLightColor;\nuniform vec3 lightProbe[ 9 ];\nvec3 shGetIrradianceAt( in vec3 normal, in vec3 shCoefficients[ 9 ] ) {\n\tfloat x = normal.x, y = normal.y, z = normal.z;\n\tvec3 result = shCoefficients[ 0 ] * 0.886227;\n\tresult += shCoefficients[ 1 ] * 2.0 * 0.511664 * y;\n\tresult += shCoefficients[ 2 ] * 2.0 * 0.511664 * z;\n\tresult += shCoefficients[ 3 ] * 2.0 * 0.511664 * x;\n\tresult += shCoefficients[ 4 ] * 2.0 * 0.429043 * x * y;\n\tresult += shCoefficients[ 5 ] * 2.0 * 0.429043 * y * z;\n\tresult += shCoefficients[ 6 ] * ( 0.743125 * z * z - 0.247708 );\n\tresult += shCoefficients[ 7 ] * 2.0 * 0.429043 * x * z;\n\tresult += shCoefficients[ 8 ] * 0.429043 * ( x * x - y * y );\n\treturn result;\n}\nvec3 getLightProbeIrradiance( const in vec3 lightProbe[ 9 ], const in GeometricContext geometry ) {\n\tvec3 worldNormal = inverseTransformDirection( geometry.normal, viewMatrix );\n\tvec3 irradiance = shGetIrradianceAt( worldNormal, lightProbe );\n\treturn irradiance;\n}\nvec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {\n\tvec3 irradiance = ambientLightColor;\n\t#ifndef PHYSICALLY_CORRECT_LIGHTS\n\t\tirradiance *= PI;\n\t#endif\n\treturn irradiance;\n}\n#if NUM_DIR_LIGHTS > 0\n\tstruct DirectionalLight {\n\t\tvec3 direction;\n\t\tvec3 color;\n\t\tint shadow;\n\t\tfloat shadowBias;\n\t\tfloat shadowRadius;\n\t\tvec2 shadowMapSize;\n\t};\n\tuniform DirectionalLight directionalLights[ NUM_DIR_LIGHTS ];\n\tvoid getDirectionalDirectLightIrradiance( const in DirectionalLight directionalLight, const in GeometricContext geometry, out IncidentLight directLight ) {\n\t\tdirectLight.color = directionalLight.color;\n\t\tdirectLight.direction = directionalLight.direction;\n\t\tdirectLight.visible = true;\n\t}\n#endif\n#if NUM_POINT_LIGHTS > 0\n\tstruct PointLight {\n\t\tvec3 position;\n\t\tvec3 color;\n\t\tfloat distance;\n\t\tfloat decay;\n\t\tint shadow;\n\t\tfloat shadowBias;\n\t\tfloat shadowRadius;\n\t\tvec2 shadowMapSize;\n\t\tfloat shadowCameraNear;\n\t\tfloat shadowCameraFar;\n\t};\n\tuniform PointLight pointLights[ NUM_POINT_LIGHTS ];\n\tvoid getPointDirectLightIrradiance( const in PointLight pointLight, const in GeometricContext geometry, out IncidentLight directLight ) {\n\t\tvec3 lVector = pointLight.position - geometry.position;\n\t\tdirectLight.direction = normalize( lVector );\n\t\tfloat lightDistance = length( lVector );\n\t\tdirectLight.color = pointLight.color;\n\t\tdirectLight.color *= punctualLightIntensityToIrradianceFactor( lightDistance, pointLight.distance, pointLight.decay );\n\t\tdirectLight.visible = ( directLight.color != vec3( 0.0 ) );\n\t}\n#endif\n#if NUM_SPOT_LIGHTS > 0\n\tstruct SpotLight {\n\t\tvec3 position;\n\t\tvec3 direction;\n\t\tvec3 color;\n\t\tfloat distance;\n\t\tfloat decay;\n\t\tfloat coneCos;\n\t\tfloat penumbraCos;\n\t\tint shadow;\n\t\tfloat shadowBias;\n\t\tfloat shadowRadius;\n\t\tvec2 shadowMapSize;\n\t};\n\tuniform SpotLight spotLights[ NUM_SPOT_LIGHTS ];\n\tvoid getSpotDirectLightIrradiance( const in SpotLight spotLight, const in GeometricContext geometry, out IncidentLight directLight ) {\n\t\tvec3 lVector = spotLight.position - geometry.position;\n\t\tdirectLight.direction = normalize( lVector );\n\t\tfloat lightDistance = length( lVector );\n\t\tfloat angleCos = dot( directLight.direction, spotLight.direction );\n\t\tif ( angleCos > spotLight.coneCos ) {\n\t\t\tfloat spotEffect = smoothstep( spotLight.coneCos, spotLight.penumbraCos, angleCos );\n\t\t\tdirectLight.color = spotLight.color;\n\t\t\tdirectLight.color *= spotEffect * punctualLightIntensityToIrradianceFactor( lightDistance, spotLight.distance, spotLight.decay );\n\t\t\tdirectLight.visible = true;\n\t\t} else {\n\t\t\tdirectLight.color = vec3( 0.0 );\n\t\t\tdirectLight.visible = false;\n\t\t}\n\t}\n#endif\n#if NUM_RECT_AREA_LIGHTS > 0\n\tstruct RectAreaLight {\n\t\tvec3 color;\n\t\tvec3 position;\n\t\tvec3 halfWidth;\n\t\tvec3 halfHeight;\n\t};\n\tuniform sampler2D ltc_1;\tuniform sampler2D ltc_2;\n\tuniform RectAreaLight rectAreaLights[ NUM_RECT_AREA_LIGHTS ];\n#endif\n#if NUM_HEMI_LIGHTS > 0\n\tstruct HemisphereLight {\n\t\tvec3 direction;\n\t\tvec3 skyColor;\n\t\tvec3 groundColor;\n\t};\n\tuniform HemisphereLight hemisphereLights[ NUM_HEMI_LIGHTS ];\n\tvec3 getHemisphereLightIrradiance( const in HemisphereLight hemiLight, const in GeometricContext geometry ) {\n\t\tfloat dotNL = dot( geometry.normal, hemiLight.direction );\n\t\tfloat hemiDiffuseWeight = 0.5 * dotNL + 0.5;\n\t\tvec3 irradiance = mix( hemiLight.groundColor, hemiLight.skyColor, hemiDiffuseWeight );\n\t\t#ifndef PHYSICALLY_CORRECT_LIGHTS\n\t\t\tirradiance *= PI;\n\t\t#endif\n\t\treturn irradiance;\n\t}\n#endif",lights_phong_fragment:"BlinnPhongMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb;\nmaterial.specularColor = specular;\nmaterial.specularShininess = shininess;\nmaterial.specularStrength = specularStrength;",lights_phong_pars_fragment:"varying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n#endif\nstruct BlinnPhongMaterial {\n\tvec3\tdiffuseColor;\n\tvec3\tspecularColor;\n\tfloat\tspecularShininess;\n\tfloat\tspecularStrength;\n};\nvoid RE_Direct_BlinnPhong( const in IncidentLight directLight, const in GeometricContext geometry, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\n\t#ifdef TOON\n\t\tvec3 irradiance = getGradientIrradiance( geometry.normal, directLight.direction ) * directLight.color;\n\t#else\n\t\tfloat dotNL = saturate( dot( geometry.normal, directLight.direction ) );\n\t\tvec3 irradiance = dotNL * directLight.color;\n\t#endif\n\t#ifndef PHYSICALLY_CORRECT_LIGHTS\n\t\tirradiance *= PI;\n\t#endif\n\treflectedLight.directDiffuse += irradiance * BRDF_Diffuse_Lambert( material.diffuseColor );\n\treflectedLight.directSpecular += irradiance * BRDF_Specular_BlinnPhong( directLight, geometry, material.specularColor, material.specularShininess ) * material.specularStrength;\n}\nvoid RE_IndirectDiffuse_BlinnPhong( const in vec3 irradiance, const in GeometricContext geometry, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\n\treflectedLight.indirectDiffuse += irradiance * BRDF_Diffuse_Lambert( material.diffuseColor );\n}\n#define RE_Direct\t\t\t\tRE_Direct_BlinnPhong\n#define RE_IndirectDiffuse\t\tRE_IndirectDiffuse_BlinnPhong\n#define Material_LightProbeLOD( material )\t(0)",lights_physical_fragment:"PhysicalMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb * ( 1.0 - metalnessFactor );\nmaterial.specularRoughness = clamp( roughnessFactor, 0.04, 1.0 );\n#ifdef STANDARD\n\tmaterial.specularColor = mix( vec3( DEFAULT_SPECULAR_COEFFICIENT ), diffuseColor.rgb, metalnessFactor );\n#else\n\tmaterial.specularColor = mix( vec3( MAXIMUM_SPECULAR_COEFFICIENT * pow2( reflectivity ) ), diffuseColor.rgb, metalnessFactor );\n\tmaterial.clearCoat = saturate( clearCoat );\tmaterial.clearCoatRoughness = clamp( clearCoatRoughness, 0.04, 1.0 );\n#endif",lights_physical_pars_fragment:"struct PhysicalMaterial {\n\tvec3\tdiffuseColor;\n\tfloat\tspecularRoughness;\n\tvec3\tspecularColor;\n\t#ifndef STANDARD\n\t\tfloat clearCoat;\n\t\tfloat clearCoatRoughness;\n\t#endif\n};\n#define MAXIMUM_SPECULAR_COEFFICIENT 0.16\n#define DEFAULT_SPECULAR_COEFFICIENT 0.04\nfloat clearCoatDHRApprox( const in float roughness, const in float dotNL ) {\n\treturn DEFAULT_SPECULAR_COEFFICIENT + ( 1.0 - DEFAULT_SPECULAR_COEFFICIENT ) * ( pow( 1.0 - dotNL, 5.0 ) * pow( 1.0 - roughness, 2.0 ) );\n}\n#if NUM_RECT_AREA_LIGHTS > 0\n\tvoid RE_Direct_RectArea_Physical( const in RectAreaLight rectAreaLight, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n\t\tvec3 normal = geometry.normal;\n\t\tvec3 viewDir = geometry.viewDir;\n\t\tvec3 position = geometry.position;\n\t\tvec3 lightPos = rectAreaLight.position;\n\t\tvec3 halfWidth = rectAreaLight.halfWidth;\n\t\tvec3 halfHeight = rectAreaLight.halfHeight;\n\t\tvec3 lightColor = rectAreaLight.color;\n\t\tfloat roughness = material.specularRoughness;\n\t\tvec3 rectCoords[ 4 ];\n\t\trectCoords[ 0 ] = lightPos + halfWidth - halfHeight;\t\trectCoords[ 1 ] = lightPos - halfWidth - halfHeight;\n\t\trectCoords[ 2 ] = lightPos - halfWidth + halfHeight;\n\t\trectCoords[ 3 ] = lightPos + halfWidth + halfHeight;\n\t\tvec2 uv = LTC_Uv( normal, viewDir, roughness );\n\t\tvec4 t1 = texture2D( ltc_1, uv );\n\t\tvec4 t2 = texture2D( ltc_2, uv );\n\t\tmat3 mInv = mat3(\n\t\t\tvec3( t1.x, 0, t1.y ),\n\t\t\tvec3( 0, 1, 0 ),\n\t\t\tvec3( t1.z, 0, t1.w )\n\t\t);\n\t\tvec3 fresnel = ( material.specularColor * t2.x + ( vec3( 1.0 ) - material.specularColor ) * t2.y );\n\t\treflectedLight.directSpecular += lightColor * fresnel * LTC_Evaluate( normal, viewDir, position, mInv, rectCoords );\n\t\treflectedLight.directDiffuse += lightColor * material.diffuseColor * LTC_Evaluate( normal, viewDir, position, mat3( 1.0 ), rectCoords );\n\t}\n#endif\nvoid RE_Direct_Physical( const in IncidentLight directLight, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n\tfloat dotNL = saturate( dot( geometry.normal, directLight.direction ) );\n\tvec3 irradiance = dotNL * directLight.color;\n\t#ifndef PHYSICALLY_CORRECT_LIGHTS\n\t\tirradiance *= PI;\n\t#endif\n\t#ifndef STANDARD\n\t\tfloat clearCoatDHR = material.clearCoat * clearCoatDHRApprox( material.clearCoatRoughness, dotNL );\n\t#else\n\t\tfloat clearCoatDHR = 0.0;\n\t#endif\n\treflectedLight.directSpecular += ( 1.0 - clearCoatDHR ) * irradiance * BRDF_Specular_GGX( directLight, geometry, material.specularColor, material.specularRoughness );\n\treflectedLight.directDiffuse += ( 1.0 - clearCoatDHR ) * irradiance * BRDF_Diffuse_Lambert( material.diffuseColor );\n\t#ifndef STANDARD\n\t\treflectedLight.directSpecular += irradiance * material.clearCoat * BRDF_Specular_GGX( directLight, geometry, vec3( DEFAULT_SPECULAR_COEFFICIENT ), material.clearCoatRoughness );\n\t#endif\n}\nvoid RE_IndirectDiffuse_Physical( const in vec3 irradiance, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n\t#ifndef ENVMAP_TYPE_CUBE_UV\n\t\treflectedLight.indirectDiffuse += irradiance * BRDF_Diffuse_Lambert( material.diffuseColor );\n\t#endif\n}\nvoid RE_IndirectSpecular_Physical( const in vec3 radiance, const in vec3 irradiance, const in vec3 clearCoatRadiance, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight) {\n\t#ifndef STANDARD\n\t\tfloat dotNV = saturate( dot( geometry.normal, geometry.viewDir ) );\n\t\tfloat dotNL = dotNV;\n\t\tfloat clearCoatDHR = material.clearCoat * clearCoatDHRApprox( material.clearCoatRoughness, dotNL );\n\t#else\n\t\tfloat clearCoatDHR = 0.0;\n\t#endif\n\tfloat clearCoatInv = 1.0 - clearCoatDHR;\n\t#if defined( ENVMAP_TYPE_CUBE_UV )\n\t\tvec3 singleScattering = vec3( 0.0 );\n\t\tvec3 multiScattering = vec3( 0.0 );\n\t\tvec3 cosineWeightedIrradiance = irradiance * RECIPROCAL_PI;\n\t\tBRDF_Specular_Multiscattering_Environment( geometry, material.specularColor, material.specularRoughness, singleScattering, multiScattering );\n\t\tvec3 diffuse = material.diffuseColor * ( 1.0 - ( singleScattering + multiScattering ) );\n\t\treflectedLight.indirectSpecular += clearCoatInv * radiance * singleScattering;\n\t\treflectedLight.indirectDiffuse += multiScattering * cosineWeightedIrradiance;\n\t\treflectedLight.indirectDiffuse += diffuse * cosineWeightedIrradiance;\n\t#else\n\t\treflectedLight.indirectSpecular += clearCoatInv * radiance * BRDF_Specular_GGX_Environment( geometry, material.specularColor, material.specularRoughness );\n\t#endif\n\t#ifndef STANDARD\n\t\treflectedLight.indirectSpecular += clearCoatRadiance * material.clearCoat * BRDF_Specular_GGX_Environment( geometry, vec3( DEFAULT_SPECULAR_COEFFICIENT ), material.clearCoatRoughness );\n\t#endif\n}\n#define RE_Direct\t\t\t\tRE_Direct_Physical\n#define RE_Direct_RectArea\t\tRE_Direct_RectArea_Physical\n#define RE_IndirectDiffuse\t\tRE_IndirectDiffuse_Physical\n#define RE_IndirectSpecular\t\tRE_IndirectSpecular_Physical\n#define Material_BlinnShininessExponent( material ) GGXRoughnessToBlinnExponent( material.specularRoughness )\n#define Material_ClearCoat_BlinnShininessExponent( material ) GGXRoughnessToBlinnExponent( material.clearCoatRoughness )\nfloat computeSpecularOcclusion( const in float dotNV, const in float ambientOcclusion, const in float roughness ) {\n\treturn saturate( pow( dotNV + ambientOcclusion, exp2( - 16.0 * roughness - 1.0 ) ) - 1.0 + ambientOcclusion );\n}",lights_fragment_begin:"\nGeometricContext geometry;\ngeometry.position = - vViewPosition;\ngeometry.normal = normal;\ngeometry.viewDir = normalize( vViewPosition );\nIncidentLight directLight;\n#if ( NUM_POINT_LIGHTS > 0 ) && defined( RE_Direct )\n\tPointLight pointLight;\n\t#pragma unroll_loop\n\tfor ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\n\t\tpointLight = pointLights[ i ];\n\t\tgetPointDirectLightIrradiance( pointLight, geometry, directLight );\n\t\t#ifdef USE_SHADOWMAP\n\t\tdirectLight.color *= all( bvec2( pointLight.shadow, directLight.visible ) ) ? getPointShadow( pointShadowMap[ i ], pointLight.shadowMapSize, pointLight.shadowBias, pointLight.shadowRadius, vPointShadowCoord[ i ], pointLight.shadowCameraNear, pointLight.shadowCameraFar ) : 1.0;\n\t\t#endif\n\t\tRE_Direct( directLight, geometry, material, reflectedLight );\n\t}\n#endif\n#if ( NUM_SPOT_LIGHTS > 0 ) && defined( RE_Direct )\n\tSpotLight spotLight;\n\t#pragma unroll_loop\n\tfor ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\n\t\tspotLight = spotLights[ i ];\n\t\tgetSpotDirectLightIrradiance( spotLight, geometry, directLight );\n\t\t#ifdef USE_SHADOWMAP\n\t\tdirectLight.color *= all( bvec2( spotLight.shadow, directLight.visible ) ) ? getShadow( spotShadowMap[ i ], spotLight.shadowMapSize, spotLight.shadowBias, spotLight.shadowRadius, vSpotShadowCoord[ i ] ) : 1.0;\n\t\t#endif\n\t\tRE_Direct( directLight, geometry, material, reflectedLight );\n\t}\n#endif\n#if ( NUM_DIR_LIGHTS > 0 ) && defined( RE_Direct )\n\tDirectionalLight directionalLight;\n\t#pragma unroll_loop\n\tfor ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\n\t\tdirectionalLight = directionalLights[ i ];\n\t\tgetDirectionalDirectLightIrradiance( directionalLight, geometry, directLight );\n\t\t#ifdef USE_SHADOWMAP\n\t\tdirectLight.color *= all( bvec2( directionalLight.shadow, directLight.visible ) ) ? getShadow( directionalShadowMap[ i ], directionalLight.shadowMapSize, directionalLight.shadowBias, directionalLight.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\n\t\t#endif\n\t\tRE_Direct( directLight, geometry, material, reflectedLight );\n\t}\n#endif\n#if ( NUM_RECT_AREA_LIGHTS > 0 ) && defined( RE_Direct_RectArea )\n\tRectAreaLight rectAreaLight;\n\t#pragma unroll_loop\n\tfor ( int i = 0; i < NUM_RECT_AREA_LIGHTS; i ++ ) {\n\t\trectAreaLight = rectAreaLights[ i ];\n\t\tRE_Direct_RectArea( rectAreaLight, geometry, material, reflectedLight );\n\t}\n#endif\n#if defined( RE_IndirectDiffuse )\n\tvec3 irradiance = getAmbientLightIrradiance( ambientLightColor );\n\tirradiance += getLightProbeIrradiance( lightProbe, geometry );\n\t#if ( NUM_HEMI_LIGHTS > 0 )\n\t\t#pragma unroll_loop\n\t\tfor ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) {\n\t\t\tirradiance += getHemisphereLightIrradiance( hemisphereLights[ i ], geometry );\n\t\t}\n\t#endif\n#endif\n#if defined( RE_IndirectSpecular )\n\tvec3 radiance = vec3( 0.0 );\n\tvec3 clearCoatRadiance = vec3( 0.0 );\n#endif",lights_fragment_maps:"#if defined( RE_IndirectDiffuse )\n\t#ifdef USE_LIGHTMAP\n\t\tvec3 lightMapIrradiance = texture2D( lightMap, vUv2 ).xyz * lightMapIntensity;\n\t\t#ifndef PHYSICALLY_CORRECT_LIGHTS\n\t\t\tlightMapIrradiance *= PI;\n\t\t#endif\n\t\tirradiance += lightMapIrradiance;\n\t#endif\n\t#if defined( USE_ENVMAP ) && defined( PHYSICAL ) && defined( ENVMAP_TYPE_CUBE_UV )\n\t\tirradiance += getLightProbeIndirectIrradiance( geometry, maxMipLevel );\n\t#endif\n#endif\n#if defined( USE_ENVMAP ) && defined( RE_IndirectSpecular )\n\tradiance += getLightProbeIndirectRadiance( geometry, Material_BlinnShininessExponent( material ), maxMipLevel );\n\t#ifndef STANDARD\n\t\tclearCoatRadiance += getLightProbeIndirectRadiance( geometry, Material_ClearCoat_BlinnShininessExponent( material ), maxMipLevel );\n\t#endif\n#endif",lights_fragment_end:"#if defined( RE_IndirectDiffuse )\n\tRE_IndirectDiffuse( irradiance, geometry, material, reflectedLight );\n#endif\n#if defined( RE_IndirectSpecular )\n\tRE_IndirectSpecular( radiance, irradiance, clearCoatRadiance, geometry, material, reflectedLight );\n#endif",logdepthbuf_fragment:"#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT )\n\tgl_FragDepthEXT = log2( vFragDepth ) * logDepthBufFC * 0.5;\n#endif",logdepthbuf_pars_fragment:"#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT )\n\tuniform float logDepthBufFC;\n\tvarying float vFragDepth;\n#endif",logdepthbuf_pars_vertex:"#ifdef USE_LOGDEPTHBUF\n\t#ifdef USE_LOGDEPTHBUF_EXT\n\t\tvarying float vFragDepth;\n\t#else\n\t\tuniform float logDepthBufFC;\n\t#endif\n#endif",logdepthbuf_vertex:"#ifdef USE_LOGDEPTHBUF\n\t#ifdef USE_LOGDEPTHBUF_EXT\n\t\tvFragDepth = 1.0 + gl_Position.w;\n\t#else\n\t\tgl_Position.z = log2( max( EPSILON, gl_Position.w + 1.0 ) ) * logDepthBufFC - 1.0;\n\t\tgl_Position.z *= gl_Position.w;\n\t#endif\n#endif",map_fragment:"#ifdef USE_MAP\n\tvec4 texelColor = texture2D( map, vUv );\n\ttexelColor = mapTexelToLinear( texelColor );\n\tdiffuseColor *= texelColor;\n#endif",map_pars_fragment:"#ifdef USE_MAP\n\tuniform sampler2D map;\n#endif",map_particle_fragment:"#ifdef USE_MAP\n\tvec2 uv = ( uvTransform * vec3( gl_PointCoord.x, 1.0 - gl_PointCoord.y, 1 ) ).xy;\n\tvec4 mapTexel = texture2D( map, uv );\n\tdiffuseColor *= mapTexelToLinear( mapTexel );\n#endif",map_particle_pars_fragment:"#ifdef USE_MAP\n\tuniform mat3 uvTransform;\n\tuniform sampler2D map;\n#endif",metalnessmap_fragment:"float metalnessFactor = metalness;\n#ifdef USE_METALNESSMAP\n\tvec4 texelMetalness = texture2D( metalnessMap, vUv );\n\tmetalnessFactor *= texelMetalness.b;\n#endif",metalnessmap_pars_fragment:"#ifdef USE_METALNESSMAP\n\tuniform sampler2D metalnessMap;\n#endif",morphnormal_vertex:"#ifdef USE_MORPHNORMALS\n\tobjectNormal += ( morphNormal0 - normal ) * morphTargetInfluences[ 0 ];\n\tobjectNormal += ( morphNormal1 - normal ) * morphTargetInfluences[ 1 ];\n\tobjectNormal += ( morphNormal2 - normal ) * morphTargetInfluences[ 2 ];\n\tobjectNormal += ( morphNormal3 - normal ) * morphTargetInfluences[ 3 ];\n#endif",morphtarget_pars_vertex:"#ifdef USE_MORPHTARGETS\n\t#ifndef USE_MORPHNORMALS\n\tuniform float morphTargetInfluences[ 8 ];\n\t#else\n\tuniform float morphTargetInfluences[ 4 ];\n\t#endif\n#endif",morphtarget_vertex:"#ifdef USE_MORPHTARGETS\n\ttransformed += ( morphTarget0 - position ) * morphTargetInfluences[ 0 ];\n\ttransformed += ( morphTarget1 - position ) * morphTargetInfluences[ 1 ];\n\ttransformed += ( morphTarget2 - position ) * morphTargetInfluences[ 2 ];\n\ttransformed += ( morphTarget3 - position ) * morphTargetInfluences[ 3 ];\n\t#ifndef USE_MORPHNORMALS\n\ttransformed += ( morphTarget4 - position ) * morphTargetInfluences[ 4 ];\n\ttransformed += ( morphTarget5 - position ) * morphTargetInfluences[ 5 ];\n\ttransformed += ( morphTarget6 - position ) * morphTargetInfluences[ 6 ];\n\ttransformed += ( morphTarget7 - position ) * morphTargetInfluences[ 7 ];\n\t#endif\n#endif",normal_fragment_begin:"#ifdef FLAT_SHADED\n\tvec3 fdx = vec3( dFdx( vViewPosition.x ), dFdx( vViewPosition.y ), dFdx( vViewPosition.z ) );\n\tvec3 fdy = vec3( dFdy( vViewPosition.x ), dFdy( vViewPosition.y ), dFdy( vViewPosition.z ) );\n\tvec3 normal = normalize( cross( fdx, fdy ) );\n#else\n\tvec3 normal = normalize( vNormal );\n\t#ifdef DOUBLE_SIDED\n\t\tnormal = normal * ( float( gl_FrontFacing ) * 2.0 - 1.0 );\n\t#endif\n\t#ifdef USE_TANGENT\n\t\tvec3 tangent = normalize( vTangent );\n\t\tvec3 bitangent = normalize( vBitangent );\n\t\t#ifdef DOUBLE_SIDED\n\t\t\ttangent = tangent * ( float( gl_FrontFacing ) * 2.0 - 1.0 );\n\t\t\tbitangent = bitangent * ( float( gl_FrontFacing ) * 2.0 - 1.0 );\n\t\t#endif\n\t#endif\n#endif",normal_fragment_maps:"#ifdef USE_NORMALMAP\n\t#ifdef OBJECTSPACE_NORMALMAP\n\t\tnormal = texture2D( normalMap, vUv ).xyz * 2.0 - 1.0;\n\t\t#ifdef FLIP_SIDED\n\t\t\tnormal = - normal;\n\t\t#endif\n\t\t#ifdef DOUBLE_SIDED\n\t\t\tnormal = normal * ( float( gl_FrontFacing ) * 2.0 - 1.0 );\n\t\t#endif\n\t\tnormal = normalize( normalMatrix * normal );\n\t#else\n\t\t#ifdef USE_TANGENT\n\t\t\tmat3 vTBN = mat3( tangent, bitangent, normal );\n\t\t\tvec3 mapN = texture2D( normalMap, vUv ).xyz * 2.0 - 1.0;\n\t\t\tmapN.xy = normalScale * mapN.xy;\n\t\t\tnormal = normalize( vTBN * mapN );\n\t\t#else\n\t\t\tnormal = perturbNormal2Arb( -vViewPosition, normal );\n\t\t#endif\n\t#endif\n#elif defined( USE_BUMPMAP )\n\tnormal = perturbNormalArb( -vViewPosition, normal, dHdxy_fwd() );\n#endif",normalmap_pars_fragment:"#ifdef USE_NORMALMAP\n\tuniform sampler2D normalMap;\n\tuniform vec2 normalScale;\n\t#ifdef OBJECTSPACE_NORMALMAP\n\t\tuniform mat3 normalMatrix;\n\t#else\n\t\tvec3 perturbNormal2Arb( vec3 eye_pos, vec3 surf_norm ) {\n\t\t\tvec3 q0 = vec3( dFdx( eye_pos.x ), dFdx( eye_pos.y ), dFdx( eye_pos.z ) );\n\t\t\tvec3 q1 = vec3( dFdy( eye_pos.x ), dFdy( eye_pos.y ), dFdy( eye_pos.z ) );\n\t\t\tvec2 st0 = dFdx( vUv.st );\n\t\t\tvec2 st1 = dFdy( vUv.st );\n\t\t\tfloat scale = sign( st1.t * st0.s - st0.t * st1.s );\n\t\t\tvec3 S = normalize( ( q0 * st1.t - q1 * st0.t ) * scale );\n\t\t\tvec3 T = normalize( ( - q0 * st1.s + q1 * st0.s ) * scale );\n\t\t\tvec3 N = normalize( surf_norm );\n\t\t\tmat3 tsn = mat3( S, T, N );\n\t\t\tvec3 mapN = texture2D( normalMap, vUv ).xyz * 2.0 - 1.0;\n\t\t\tmapN.xy *= normalScale;\n\t\t\tmapN.xy *= ( float( gl_FrontFacing ) * 2.0 - 1.0 );\n\t\t\treturn normalize( tsn * mapN );\n\t\t}\n\t#endif\n#endif",packing:"vec3 packNormalToRGB( const in vec3 normal ) {\n\treturn normalize( normal ) * 0.5 + 0.5;\n}\nvec3 unpackRGBToNormal( const in vec3 rgb ) {\n\treturn 2.0 * rgb.xyz - 1.0;\n}\nconst float PackUpscale = 256. / 255.;const float UnpackDownscale = 255. / 256.;\nconst vec3 PackFactors = vec3( 256. * 256. * 256., 256. * 256., 256. );\nconst vec4 UnpackFactors = UnpackDownscale / vec4( PackFactors, 1. );\nconst float ShiftRight8 = 1. / 256.;\nvec4 packDepthToRGBA( const in float v ) {\n\tvec4 r = vec4( fract( v * PackFactors ), v );\n\tr.yzw -= r.xyz * ShiftRight8;\treturn r * PackUpscale;\n}\nfloat unpackRGBAToDepth( const in vec4 v ) {\n\treturn dot( v, UnpackFactors );\n}\nfloat viewZToOrthographicDepth( const in float viewZ, const in float near, const in float far ) {\n\treturn ( viewZ + near ) / ( near - far );\n}\nfloat orthographicDepthToViewZ( const in float linearClipZ, const in float near, const in float far ) {\n\treturn linearClipZ * ( near - far ) - near;\n}\nfloat viewZToPerspectiveDepth( const in float viewZ, const in float near, const in float far ) {\n\treturn (( near + viewZ ) * far ) / (( far - near ) * viewZ );\n}\nfloat perspectiveDepthToViewZ( const in float invClipZ, const in float near, const in float far ) {\n\treturn ( near * far ) / ( ( far - near ) * invClipZ - far );\n}",premultiplied_alpha_fragment:"#ifdef PREMULTIPLIED_ALPHA\n\tgl_FragColor.rgb *= gl_FragColor.a;\n#endif",project_vertex:"vec4 mvPosition = modelViewMatrix * vec4( transformed, 1.0 );\ngl_Position = projectionMatrix * mvPosition;",dithering_fragment:"#if defined( DITHERING )\n\tgl_FragColor.rgb = dithering( gl_FragColor.rgb );\n#endif",dithering_pars_fragment:"#if defined( DITHERING )\n\tvec3 dithering( vec3 color ) {\n\t\tfloat grid_position = rand( gl_FragCoord.xy );\n\t\tvec3 dither_shift_RGB = vec3( 0.25 / 255.0, -0.25 / 255.0, 0.25 / 255.0 );\n\t\tdither_shift_RGB = mix( 2.0 * dither_shift_RGB, -2.0 * dither_shift_RGB, grid_position );\n\t\treturn color + dither_shift_RGB;\n\t}\n#endif",roughnessmap_fragment:"float roughnessFactor = roughness;\n#ifdef USE_ROUGHNESSMAP\n\tvec4 texelRoughness = texture2D( roughnessMap, vUv );\n\troughnessFactor *= texelRoughness.g;\n#endif",roughnessmap_pars_fragment:"#ifdef USE_ROUGHNESSMAP\n\tuniform sampler2D roughnessMap;\n#endif",shadowmap_pars_fragment:"#ifdef USE_SHADOWMAP\n\t#if NUM_DIR_LIGHTS > 0\n\t\tuniform sampler2D directionalShadowMap[ NUM_DIR_LIGHTS ];\n\t\tvarying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHTS ];\n\t#endif\n\t#if NUM_SPOT_LIGHTS > 0\n\t\tuniform sampler2D spotShadowMap[ NUM_SPOT_LIGHTS ];\n\t\tvarying vec4 vSpotShadowCoord[ NUM_SPOT_LIGHTS ];\n\t#endif\n\t#if NUM_POINT_LIGHTS > 0\n\t\tuniform sampler2D pointShadowMap[ NUM_POINT_LIGHTS ];\n\t\tvarying vec4 vPointShadowCoord[ NUM_POINT_LIGHTS ];\n\t#endif\n\tfloat texture2DCompare( sampler2D depths, vec2 uv, float compare ) {\n\t\treturn step( compare, unpackRGBAToDepth( texture2D( depths, uv ) ) );\n\t}\n\tfloat texture2DShadowLerp( sampler2D depths, vec2 size, vec2 uv, float compare ) {\n\t\tconst vec2 offset = vec2( 0.0, 1.0 );\n\t\tvec2 texelSize = vec2( 1.0 ) / size;\n\t\tvec2 centroidUV = floor( uv * size + 0.5 ) / size;\n\t\tfloat lb = texture2DCompare( depths, centroidUV + texelSize * offset.xx, compare );\n\t\tfloat lt = texture2DCompare( depths, centroidUV + texelSize * offset.xy, compare );\n\t\tfloat rb = texture2DCompare( depths, centroidUV + texelSize * offset.yx, compare );\n\t\tfloat rt = texture2DCompare( depths, centroidUV + texelSize * offset.yy, compare );\n\t\tvec2 f = fract( uv * size + 0.5 );\n\t\tfloat a = mix( lb, lt, f.y );\n\t\tfloat b = mix( rb, rt, f.y );\n\t\tfloat c = mix( a, b, f.x );\n\t\treturn c;\n\t}\n\tfloat getShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowBias, float shadowRadius, vec4 shadowCoord ) {\n\t\tfloat shadow = 1.0;\n\t\tshadowCoord.xyz /= shadowCoord.w;\n\t\tshadowCoord.z += shadowBias;\n\t\tbvec4 inFrustumVec = bvec4 ( shadowCoord.x >= 0.0, shadowCoord.x <= 1.0, shadowCoord.y >= 0.0, shadowCoord.y <= 1.0 );\n\t\tbool inFrustum = all( inFrustumVec );\n\t\tbvec2 frustumTestVec = bvec2( inFrustum, shadowCoord.z <= 1.0 );\n\t\tbool frustumTest = all( frustumTestVec );\n\t\tif ( frustumTest ) {\n\t\t#if defined( SHADOWMAP_TYPE_PCF )\n\t\t\tvec2 texelSize = vec2( 1.0 ) / shadowMapSize;\n\t\t\tfloat dx0 = - texelSize.x * shadowRadius;\n\t\t\tfloat dy0 = - texelSize.y * shadowRadius;\n\t\t\tfloat dx1 = + texelSize.x * shadowRadius;\n\t\t\tfloat dy1 = + texelSize.y * shadowRadius;\n\t\t\tshadow = (\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy1 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy1 ), shadowCoord.z ) +\n\t\t\t\ttexture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy1 ), shadowCoord.z )\n\t\t\t) * ( 1.0 / 9.0 );\n\t\t#elif defined( SHADOWMAP_TYPE_PCF_SOFT )\n\t\t\tvec2 texelSize = vec2( 1.0 ) / shadowMapSize;\n\t\t\tfloat dx0 = - texelSize.x * shadowRadius;\n\t\t\tfloat dy0 = - texelSize.y * shadowRadius;\n\t\t\tfloat dx1 = + texelSize.x * shadowRadius;\n\t\t\tfloat dy1 = + texelSize.y * shadowRadius;\n\t\t\tshadow = (\n\t\t\t\ttexture2DShadowLerp( shadowMap, shadowMapSize, shadowCoord.xy + vec2( dx0, dy0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DShadowLerp( shadowMap, shadowMapSize, shadowCoord.xy + vec2( 0.0, dy0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DShadowLerp( shadowMap, shadowMapSize, shadowCoord.xy + vec2( dx1, dy0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DShadowLerp( shadowMap, shadowMapSize, shadowCoord.xy + vec2( dx0, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DShadowLerp( shadowMap, shadowMapSize, shadowCoord.xy, shadowCoord.z ) +\n\t\t\t\ttexture2DShadowLerp( shadowMap, shadowMapSize, shadowCoord.xy + vec2( dx1, 0.0 ), shadowCoord.z ) +\n\t\t\t\ttexture2DShadowLerp( shadowMap, shadowMapSize, shadowCoord.xy + vec2( dx0, dy1 ), shadowCoord.z ) +\n\t\t\t\ttexture2DShadowLerp( shadowMap, shadowMapSize, shadowCoord.xy + vec2( 0.0, dy1 ), shadowCoord.z ) +\n\t\t\t\ttexture2DShadowLerp( shadowMap, shadowMapSize, shadowCoord.xy + vec2( dx1, dy1 ), shadowCoord.z )\n\t\t\t) * ( 1.0 / 9.0 );\n\t\t#else\n\t\t\tshadow = texture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z );\n\t\t#endif\n\t\t}\n\t\treturn shadow;\n\t}\n\tvec2 cubeToUV( vec3 v, float texelSizeY ) {\n\t\tvec3 absV = abs( v );\n\t\tfloat scaleToCube = 1.0 / max( absV.x, max( absV.y, absV.z ) );\n\t\tabsV *= scaleToCube;\n\t\tv *= scaleToCube * ( 1.0 - 2.0 * texelSizeY );\n\t\tvec2 planar = v.xy;\n\t\tfloat almostATexel = 1.5 * texelSizeY;\n\t\tfloat almostOne = 1.0 - almostATexel;\n\t\tif ( absV.z >= almostOne ) {\n\t\t\tif ( v.z > 0.0 )\n\t\t\t\tplanar.x = 4.0 - v.x;\n\t\t} else if ( absV.x >= almostOne ) {\n\t\t\tfloat signX = sign( v.x );\n\t\t\tplanar.x = v.z * signX + 2.0 * signX;\n\t\t} else if ( absV.y >= almostOne ) {\n\t\t\tfloat signY = sign( v.y );\n\t\t\tplanar.x = v.x + 2.0 * signY + 2.0;\n\t\t\tplanar.y = v.z * signY - 2.0;\n\t\t}\n\t\treturn vec2( 0.125, 0.25 ) * planar + vec2( 0.375, 0.75 );\n\t}\n\tfloat getPointShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowBias, float shadowRadius, vec4 shadowCoord, float shadowCameraNear, float shadowCameraFar ) {\n\t\tvec2 texelSize = vec2( 1.0 ) / ( shadowMapSize * vec2( 4.0, 2.0 ) );\n\t\tvec3 lightToPosition = shadowCoord.xyz;\n\t\tfloat dp = ( length( lightToPosition ) - shadowCameraNear ) / ( shadowCameraFar - shadowCameraNear );\t\tdp += shadowBias;\n\t\tvec3 bd3D = normalize( lightToPosition );\n\t\t#if defined( SHADOWMAP_TYPE_PCF ) || defined( SHADOWMAP_TYPE_PCF_SOFT )\n\t\t\tvec2 offset = vec2( - 1, 1 ) * shadowRadius * texelSize.y;\n\t\t\treturn (\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyy, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyy, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyx, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyx, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxy, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxy, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxx, texelSize.y ), dp ) +\n\t\t\t\ttexture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxx, texelSize.y ), dp )\n\t\t\t) * ( 1.0 / 9.0 );\n\t\t#else\n\t\t\treturn texture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp );\n\t\t#endif\n\t}\n#endif",shadowmap_pars_vertex:"#ifdef USE_SHADOWMAP\n\t#if NUM_DIR_LIGHTS > 0\n\t\tuniform mat4 directionalShadowMatrix[ NUM_DIR_LIGHTS ];\n\t\tvarying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHTS ];\n\t#endif\n\t#if NUM_SPOT_LIGHTS > 0\n\t\tuniform mat4 spotShadowMatrix[ NUM_SPOT_LIGHTS ];\n\t\tvarying vec4 vSpotShadowCoord[ NUM_SPOT_LIGHTS ];\n\t#endif\n\t#if NUM_POINT_LIGHTS > 0\n\t\tuniform mat4 pointShadowMatrix[ NUM_POINT_LIGHTS ];\n\t\tvarying vec4 vPointShadowCoord[ NUM_POINT_LIGHTS ];\n\t#endif\n#endif",shadowmap_vertex:"#ifdef USE_SHADOWMAP\n\t#if NUM_DIR_LIGHTS > 0\n\t#pragma unroll_loop\n\tfor ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\n\t\tvDirectionalShadowCoord[ i ] = directionalShadowMatrix[ i ] * worldPosition;\n\t}\n\t#endif\n\t#if NUM_SPOT_LIGHTS > 0\n\t#pragma unroll_loop\n\tfor ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\n\t\tvSpotShadowCoord[ i ] = spotShadowMatrix[ i ] * worldPosition;\n\t}\n\t#endif\n\t#if NUM_POINT_LIGHTS > 0\n\t#pragma unroll_loop\n\tfor ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\n\t\tvPointShadowCoord[ i ] = pointShadowMatrix[ i ] * worldPosition;\n\t}\n\t#endif\n#endif",shadowmask_pars_fragment:"float getShadowMask() {\n\tfloat shadow = 1.0;\n\t#ifdef USE_SHADOWMAP\n\t#if NUM_DIR_LIGHTS > 0\n\tDirectionalLight directionalLight;\n\t#pragma unroll_loop\n\tfor ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\n\t\tdirectionalLight = directionalLights[ i ];\n\t\tshadow *= bool( directionalLight.shadow ) ? getShadow( directionalShadowMap[ i ], directionalLight.shadowMapSize, directionalLight.shadowBias, directionalLight.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\n\t}\n\t#endif\n\t#if NUM_SPOT_LIGHTS > 0\n\tSpotLight spotLight;\n\t#pragma unroll_loop\n\tfor ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\n\t\tspotLight = spotLights[ i ];\n\t\tshadow *= bool( spotLight.shadow ) ? getShadow( spotShadowMap[ i ], spotLight.shadowMapSize, spotLight.shadowBias, spotLight.shadowRadius, vSpotShadowCoord[ i ] ) : 1.0;\n\t}\n\t#endif\n\t#if NUM_POINT_LIGHTS > 0\n\tPointLight pointLight;\n\t#pragma unroll_loop\n\tfor ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\n\t\tpointLight = pointLights[ i ];\n\t\tshadow *= bool( pointLight.shadow ) ? getPointShadow( pointShadowMap[ i ], pointLight.shadowMapSize, pointLight.shadowBias, pointLight.shadowRadius, vPointShadowCoord[ i ], pointLight.shadowCameraNear, pointLight.shadowCameraFar ) : 1.0;\n\t}\n\t#endif\n\t#endif\n\treturn shadow;\n}",skinbase_vertex:"#ifdef USE_SKINNING\n\tmat4 boneMatX = getBoneMatrix( skinIndex.x );\n\tmat4 boneMatY = getBoneMatrix( skinIndex.y );\n\tmat4 boneMatZ = getBoneMatrix( skinIndex.z );\n\tmat4 boneMatW = getBoneMatrix( skinIndex.w );\n#endif",skinning_pars_vertex:"#ifdef USE_SKINNING\n\tuniform mat4 bindMatrix;\n\tuniform mat4 bindMatrixInverse;\n\t#ifdef BONE_TEXTURE\n\t\tuniform sampler2D boneTexture;\n\t\tuniform int boneTextureSize;\n\t\tmat4 getBoneMatrix( const in float i ) {\n\t\t\tfloat j = i * 4.0;\n\t\t\tfloat x = mod( j, float( boneTextureSize ) );\n\t\t\tfloat y = floor( j / float( boneTextureSize ) );\n\t\t\tfloat dx = 1.0 / float( boneTextureSize );\n\t\t\tfloat dy = 1.0 / float( boneTextureSize );\n\t\t\ty = dy * ( y + 0.5 );\n\t\t\tvec4 v1 = texture2D( boneTexture, vec2( dx * ( x + 0.5 ), y ) );\n\t\t\tvec4 v2 = texture2D( boneTexture, vec2( dx * ( x + 1.5 ), y ) );\n\t\t\tvec4 v3 = texture2D( boneTexture, vec2( dx * ( x + 2.5 ), y ) );\n\t\t\tvec4 v4 = texture2D( boneTexture, vec2( dx * ( x + 3.5 ), y ) );\n\t\t\tmat4 bone = mat4( v1, v2, v3, v4 );\n\t\t\treturn bone;\n\t\t}\n\t#else\n\t\tuniform mat4 boneMatrices[ MAX_BONES ];\n\t\tmat4 getBoneMatrix( const in float i ) {\n\t\t\tmat4 bone = boneMatrices[ int(i) ];\n\t\t\treturn bone;\n\t\t}\n\t#endif\n#endif",skinning_vertex:"#ifdef USE_SKINNING\n\tvec4 skinVertex = bindMatrix * vec4( transformed, 1.0 );\n\tvec4 skinned = vec4( 0.0 );\n\tskinned += boneMatX * skinVertex * skinWeight.x;\n\tskinned += boneMatY * skinVertex * skinWeight.y;\n\tskinned += boneMatZ * skinVertex * skinWeight.z;\n\tskinned += boneMatW * skinVertex * skinWeight.w;\n\ttransformed = ( bindMatrixInverse * skinned ).xyz;\n#endif",skinnormal_vertex:"#ifdef USE_SKINNING\n\tmat4 skinMatrix = mat4( 0.0 );\n\tskinMatrix += skinWeight.x * boneMatX;\n\tskinMatrix += skinWeight.y * boneMatY;\n\tskinMatrix += skinWeight.z * boneMatZ;\n\tskinMatrix += skinWeight.w * boneMatW;\n\tskinMatrix = bindMatrixInverse * skinMatrix * bindMatrix;\n\tobjectNormal = vec4( skinMatrix * vec4( objectNormal, 0.0 ) ).xyz;\n\t#ifdef USE_TANGENT\n\t\tobjectTangent = vec4( skinMatrix * vec4( objectTangent, 0.0 ) ).xyz;\n\t#endif\n#endif",specularmap_fragment:"float specularStrength;\n#ifdef USE_SPECULARMAP\n\tvec4 texelSpecular = texture2D( specularMap, vUv );\n\tspecularStrength = texelSpecular.r;\n#else\n\tspecularStrength = 1.0;\n#endif",specularmap_pars_fragment:"#ifdef USE_SPECULARMAP\n\tuniform sampler2D specularMap;\n#endif",tonemapping_fragment:"#if defined( TONE_MAPPING )\n\tgl_FragColor.rgb = toneMapping( gl_FragColor.rgb );\n#endif",tonemapping_pars_fragment:"#ifndef saturate\n\t#define saturate(a) clamp( a, 0.0, 1.0 )\n#endif\nuniform float toneMappingExposure;\nuniform float toneMappingWhitePoint;\nvec3 LinearToneMapping( vec3 color ) {\n\treturn toneMappingExposure * color;\n}\nvec3 ReinhardToneMapping( vec3 color ) {\n\tcolor *= toneMappingExposure;\n\treturn saturate( color / ( vec3( 1.0 ) + color ) );\n}\n#define Uncharted2Helper( x ) max( ( ( x * ( 0.15 * x + 0.10 * 0.50 ) + 0.20 * 0.02 ) / ( x * ( 0.15 * x + 0.50 ) + 0.20 * 0.30 ) ) - 0.02 / 0.30, vec3( 0.0 ) )\nvec3 Uncharted2ToneMapping( vec3 color ) {\n\tcolor *= toneMappingExposure;\n\treturn saturate( Uncharted2Helper( color ) / Uncharted2Helper( vec3( toneMappingWhitePoint ) ) );\n}\nvec3 OptimizedCineonToneMapping( vec3 color ) {\n\tcolor *= toneMappingExposure;\n\tcolor = max( vec3( 0.0 ), color - 0.004 );\n\treturn pow( ( color * ( 6.2 * color + 0.5 ) ) / ( color * ( 6.2 * color + 1.7 ) + 0.06 ), vec3( 2.2 ) );\n}\nvec3 ACESFilmicToneMapping( vec3 color ) {\n\tcolor *= toneMappingExposure;\n\treturn saturate( ( color * ( 2.51 * color + 0.03 ) ) / ( color * ( 2.43 * color + 0.59 ) + 0.14 ) );\n}",uv_pars_fragment:"#if defined( USE_MAP ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( USE_SPECULARMAP ) || defined( USE_ALPHAMAP ) || defined( USE_EMISSIVEMAP ) || defined( USE_ROUGHNESSMAP ) || defined( USE_METALNESSMAP )\n\tvarying vec2 vUv;\n#endif",uv_pars_vertex:"#if defined( USE_MAP ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( USE_SPECULARMAP ) || defined( USE_ALPHAMAP ) || defined( USE_EMISSIVEMAP ) || defined( USE_ROUGHNESSMAP ) || defined( USE_METALNESSMAP )\n\tvarying vec2 vUv;\n\tuniform mat3 uvTransform;\n#endif",uv_vertex:"#if defined( USE_MAP ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( USE_SPECULARMAP ) || defined( USE_ALPHAMAP ) || defined( USE_EMISSIVEMAP ) || defined( USE_ROUGHNESSMAP ) || defined( USE_METALNESSMAP )\n\tvUv = ( uvTransform * vec3( uv, 1 ) ).xy;\n#endif",uv2_pars_fragment:"#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\n\tvarying vec2 vUv2;\n#endif",uv2_pars_vertex:"#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\n\tattribute vec2 uv2;\n\tvarying vec2 vUv2;\n#endif",uv2_vertex:"#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\n\tvUv2 = uv2;\n#endif",worldpos_vertex:"#if defined( USE_ENVMAP ) || defined( DISTANCE ) || defined ( USE_SHADOWMAP )\n\tvec4 worldPosition = modelMatrix * vec4( transformed, 1.0 );\n#endif",background_frag:"uniform sampler2D t2D;\nvarying vec2 vUv;\nvoid main() {\n\tvec4 texColor = texture2D( t2D, vUv );\n\tgl_FragColor = mapTexelToLinear( texColor );\n\t#include \n\t#include \n}",background_vert:"varying vec2 vUv;\nuniform mat3 uvTransform;\nvoid main() {\n\tvUv = ( uvTransform * vec3( uv, 1 ) ).xy;\n\tgl_Position = vec4( position.xy, 1.0, 1.0 );\n}",cube_frag:"uniform samplerCube tCube;\nuniform float tFlip;\nuniform float opacity;\nvarying vec3 vWorldDirection;\nvoid main() {\n\tvec4 texColor = textureCube( tCube, vec3( tFlip * vWorldDirection.x, vWorldDirection.yz ) );\n\tgl_FragColor = mapTexelToLinear( texColor );\n\tgl_FragColor.a *= opacity;\n\t#include \n\t#include \n}",cube_vert:"varying vec3 vWorldDirection;\n#include \nvoid main() {\n\tvWorldDirection = transformDirection( position, modelMatrix );\n\t#include \n\t#include \n\tgl_Position.z = gl_Position.w;\n}",depth_frag:"#if DEPTH_PACKING == 3200\n\tuniform float opacity;\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\tvec4 diffuseColor = vec4( 1.0 );\n\t#if DEPTH_PACKING == 3200\n\t\tdiffuseColor.a = opacity;\n\t#endif\n\t#include \n\t#include \n\t#include \n\t#include \n\t#if DEPTH_PACKING == 3200\n\t\tgl_FragColor = vec4( vec3( 1.0 - gl_FragCoord.z ), opacity );\n\t#elif DEPTH_PACKING == 3201\n\t\tgl_FragColor = packDepthToRGBA( gl_FragCoord.z );\n\t#endif\n}",depth_vert:"#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#ifdef USE_DISPLACEMENTMAP\n\t\t#include \n\t\t#include \n\t\t#include \n\t#endif\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",distanceRGBA_frag:"#define DISTANCE\nuniform vec3 referencePosition;\nuniform float nearDistance;\nuniform float farDistance;\nvarying vec3 vWorldPosition;\n#include \n#include \n#include \n#include \n#include \n#include \nvoid main () {\n\t#include \n\tvec4 diffuseColor = vec4( 1.0 );\n\t#include \n\t#include \n\t#include \n\tfloat dist = length( vWorldPosition - referencePosition );\n\tdist = ( dist - nearDistance ) / ( farDistance - nearDistance );\n\tdist = saturate( dist );\n\tgl_FragColor = packDepthToRGBA( dist );\n}",distanceRGBA_vert:"#define DISTANCE\nvarying vec3 vWorldPosition;\n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#ifdef USE_DISPLACEMENTMAP\n\t\t#include \n\t\t#include \n\t\t#include \n\t#endif\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvWorldPosition = worldPosition.xyz;\n}",equirect_frag:"uniform sampler2D tEquirect;\nvarying vec3 vWorldDirection;\n#include \nvoid main() {\n\tvec3 direction = normalize( vWorldDirection );\n\tvec2 sampleUV;\n\tsampleUV.y = asin( clamp( direction.y, - 1.0, 1.0 ) ) * RECIPROCAL_PI + 0.5;\n\tsampleUV.x = atan( direction.z, direction.x ) * RECIPROCAL_PI2 + 0.5;\n\tvec4 texColor = texture2D( tEquirect, sampleUV );\n\tgl_FragColor = mapTexelToLinear( texColor );\n\t#include \n\t#include \n}",equirect_vert:"varying vec3 vWorldDirection;\n#include \nvoid main() {\n\tvWorldDirection = transformDirection( position, modelMatrix );\n\t#include \n\t#include \n}",linedashed_frag:"uniform vec3 diffuse;\nuniform float opacity;\nuniform float dashSize;\nuniform float totalSize;\nvarying float vLineDistance;\n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\tif ( mod( vLineDistance, totalSize ) > dashSize ) {\n\t\tdiscard;\n\t}\n\tvec3 outgoingLight = vec3( 0.0 );\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include \n\t#include \n\toutgoingLight = diffuseColor.rgb;\n\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n\t#include \n\t#include \n\t#include \n\t#include \n}",linedashed_vert:"uniform float scale;\nattribute float lineDistance;\nvarying float vLineDistance;\n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\tvLineDistance = scale * lineDistance;\n\tvec4 mvPosition = modelViewMatrix * vec4( position, 1.0 );\n\tgl_Position = projectionMatrix * mvPosition;\n\t#include \n\t#include \n\t#include \n}",meshbasic_frag:"uniform vec3 diffuse;\nuniform float opacity;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\t#ifdef USE_LIGHTMAP\n\t\treflectedLight.indirectDiffuse += texture2D( lightMap, vUv2 ).xyz * lightMapIntensity;\n\t#else\n\t\treflectedLight.indirectDiffuse += vec3( 1.0 );\n\t#endif\n\t#include \n\treflectedLight.indirectDiffuse *= diffuseColor.rgb;\n\tvec3 outgoingLight = reflectedLight.indirectDiffuse;\n\t#include \n\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n\t#include \n\t#include \n\t#include \n\t#include \n}",meshbasic_vert:"#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\t#ifdef USE_ENVMAP\n\t#include \n\t#include \n\t#include \n\t#include \n\t#endif\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",meshlambert_frag:"uniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float opacity;\nvarying vec3 vLightFront;\nvarying vec3 vIndirectFront;\n#ifdef DOUBLE_SIDED\n\tvarying vec3 vLightBack;\n\tvarying vec3 vIndirectBack;\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive;\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\treflectedLight.indirectDiffuse = getAmbientLightIrradiance( ambientLightColor );\n\t#ifdef DOUBLE_SIDED\n\t\treflectedLight.indirectDiffuse += ( gl_FrontFacing ) ? vIndirectFront : vIndirectBack;\n\t#else\n\t\treflectedLight.indirectDiffuse += vIndirectFront;\n\t#endif\n\t#include \n\treflectedLight.indirectDiffuse *= BRDF_Diffuse_Lambert( diffuseColor.rgb );\n\t#ifdef DOUBLE_SIDED\n\t\treflectedLight.directDiffuse = ( gl_FrontFacing ) ? vLightFront : vLightBack;\n\t#else\n\t\treflectedLight.directDiffuse = vLightFront;\n\t#endif\n\treflectedLight.directDiffuse *= BRDF_Diffuse_Lambert( diffuseColor.rgb ) * getShadowMask();\n\t#include \n\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;\n\t#include \n\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",meshlambert_vert:"#define LAMBERT\nvarying vec3 vLightFront;\nvarying vec3 vIndirectFront;\n#ifdef DOUBLE_SIDED\n\tvarying vec3 vLightBack;\n\tvarying vec3 vIndirectBack;\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",meshmatcap_frag:"#define MATCAP\nuniform vec3 diffuse;\nuniform float opacity;\nuniform sampler2D matcap;\nvarying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvec3 viewDir = normalize( vViewPosition );\n\tvec3 x = normalize( vec3( viewDir.z, 0.0, - viewDir.x ) );\n\tvec3 y = cross( viewDir, x );\n\tvec2 uv = vec2( dot( x, normal ), dot( y, normal ) ) * 0.495 + 0.5;\n\t#ifdef USE_MATCAP\n\t\tvec4 matcapColor = texture2D( matcap, uv );\n\t\tmatcapColor = matcapTexelToLinear( matcapColor );\n\t#else\n\t\tvec4 matcapColor = vec4( 1.0 );\n\t#endif\n\tvec3 outgoingLight = diffuseColor.rgb * matcapColor.rgb;\n\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n\t#include \n\t#include \n\t#include \n\t#include \n}",meshmatcap_vert:"#define MATCAP\nvarying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#ifndef FLAT_SHADED\n\t\tvNormal = normalize( transformedNormal );\n\t#endif\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvViewPosition = - mvPosition.xyz;\n}",meshphong_frag:"#define PHONG\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform vec3 specular;\nuniform float shininess;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive;\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveRadiance;\n\t#include \n\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",meshphong_vert:"#define PHONG\nvarying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n#ifndef FLAT_SHADED\n\tvNormal = normalize( transformedNormal );\n#endif\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvViewPosition = - mvPosition.xyz;\n\t#include \n\t#include \n\t#include \n\t#include \n}",meshphysical_frag:"#define PHYSICAL\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float roughness;\nuniform float metalness;\nuniform float opacity;\n#ifndef STANDARD\n\tuniform float clearCoat;\n\tuniform float clearCoatRoughness;\n#endif\nvarying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n\t#ifdef USE_TANGENT\n\t\tvarying vec3 vTangent;\n\t\tvarying vec3 vBitangent;\n\t#endif\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\tReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n\tvec3 totalEmissiveRadiance = emissive;\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveRadiance;\n\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",meshphysical_vert:"#define PHYSICAL\nvarying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n\t#ifdef USE_TANGENT\n\t\tvarying vec3 vTangent;\n\t\tvarying vec3 vBitangent;\n\t#endif\n#endif\n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n#ifndef FLAT_SHADED\n\tvNormal = normalize( transformedNormal );\n\t#ifdef USE_TANGENT\n\t\tvTangent = normalize( transformedTangent );\n\t\tvBitangent = normalize( cross( vNormal, vTangent ) * tangent.w );\n\t#endif\n#endif\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\tvViewPosition = - mvPosition.xyz;\n\t#include \n\t#include \n\t#include \n}",normal_frag:"#define NORMAL\nuniform float opacity;\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || ( defined( USE_NORMALMAP ) && ! defined( OBJECTSPACE_NORMALMAP ) )\n\tvarying vec3 vViewPosition;\n#endif\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n\t#ifdef USE_TANGENT\n\t\tvarying vec3 vTangent;\n\t\tvarying vec3 vBitangent;\n\t#endif\n#endif\n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#include \n\tgl_FragColor = vec4( packNormalToRGB( normal ), opacity );\n}",normal_vert:"#define NORMAL\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || ( defined( USE_NORMALMAP ) && ! defined( OBJECTSPACE_NORMALMAP ) )\n\tvarying vec3 vViewPosition;\n#endif\n#ifndef FLAT_SHADED\n\tvarying vec3 vNormal;\n\t#ifdef USE_TANGENT\n\t\tvarying vec3 vTangent;\n\t\tvarying vec3 vBitangent;\n\t#endif\n#endif\n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n#ifndef FLAT_SHADED\n\tvNormal = normalize( transformedNormal );\n\t#ifdef USE_TANGENT\n\t\tvTangent = normalize( transformedTangent );\n\t\tvBitangent = normalize( cross( vNormal, vTangent ) * tangent.w );\n\t#endif\n#endif\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || ( defined( USE_NORMALMAP ) && ! defined( OBJECTSPACE_NORMALMAP ) )\n\tvViewPosition = - mvPosition.xyz;\n#endif\n}",points_frag:"uniform vec3 diffuse;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\tvec3 outgoingLight = vec3( 0.0 );\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include \n\t#include \n\t#include \n\t#include \n\toutgoingLight = diffuseColor.rgb;\n\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n\t#include \n\t#include \n\t#include \n\t#include \n}",points_vert:"uniform float size;\nuniform float scale;\n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\tgl_PointSize = size;\n\t#ifdef USE_SIZEATTENUATION\n\t\tbool isPerspective = ( projectionMatrix[ 2 ][ 3 ] == - 1.0 );\n\t\tif ( isPerspective ) gl_PointSize *= ( scale / - mvPosition.z );\n\t#endif\n\t#include \n\t#include \n\t#include \n\t#include \n}",shadow_frag:"uniform vec3 color;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\tgl_FragColor = vec4( color, opacity * ( 1.0 - getShadowMask() ) );\n\t#include \n}",shadow_vert:"#include \n#include \nvoid main() {\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n}",sprite_frag:"uniform vec3 diffuse;\nuniform float opacity;\n#include \n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\tvec3 outgoingLight = vec3( 0.0 );\n\tvec4 diffuseColor = vec4( diffuse, opacity );\n\t#include \n\t#include \n\t#include \n\toutgoingLight = diffuseColor.rgb;\n\tgl_FragColor = vec4( outgoingLight, diffuseColor.a );\n\t#include \n\t#include \n\t#include \n}",sprite_vert:"uniform float rotation;\nuniform vec2 center;\n#include \n#include \n#include \n#include \n#include \nvoid main() {\n\t#include \n\tvec4 mvPosition = modelViewMatrix * vec4( 0.0, 0.0, 0.0, 1.0 );\n\tvec2 scale;\n\tscale.x = length( vec3( modelMatrix[ 0 ].x, modelMatrix[ 0 ].y, modelMatrix[ 0 ].z ) );\n\tscale.y = length( vec3( modelMatrix[ 1 ].x, modelMatrix[ 1 ].y, modelMatrix[ 1 ].z ) );\n\t#ifndef USE_SIZEATTENUATION\n\t\tbool isPerspective = ( projectionMatrix[ 2 ][ 3 ] == - 1.0 );\n\t\tif ( isPerspective ) scale *= - mvPosition.z;\n\t#endif\n\tvec2 alignedPosition = ( position.xy - ( center - vec2( 0.5 ) ) ) * scale;\n\tvec2 rotatedPosition;\n\trotatedPosition.x = cos( rotation ) * alignedPosition.x - sin( rotation ) * alignedPosition.y;\n\trotatedPosition.y = sin( rotation ) * alignedPosition.x + cos( rotation ) * alignedPosition.y;\n\tmvPosition.xy += rotatedPosition;\n\tgl_Position = projectionMatrix * mvPosition;\n\t#include \n\t#include \n\t#include \n}"};function an(t){var e={};for(var n in t)for(var r in e[n]={},t[n]){var i=t[n][r];i&&(i.isColor||i.isMatrix3||i.isMatrix4||i.isVector2||i.isVector3||i.isVector4||i.isTexture)?e[n][r]=i.clone():Array.isArray(i)?e[n][r]=i.slice():e[n][r]=i}return e}function sn(t){for(var e={},n=0;n>16&255)/255,this.g=(t>>8&255)/255,this.b=(255&t)/255,this},setRGB:function(t,e,n){return this.r=t,this.g=e,this.b=n,this},setHSL:function(){function t(t,e,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?t+6*(e-t)*n:n<.5?e:n<2/3?t+6*(e-t)*(2/3-n):t}return function(e,n,r){if(e=je.euclideanModulo(e,1),n=je.clamp(n,0,1),r=je.clamp(r,0,1),0===n)this.r=this.g=this.b=r;else{var i=r<=.5?r*(1+n):r+n-r*n,o=2*r-i;this.r=t(o,i,e+1/3),this.g=t(o,i,e),this.b=t(o,i,e-1/3)}return this}}(),setStyle:function(t){function e(e){void 0!==e&&parseFloat(e)<1&&console.warn("THREE.Color: Alpha component of "+t+" will be ignored.")}var n;if(n=/^((?:rgb|hsl)a?)\(\s*([^\)]*)\)/.exec(t)){var r,i=n[1],o=n[2];switch(i){case"rgb":case"rgba":if(r=/^(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(,\s*([0-9]*\.?[0-9]+)\s*)?$/.exec(o))return this.r=Math.min(255,parseInt(r[1],10))/255,this.g=Math.min(255,parseInt(r[2],10))/255,this.b=Math.min(255,parseInt(r[3],10))/255,e(r[5]),this;if(r=/^(\d+)\%\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(,\s*([0-9]*\.?[0-9]+)\s*)?$/.exec(o))return this.r=Math.min(100,parseInt(r[1],10))/100,this.g=Math.min(100,parseInt(r[2],10))/100,this.b=Math.min(100,parseInt(r[3],10))/100,e(r[5]),this;break;case"hsl":case"hsla":if(r=/^([0-9]*\.?[0-9]+)\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(,\s*([0-9]*\.?[0-9]+)\s*)?$/.exec(o)){var a=parseFloat(r[1])/360,s=parseInt(r[2],10)/100,u=parseInt(r[3],10)/100;return e(r[5]),this.setHSL(a,s,u)}}}else if(n=/^\#([A-Fa-f0-9]+)$/.exec(t)){var c,l=(c=n[1]).length;if(3===l)return this.r=parseInt(c.charAt(0)+c.charAt(0),16)/255,this.g=parseInt(c.charAt(1)+c.charAt(1),16)/255,this.b=parseInt(c.charAt(2)+c.charAt(2),16)/255,this;if(6===l)return this.r=parseInt(c.charAt(0)+c.charAt(1),16)/255,this.g=parseInt(c.charAt(2)+c.charAt(3),16)/255,this.b=parseInt(c.charAt(4)+c.charAt(5),16)/255,this}t&&t.length>0&&(void 0!==(c=cn[t])?this.setHex(c):console.warn("THREE.Color: Unknown color "+t));return this},clone:function(){return new this.constructor(this.r,this.g,this.b)},copy:function(t){return this.r=t.r,this.g=t.g,this.b=t.b,this},copyGammaToLinear:function(t,e){return void 0===e&&(e=2),this.r=Math.pow(t.r,e),this.g=Math.pow(t.g,e),this.b=Math.pow(t.b,e),this},copyLinearToGamma:function(t,e){void 0===e&&(e=2);var n=e>0?1/e:1;return this.r=Math.pow(t.r,n),this.g=Math.pow(t.g,n),this.b=Math.pow(t.b,n),this},convertGammaToLinear:function(t){return this.copyGammaToLinear(this,t),this},convertLinearToGamma:function(t){return this.copyLinearToGamma(this,t),this},copySRGBToLinear:function(){function t(t){return t<.04045?.0773993808*t:Math.pow(.9478672986*t+.0521327014,2.4)}return function(e){return this.r=t(e.r),this.g=t(e.g),this.b=t(e.b),this}}(),copyLinearToSRGB:function(){function t(t){return t<.0031308?12.92*t:1.055*Math.pow(t,.41666)-.055}return function(e){return this.r=t(e.r),this.g=t(e.g),this.b=t(e.b),this}}(),convertSRGBToLinear:function(){return this.copySRGBToLinear(this),this},convertLinearToSRGB:function(){return this.copyLinearToSRGB(this),this},getHex:function(){return 255*this.r<<16^255*this.g<<8^255*this.b<<0},getHexString:function(){return("000000"+this.getHex().toString(16)).slice(-6)},getHSL:function(t){void 0===t&&(console.warn("THREE.Color: .getHSL() target is now required"),t={h:0,s:0,l:0});var e,n,r=this.r,i=this.g,o=this.b,a=Math.max(r,i,o),s=Math.min(r,i,o),u=(s+a)/2;if(s===a)e=0,n=0;else{var c=a-s;switch(n=u<=.5?c/(a+s):c/(2-a-s),a){case r:e=(i-o)/c+(i1){for(var e=0;e1){for(var e=0;e0){r.children=[];for(s=0;s0&&(n.geometries=f),h.length>0&&(n.materials=h),p.length>0&&(n.textures=p),d.length>0&&(n.images=d),a.length>0&&(n.shapes=a)}return n.object=r,n;function m(t){var e=[];for(var n in t){var r=t[n];delete r.metadata,e.push(r)}return e}},clone:function(t){return(new this.constructor).copy(this,t)},copy:function(t,e){if(void 0===e&&(e=!0),this.name=t.name,this.up.copy(t.up),this.position.copy(t.position),this.quaternion.copy(t.quaternion),this.scale.copy(t.scale),this.matrix.copy(t.matrix),this.matrixWorld.copy(t.matrixWorld),this.matrixAutoUpdate=t.matrixAutoUpdate,this.matrixWorldNeedsUpdate=t.matrixWorldNeedsUpdate,this.layers.mask=t.layers.mask,this.visible=t.visible,this.castShadow=t.castShadow,this.receiveShadow=t.receiveShadow,this.frustumCulled=t.frustumCulled,this.renderOrder=t.renderOrder,this.userData=JSON.parse(JSON.stringify(t.userData)),!0===e)for(var n=0;ne&&(e=t[n]);return e}xn.prototype=Object.assign(Object.create(r.prototype),{constructor:xn,isGeometry:!0,applyMatrix:function(t){for(var e=(new We).getNormalMatrix(t),n=0,r=this.vertices.length;n0)for(c=0;c0&&(this.normalsNeedUpdate=!0)},computeFlatVertexNormals:function(){var t,e,n;for(this.computeFaceNormals(),t=0,e=this.faces.length;t0&&(this.normalsNeedUpdate=!0)},computeMorphNormals:function(){var t,e,n,r,i;for(n=0,r=this.faces.length;n=0;n--){var d=h[n];for(this.faces.splice(d,1),a=0,s=this.faceVertexUvs.length;a0,g=p.vertexNormals.length>0,v=1!==p.color.r||1!==p.color.g||1!==p.color.b,y=p.vertexColors.length>0,b=0;if(b=S(b,0,0),b=S(b,1,!0),b=S(b,2,!1),b=S(b,3,d),b=S(b,4,m),b=S(b,5,g),b=S(b,6,v),b=S(b,7,y),a.push(b),a.push(p.a,p.b,p.c),a.push(p.materialIndex),d){var w=this.faceVertexUvs[0][i];a.push(M(w[0]),M(w[1]),M(w[2]))}if(m&&a.push(E(p.normal)),g){var x=p.vertexNormals;a.push(E(x[0]),E(x[1]),E(x[2]))}if(v&&a.push(T(p.color)),y){var _=p.vertexColors;a.push(T(_[0]),T(_[1]),T(_[2]))}}function S(t,e,n){return n?t|1<0&&(t.data.colors=c),f.length>0&&(t.data.uvs=[f]),t.data.faces=a,t},clone:function(){return(new xn).copy(this)},copy:function(t){var e,n,r,i,o,a;this.vertices=[],this.colors=[],this.faces=[],this.faceVertexUvs=[[]],this.morphTargets=[],this.morphNormals=[],this.skinWeights=[],this.skinIndices=[],this.lineDistances=[],this.boundingBox=null,this.boundingSphere=null,this.name=t.name;var s=t.vertices;for(e=0,n=s.length;e0,a=i[1]&&i[1].length>0,s=t.morphTargets,u=s.length;if(u>0){e=[];for(var c=0;c0){l=[];for(c=0;c0&&0===n.length&&console.error("THREE.DirectGeometry: Faceless geometries are not supported.");for(c=0;c0?1:-1,c.push(P.x,P.y,P.z),l.push(y/m),l.push(1-b/g),A+=1}}for(b=0;b65535?Pn:An)(t,1):this.index=t},addAttribute:function(t,e){return e&&e.isBufferAttribute||e&&e.isInterleavedBufferAttribute?"index"===t?(console.warn("THREE.BufferGeometry.addAttribute: Use .setIndex() for index attribute."),this.setIndex(e),this):(this.attributes[t]=e,this):(console.warn("THREE.BufferGeometry: .addAttribute() now expects ( name, attribute )."),this.addAttribute(t,new _n(arguments[1],arguments[2])))},getAttribute:function(t){return this.attributes[t]},removeAttribute:function(t){return delete this.attributes[t],this},addGroup:function(t,e,n){this.groups.push({start:t,count:e,materialIndex:void 0!==n?n:0})},clearGroups:function(){this.groups=[]},setDrawRange:function(t,e){this.drawRange.start=t,this.drawRange.count=e},applyMatrix:function(t){var e=this.attributes.position;void 0!==e&&(t.applyToBufferAttribute(e),e.needsUpdate=!0);var n=this.attributes.normal;void 0!==n&&((new We).getNormalMatrix(t).applyToBufferAttribute(n),n.needsUpdate=!0);var r=this.attributes.tangent;void 0!==r&&((new We).getNormalMatrix(t).applyToBufferAttribute(r),r.needsUpdate=!0);return null!==this.boundingBox&&this.computeBoundingBox(),null!==this.boundingSphere&&this.computeBoundingSphere(),this},rotateX:function(){var t=new rn;return function(e){return t.makeRotationX(e),this.applyMatrix(t),this}}(),rotateY:function(){var t=new rn;return function(e){return t.makeRotationY(e),this.applyMatrix(t),this}}(),rotateZ:function(){var t=new rn;return function(e){return t.makeRotationZ(e),this.applyMatrix(t),this}}(),translate:function(){var t=new rn;return function(e,n,r){return t.makeTranslation(e,n,r),this.applyMatrix(t),this}}(),scale:function(){var t=new rn;return function(e,n,r){return t.makeScale(e,n,r),this.applyMatrix(t),this}}(),lookAt:function(){var t=new bn;return function(e){t.lookAt(e),t.updateMatrix(),this.applyMatrix(t.matrix)}}(),center:function(){var t=new Ve;return function(){return this.computeBoundingBox(),this.boundingBox.getCenter(t).negate(),this.translate(t.x,t.y,t.z),this}}(),setFromObject:function(t){var e=t.geometry;if(t.isPoints||t.isLine){var n=new In(3*e.vertices.length,3),r=new In(3*e.colors.length,3);if(this.addAttribute("position",n.copyVector3sArray(e.vertices)),this.addAttribute("color",r.copyColorsArray(e.colors)),e.lineDistances&&e.lineDistances.length===e.vertices.length){var i=new In(e.lineDistances.length,1);this.addAttribute("lineDistance",i.copyArray(e.lineDistances))}null!==e.boundingSphere&&(this.boundingSphere=e.boundingSphere.clone()),null!==e.boundingBox&&(this.boundingBox=e.boundingBox.clone())}else t.isMesh&&e&&e.isGeometry&&this.fromGeometry(e);return this},setFromPoints:function(t){for(var e=[],n=0,r=t.length;n0){var n=new Float32Array(3*t.normals.length);this.addAttribute("normal",new _n(n,3).copyVector3sArray(t.normals))}if(t.colors.length>0){var r=new Float32Array(3*t.colors.length);this.addAttribute("color",new _n(r,3).copyColorsArray(t.colors))}if(t.uvs.length>0){var i=new Float32Array(2*t.uvs.length);this.addAttribute("uv",new _n(i,2).copyVector2sArray(t.uvs))}if(t.uvs2.length>0){var o=new Float32Array(2*t.uvs2.length);this.addAttribute("uv2",new _n(o,2).copyVector2sArray(t.uvs2))}for(var a in this.groups=t.groups,t.morphTargets){for(var s=[],u=t.morphTargets[a],c=0,l=u.length;c0){var p=new In(4*t.skinIndices.length,4);this.addAttribute("skinIndex",p.copyVector4sArray(t.skinIndices))}if(t.skinWeights.length>0){var d=new In(4*t.skinWeights.length,4);this.addAttribute("skinWeight",d.copyVector4sArray(t.skinWeights))}return null!==t.boundingSphere&&(this.boundingSphere=t.boundingSphere.clone()),null!==t.boundingBox&&(this.boundingBox=t.boundingBox.clone()),this},computeBoundingBox:function(){var t=new Qe;return function(){null===this.boundingBox&&(this.boundingBox=new Qe);var e=this.attributes.position,n=this.morphAttributes.position;if(void 0!==e){if(this.boundingBox.setFromBufferAttribute(e),n)for(var r=0,i=n.length;r0&&(t.userData=this.userData),void 0!==this.parameters){var e=this.parameters;for(var n in e)void 0!==e[n]&&(t[n]=e[n]);return t}t.data={attributes:{}};var r=this.index;null!==r&&(t.data.index={type:r.array.constructor.name,array:Array.prototype.slice.call(r.array)});var i=this.attributes;for(var n in i){var o=(h=i[n]).toJSON();""!==h.name&&(o.name=h.name),t.data.attributes[n]=o}var a={},s=!1;for(var n in this.morphAttributes){for(var u=this.morphAttributes[n],c=[],l=0,f=u.length;l0&&(a[n]=c,s=!0)}s&&(t.data.morphAttributes=a);var p=this.groups;p.length>0&&(t.data.groups=JSON.parse(JSON.stringify(p)));var d=this.boundingSphere;return null!==d&&(t.data.boundingSphere={center:d.center.toArray(),radius:d.radius}),t},clone:function(){return(new Dn).copy(this)},copy:function(t){var e,n,r;this.index=null,this.attributes={},this.morphAttributes={},this.groups=[],this.boundingBox=null,this.boundingSphere=null,this.name=t.name;var i=t.index;null!==i&&this.setIndex(i.clone());var o=t.attributes;for(e in o){var a=o[e];this.addAttribute(e,a.clone())}var s=t.morphAttributes;for(e in s){var u=[],c=s[e];for(n=0,r=c.length;n0&&(n.alphaTest=this.alphaTest),!0===this.premultipliedAlpha&&(n.premultipliedAlpha=this.premultipliedAlpha),!0===this.wireframe&&(n.wireframe=this.wireframe),this.wireframeLinewidth>1&&(n.wireframeLinewidth=this.wireframeLinewidth),"round"!==this.wireframeLinecap&&(n.wireframeLinecap=this.wireframeLinecap),"round"!==this.wireframeLinejoin&&(n.wireframeLinejoin=this.wireframeLinejoin),!0===this.morphTargets&&(n.morphTargets=!0),!0===this.skinning&&(n.skinning=!0),!1===this.visible&&(n.visible=!1),"{}"!==JSON.stringify(this.userData)&&(n.userData=this.userData),e){var i=r(t.textures),o=r(t.images);i.length>0&&(n.textures=i),o.length>0&&(n.images=o)}return n},clone:function(){return(new this.constructor).copy(this)},copy:function(t){this.name=t.name,this.fog=t.fog,this.lights=t.lights,this.blending=t.blending,this.side=t.side,this.flatShading=t.flatShading,this.vertexColors=t.vertexColors,this.opacity=t.opacity,this.transparent=t.transparent,this.blendSrc=t.blendSrc,this.blendDst=t.blendDst,this.blendEquation=t.blendEquation,this.blendSrcAlpha=t.blendSrcAlpha,this.blendDstAlpha=t.blendDstAlpha,this.blendEquationAlpha=t.blendEquationAlpha,this.depthFunc=t.depthFunc,this.depthTest=t.depthTest,this.depthWrite=t.depthWrite,this.colorWrite=t.colorWrite,this.precision=t.precision,this.polygonOffset=t.polygonOffset,this.polygonOffsetFactor=t.polygonOffsetFactor,this.polygonOffsetUnits=t.polygonOffsetUnits,this.dithering=t.dithering,this.alphaTest=t.alphaTest,this.premultipliedAlpha=t.premultipliedAlpha,this.visible=t.visible,this.userData=JSON.parse(JSON.stringify(t.userData)),this.clipShadows=t.clipShadows,this.clipIntersection=t.clipIntersection;var e=t.clippingPlanes,n=null;if(null!==e){var r=e.length;n=new Array(r);for(var i=0;i!==r;++i)n[i]=e[i].clone()}return this.clippingPlanes=n,this.shadowSide=t.shadowSide,this},dispose:function(){this.dispatchEvent({type:"dispose"})}});var Gn="void main() {\n\tgl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n}",Vn="void main() {\n\tgl_FragColor = vec4( 1.0, 0.0, 0.0, 1.0 );\n}";function Wn(t){zn.call(this),this.type="ShaderMaterial",this.defines={},this.uniforms={},this.vertexShader=Gn,this.fragmentShader=Vn,this.linewidth=1,this.wireframe=!1,this.wireframeLinewidth=1,this.fog=!1,this.lights=!1,this.clipping=!1,this.skinning=!1,this.morphTargets=!1,this.morphNormals=!1,this.extensions={derivatives:!1,fragDepth:!1,drawBuffers:!1,shaderTextureLOD:!1},this.defaultAttributeValues={color:[1,1,1],uv:[0,0],uv2:[0,0]},this.index0AttributeName=void 0,this.uniformsNeedUpdate=!1,void 0!==t&&(void 0!==t.attributes&&console.error("THREE.ShaderMaterial: attributes should now be defined in THREE.BufferGeometry instead."),this.setValues(t))}function Hn(t,e){this.origin=void 0!==t?t:new Ve,this.direction=void 0!==e?e:new Ve}function qn(t,e,n){this.a=void 0!==t?t:new Ve,this.b=void 0!==e?e:new Ve,this.c=void 0!==n?n:new Ve}function Xn(t){zn.call(this),this.type="MeshBasicMaterial",this.color=new ln(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=tt,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.skinning=!1,this.morphTargets=!1,this.lights=!1,this.setValues(t)}function Yn(t,e){bn.call(this),this.type="Mesh",this.geometry=void 0!==t?t:new Dn,this.material=void 0!==e?e:new Xn({color:16777215*Math.random()}),this.drawMode=Te,this.updateMorphTargets()}function Kn(t,e,n,r){var i,o,a=new ln(0),s=0,u=null,c=0;function l(t,n){e.buffers.color.setClear(t.r,t.g,t.b,n,r)}return{getClearColor:function(){return a},setClearColor:function(t,e){a.set(t),l(a,s=void 0!==e?e:1)},getClearAlpha:function(){return s},setClearAlpha:function(t){l(a,s=t)},render:function(e,r,f,h){var p=r.background,d=t.vr,m=d.getSession&&d.getSession();if(m&&"additive"===m.environmentBlendMode&&(p=null),null===p?(l(a,s),u=null,c=0):p&&p.isColor&&(l(p,1),h=!0,u=null,c=0),(t.autoClear||h)&&t.clear(t.autoClearColor,t.autoClearDepth,t.autoClearStencil),p&&(p.isCubeTexture||p.isWebGLRenderTargetCube)){void 0===o&&((o=new Yn(new Bn(1,1,1),new Wn({type:"BackgroundCubeMaterial",uniforms:an(hn.cube.uniforms),vertexShader:hn.cube.vertexShader,fragmentShader:hn.cube.fragmentShader,side:v,depthTest:!1,depthWrite:!1,fog:!1}))).geometry.removeAttribute("normal"),o.geometry.removeAttribute("uv"),o.onBeforeRender=function(t,e,n){this.matrixWorld.copyPosition(n.matrixWorld)},Object.defineProperty(o.material,"map",{get:function(){return this.uniforms.tCube.value}}),n.update(o));var y=p.isWebGLRenderTargetCube?p.texture:p;o.material.uniforms.tCube.value=y,o.material.uniforms.tFlip.value=p.isWebGLRenderTargetCube?1:-1,u===p&&c===y.version||(o.material.needsUpdate=!0,u=p,c=y.version),e.unshift(o,o.geometry,o.material,0,0,null)}else p&&p.isTexture&&(void 0===i&&((i=new Yn(new Un(2,2),new Wn({type:"BackgroundMaterial",uniforms:an(hn.background.uniforms),vertexShader:hn.background.vertexShader,fragmentShader:hn.background.fragmentShader,side:g,depthTest:!1,depthWrite:!1,fog:!1}))).geometry.removeAttribute("normal"),Object.defineProperty(i.material,"map",{get:function(){return this.uniforms.t2D.value}}),n.update(i)),i.material.uniforms.t2D.value=p,!0===p.matrixAutoUpdate&&p.updateMatrix(),i.material.uniforms.uvTransform.value.copy(p.matrix),u===p&&c===p.version||(i.material.needsUpdate=!0,u=p,c=p.version),e.unshift(i,i.geometry,i.material,0,0,null))}}}function $n(t,e,n,r){var i;this.setMode=function(t){i=t},this.render=function(e,r){t.drawArrays(i,e,r),n.update(r,i)},this.renderInstances=function(o,a,s){var u;if(r.isWebGL2)u=t;else if(null===(u=e.get("ANGLE_instanced_arrays")))return void console.error("THREE.WebGLBufferRenderer: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays.");u[r.isWebGL2?"drawArraysInstanced":"drawArraysInstancedANGLE"](i,a,s,o.maxInstancedCount),n.update(s,i,o.maxInstancedCount)}}function Jn(t,e,n){var r;function i(e){if("highp"===e){if(t.getShaderPrecisionFormat(35633,36338).precision>0&&t.getShaderPrecisionFormat(35632,36338).precision>0)return"highp";e="mediump"}return"mediump"===e&&t.getShaderPrecisionFormat(35633,36337).precision>0&&t.getShaderPrecisionFormat(35632,36337).precision>0?"mediump":"lowp"}var o="undefined"!==typeof WebGL2RenderingContext&&t instanceof WebGL2RenderingContext,a=void 0!==n.precision?n.precision:"highp",s=i(a);s!==a&&(console.warn("THREE.WebGLRenderer:",a,"not supported, using",s,"instead."),a=s);var u=!0===n.logarithmicDepthBuffer,c=t.getParameter(34930),l=t.getParameter(35660),f=t.getParameter(3379),h=t.getParameter(34076),p=t.getParameter(34921),d=t.getParameter(36347),m=t.getParameter(36348),g=t.getParameter(36349),v=l>0,y=o||!!e.get("OES_texture_float");return{isWebGL2:o,getMaxAnisotropy:function(){if(void 0!==r)return r;var n=e.get("EXT_texture_filter_anisotropic");return r=null!==n?t.getParameter(n.MAX_TEXTURE_MAX_ANISOTROPY_EXT):0},getMaxPrecision:i,precision:a,logarithmicDepthBuffer:u,maxTextures:c,maxVertexTextures:l,maxTextureSize:f,maxCubemapSize:h,maxAttributes:p,maxVertexUniforms:d,maxVaryings:m,maxFragmentUniforms:g,vertexTextures:v,floatFragmentTextures:y,floatVertexTextures:v&&y,maxSamples:o?t.getParameter(36183):0}}function Zn(){var t=this,e=null,n=0,r=!1,i=!1,o=new en,a=new We,s={value:null,needsUpdate:!1};function u(){s.value!==e&&(s.value=e,s.needsUpdate=n>0),t.numPlanes=n,t.numIntersection=0}function c(e,n,r,i){var u=null!==e?e.length:0,c=null;if(0!==u){if(c=s.value,!0!==i||null===c){var l=r+4*u,f=n.matrixWorldInverse;a.getNormalMatrix(f),(null===c||c.length65535?Pn:An)(o,1),e.update(n,34963),i[t.id]=n,n}}}function er(t,e,n,r){var i,o,a;this.setMode=function(t){i=t},this.setIndex=function(t){o=t.type,a=t.bytesPerElement},this.render=function(e,r){t.drawElements(i,r,o,e*a),n.update(r,i)},this.renderInstances=function(s,u,c){var l;if(r.isWebGL2)l=t;else if(null===(l=e.get("ANGLE_instanced_arrays")))return void console.error("THREE.WebGLIndexedBufferRenderer: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays.");l[r.isWebGL2?"drawElementsInstanced":"drawElementsInstancedANGLE"](i,c,o,u*a,s.maxInstancedCount),n.update(c,i,s.maxInstancedCount)}}function nr(t){var e={frame:0,calls:0,triangles:0,points:0,lines:0};return{memory:{geometries:0,textures:0},render:e,programs:null,autoReset:!0,reset:function(){e.frame++,e.calls=0,e.triangles=0,e.points=0,e.lines=0},update:function(t,n,r){switch(r=r||1,e.calls++,n){case 4:e.triangles+=r*(t/3);break;case 5:case 6:e.triangles+=r*(t-2);break;case 1:e.lines+=r*(t/2);break;case 3:e.lines+=r*(t-1);break;case 2:e.lines+=r*t;break;case 0:e.points+=r*t;break;default:console.error("THREE.WebGLInfo: Unknown draw mode:",n)}}}}function rr(t,e){return Math.abs(e[1])-Math.abs(t[1])}function ir(t){var e={},n=new Float32Array(8);return{update:function(r,i,o,a){var s=r.morphTargetInfluences,u=s.length,c=e[i.id];if(void 0===c){c=[];for(var l=0;l0&&(e.defines=this.defines),e.vertexShader=this.vertexShader,e.fragmentShader=this.fragmentShader;var i={};for(var o in this.extensions)!0===this.extensions[o]&&(i[o]=!0);return Object.keys(i).length>0&&(e.extensions=i),e},Object.assign(Hn.prototype,{set:function(t,e){return this.origin.copy(t),this.direction.copy(e),this},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.origin.copy(t.origin),this.direction.copy(t.direction),this},at:function(t,e){return void 0===e&&(console.warn("THREE.Ray: .at() target is now required"),e=new Ve),e.copy(this.direction).multiplyScalar(t).add(this.origin)},lookAt:function(t){return this.direction.copy(t).sub(this.origin).normalize(),this},recast:function(){var t=new Ve;return function(e){return this.origin.copy(this.at(e,t)),this}}(),closestPointToPoint:function(t,e){void 0===e&&(console.warn("THREE.Ray: .closestPointToPoint() target is now required"),e=new Ve),e.subVectors(t,this.origin);var n=e.dot(this.direction);return n<0?e.copy(this.origin):e.copy(this.direction).multiplyScalar(n).add(this.origin)},distanceToPoint:function(t){return Math.sqrt(this.distanceSqToPoint(t))},distanceSqToPoint:function(){var t=new Ve;return function(e){var n=t.subVectors(e,this.origin).dot(this.direction);return n<0?this.origin.distanceToSquared(e):(t.copy(this.direction).multiplyScalar(n).add(this.origin),t.distanceToSquared(e))}}(),distanceSqToSegment:function(){var t=new Ve,e=new Ve,n=new Ve;return function(r,i,o,a){t.copy(r).add(i).multiplyScalar(.5),e.copy(i).sub(r).normalize(),n.copy(this.origin).sub(t);var s,u,c,l,f=.5*r.distanceTo(i),h=-this.direction.dot(e),p=n.dot(this.direction),d=-n.dot(e),m=n.lengthSq(),g=Math.abs(1-h*h);if(g>0)if(u=h*p-d,l=f*g,(s=h*d-p)>=0)if(u>=-l)if(u<=l){var v=1/g;c=(s*=v)*(s+h*(u*=v)+2*p)+u*(h*s+u+2*d)+m}else u=f,c=-(s=Math.max(0,-(h*u+p)))*s+u*(u+2*d)+m;else u=-f,c=-(s=Math.max(0,-(h*u+p)))*s+u*(u+2*d)+m;else u<=-l?c=-(s=Math.max(0,-(-h*f+p)))*s+(u=s>0?-f:Math.min(Math.max(-f,-d),f))*(u+2*d)+m:u<=l?(s=0,c=(u=Math.min(Math.max(-f,-d),f))*(u+2*d)+m):c=-(s=Math.max(0,-(h*f+p)))*s+(u=s>0?f:Math.min(Math.max(-f,-d),f))*(u+2*d)+m;else u=h>0?-f:f,c=-(s=Math.max(0,-(h*u+p)))*s+u*(u+2*d)+m;return o&&o.copy(this.direction).multiplyScalar(s).add(this.origin),a&&a.copy(e).multiplyScalar(u).add(t),c}}(),intersectSphere:function(){var t=new Ve;return function(e,n){t.subVectors(e.center,this.origin);var r=t.dot(this.direction),i=t.dot(t)-r*r,o=e.radius*e.radius;if(i>o)return null;var a=Math.sqrt(o-i),s=r-a,u=r+a;return s<0&&u<0?null:s<0?this.at(u,n):this.at(s,n)}}(),intersectsSphere:function(t){return this.distanceSqToPoint(t.center)<=t.radius*t.radius},distanceToPlane:function(t){var e=t.normal.dot(this.direction);if(0===e)return 0===t.distanceToPoint(this.origin)?0:null;var n=-(this.origin.dot(t.normal)+t.constant)/e;return n>=0?n:null},intersectPlane:function(t,e){var n=this.distanceToPlane(t);return null===n?null:this.at(n,e)},intersectsPlane:function(t){var e=t.distanceToPoint(this.origin);return 0===e||t.normal.dot(this.direction)*e<0},intersectBox:function(t,e){var n,r,i,o,a,s,u=1/this.direction.x,c=1/this.direction.y,l=1/this.direction.z,f=this.origin;return u>=0?(n=(t.min.x-f.x)*u,r=(t.max.x-f.x)*u):(n=(t.max.x-f.x)*u,r=(t.min.x-f.x)*u),c>=0?(i=(t.min.y-f.y)*c,o=(t.max.y-f.y)*c):(i=(t.max.y-f.y)*c,o=(t.min.y-f.y)*c),n>o||i>r?null:((i>n||n!==n)&&(n=i),(o=0?(a=(t.min.z-f.z)*l,s=(t.max.z-f.z)*l):(a=(t.max.z-f.z)*l,s=(t.min.z-f.z)*l),n>s||a>r?null:((a>n||n!==n)&&(n=a),(s=0?n:r,e)))},intersectsBox:function(){var t=new Ve;return function(e){return null!==this.intersectBox(e,t)}}(),intersectTriangle:function(){var t=new Ve,e=new Ve,n=new Ve,r=new Ve;return function(i,o,a,s,u){e.subVectors(o,i),n.subVectors(a,i),r.crossVectors(e,n);var c,l=this.direction.dot(r);if(l>0){if(s)return null;c=1}else{if(!(l<0))return null;c=-1,l=-l}t.subVectors(this.origin,i);var f=c*this.direction.dot(n.crossVectors(t,n));if(f<0)return null;var h=c*this.direction.dot(e.cross(t));if(h<0)return null;if(f+h>l)return null;var p=-c*t.dot(r);return p<0?null:this.at(p/l,u)}}(),applyMatrix4:function(t){return this.origin.applyMatrix4(t),this.direction.transformDirection(t),this},equals:function(t){return t.origin.equals(this.origin)&&t.direction.equals(this.direction)}}),Object.assign(qn,{getNormal:function(){var t=new Ve;return function(e,n,r,i){void 0===i&&(console.warn("THREE.Triangle: .getNormal() target is now required"),i=new Ve),i.subVectors(r,n),t.subVectors(e,n),i.cross(t);var o=i.lengthSq();return o>0?i.multiplyScalar(1/Math.sqrt(o)):i.set(0,0,0)}}(),getBarycoord:function(){var t=new Ve,e=new Ve,n=new Ve;return function(r,i,o,a,s){t.subVectors(a,i),e.subVectors(o,i),n.subVectors(r,i);var u=t.dot(t),c=t.dot(e),l=t.dot(n),f=e.dot(e),h=e.dot(n),p=u*f-c*c;if(void 0===s&&(console.warn("THREE.Triangle: .getBarycoord() target is now required"),s=new Ve),0===p)return s.set(-2,-1,-1);var d=1/p,m=(f*l-c*h)*d,g=(u*h-c*l)*d;return s.set(1-m-g,g,m)}}(),containsPoint:function(){var t=new Ve;return function(e,n,r,i){return qn.getBarycoord(e,n,r,i,t),t.x>=0&&t.y>=0&&t.x+t.y<=1}}(),getUV:function(){var t=new Ve;return function(e,n,r,i,o,a,s,u){return this.getBarycoord(e,n,r,i,t),u.set(0,0),u.addScaledVector(o,t.x),u.addScaledVector(a,t.y),u.addScaledVector(s,t.z),u}}(),isFrontFacing:function(){var t=new Ve,e=new Ve;return function(n,r,i,o){return t.subVectors(i,r),e.subVectors(n,r),t.cross(e).dot(o)<0}}()}),Object.assign(qn.prototype,{set:function(t,e,n){return this.a.copy(t),this.b.copy(e),this.c.copy(n),this},setFromPointsAndIndices:function(t,e,n,r){return this.a.copy(t[e]),this.b.copy(t[n]),this.c.copy(t[r]),this},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.a.copy(t.a),this.b.copy(t.b),this.c.copy(t.c),this},getArea:function(){var t=new Ve,e=new Ve;return function(){return t.subVectors(this.c,this.b),e.subVectors(this.a,this.b),.5*t.cross(e).length()}}(),getMidpoint:function(t){return void 0===t&&(console.warn("THREE.Triangle: .getMidpoint() target is now required"),t=new Ve),t.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)},getNormal:function(t){return qn.getNormal(this.a,this.b,this.c,t)},getPlane:function(t){return void 0===t&&(console.warn("THREE.Triangle: .getPlane() target is now required"),t=new Ve),t.setFromCoplanarPoints(this.a,this.b,this.c)},getBarycoord:function(t,e){return qn.getBarycoord(t,this.a,this.b,this.c,e)},getUV:function(t,e,n,r,i){return qn.getUV(t,this.a,this.b,this.c,e,n,r,i)},containsPoint:function(t){return qn.containsPoint(t,this.a,this.b,this.c)},isFrontFacing:function(t){return qn.isFrontFacing(this.a,this.b,this.c,t)},intersectsBox:function(t){return t.intersectsTriangle(this)},closestPointToPoint:function(){var t=new Ve,e=new Ve,n=new Ve,r=new Ve,i=new Ve,o=new Ve;return function(a,s){void 0===s&&(console.warn("THREE.Triangle: .closestPointToPoint() target is now required"),s=new Ve);var u,c,l=this.a,f=this.b,h=this.c;t.subVectors(f,l),e.subVectors(h,l),r.subVectors(a,l);var p=t.dot(r),d=e.dot(r);if(p<=0&&d<=0)return s.copy(l);i.subVectors(a,f);var m=t.dot(i),g=e.dot(i);if(m>=0&&g<=m)return s.copy(f);var v=p*g-m*d;if(v<=0&&p>=0&&m<=0)return u=p/(p-m),s.copy(l).addScaledVector(t,u);o.subVectors(a,h);var y=t.dot(o),b=e.dot(o);if(b>=0&&y<=b)return s.copy(h);var w=y*d-p*b;if(w<=0&&d>=0&&b<=0)return c=d/(d-b),s.copy(l).addScaledVector(e,c);var x=m*b-y*g;if(x<=0&&g-m>=0&&y-b>=0)return n.subVectors(h,f),c=(g-m)/(g-m+(y-b)),s.copy(f).addScaledVector(n,c);var _=1/(x+w+v);return u=w*_,c=v*_,s.copy(l).addScaledVector(t,u).addScaledVector(e,c)}}(),equals:function(t){return t.a.equals(this.a)&&t.b.equals(this.b)&&t.c.equals(this.c)}}),Xn.prototype=Object.create(zn.prototype),Xn.prototype.constructor=Xn,Xn.prototype.isMeshBasicMaterial=!0,Xn.prototype.copy=function(t){return zn.prototype.copy.call(this,t),this.color.copy(t.color),this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.specularMap=t.specularMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.combine=t.combine,this.reflectivity=t.reflectivity,this.refractionRatio=t.refractionRatio,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this},Yn.prototype=Object.assign(Object.create(bn.prototype),{constructor:Yn,isMesh:!0,setDrawMode:function(t){this.drawMode=t},copy:function(t){return bn.prototype.copy.call(this,t),this.drawMode=t.drawMode,void 0!==t.morphTargetInfluences&&(this.morphTargetInfluences=t.morphTargetInfluences.slice()),void 0!==t.morphTargetDictionary&&(this.morphTargetDictionary=Object.assign({},t.morphTargetDictionary)),this},updateMorphTargets:function(){var t,e,n,r=this.geometry;if(r.isBufferGeometry){var i=r.morphAttributes,o=Object.keys(i);if(o.length>0){var a=i[o[0]];if(void 0!==a)for(this.morphTargetInfluences=[],this.morphTargetDictionary={},t=0,e=a.length;t0&&console.error("THREE.Mesh.updateMorphTargets() no longer supports THREE.Geometry. Use THREE.BufferGeometry instead.")}},raycast:function(){var t=new rn,e=new Hn,n=new tn,r=new Ve,i=new Ve,o=new Ve,a=new Ve,s=new Ve,u=new Ve,c=new Ve,l=new Ve,f=new Ve,h=new ze,p=new ze,d=new ze,m=new Ve,g=new Ve;function b(t,e,n,r,i,o,a,s){if(null===(e.side===v?r.intersectTriangle(a,o,i,!0,s):r.intersectTriangle(i,o,a,e.side!==y,s)))return null;g.copy(s),g.applyMatrix4(t.matrixWorld);var u=n.ray.origin.distanceTo(g);return un.far?null:{distance:u,point:g.clone(),object:t}}function w(t,e,n,g,v,y,w,x,_,S){r.fromBufferAttribute(v,x),i.fromBufferAttribute(v,_),o.fromBufferAttribute(v,S);var E=t.morphTargetInfluences;if(e.morphTargets&&y&&E){c.set(0,0,0),l.set(0,0,0),f.set(0,0,0);for(var T=0,M=y.length;T0&&(k=B);for(var F=0,U=N.length;F0)return t;var i=e*n,o=pr[i];if(void 0===o&&(o=new Float32Array(i),pr[i]=o),0!==e){r.toArray(o,0);for(var a=1,s=0;a!==e;++a)s+=n,t[a].toArray(o,s)}return o}function br(t,e){if(t.length!==e.length)return!1;for(var n=0,r=t.length;n/gm,function(t,e){var n=on[e];if(void 0===n)throw new Error("Can not resolve #include <"+e+">");return hi(n)})}function pi(t){return t.replace(/#pragma unroll_loop[\s]+?for \( int i \= (\d+)\; i < (\d+)\; i \+\+ \) \{([\s\S]+?)(?=\})\}/g,function(t,e,n,r){for(var i="",o=parseInt(e);o0?t.gammaFactor:1,x=a.isWebGL2?"":function(t,e,n){return[(t=t||{}).derivatives||e.envMapCubeUV||e.bumpMap||e.normalMap&&!e.objectSpaceNormalMap||e.flatShading?"#extension GL_OES_standard_derivatives : enable":"",(t.fragDepth||e.logarithmicDepthBuffer)&&n.get("EXT_frag_depth")?"#extension GL_EXT_frag_depth : enable":"",t.drawBuffers&&n.get("WEBGL_draw_buffers")?"#extension GL_EXT_draw_buffers : require":"",(t.shaderTextureLOD||e.envMap)&&n.get("EXT_shader_texture_lod")?"#extension GL_EXT_shader_texture_lod : enable":""].filter(ci).join("\n")}(r.extensions,o,e),_=function(t){var e=[];for(var n in t){var r=t[n];!1!==r&&e.push("#define "+n+" "+r)}return e.join("\n")}(c),S=u.createProgram();if(r.isRawShaderMaterial?((y=[_].filter(ci).join("\n")).length>0&&(y+="\n"),(b=[x,_].filter(ci).join("\n")).length>0&&(b+="\n")):(y=["precision "+o.precision+" float;","precision "+o.precision+" int;","#define SHADER_NAME "+i.name,_,o.supportsVertexTextures?"#define VERTEX_TEXTURES":"","#define GAMMA_FACTOR "+w,"#define MAX_BONES "+o.maxBones,o.useFog&&o.fog?"#define USE_FOG":"",o.useFog&&o.fogExp?"#define FOG_EXP2":"",o.map?"#define USE_MAP":"",o.envMap?"#define USE_ENVMAP":"",o.envMap?"#define "+g:"",o.lightMap?"#define USE_LIGHTMAP":"",o.aoMap?"#define USE_AOMAP":"",o.emissiveMap?"#define USE_EMISSIVEMAP":"",o.bumpMap?"#define USE_BUMPMAP":"",o.normalMap?"#define USE_NORMALMAP":"",o.normalMap&&o.objectSpaceNormalMap?"#define OBJECTSPACE_NORMALMAP":"",o.displacementMap&&o.supportsVertexTextures?"#define USE_DISPLACEMENTMAP":"",o.specularMap?"#define USE_SPECULARMAP":"",o.roughnessMap?"#define USE_ROUGHNESSMAP":"",o.metalnessMap?"#define USE_METALNESSMAP":"",o.alphaMap?"#define USE_ALPHAMAP":"",o.vertexTangents?"#define USE_TANGENT":"",o.vertexColors?"#define USE_COLOR":"",o.flatShading?"#define FLAT_SHADED":"",o.skinning?"#define USE_SKINNING":"",o.useVertexTexture?"#define BONE_TEXTURE":"",o.morphTargets?"#define USE_MORPHTARGETS":"",o.morphNormals&&!1===o.flatShading?"#define USE_MORPHNORMALS":"",o.doubleSided?"#define DOUBLE_SIDED":"",o.flipSided?"#define FLIP_SIDED":"",o.shadowMapEnabled?"#define USE_SHADOWMAP":"",o.shadowMapEnabled?"#define "+h:"",o.sizeAttenuation?"#define USE_SIZEATTENUATION":"",o.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",o.logarithmicDepthBuffer&&(a.isWebGL2||e.get("EXT_frag_depth"))?"#define USE_LOGDEPTHBUF_EXT":"","uniform mat4 modelMatrix;","uniform mat4 modelViewMatrix;","uniform mat4 projectionMatrix;","uniform mat4 viewMatrix;","uniform mat3 normalMatrix;","uniform vec3 cameraPosition;","attribute vec3 position;","attribute vec3 normal;","attribute vec2 uv;","#ifdef USE_TANGENT","\tattribute vec4 tangent;","#endif","#ifdef USE_COLOR","\tattribute vec3 color;","#endif","#ifdef USE_MORPHTARGETS","\tattribute vec3 morphTarget0;","\tattribute vec3 morphTarget1;","\tattribute vec3 morphTarget2;","\tattribute vec3 morphTarget3;","\t#ifdef USE_MORPHNORMALS","\t\tattribute vec3 morphNormal0;","\t\tattribute vec3 morphNormal1;","\t\tattribute vec3 morphNormal2;","\t\tattribute vec3 morphNormal3;","\t#else","\t\tattribute vec3 morphTarget4;","\t\tattribute vec3 morphTarget5;","\t\tattribute vec3 morphTarget6;","\t\tattribute vec3 morphTarget7;","\t#endif","#endif","#ifdef USE_SKINNING","\tattribute vec4 skinIndex;","\tattribute vec4 skinWeight;","#endif","\n"].filter(ci).join("\n"),b=[x,"precision "+o.precision+" float;","precision "+o.precision+" int;","#define SHADER_NAME "+i.name,_,o.alphaTest?"#define ALPHATEST "+o.alphaTest+(o.alphaTest%1?"":".0"):"","#define GAMMA_FACTOR "+w,o.useFog&&o.fog?"#define USE_FOG":"",o.useFog&&o.fogExp?"#define FOG_EXP2":"",o.map?"#define USE_MAP":"",o.matcap?"#define USE_MATCAP":"",o.envMap?"#define USE_ENVMAP":"",o.envMap?"#define "+p:"",o.envMap?"#define "+g:"",o.envMap?"#define "+v:"",o.lightMap?"#define USE_LIGHTMAP":"",o.aoMap?"#define USE_AOMAP":"",o.emissiveMap?"#define USE_EMISSIVEMAP":"",o.bumpMap?"#define USE_BUMPMAP":"",o.normalMap?"#define USE_NORMALMAP":"",o.normalMap&&o.objectSpaceNormalMap?"#define OBJECTSPACE_NORMALMAP":"",o.specularMap?"#define USE_SPECULARMAP":"",o.roughnessMap?"#define USE_ROUGHNESSMAP":"",o.metalnessMap?"#define USE_METALNESSMAP":"",o.alphaMap?"#define USE_ALPHAMAP":"",o.vertexTangents?"#define USE_TANGENT":"",o.vertexColors?"#define USE_COLOR":"",o.gradientMap?"#define USE_GRADIENTMAP":"",o.flatShading?"#define FLAT_SHADED":"",o.doubleSided?"#define DOUBLE_SIDED":"",o.flipSided?"#define FLIP_SIDED":"",o.shadowMapEnabled?"#define USE_SHADOWMAP":"",o.shadowMapEnabled?"#define "+h:"",o.premultipliedAlpha?"#define PREMULTIPLIED_ALPHA":"",o.physicallyCorrectLights?"#define PHYSICALLY_CORRECT_LIGHTS":"",o.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",o.logarithmicDepthBuffer&&(a.isWebGL2||e.get("EXT_frag_depth"))?"#define USE_LOGDEPTHBUF_EXT":"",o.envMap&&(a.isWebGL2||e.get("EXT_shader_texture_lod"))?"#define TEXTURE_LOD_EXT":"","uniform mat4 viewMatrix;","uniform vec3 cameraPosition;",o.toneMapping!==rt?"#define TONE_MAPPING":"",o.toneMapping!==rt?on.tonemapping_pars_fragment:"",o.toneMapping!==rt?ui("toneMapping",o.toneMapping):"",o.dithering?"#define DITHERING":"",o.outputEncoding||o.mapEncoding||o.matcapEncoding||o.envMapEncoding||o.emissiveMapEncoding?on.encodings_pars_fragment:"",o.mapEncoding?ai("mapTexelToLinear",o.mapEncoding):"",o.matcapEncoding?ai("matcapTexelToLinear",o.matcapEncoding):"",o.envMapEncoding?ai("envMapTexelToLinear",o.envMapEncoding):"",o.emissiveMapEncoding?ai("emissiveMapTexelToLinear",o.emissiveMapEncoding):"",o.outputEncoding?si("linearToOutputTexel",o.outputEncoding):"",o.depthPacking?"#define DEPTH_PACKING "+r.depthPacking:"","\n"].filter(ci).join("\n")),l=fi(l=li(l=hi(l),o),o),f=fi(f=li(f=hi(f),o),o),l=pi(l),f=pi(f),a.isWebGL2&&!r.isRawShaderMaterial){var E=!1,T=/^\s*#version\s+300\s+es\s*\n/;r.isShaderMaterial&&null!==l.match(T)&&null!==f.match(T)&&(E=!0,l=l.replace(T,""),f=f.replace(T,"")),y=["#version 300 es\n","#define attribute in","#define varying out","#define texture2D texture"].join("\n")+"\n"+y,b=["#version 300 es\n","#define varying in",E?"":"out highp vec4 pc_fragColor;",E?"":"#define gl_FragColor pc_fragColor","#define gl_FragDepthEXT gl_FragDepth","#define texture2D texture","#define textureCube texture","#define texture2DProj textureProj","#define texture2DLodEXT textureLod","#define texture2DProjLodEXT textureProjLod","#define textureCubeLodEXT textureLod","#define texture2DGradEXT textureGrad","#define texture2DProjGradEXT textureProjGrad","#define textureCubeGradEXT textureGrad"].join("\n")+"\n"+b}var M,A,C=b+f,P=ri(u,35633,y+l,t.debug.checkShaderErrors),I=ri(u,35632,C,t.debug.checkShaderErrors);if(u.attachShader(S,P),u.attachShader(S,I),void 0!==r.index0AttributeName?u.bindAttribLocation(S,0,r.index0AttributeName):!0===o.morphTargets&&u.bindAttribLocation(S,0,"position"),u.linkProgram(S),t.debug.checkShaderErrors){var O=u.getProgramInfoLog(S).trim(),R=u.getShaderInfoLog(P).trim(),k=u.getShaderInfoLog(I).trim(),L=!0,D=!0;!1===u.getProgramParameter(S,35714)?(L=!1,console.error("THREE.WebGLProgram: shader error: ",u.getError(),"35715",u.getProgramParameter(S,35715),"gl.getProgramInfoLog",O,R,k)):""!==O?console.warn("THREE.WebGLProgram: gl.getProgramInfoLog()",O):""!==R&&""!==k||(D=!1),D&&(this.diagnostics={runnable:L,material:r,programLog:O,vertexShader:{log:R,prefix:y},fragmentShader:{log:k,prefix:b}})}return u.deleteShader(P),u.deleteShader(I),this.getUniforms=function(){return void 0===M&&(M=new ni(u,S,s)),M},this.getAttributes=function(){return void 0===A&&(A=function(t,e){for(var n={},r=t.getProgramParameter(e,35721),i=0;i0,maxBones:h,useVertexTexture:n.floatVertexTextures,morphTargets:e.morphTargets,morphNormals:e.morphNormals,maxMorphTargets:t.maxMorphTargets,maxMorphNormals:t.maxMorphNormals,numDirLights:r.directional.length,numPointLights:r.point.length,numSpotLights:r.spot.length,numRectAreaLights:r.rectArea.length,numHemiLights:r.hemi.length,numClippingPlanes:u,numClipIntersection:c,dithering:e.dithering,shadowMapEnabled:t.shadowMap.enabled&&l.receiveShadow&&i.length>0,shadowMapType:t.shadowMap.type,toneMapping:t.toneMapping,physicallyCorrectLights:t.physicallyCorrectLights,premultipliedAlpha:e.premultipliedAlpha,alphaTest:e.alphaTest,doubleSided:e.side===y,flipSided:e.side===v,depthPacking:void 0!==e.depthPacking&&e.depthPacking}},this.getProgramCode=function(e,n){var r=[];if(n.shaderID?r.push(n.shaderID):(r.push(e.fragmentShader),r.push(e.vertexShader)),void 0!==e.defines)for(var i in e.defines)r.push(i),r.push(e.defines[i]);for(var o=0;o1&&n.sort(vi),r.length>1&&r.sort(yi)}}}function wi(){var t={};function e(n){var r=n.target;r.removeEventListener("dispose",e),delete t[r.id]}return{get:function(n,r){var i,o=t[n.id];return void 0===o?(i=new bi,t[n.id]={},t[n.id][r.id]=i,n.addEventListener("dispose",e)):void 0===(i=o[r.id])&&(i=new bi,o[r.id]=i),i},dispose:function(){t={}}}}function xi(){var t={};return{get:function(e){if(void 0!==t[e.id])return t[e.id];var n;switch(e.type){case"DirectionalLight":n={direction:new Ve,color:new ln,shadow:!1,shadowBias:0,shadowRadius:1,shadowMapSize:new ze};break;case"SpotLight":n={position:new Ve,direction:new Ve,color:new ln,distance:0,coneCos:0,penumbraCos:0,decay:0,shadow:!1,shadowBias:0,shadowRadius:1,shadowMapSize:new ze};break;case"PointLight":n={position:new Ve,color:new ln,distance:0,decay:0,shadow:!1,shadowBias:0,shadowRadius:1,shadowMapSize:new ze,shadowCameraNear:1,shadowCameraFar:1e3};break;case"HemisphereLight":n={direction:new Ve,skyColor:new ln,groundColor:new ln};break;case"RectAreaLight":n={color:new ln,position:new Ve,halfWidth:new Ve,halfHeight:new Ve}}return t[e.id]=n,n}}}var _i=0;function Si(){for(var t=new xi,e={id:_i++,hash:{stateID:-1,directionalLength:-1,pointLength:-1,spotLength:-1,rectAreaLength:-1,hemiLength:-1,shadowsLength:-1},ambient:[0,0,0],probe:[],directional:[],directionalShadowMap:[],directionalShadowMatrix:[],spot:[],spotShadowMap:[],spotShadowMatrix:[],rectArea:[],point:[],pointShadowMap:[],pointShadowMatrix:[],hemi:[]},n=0;n<9;n++)e.probe.push(new Ve);var r=new Ve,i=new rn,o=new rn;return{setup:function(n,a,s){for(var u=0,c=0,l=0,f=0;f<9;f++)e.probe[f].set(0,0,0);for(var h=0,p=0,d=0,m=0,g=0,v=s.matrixWorldInverse,y=(f=0,n.length);f0:s&&s.isGeometry&&(g=s.morphTargets&&s.morphTargets.length>0)),e.isSkinnedMesh&&!1===n.skinning&&console.warn("THREE.WebGLShadowMap: THREE.SkinnedMesh with material.skinning set to false:",e);var v=e.isSkinnedMesh&&n.skinning,y=0;g&&(y|=c),v&&(y|=l),u=f[y]}if(t.localClippingEnabled&&!0===n.clipShadows&&0!==n.clippingPlanes.length){var w=u.uuid,x=n.uuid,_=m[w];void 0===_&&(_={},m[w]=_);var S=_[x];void 0===S&&(S=u.clone(),_[x]=S),u=S}return u.visible=n.visible,u.wireframe=n.wireframe,u.side=null!=n.shadowSide?n.shadowSide:b[n.side],u.clipShadows=n.clipShadows,u.clippingPlanes=n.clippingPlanes,u.clipIntersection=n.clipIntersection,u.wireframeLinewidth=n.wireframeLinewidth,u.linewidth=n.linewidth,r&&u.isMeshDistanceMaterial&&(u.referencePosition.copy(i),u.nearDistance=o,u.farDistance=a),u}function O(n,i,o,a){if(!1!==n.visible){if(n.layers.test(i.layers)&&(n.isMesh||n.isLine||n.isPoints)&&n.castShadow&&(!n.frustumCulled||r.intersectsObject(n))){n.modelViewMatrix.multiplyMatrices(o.matrixWorldInverse,n.matrixWorld);var s=e.update(n),c=n.material;if(Array.isArray(c))for(var l=s.groups,f=0,h=l.length;f=1):-1!==V.indexOf("OpenGL ES")&&(G=parseFloat(/^OpenGL\ ES\ ([0-9])/.exec(V)[1]),z=G>=2);var W=null,H={},tt=new Ye,et=new Ye;function nt(e,n,r){var i=new Uint8Array(4),o=t.createTexture();t.bindTexture(e,o),t.texParameteri(e,10241,9728),t.texParameteri(e,10240,9728);for(var a=0;ar||t.height>r)&&(i=r/Math.max(t.width,t.height)),i<1||!0===e){if("undefined"!==typeof HTMLImageElement&&t instanceof HTMLImageElement||"undefined"!==typeof HTMLCanvasElement&&t instanceof HTMLCanvasElement||"undefined"!==typeof ImageBitmap&&t instanceof ImageBitmap){var o=e?je.floorPowerOfTwo:Math.floor,a=o(i*t.width),u=o(i*t.height);void 0===s&&(s=l(a,u));var c=n?l(a,u):s;return c.width=a,c.height=u,c.getContext("2d").drawImage(t,0,0,a,u),console.warn("THREE.WebGLRenderer: Texture has been resized from ("+t.width+"x"+t.height+") to ("+a+"x"+u+")."),c}return"data"in t&&console.warn("THREE.WebGLRenderer: Image in DataTexture is too big ("+t.width+"x"+t.height+")."),t}return t}function h(t){return je.isPowerOfTwo(t.width)&&je.isPowerOfTwo(t.height)}function p(t,e){return t.generateMipmaps&&e&&t.minFilter!==wt&&t.minFilter!==St}function d(e,n,i,o){t.generateMipmap(e),r.get(n).__maxMipLevel=Math.log(Math.max(i,o))*Math.LOG2E}function m(t,n){if(!i.isWebGL2)return t;var r=t;return 6403===t&&(5126===n&&(r=33326),5131===n&&(r=33325),5121===n&&(r=33321)),6407===t&&(5126===n&&(r=34837),5131===n&&(r=34843),5121===n&&(r=32849)),6408===t&&(5126===n&&(r=34836),5131===n&&(r=34842),5121===n&&(r=32856)),33325===r||33326===r||34842===r||34836===r?e.get("EXT_color_buffer_float"):34843!==r&&34837!==r||console.warn("THREE.WebGLRenderer: Floating point textures with RGB format not supported. Please use RGBA instead."),r}function g(t){return t===wt||t===xt||t===_t?9728:9729}function v(e){var n=e.target;n.removeEventListener("dispose",v),function(e){var n=r.get(e);if(void 0===n.__webglInit)return;t.deleteTexture(n.__webglTexture),r.remove(e)}(n),n.isVideoTexture&&delete u[n.id],a.memory.textures--}function y(e){var n=e.target;n.removeEventListener("dispose",y),function(e){var n=r.get(e),i=r.get(e.texture);if(!e)return;void 0!==i.__webglTexture&&t.deleteTexture(i.__webglTexture);e.depthTexture&&e.depthTexture.dispose();if(e.isWebGLRenderTargetCube)for(var o=0;o<6;o++)t.deleteFramebuffer(n.__webglFramebuffer[o]),n.__webglDepthbuffer&&t.deleteRenderbuffer(n.__webglDepthbuffer[o]);else t.deleteFramebuffer(n.__webglFramebuffer),n.__webglDepthbuffer&&t.deleteRenderbuffer(n.__webglDepthbuffer);r.remove(e.texture),r.remove(e)}(n),a.memory.textures--}var b=0;function w(t,e){var i=r.get(t);if(t.isVideoTexture&&function(t){var e=t.id,n=a.render.frame;u[e]!==n&&(u[e]=n,t.update())}(t),t.version>0&&i.__version!==t.version){var o=t.image;if(void 0===o)console.warn("THREE.WebGLRenderer: Texture marked for update but image is undefined");else{if(!1!==o.complete)return void T(i,t,e);console.warn("THREE.WebGLRenderer: Texture marked for update but image is incomplete")}}n.activeTexture(33984+e),n.bindTexture(3553,i.__webglTexture)}function x(e,a){var s=r.get(e);if(6===e.image.length)if(e.version>0&&s.__version!==e.version){E(s,e),n.activeTexture(33984+a),n.bindTexture(34067,s.__webglTexture),t.pixelStorei(37440,e.flipY);for(var u=e&&e.isCompressedTexture,c=e.image[0]&&e.image[0].isDataTexture,l=[],g=0;g<6;g++)l[g]=u||c?c?e.image[g].image:e.image[g]:f(e.image[g],!1,!0,i.maxCubemapSize);var v=l[0],y=h(v)||i.isWebGL2,b=o.convert(e.format),w=o.convert(e.type),x=m(b,w);S(34067,e,y);for(g=0;g<6;g++)if(u)for(var _,T=l[g].mipmaps,M=0,A=T.length;M-1?n.compressedTexImage2D(34069+g,M,x,_.width,_.height,0,_.data):console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .setTextureCube()"):n.texImage2D(34069+g,M,x,_.width,_.height,0,b,w,_.data);else c?n.texImage2D(34069+g,0,x,l[g].width,l[g].height,0,b,w,l[g].data):n.texImage2D(34069+g,0,x,b,w,l[g]);s.__maxMipLevel=u?T.length-1:0,p(e,y)&&d(34067,e,v.width,v.height),s.__version=e.version,e.onUpdate&&e.onUpdate(e)}else n.activeTexture(33984+a),n.bindTexture(34067,s.__webglTexture)}function _(t,e){n.activeTexture(33984+e),n.bindTexture(34067,r.get(t).__webglTexture)}function S(n,a,s){var u;if(s?(t.texParameteri(n,10242,o.convert(a.wrapS)),t.texParameteri(n,10243,o.convert(a.wrapT)),32879!==n&&35866!==n||t.texParameteri(n,32882,o.convert(a.wrapR)),t.texParameteri(n,10240,o.convert(a.magFilter)),t.texParameteri(n,10241,o.convert(a.minFilter))):(t.texParameteri(n,10242,33071),t.texParameteri(n,10243,33071),32879!==n&&35866!==n||t.texParameteri(n,32882,33071),a.wrapS===yt&&a.wrapT===yt||console.warn("THREE.WebGLRenderer: Texture is not power of two. Texture.wrapS and Texture.wrapT should be set to THREE.ClampToEdgeWrapping."),t.texParameteri(n,10240,g(a.magFilter)),t.texParameteri(n,10241,g(a.minFilter)),a.minFilter!==wt&&a.minFilter!==St&&console.warn("THREE.WebGLRenderer: Texture is not power of two. Texture.minFilter should be set to THREE.NearestFilter or THREE.LinearFilter.")),u=e.get("EXT_texture_filter_anisotropic")){if(a.type===Rt&&null===e.get("OES_texture_float_linear"))return;if(a.type===kt&&null===(i.isWebGL2||e.get("OES_texture_half_float_linear")))return;(a.anisotropy>1||r.get(a).__currentAnisotropy)&&(t.texParameterf(n,u.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(a.anisotropy,i.getMaxAnisotropy())),r.get(a).__currentAnisotropy=a.anisotropy)}}function E(e,n){void 0===e.__webglInit&&(e.__webglInit=!0,n.addEventListener("dispose",v),e.__webglTexture=t.createTexture(),a.memory.textures++)}function T(e,r,a){var s=3553;r.isDataTexture2DArray&&(s=35866),r.isDataTexture3D&&(s=32879),E(e,r),n.activeTexture(33984+a),n.bindTexture(s,e.__webglTexture),t.pixelStorei(37440,r.flipY),t.pixelStorei(37441,r.premultiplyAlpha),t.pixelStorei(3317,r.unpackAlignment);var u=function(t){return!i.isWebGL2&&(t.wrapS!==yt||t.wrapT!==yt||t.minFilter!==wt&&t.minFilter!==St)}(r)&&!1===h(r.image),c=f(r.image,u,!1,i.maxTextureSize),l=h(c)||i.isWebGL2,g=o.convert(r.format),v=o.convert(r.type),y=m(g,v);S(s,r,l);var b,w=r.mipmaps;if(r.isDepthTexture){if(y=6402,r.type===Rt){if(!i.isWebGL2)throw new Error("Float Depth Texture only supported in WebGL2.0");y=36012}else i.isWebGL2&&(y=33189);r.format===Wt&&6402===y&&r.type!==Pt&&r.type!==Ot&&(console.warn("THREE.WebGLRenderer: Use UnsignedShortType or UnsignedIntType for DepthFormat DepthTexture."),r.type=Pt,v=o.convert(r.type)),r.format===Ht&&(y=34041,r.type!==Bt&&(console.warn("THREE.WebGLRenderer: Use UnsignedInt248Type for DepthStencilFormat DepthTexture."),r.type=Bt,v=o.convert(r.type))),n.texImage2D(3553,0,y,c.width,c.height,0,g,v,null)}else if(r.isDataTexture)if(w.length>0&&l){for(var x=0,_=w.length;x<_;x++)b=w[x],n.texImage2D(3553,x,y,b.width,b.height,0,g,v,b.data);r.generateMipmaps=!1,e.__maxMipLevel=w.length-1}else n.texImage2D(3553,0,y,c.width,c.height,0,g,v,c.data),e.__maxMipLevel=0;else if(r.isCompressedTexture){for(x=0,_=w.length;x<_;x++)b=w[x],r.format!==jt&&r.format!==Ut?n.getCompressedTextureFormats().indexOf(g)>-1?n.compressedTexImage2D(3553,x,y,b.width,b.height,0,b.data):console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()"):n.texImage2D(3553,x,y,b.width,b.height,0,g,v,b.data);e.__maxMipLevel=w.length-1}else if(r.isDataTexture2DArray)n.texImage3D(35866,0,y,c.width,c.height,c.depth,0,g,v,c.data),e.__maxMipLevel=0;else if(r.isDataTexture3D)n.texImage3D(32879,0,y,c.width,c.height,c.depth,0,g,v,c.data),e.__maxMipLevel=0;else if(w.length>0&&l){for(x=0,_=w.length;x<_;x++)b=w[x],n.texImage2D(3553,x,y,g,v,b);r.generateMipmaps=!1,e.__maxMipLevel=w.length-1}else n.texImage2D(3553,0,y,g,v,c),e.__maxMipLevel=0;p(r,l)&&d(3553,r,c.width,c.height),e.__version=r.version,r.onUpdate&&r.onUpdate(r)}function M(e,i,a,s){var u=o.convert(i.texture.format),c=o.convert(i.texture.type),l=m(u,c);n.texImage2D(s,0,l,i.width,i.height,0,u,c,null),t.bindFramebuffer(36160,e),t.framebufferTexture2D(36160,a,s,r.get(i.texture).__webglTexture,0),t.bindFramebuffer(36160,null)}function A(e,n,r){if(t.bindRenderbuffer(36161,e),n.depthBuffer&&!n.stencilBuffer){if(r){var i=P(n);t.renderbufferStorageMultisample(36161,i,33189,n.width,n.height)}else t.renderbufferStorage(36161,33189,n.width,n.height);t.framebufferRenderbuffer(36160,36096,36161,e)}else if(n.depthBuffer&&n.stencilBuffer){if(r){i=P(n);t.renderbufferStorageMultisample(36161,i,34041,n.width,n.height)}else t.renderbufferStorage(36161,34041,n.width,n.height);t.framebufferRenderbuffer(36160,33306,36161,e)}else{var a=m(o.convert(n.texture.format),o.convert(n.texture.type));if(r){i=P(n);t.renderbufferStorageMultisample(36161,i,a,n.width,n.height)}else t.renderbufferStorage(36161,a,n.width,n.height)}t.bindRenderbuffer(36161,null)}function C(e){var n=r.get(e),i=!0===e.isWebGLRenderTargetCube;if(e.depthTexture){if(i)throw new Error("target.depthTexture not supported in Cube render targets");!function(e,n){if(n&&n.isWebGLRenderTargetCube)throw new Error("Depth Texture with cube render targets is not supported");if(t.bindFramebuffer(36160,e),!n.depthTexture||!n.depthTexture.isDepthTexture)throw new Error("renderTarget.depthTexture must be an instance of THREE.DepthTexture");r.get(n.depthTexture).__webglTexture&&n.depthTexture.image.width===n.width&&n.depthTexture.image.height===n.height||(n.depthTexture.image.width=n.width,n.depthTexture.image.height=n.height,n.depthTexture.needsUpdate=!0),w(n.depthTexture,0);var i=r.get(n.depthTexture).__webglTexture;if(n.depthTexture.format===Wt)t.framebufferTexture2D(36160,36096,3553,i,0);else{if(n.depthTexture.format!==Ht)throw new Error("Unknown depthTexture format");t.framebufferTexture2D(36160,33306,3553,i,0)}}(n.__webglFramebuffer,e)}else if(i){n.__webglDepthbuffer=[];for(var o=0;o<6;o++)t.bindFramebuffer(36160,n.__webglFramebuffer[o]),n.__webglDepthbuffer[o]=t.createRenderbuffer(),A(n.__webglDepthbuffer[o],e)}else t.bindFramebuffer(36160,n.__webglFramebuffer),n.__webglDepthbuffer=t.createRenderbuffer(),A(n.__webglDepthbuffer,e);t.bindFramebuffer(36160,null)}function P(t){return i.isWebGL2&&t.isWebGLMultisampleRenderTarget?Math.min(i.maxSamples,t.samples):0}var I=!1,O=!1;this.allocateTextureUnit=function(){var t=b;return t>=i.maxTextures&&console.warn("THREE.WebGLTextures: Trying to use "+t+" texture units while this GPU supports only "+i.maxTextures),b+=1,t},this.resetTextureUnits=function(){b=0},this.setTexture2D=w,this.setTexture2DArray=function(t,e){var i=r.get(t);t.version>0&&i.__version!==t.version?T(i,t,e):(n.activeTexture(33984+e),n.bindTexture(35866,i.__webglTexture))},this.setTexture3D=function(t,e){var i=r.get(t);t.version>0&&i.__version!==t.version?T(i,t,e):(n.activeTexture(33984+e),n.bindTexture(32879,i.__webglTexture))},this.setTextureCube=x,this.setTextureCubeDynamic=_,this.setupRenderTarget=function(e){var s=r.get(e),u=r.get(e.texture);e.addEventListener("dispose",y),u.__webglTexture=t.createTexture(),a.memory.textures++;var c=!0===e.isWebGLRenderTargetCube,l=!0===e.isWebGLMultisampleRenderTarget,f=h(e)||i.isWebGL2;if(c){s.__webglFramebuffer=[];for(var g=0;g<6;g++)s.__webglFramebuffer[g]=t.createFramebuffer()}else if(s.__webglFramebuffer=t.createFramebuffer(),l)if(i.isWebGL2){s.__webglMultisampledFramebuffer=t.createFramebuffer(),s.__webglColorRenderbuffer=t.createRenderbuffer(),t.bindRenderbuffer(36161,s.__webglColorRenderbuffer);var v=m(o.convert(e.texture.format),o.convert(e.texture.type)),b=P(e);t.renderbufferStorageMultisample(36161,b,v,e.width,e.height),t.bindFramebuffer(36160,s.__webglMultisampledFramebuffer),t.framebufferRenderbuffer(36160,36064,36161,s.__webglColorRenderbuffer),t.bindRenderbuffer(36161,null),e.depthBuffer&&(s.__webglDepthRenderbuffer=t.createRenderbuffer(),A(s.__webglDepthRenderbuffer,e,!0)),t.bindFramebuffer(36160,null)}else console.warn("THREE.WebGLRenderer: WebGLMultisampleRenderTarget can only be used with WebGL2.");if(c){for(n.bindTexture(34067,u.__webglTexture),S(34067,e.texture,f),g=0;g<6;g++)M(s.__webglFramebuffer[g],e,36064,34069+g);p(e.texture,f)&&d(34067,e.texture,e.width,e.height),n.bindTexture(34067,null)}else n.bindTexture(3553,u.__webglTexture),S(3553,e.texture,f),M(s.__webglFramebuffer,e,36064,3553),p(e.texture,f)&&d(3553,e.texture,e.width,e.height),n.bindTexture(3553,null);e.depthBuffer&&C(e)},this.updateRenderTargetMipmap=function(t){var e=t.texture;if(p(e,h(t)||i.isWebGL2)){var o=t.isWebGLRenderTargetCube?34067:3553,a=r.get(e).__webglTexture;n.bindTexture(o,a),d(o,e,t.width,t.height),n.bindTexture(o,null)}},this.updateMultisampleRenderTarget=function(e){if(e.isWebGLMultisampleRenderTarget)if(i.isWebGL2){var n=r.get(e);t.bindFramebuffer(36008,n.__webglMultisampledFramebuffer),t.bindFramebuffer(36009,n.__webglFramebuffer);var o=e.width,a=e.height,s=16384;e.depthBuffer&&(s|=256),e.stencilBuffer&&(s|=1024),t.blitFramebuffer(0,0,o,a,0,0,o,a,s,9728)}else console.warn("THREE.WebGLRenderer: WebGLMultisampleRenderTarget can only be used with WebGL2.")},this.safeSetTexture2D=function(t,e){t&&t.isWebGLRenderTarget&&(!1===I&&(console.warn("THREE.WebGLTextures.safeSetTexture2D: don't use render targets as textures. Use their .texture property instead."),I=!0),t=t.texture),w(t,e)},this.safeSetTextureCube=function(t,e){t&&t.isWebGLRenderTargetCube&&(!1===O&&(console.warn("THREE.WebGLTextures.safeSetTextureCube: don't use cube render targets as textures. Use their .texture property instead."),O=!0),t=t.texture),t&&t.isCubeTexture||Array.isArray(t.image)&&6===t.image.length?x(t,e):_(t,e)}}function Oi(t,e,n){return{convert:function(t){var r;if(t===vt)return 10497;if(t===yt)return 33071;if(t===bt)return 33648;if(t===wt)return 9728;if(t===xt)return 9984;if(t===_t)return 9986;if(t===St)return 9729;if(t===Et)return 9985;if(t===Tt)return 9987;if(t===Mt)return 5121;if(t===Lt)return 32819;if(t===Dt)return 32820;if(t===Nt)return 33635;if(t===At)return 5120;if(t===Ct)return 5122;if(t===Pt)return 5123;if(t===It)return 5124;if(t===Ot)return 5125;if(t===Rt)return 5126;if(t===kt){if(n.isWebGL2)return 5131;if(null!==(r=e.get("OES_texture_half_float")))return r.HALF_FLOAT_OES}if(t===Ft)return 6406;if(t===Ut)return 6407;if(t===jt)return 6408;if(t===zt)return 6409;if(t===Gt)return 6410;if(t===Wt)return 6402;if(t===Ht)return 34041;if(t===qt)return 6403;if(t===I)return 32774;if(t===O)return 32778;if(t===R)return 32779;if(t===D)return 0;if(t===N)return 1;if(t===B)return 768;if(t===F)return 769;if(t===U)return 770;if(t===j)return 771;if(t===z)return 772;if(t===G)return 773;if(t===V)return 774;if(t===W)return 775;if(t===H)return 776;if((t===Xt||t===Yt||t===Kt||t===$t)&&null!==(r=e.get("WEBGL_compressed_texture_s3tc"))){if(t===Xt)return r.COMPRESSED_RGB_S3TC_DXT1_EXT;if(t===Yt)return r.COMPRESSED_RGBA_S3TC_DXT1_EXT;if(t===Kt)return r.COMPRESSED_RGBA_S3TC_DXT3_EXT;if(t===$t)return r.COMPRESSED_RGBA_S3TC_DXT5_EXT}if((t===Jt||t===Zt||t===Qt||t===te)&&null!==(r=e.get("WEBGL_compressed_texture_pvrtc"))){if(t===Jt)return r.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;if(t===Zt)return r.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;if(t===Qt)return r.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;if(t===te)return r.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG}if(t===ee&&null!==(r=e.get("WEBGL_compressed_texture_etc1")))return r.COMPRESSED_RGB_ETC1_WEBGL;if((t===ne||t===re||t===ie||t===oe||t===ae||t===se||t===ue||t===ce||t===le||t===fe||t===he||t===pe||t===de||t===me)&&null!==(r=e.get("WEBGL_compressed_texture_astc")))return t;if(t===k||t===L){if(n.isWebGL2){if(t===k)return 32775;if(t===L)return 32776}if(null!==(r=e.get("EXT_blend_minmax"))){if(t===k)return r.MIN_EXT;if(t===L)return r.MAX_EXT}}if(t===Bt){if(n.isWebGL2)return 34042;if(null!==(r=e.get("WEBGL_depth_texture")))return r.UNSIGNED_INT_24_8_WEBGL}return 0}}}function Ri(){bn.call(this),this.type="Group"}function ki(){bn.call(this),this.type="Camera",this.matrixWorldInverse=new rn,this.projectionMatrix=new rn,this.projectionMatrixInverse=new rn}function Li(t,e,n,r){ki.call(this),this.type="PerspectiveCamera",this.fov=void 0!==t?t:50,this.zoom=1,this.near=void 0!==n?n:.1,this.far=void 0!==r?r:2e3,this.focus=10,this.aspect=void 0!==e?e:1,this.view=null,this.filmGauge=35,this.filmOffset=0,this.updateProjectionMatrix()}function Di(t){Li.call(this),this.cameras=t||[]}Mi.prototype=Object.create(zn.prototype),Mi.prototype.constructor=Mi,Mi.prototype.isMeshDepthMaterial=!0,Mi.prototype.copy=function(t){return zn.prototype.copy.call(this,t),this.depthPacking=t.depthPacking,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.map=t.map,this.alphaMap=t.alphaMap,this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this},Ai.prototype=Object.create(zn.prototype),Ai.prototype.constructor=Ai,Ai.prototype.isMeshDistanceMaterial=!0,Ai.prototype.copy=function(t){return zn.prototype.copy.call(this,t),this.referencePosition.copy(t.referencePosition),this.nearDistance=t.nearDistance,this.farDistance=t.farDistance,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.map=t.map,this.alphaMap=t.alphaMap,this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this},Ri.prototype=Object.assign(Object.create(bn.prototype),{constructor:Ri,isGroup:!0}),ki.prototype=Object.assign(Object.create(bn.prototype),{constructor:ki,isCamera:!0,copy:function(t,e){return bn.prototype.copy.call(this,t,e),this.matrixWorldInverse.copy(t.matrixWorldInverse),this.projectionMatrix.copy(t.projectionMatrix),this.projectionMatrixInverse.copy(t.projectionMatrixInverse),this},getWorldDirection:function(t){void 0===t&&(console.warn("THREE.Camera: .getWorldDirection() target is now required"),t=new Ve),this.updateMatrixWorld(!0);var e=this.matrixWorld.elements;return t.set(-e[8],-e[9],-e[10]).normalize()},updateMatrixWorld:function(t){bn.prototype.updateMatrixWorld.call(this,t),this.matrixWorldInverse.getInverse(this.matrixWorld)},clone:function(){return(new this.constructor).copy(this)}}),Li.prototype=Object.assign(Object.create(ki.prototype),{constructor:Li,isPerspectiveCamera:!0,copy:function(t,e){return ki.prototype.copy.call(this,t,e),this.fov=t.fov,this.zoom=t.zoom,this.near=t.near,this.far=t.far,this.focus=t.focus,this.aspect=t.aspect,this.view=null===t.view?null:Object.assign({},t.view),this.filmGauge=t.filmGauge,this.filmOffset=t.filmOffset,this},setFocalLength:function(t){var e=.5*this.getFilmHeight()/t;this.fov=2*je.RAD2DEG*Math.atan(e),this.updateProjectionMatrix()},getFocalLength:function(){var t=Math.tan(.5*je.DEG2RAD*this.fov);return.5*this.getFilmHeight()/t},getEffectiveFOV:function(){return 2*je.RAD2DEG*Math.atan(Math.tan(.5*je.DEG2RAD*this.fov)/this.zoom)},getFilmWidth:function(){return this.filmGauge*Math.min(this.aspect,1)},getFilmHeight:function(){return this.filmGauge/Math.max(this.aspect,1)},setViewOffset:function(t,e,n,r,i,o){this.aspect=t/e,null===this.view&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=t,this.view.fullHeight=e,this.view.offsetX=n,this.view.offsetY=r,this.view.width=i,this.view.height=o,this.updateProjectionMatrix()},clearViewOffset:function(){null!==this.view&&(this.view.enabled=!1),this.updateProjectionMatrix()},updateProjectionMatrix:function(){var t=this.near,e=t*Math.tan(.5*je.DEG2RAD*this.fov)/this.zoom,n=2*e,r=this.aspect*n,i=-.5*r,o=this.view;if(null!==this.view&&this.view.enabled){var a=o.fullWidth,s=o.fullHeight;i+=o.offsetX*r/a,e-=o.offsetY*n/s,r*=o.width/a,n*=o.height/s}var u=this.filmOffset;0!==u&&(i+=t*u/this.getFilmWidth()),this.projectionMatrix.makePerspective(i,i+r,e,e-n,t,this.far),this.projectionMatrixInverse.getInverse(this.projectionMatrix)},toJSON:function(t){var e=bn.prototype.toJSON.call(this,t);return e.object.fov=this.fov,e.object.zoom=this.zoom,e.object.near=this.near,e.object.far=this.far,e.object.focus=this.focus,e.object.aspect=this.aspect,null!==this.view&&(e.object.view=Object.assign({},this.view)),e.object.filmGauge=this.filmGauge,e.object.filmOffset=this.filmOffset,e}}),Di.prototype=Object.assign(Object.create(Li.prototype),{constructor:Di,isArrayCamera:!0});var Ni,Bi=new Ve,Fi=new Ve;function Ui(t,e,n){Bi.setFromMatrixPosition(e.matrixWorld),Fi.setFromMatrixPosition(n.matrixWorld);var r=Bi.distanceTo(Fi),i=e.projectionMatrix.elements,o=n.projectionMatrix.elements,a=i[14]/(i[10]-1),s=i[14]/(i[10]+1),u=(i[9]+1)/i[5],c=(i[9]-1)/i[5],l=(i[8]-1)/i[0],f=(o[8]+1)/o[0],h=a*l,p=a*f,d=r/(-l+f),m=d*-l;e.matrixWorld.decompose(t.position,t.quaternion,t.scale),t.translateX(m),t.translateZ(d),t.matrixWorld.compose(t.position,t.quaternion,t.scale),t.matrixWorldInverse.getInverse(t.matrixWorld);var g=a+d,v=s+d,y=h-m,b=p+(r-m),w=u*s/v*g,x=c*s/v*g;t.projectionMatrix.makePerspective(y,b,w,x,g,v)}function ji(t){var e,n,r=this,i=null,o=null,a=null,s=[],u=new rn,c=new rn,l=1,f="local-floor";"undefined"!==typeof window&&"VRFrameData"in window&&(o=new window.VRFrameData,window.addEventListener("vrdisplaypresentchange",x,!1));var h=new rn,p=new Ge,d=new Ve,m=new Li;m.viewport=new Ye,m.layers.enable(1);var g=new Li;g.viewport=new Ye,g.layers.enable(2);var v=new Di([m,g]);function y(){return null!==i&&!0===i.isPresenting}v.layers.enable(1),v.layers.enable(2);var b,w=new ze;function x(){if(y()){var o=i.getEyeParameters("left");e=2*o.renderWidth*l,n=o.renderHeight*l,b=t.getPixelRatio(),t.getSize(w),t.setDrawingBufferSize(e,n,1),m.viewport.set(0,0,e/2,n),g.viewport.set(e/2,0,e/2,n),T.start()}else r.enabled&&t.setDrawingBufferSize(w.width,w.height,b),T.stop()}var _=[];function S(t){for(var e=navigator.getGamepads&&navigator.getGamepads(),n=0,r=0,i=e.length;n=0){var u=r[a];if(void 0!==u){var c=u.normalized,l=u.itemSize,f=_.get(u);if(void 0===f)continue;var h=f.buffer,p=f.type,v=f.bytesPerElement;if(u.isInterleavedBufferAttribute){var b=u.data,w=b.stride,x=u.offset;b&&b.isInstancedInterleavedBuffer?(y.enableAttributeAndDivisor(s,b.meshPerAttribute),void 0===n.maxInstancedCount&&(n.maxInstancedCount=b.meshPerAttribute*b.count)):y.enableAttribute(s),d.bindBuffer(34962,h),d.vertexAttribPointer(s,l,p,c,w*v,x*v)}else u.isInstancedBufferAttribute?(y.enableAttributeAndDivisor(s,u.meshPerAttribute),void 0===n.maxInstancedCount&&(n.maxInstancedCount=u.meshPerAttribute*u.count)):y.enableAttribute(s),d.bindBuffer(34962,h),d.vertexAttribPointer(s,l,p,c,0,0)}else if(void 0!==o){var S=o[a];if(void 0!==S)switch(S.length){case 2:d.vertexAttrib2fv(s,S);break;case 3:d.vertexAttrib3fv(s,S);break;case 4:d.vertexAttrib4fv(s,S);break;default:d.vertexAttrib1fv(s,S)}}}}y.disableUnusedAttributes()}(r,s,n),null!==l&&d.bindBuffer(34963,c.buffer));var v=1/0;null!==l?v=l.count:void 0!==f&&(v=f.count);var b=n.drawRange.start*h,w=n.drawRange.count*h,x=null!==o?o.start*h:0,E=null!==o?o.count*h:1/0,T=Math.max(b,x),M=Math.min(v,b+w,x+E)-1,A=Math.max(0,M-T+1);if(0!==A){if(i.isMesh)if(!0===r.wireframe)y.setLineWidth(r.wireframeLinewidth*at()),p.setMode(1);else switch(i.drawMode){case Te:p.setMode(4);break;case Me:p.setMode(5);break;case Ae:p.setMode(6)}else if(i.isLine){var C=r.linewidth;void 0===C&&(C=1),y.setLineWidth(C*at()),i.isLineSegments?p.setMode(1):i.isLineLoop?p.setMode(2):p.setMode(3)}else i.isPoints?p.setMode(0):i.isSprite&&p.setMode(4);n&&n.isInstancedBufferGeometry?n.maxInstancedCount>0&&p.renderInstances(n,T,A):p.render(T,A)}},this.compile=function(t,e){(p=A.get(t,e)).init(),t.traverse(function(t){t.isLight&&(p.pushLight(t),t.castShadow&&p.pushShadow(t))}),p.setupLights(e),t.traverse(function(e){if(e.material)if(Array.isArray(e.material))for(var n=0;n=0&&t.numSupportedMorphTargets++}if(t.morphNormals){t.numSupportedMorphNormals=0;for(m=0;m=0&&t.numSupportedMorphNormals++}var g=r.shader.uniforms;(t.isShaderMaterial||t.isRawShaderMaterial)&&!0!==t.clipping||(r.numClippingPlanes=tt.numPlanes,r.numIntersection=tt.numIntersection,g.clippingPlanes=tt.uniform),r.fog=e,void 0===a&&(r.lightsHash=a={}),a.stateID=s.stateID,a.directionalLength=s.directionalLength,a.pointLength=s.pointLength,a.spotLength=s.spotLength,a.rectAreaLength=s.rectAreaLength,a.hemiLength=s.hemiLength,a.shadowsLength=s.shadowsLength,t.lights&&(g.ambientLightColor.value=i.state.ambient,g.lightProbe.value=i.state.probe,g.directionalLights.value=i.state.directional,g.spotLights.value=i.state.spot,g.rectAreaLights.value=i.state.rectArea,g.pointLights.value=i.state.point,g.hemisphereLights.value=i.state.hemi,g.directionalShadowMap.value=i.state.directionalShadowMap,g.directionalShadowMatrix.value=i.state.directionalShadowMatrix,g.spotShadowMap.value=i.state.spotShadowMap,g.spotShadowMatrix.value=i.state.spotShadowMatrix,g.pointShadowMap.value=i.state.pointShadowMap,g.pointShadowMatrix.value=i.state.pointShadowMatrix);var v=r.program.getUniforms(),y=ni.seqWithValue(v.seq,g);r.uniformsList=y}function wt(t,e,n,r){x.resetTextureUnits();var i=w.get(n),o=p.state.lights,a=i.lightsHash,s=o.state.hash;if(et&&(nt||t!==G)){var u=t===G&&n.id===j;tt.setState(n.clippingPlanes,n.clipIntersection,n.clipShadows,t,i,u)}!1===n.needsUpdate&&(void 0===i.program?n.needsUpdate=!0:n.fog&&i.fog!==e?n.needsUpdate=!0:(!n.lights||a.stateID===s.stateID&&a.directionalLength===s.directionalLength&&a.pointLength===s.pointLength&&a.spotLength===s.spotLength&&a.rectAreaLength===s.rectAreaLength&&a.hemiLength===s.hemiLength&&a.shadowsLength===s.shadowsLength)&&(void 0===i.numClippingPlanes||i.numClippingPlanes===tt.numPlanes&&i.numIntersection===tt.numIntersection)||(n.needsUpdate=!0)),n.needsUpdate&&(bt(n,e,r),n.needsUpdate=!1);var c,l,f=!1,h=!1,m=!1,b=i.program,_=b.getUniforms(),S=i.shader.uniforms;if(y.useProgram(b.program)&&(f=!0,h=!0,m=!0),n.id!==j&&(j=n.id,h=!0),f||G!==t){if(_.setValue(d,"projectionMatrix",t.projectionMatrix),g.logarithmicDepthBuffer&&_.setValue(d,"logDepthBufFC",2/(Math.log(t.far+1)/Math.LN2)),G!==t&&(G=t,h=!0,m=!0),n.isShaderMaterial||n.isMeshPhongMaterial||n.isMeshStandardMaterial||n.envMap){var E=_.map.cameraPosition;void 0!==E&&E.setValue(d,ot.setFromMatrixPosition(t.matrixWorld))}(n.isMeshPhongMaterial||n.isMeshLambertMaterial||n.isMeshBasicMaterial||n.isMeshStandardMaterial||n.isShaderMaterial||n.skinning)&&_.setValue(d,"viewMatrix",t.matrixWorldInverse)}if(n.skinning){_.setOptional(d,r,"bindMatrix"),_.setOptional(d,r,"bindMatrixInverse");var T=r.skeleton;if(T){var M=T.bones;if(g.floatVertexTextures){if(void 0===T.boneTexture){var A=Math.sqrt(4*M.length);A=je.ceilPowerOfTwo(A),A=Math.max(A,4);var C=new Float32Array(A*A*4);C.set(T.boneMatrices);var P=new Ze(C,A,A,jt,Rt);P.needsUpdate=!0,T.boneMatrices=C,T.boneTexture=P,T.boneTextureSize=A}_.setValue(d,"boneTexture",T.boneTexture,x),_.setValue(d,"boneTextureSize",T.boneTextureSize)}else _.setOptional(d,T,"boneMatrices")}}return h&&(_.setValue(d,"toneMappingExposure",k.toneMappingExposure),_.setValue(d,"toneMappingWhitePoint",k.toneMappingWhitePoint),n.lights&&(l=m,(c=S).ambientLightColor.needsUpdate=l,c.lightProbe.needsUpdate=l,c.directionalLights.needsUpdate=l,c.pointLights.needsUpdate=l,c.spotLights.needsUpdate=l,c.rectAreaLights.needsUpdate=l,c.hemisphereLights.needsUpdate=l),e&&n.fog&&function(t,e){t.fogColor.value.copy(e.color),e.isFog?(t.fogNear.value=e.near,t.fogFar.value=e.far):e.isFogExp2&&(t.fogDensity.value=e.density)}(S,e),n.isMeshBasicMaterial?xt(S,n):n.isMeshLambertMaterial?(xt(S,n),function(t,e){e.emissiveMap&&(t.emissiveMap.value=e.emissiveMap)}(S,n)):n.isMeshPhongMaterial?(xt(S,n),n.isMeshToonMaterial?function(t,e){_t(t,e),e.gradientMap&&(t.gradientMap.value=e.gradientMap)}(S,n):_t(S,n)):n.isMeshStandardMaterial?(xt(S,n),n.isMeshPhysicalMaterial?function(t,e){St(t,e),t.reflectivity.value=e.reflectivity,t.clearCoat.value=e.clearCoat,t.clearCoatRoughness.value=e.clearCoatRoughness}(S,n):St(S,n)):n.isMeshMatcapMaterial?(xt(S,n),function(t,e){e.matcap&&(t.matcap.value=e.matcap);e.bumpMap&&(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale,e.side===v&&(t.bumpScale.value*=-1));e.normalMap&&(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale),e.side===v&&t.normalScale.value.negate());e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(S,n)):n.isMeshDepthMaterial?(xt(S,n),function(t,e){e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(S,n)):n.isMeshDistanceMaterial?(xt(S,n),function(t,e){e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias);t.referencePosition.value.copy(e.referencePosition),t.nearDistance.value=e.nearDistance,t.farDistance.value=e.farDistance}(S,n)):n.isMeshNormalMaterial?(xt(S,n),function(t,e){e.bumpMap&&(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale,e.side===v&&(t.bumpScale.value*=-1));e.normalMap&&(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale),e.side===v&&t.normalScale.value.negate());e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}(S,n)):n.isLineBasicMaterial?(function(t,e){t.diffuse.value.copy(e.color),t.opacity.value=e.opacity}(S,n),n.isLineDashedMaterial&&function(t,e){t.dashSize.value=e.dashSize,t.totalSize.value=e.dashSize+e.gapSize,t.scale.value=e.scale}(S,n)):n.isPointsMaterial?function(t,e){t.diffuse.value.copy(e.color),t.opacity.value=e.opacity,t.size.value=e.size*K,t.scale.value=.5*Y,t.map.value=e.map,null!==e.map&&(!0===e.map.matrixAutoUpdate&&e.map.updateMatrix(),t.uvTransform.value.copy(e.map.matrix))}(S,n):n.isSpriteMaterial?function(t,e){t.diffuse.value.copy(e.color),t.opacity.value=e.opacity,t.rotation.value=e.rotation,t.map.value=e.map,null!==e.map&&(!0===e.map.matrixAutoUpdate&&e.map.updateMatrix(),t.uvTransform.value.copy(e.map.matrix))}(S,n):n.isShadowMaterial&&(S.color.value.copy(n.color),S.opacity.value=n.opacity),void 0!==S.ltc_1&&(S.ltc_1.value=fn.LTC_1),void 0!==S.ltc_2&&(S.ltc_2.value=fn.LTC_2),ni.upload(d,i.uniformsList,S,x)),n.isShaderMaterial&&!0===n.uniformsNeedUpdate&&(ni.upload(d,i.uniformsList,S,x),n.uniformsNeedUpdate=!1),n.isSpriteMaterial&&_.setValue(d,"center",r.center),_.setValue(d,"modelViewMatrix",r.modelViewMatrix),_.setValue(d,"normalMatrix",r.normalMatrix),_.setValue(d,"modelMatrix",r.matrixWorld),b}function xt(t,e){var n;t.opacity.value=e.opacity,e.color&&t.diffuse.value.copy(e.color),e.emissive&&t.emissive.value.copy(e.emissive).multiplyScalar(e.emissiveIntensity),e.map&&(t.map.value=e.map),e.alphaMap&&(t.alphaMap.value=e.alphaMap),e.specularMap&&(t.specularMap.value=e.specularMap),e.envMap&&(t.envMap.value=e.envMap,t.flipEnvMap.value=e.envMap.isCubeTexture?-1:1,t.reflectivity.value=e.reflectivity,t.refractionRatio.value=e.refractionRatio,t.maxMipLevel.value=w.get(e.envMap).__maxMipLevel),e.lightMap&&(t.lightMap.value=e.lightMap,t.lightMapIntensity.value=e.lightMapIntensity),e.aoMap&&(t.aoMap.value=e.aoMap,t.aoMapIntensity.value=e.aoMapIntensity),e.map?n=e.map:e.specularMap?n=e.specularMap:e.displacementMap?n=e.displacementMap:e.normalMap?n=e.normalMap:e.bumpMap?n=e.bumpMap:e.roughnessMap?n=e.roughnessMap:e.metalnessMap?n=e.metalnessMap:e.alphaMap?n=e.alphaMap:e.emissiveMap&&(n=e.emissiveMap),void 0!==n&&(n.isWebGLRenderTarget&&(n=n.texture),!0===n.matrixAutoUpdate&&n.updateMatrix(),t.uvTransform.value.copy(n.matrix))}function _t(t,e){t.specular.value.copy(e.specular),t.shininess.value=Math.max(e.shininess,1e-4),e.emissiveMap&&(t.emissiveMap.value=e.emissiveMap),e.bumpMap&&(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale,e.side===v&&(t.bumpScale.value*=-1)),e.normalMap&&(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale),e.side===v&&t.normalScale.value.negate()),e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}function St(t,e){t.roughness.value=e.roughness,t.metalness.value=e.metalness,e.roughnessMap&&(t.roughnessMap.value=e.roughnessMap),e.metalnessMap&&(t.metalnessMap.value=e.metalnessMap),e.emissiveMap&&(t.emissiveMap.value=e.emissiveMap),e.bumpMap&&(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale,e.side===v&&(t.bumpScale.value*=-1)),e.normalMap&&(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale),e.side===v&&t.normalScale.value.negate()),e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias),e.envMap&&(t.envMapIntensity.value=e.envMapIntensity)}gt.setAnimationLoop(function(t){ct.isPresenting()||mt&&mt(t)}),"undefined"!==typeof window&>.setContext(window),this.setAnimationLoop=function(t){mt=t,ct.setAnimationLoop(t),gt.start()},this.render=function(t,e){var n,r;if(void 0!==arguments[2]&&(console.warn("THREE.WebGLRenderer.render(): the renderTarget argument has been removed. Use .setRenderTarget() instead."),n=arguments[2]),void 0!==arguments[3]&&(console.warn("THREE.WebGLRenderer.render(): the forceClear argument has been removed. Use .clear() instead."),r=arguments[3]),e&&e.isCamera){if(!L){z.geometry=null,z.program=null,z.wireframe=!1,j=-1,G=null,!0===t.autoUpdate&&t.updateMatrixWorld(),null===e.parent&&e.updateMatrixWorld(),ct.enabled&&(e=ct.getCamera(e)),(p=A.get(t,e)).init(),t.onBeforeRender(k,t,e,n||F),rt.multiplyMatrices(e.projectionMatrix,e.matrixWorldInverse),Q.setFromMatrix(rt),nt=this.localClippingEnabled,et=tt.init(this.clippingPlanes,nt,e),(h=M.get(t,e)).init(),function t(e,n,r,i){if(!1===e.visible)return;var o=e.layers.test(n.layers);if(o)if(e.isGroup)r=e.renderOrder;else if(e.isLight)p.pushLight(e),e.castShadow&&p.pushShadow(e);else if(e.isSprite){if(!e.frustumCulled||Q.intersectsSprite(e)){i&&ot.setFromMatrixPosition(e.matrixWorld).applyMatrix4(rt);var a=E.update(e),s=e.material;s.visible&&h.push(e,a,s,r,ot.z,null)}}else if(e.isImmediateRenderObject)i&&ot.setFromMatrixPosition(e.matrixWorld).applyMatrix4(rt),h.push(e,null,e.material,r,ot.z,null);else if((e.isMesh||e.isLine||e.isPoints)&&(e.isSkinnedMesh&&e.skeleton.update(),!e.frustumCulled||Q.intersectsObject(e))){i&&ot.setFromMatrixPosition(e.matrixWorld).applyMatrix4(rt);var a=E.update(e),s=e.material;if(Array.isArray(s))for(var u=a.groups,c=0,l=u.length;c=0&&e<=t.width-r&&n>=0&&n<=t.height-i&&d.readPixels(e,n,r,i,R.convert(l),R.convert(f),o):console.error("THREE.WebGLRenderer.readRenderTargetPixels: readPixels from renderTarget failed. Framebuffer not complete.")}finally{u&&d.bindFramebuffer(36160,U)}}}else console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.")},this.copyFramebufferToTexture=function(t,e,n){var r=e.image.width,i=e.image.height,o=R.convert(e.format);x.setTexture2D(e,0),d.copyTexImage2D(3553,n||0,o,t.x,t.y,r,i,0)},this.copyTextureToTexture=function(t,e,n,r){var i=e.image.width,o=e.image.height,a=R.convert(n.format),s=R.convert(n.type);x.setTexture2D(n,0),e.isDataTexture?d.texSubImage2D(3553,r||0,t.x,t.y,i,o,a,s,e.image.data):d.texSubImage2D(3553,r||0,t.x,t.y,a,s,e.image)}}function Vi(t,e){this.name="",this.color=new ln(t),this.density=void 0!==e?e:25e-5}function Wi(t,e,n){this.name="",this.color=new ln(t),this.near=void 0!==e?e:1,this.far=void 0!==n?n:1e3}function Hi(){bn.call(this),this.type="Scene",this.background=null,this.fog=null,this.overrideMaterial=null,this.autoUpdate=!0}function qi(t,e){this.array=t,this.stride=e,this.count=void 0!==t?t.length/e:0,this.dynamic=!1,this.updateRange={offset:0,count:-1},this.version=0}function Xi(t,e,n,r){this.data=t,this.itemSize=e,this.offset=n,this.normalized=!0===r}function Yi(t){zn.call(this),this.type="SpriteMaterial",this.color=new ln(16777215),this.map=null,this.rotation=0,this.sizeAttenuation=!0,this.lights=!1,this.transparent=!0,this.setValues(t)}function Ki(t){if(bn.call(this),this.type="Sprite",void 0===Ni){Ni=new Dn;var e=new qi(new Float32Array([-.5,-.5,0,0,0,.5,-.5,0,1,0,.5,.5,0,1,1,-.5,.5,0,0,1]),5);Ni.setIndex([0,1,2,0,2,3]),Ni.addAttribute("position",new Xi(e,3,0,!1)),Ni.addAttribute("uv",new Xi(e,2,3,!1))}this.geometry=Ni,this.material=void 0!==t?t:new Yi,this.center=new ze(.5,.5)}function $i(){bn.call(this),this.type="LOD",Object.defineProperties(this,{levels:{enumerable:!0,value:[]}})}function Ji(t,e){t&&t.isGeometry&&console.error("THREE.SkinnedMesh no longer supports THREE.Geometry. Use THREE.BufferGeometry instead."),Yn.call(this,t,e),this.type="SkinnedMesh",this.bindMode="attached",this.bindMatrix=new rn,this.bindMatrixInverse=new rn}function Zi(t,e){if(t=t||[],this.bones=t.slice(0),this.boneMatrices=new Float32Array(16*this.bones.length),void 0===e)this.calculateInverses();else if(this.bones.length===e.length)this.boneInverses=e.slice(0);else{console.warn("THREE.Skeleton boneInverses is the wrong length."),this.boneInverses=[];for(var n=0,r=this.bones.length;n=0?(t(g-1e-5,m,f),h.subVectors(l,f)):(t(g+1e-5,m,f),h.subVectors(f,l)),m-1e-5>=0?(t(g,m-1e-5,f),p.subVectors(l,f)):(t(g,m+1e-5,f),p.subVectors(f,l)),c.crossVectors(h,p).normalize(),s.push(c.x,c.y,c.z),u.push(g,m)}}for(r=0;r.9&&a<.1&&(e<.2&&(o[t+0]+=1),n<.2&&(o[t+2]+=1),r<.2&&(o[t+4]+=1))}}()}(),this.addAttribute("position",new In(i,3)),this.addAttribute("normal",new In(i.slice(),3)),this.addAttribute("uv",new In(o,2)),0===r?this.computeVertexNormals():this.normalizeNormals()}function go(t,e){xn.call(this),this.type="TetrahedronGeometry",this.parameters={radius:t,detail:e},this.fromBufferGeometry(new vo(t,e)),this.mergeVertices()}function vo(t,e){mo.call(this,[1,1,1,-1,-1,1,-1,1,-1,1,-1,-1],[2,1,0,0,3,2,1,3,0,2,3,1],t,e),this.type="TetrahedronBufferGeometry",this.parameters={radius:t,detail:e}}function yo(t,e){xn.call(this),this.type="OctahedronGeometry",this.parameters={radius:t,detail:e},this.fromBufferGeometry(new bo(t,e)),this.mergeVertices()}function bo(t,e){mo.call(this,[1,0,0,-1,0,0,0,1,0,0,-1,0,0,0,1,0,0,-1],[0,2,4,0,4,3,0,3,5,0,5,2,1,2,5,1,5,3,1,3,4,1,4,2],t,e),this.type="OctahedronBufferGeometry",this.parameters={radius:t,detail:e}}function wo(t,e){xn.call(this),this.type="IcosahedronGeometry",this.parameters={radius:t,detail:e},this.fromBufferGeometry(new xo(t,e)),this.mergeVertices()}function xo(t,e){var n=(1+Math.sqrt(5))/2,r=[-1,n,0,1,n,0,-1,-n,0,1,-n,0,0,-1,n,0,1,n,0,-1,-n,0,1,-n,n,0,-1,n,0,1,-n,0,-1,-n,0,1];mo.call(this,r,[0,11,5,0,5,1,0,1,7,0,7,10,0,10,11,1,5,9,5,11,4,11,10,2,10,7,6,7,1,8,3,9,4,3,4,2,3,2,6,3,6,8,3,8,9,4,9,5,2,4,11,6,2,10,8,6,7,9,8,1],t,e),this.type="IcosahedronBufferGeometry",this.parameters={radius:t,detail:e}}function _o(t,e){xn.call(this),this.type="DodecahedronGeometry",this.parameters={radius:t,detail:e},this.fromBufferGeometry(new So(t,e)),this.mergeVertices()}function So(t,e){var n=(1+Math.sqrt(5))/2,r=1/n,i=[-1,-1,-1,-1,-1,1,-1,1,-1,-1,1,1,1,-1,-1,1,-1,1,1,1,-1,1,1,1,0,-r,-n,0,-r,n,0,r,-n,0,r,n,-r,-n,0,-r,n,0,r,-n,0,r,n,0,-n,0,-r,n,0,-r,-n,0,r,n,0,r];mo.call(this,i,[3,11,7,3,7,15,3,15,13,7,19,17,7,17,6,7,6,15,17,4,8,17,8,10,17,10,6,8,0,16,8,16,2,8,2,10,0,12,1,0,1,18,0,18,16,6,10,2,6,2,13,6,13,15,2,16,18,2,18,3,2,3,13,18,1,9,18,9,11,18,11,3,4,14,12,4,12,0,4,0,8,11,9,5,11,5,19,11,19,7,19,5,14,19,14,4,19,4,17,1,12,14,1,14,5,1,5,9],t,e),this.type="DodecahedronBufferGeometry",this.parameters={radius:t,detail:e}}function Eo(t,e,n,r,i,o){xn.call(this),this.type="TubeGeometry",this.parameters={path:t,tubularSegments:e,radius:n,radialSegments:r,closed:i},void 0!==o&&console.warn("THREE.TubeGeometry: taper has been removed.");var a=new To(t,e,n,r,i);this.tangents=a.tangents,this.normals=a.normals,this.binormals=a.binormals,this.fromBufferGeometry(a),this.mergeVertices()}function To(t,e,n,r,i){Dn.call(this),this.type="TubeBufferGeometry",this.parameters={path:t,tubularSegments:e,radius:n,radialSegments:r,closed:i},e=e||64,n=n||1,r=r||8,i=i||!1;var o=t.computeFrenetFrames(e,i);this.tangents=o.tangents,this.normals=o.normals,this.binormals=o.binormals;var a,s,u=new Ve,c=new Ve,l=new ze,f=new Ve,h=[],p=[],d=[],m=[];function g(i){f=t.getPointAt(i/e,f);var a=o.normals[i],l=o.binormals[i];for(s=0;s<=r;s++){var d=s/r*Math.PI*2,m=Math.sin(d),g=-Math.cos(d);c.x=g*a.x+m*l.x,c.y=g*a.y+m*l.y,c.z=g*a.z+m*l.z,c.normalize(),p.push(c.x,c.y,c.z),u.x=f.x+n*c.x,u.y=f.y+n*c.y,u.z=f.z+n*c.z,h.push(u.x,u.y,u.z)}}!function(){for(a=0;ar.far||i.push({distance:y,point:t.clone(),uv:qn.getUV(t,a,s,u,c,l,f,new ze),face:null,object:this})}}}(),clone:function(){return new this.constructor(this.material).copy(this)},copy:function(t){return bn.prototype.copy.call(this,t),void 0!==t.center&&this.center.copy(t.center),this}}),$i.prototype=Object.assign(Object.create(bn.prototype),{constructor:$i,isLOD:!0,copy:function(t){bn.prototype.copy.call(this,t,!1);for(var e=t.levels,n=0,r=e.length;n1){t.setFromMatrixPosition(n.matrixWorld),e.setFromMatrixPosition(this.matrixWorld);var i=t.distanceTo(e);r[0].object.visible=!0;for(var o=1,a=r.length;o=r[o].distance;o++)r[o-1].object.visible=!1,r[o].object.visible=!0;for(;oc))p.applyMatrix4(this.matrixWorld),(E=r.ray.origin.distanceTo(p))r.far||i.push({distance:E,point:h.clone().applyMatrix4(this.matrixWorld),index:y,face:null,faceIndex:null,object:this})}else for(y=0,b=g.length/3-1;yc))p.applyMatrix4(this.matrixWorld),(E=r.ray.origin.distanceTo(p))r.far||i.push({distance:E,point:h.clone().applyMatrix4(this.matrixWorld),index:y,face:null,faceIndex:null,object:this})}}else if(a.isGeometry){var _=a.vertices,S=_.length;for(y=0;yc))p.applyMatrix4(this.matrixWorld),(E=r.ray.origin.distanceTo(p))r.far||i.push({distance:E,point:h.clone().applyMatrix4(this.matrixWorld),index:y,face:null,faceIndex:null,object:this})}}}}}(),clone:function(){return new this.constructor(this.geometry,this.material).copy(this)}}),no.prototype=Object.assign(Object.create(eo.prototype),{constructor:no,isLineSegments:!0,computeLineDistances:function(){var t=new Ve,e=new Ve;return function(){var n=this.geometry;if(n.isBufferGeometry)if(null===n.index){for(var r=n.attributes.position,i=[],o=0,a=r.count;or.far)return;i.push({distance:u,distanceToRay:Math.sqrt(a),point:h.clone(),index:n,face:null,object:o})}}}}(),clone:function(){return new this.constructor(this.geometry,this.material).copy(this)}}),ao.prototype=Object.assign(Object.create(Xe.prototype),{constructor:ao,isVideoTexture:!0,update:function(){var t=this.image;t.readyState>=t.HAVE_CURRENT_DATA&&(this.needsUpdate=!0)}}),so.prototype=Object.create(Xe.prototype),so.prototype.constructor=so,so.prototype.isCompressedTexture=!0,uo.prototype=Object.create(Xe.prototype),uo.prototype.constructor=uo,uo.prototype.isCanvasTexture=!0,co.prototype=Object.create(Xe.prototype),co.prototype.constructor=co,co.prototype.isDepthTexture=!0,lo.prototype=Object.create(Dn.prototype),lo.prototype.constructor=lo,fo.prototype=Object.create(xn.prototype),fo.prototype.constructor=fo,ho.prototype=Object.create(Dn.prototype),ho.prototype.constructor=ho,po.prototype=Object.create(xn.prototype),po.prototype.constructor=po,mo.prototype=Object.create(Dn.prototype),mo.prototype.constructor=mo,go.prototype=Object.create(xn.prototype),go.prototype.constructor=go,vo.prototype=Object.create(mo.prototype),vo.prototype.constructor=vo,yo.prototype=Object.create(xn.prototype),yo.prototype.constructor=yo,bo.prototype=Object.create(mo.prototype),bo.prototype.constructor=bo,wo.prototype=Object.create(xn.prototype),wo.prototype.constructor=wo,xo.prototype=Object.create(mo.prototype),xo.prototype.constructor=xo,_o.prototype=Object.create(xn.prototype),_o.prototype.constructor=_o,So.prototype=Object.create(mo.prototype),So.prototype.constructor=So,Eo.prototype=Object.create(xn.prototype),Eo.prototype.constructor=Eo,To.prototype=Object.create(Dn.prototype),To.prototype.constructor=To,To.prototype.toJSON=function(){var t=Dn.prototype.toJSON.call(this);return t.path=this.parameters.path.toJSON(),t},Mo.prototype=Object.create(xn.prototype),Mo.prototype.constructor=Mo,Ao.prototype=Object.create(Dn.prototype),Ao.prototype.constructor=Ao,Co.prototype=Object.create(xn.prototype),Co.prototype.constructor=Co,Po.prototype=Object.create(Dn.prototype),Po.prototype.constructor=Po;var Io=function(t,e,n){n=n||2;var r,i,o,a,s,u,c,l=e&&e.length,f=l?e[0]*n:t.length,h=Oo(t,0,f,n,!0),p=[];if(!h)return p;if(l&&(h=function(t,e,n,r){var i,o,a,s,u,c=[];for(i=0,o=e.length;i80*n){r=o=t[0],i=a=t[1];for(var d=n;do&&(o=s),u>a&&(a=u);c=0!==(c=Math.max(o-r,a-i))?1/c:0}return ko(h,p,n,r,i,c),p};function Oo(t,e,n,r,i){var o,a;if(i===function(t,e,n,r){for(var i=0,o=e,a=n-r;o0)for(o=e;o=e;o-=r)a=Ko(o,t[o],t[o+1],a);return a&&Ho(a,a.next)&&($o(a),a=a.next),a}function Ro(t,e){if(!t)return t;e||(e=t);var n,r=t;do{if(n=!1,r.steiner||!Ho(r,r.next)&&0!==Wo(r.prev,r,r.next))r=r.next;else{if($o(r),(r=e=r.prev)===r.next)break;n=!0}}while(n||r!==e);return e}function ko(t,e,n,r,i,o,a){if(t){!a&&o&&function(t,e,n,r){var i=t;do{null===i.z&&(i.z=jo(i.x,i.y,e,n,r)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next}while(i!==t);i.prevZ.nextZ=null,i.prevZ=null,function(t){var e,n,r,i,o,a,s,u,c=1;do{for(n=t,t=null,o=null,a=0;n;){for(a++,r=n,s=0,e=0;e0||u>0&&r;)0!==s&&(0===u||!r||n.z<=r.z)?(i=n,n=n.nextZ,s--):(i=r,r=r.nextZ,u--),o?o.nextZ=i:t=i,i.prevZ=o,o=i;n=r}o.nextZ=null,c*=2}while(a>1)}(i)}(t,r,i,o);for(var s,u,c=t;t.prev!==t.next;)if(s=t.prev,u=t.next,o?Do(t,r,i,o):Lo(t))e.push(s.i/n),e.push(t.i/n),e.push(u.i/n),$o(t),t=u.next,c=u.next;else if((t=u)===c){a?1===a?ko(t=No(t,e,n),e,n,r,i,o,2):2===a&&Bo(t,e,n,r,i,o):ko(Ro(t),e,n,r,i,o,1);break}}}function Lo(t){var e=t.prev,n=t,r=t.next;if(Wo(e,n,r)>=0)return!1;for(var i=t.next.next;i!==t.prev;){if(Go(e.x,e.y,n.x,n.y,r.x,r.y,i.x,i.y)&&Wo(i.prev,i,i.next)>=0)return!1;i=i.next}return!0}function Do(t,e,n,r){var i=t.prev,o=t,a=t.next;if(Wo(i,o,a)>=0)return!1;for(var s=i.xo.x?i.x>a.x?i.x:a.x:o.x>a.x?o.x:a.x,l=i.y>o.y?i.y>a.y?i.y:a.y:o.y>a.y?o.y:a.y,f=jo(s,u,e,n,r),h=jo(c,l,e,n,r),p=t.nextZ;p&&p.z<=h;){if(p!==t.prev&&p!==t.next&&Go(i.x,i.y,o.x,o.y,a.x,a.y,p.x,p.y)&&Wo(p.prev,p,p.next)>=0)return!1;p=p.nextZ}for(p=t.prevZ;p&&p.z>=f;){if(p!==t.prev&&p!==t.next&&Go(i.x,i.y,o.x,o.y,a.x,a.y,p.x,p.y)&&Wo(p.prev,p,p.next)>=0)return!1;p=p.prevZ}return!0}function No(t,e,n){var r=t;do{var i=r.prev,o=r.next.next;!Ho(i,o)&&qo(i,r,r.next,o)&&Xo(i,o)&&Xo(o,i)&&(e.push(i.i/n),e.push(r.i/n),e.push(o.i/n),$o(r),$o(r.next),r=t=o),r=r.next}while(r!==t);return r}function Bo(t,e,n,r,i,o){var a=t;do{for(var s=a.next.next;s!==a.prev;){if(a.i!==s.i&&Vo(a,s)){var u=Yo(a,s);return a=Ro(a,a.next),u=Ro(u,u.next),ko(a,e,n,r,i,o),void ko(u,e,n,r,i,o)}s=s.next}a=a.next}while(a!==t)}function Fo(t,e){return t.x-e.x}function Uo(t,e){if(e=function(t,e){var n,r=e,i=t.x,o=t.y,a=-1/0;do{if(o<=r.y&&o>=r.next.y&&r.next.y!==r.y){var s=r.x+(o-r.y)*(r.next.x-r.x)/(r.next.y-r.y);if(s<=i&&s>a){if(a=s,s===i){if(o===r.y)return r;if(o===r.next.y)return r.next}n=r.x=r.x&&r.x>=l&&i!==r.x&&Go(on.x)&&Xo(r,t)&&(n=r,h=u),r=r.next;return n}(t,e)){var n=Yo(e,t);Ro(n,n.next)}}function jo(t,e,n,r,i){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-n)*i)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-r)*i)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function zo(t){var e=t,n=t;do{e.x=0&&(t-a)*(r-s)-(n-a)*(e-s)>=0&&(n-a)*(o-s)-(i-a)*(r-s)>=0}function Vo(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!function(t,e){var n=t;do{if(n.i!==t.i&&n.next.i!==t.i&&n.i!==e.i&&n.next.i!==e.i&&qo(n,n.next,t,e))return!0;n=n.next}while(n!==t);return!1}(t,e)&&Xo(t,e)&&Xo(e,t)&&function(t,e){var n=t,r=!1,i=(t.x+e.x)/2,o=(t.y+e.y)/2;do{n.y>o!==n.next.y>o&&n.next.y!==n.y&&i<(n.next.x-n.x)*(o-n.y)/(n.next.y-n.y)+n.x&&(r=!r),n=n.next}while(n!==t);return r}(t,e)}function Wo(t,e,n){return(e.y-t.y)*(n.x-e.x)-(e.x-t.x)*(n.y-e.y)}function Ho(t,e){return t.x===e.x&&t.y===e.y}function qo(t,e,n,r){return!!(Ho(t,e)&&Ho(n,r)||Ho(t,r)&&Ho(n,e))||Wo(t,e,n)>0!==Wo(t,e,r)>0&&Wo(n,r,t)>0!==Wo(n,r,e)>0}function Xo(t,e){return Wo(t.prev,t,t.next)<0?Wo(t,e,t.next)>=0&&Wo(t,t.prev,e)>=0:Wo(t,e,t.prev)<0||Wo(t,t.next,e)<0}function Yo(t,e){var n=new Jo(t.i,t.x,t.y),r=new Jo(e.i,e.x,e.y),i=t.next,o=e.prev;return t.next=e,e.prev=t,n.next=i,i.prev=n,r.next=n,n.prev=r,o.next=r,r.prev=o,r}function Ko(t,e,n,r){var i=new Jo(t,e,n);return r?(i.next=r.next,i.prev=r,r.next.prev=i,r.next=i):(i.prev=i,i.next=i),i}function $o(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function Jo(t,e,n){this.i=t,this.x=e,this.y=n,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}var Zo={area:function(t){for(var e=t.length,n=0,r=e-1,i=0;i2&&t[e-1].equals(t[0])&&t.pop()}function ta(t,e){for(var n=0;nNumber.EPSILON){var h=Math.sqrt(l),p=Math.sqrt(u*u+c*c),d=e.x-s/h,m=e.y+a/h,g=((n.x-c/p-d)*c-(n.y+u/p-m)*u)/(a*c-s*u),v=(r=d+a*g-t.x)*r+(i=m+s*g-t.y)*i;if(v<=2)return new ze(r,i);o=Math.sqrt(v/2)}else{var y=!1;a>Number.EPSILON?u>Number.EPSILON&&(y=!0):a<-Number.EPSILON?u<-Number.EPSILON&&(y=!0):Math.sign(s)===Math.sign(c)&&(y=!0),y?(r=-s,i=a,o=Math.sqrt(l)):(r=a,i=s,o=Math.sqrt(l/2))}return new ze(r/o,i/o)}for(var j=[],z=0,G=P.length,V=G-1,W=z+1;z=0;O--){for(k=O/p,L=l*Math.cos(k*Math.PI/2),R=f*Math.sin(k*Math.PI/2)+h,z=0,G=P.length;z=0;){n=z,(r=z-1)<0&&(r=t.length-1);var i=0,o=s+2*p;for(i=0;i0)&&d.push(_,S,T),(u!==n-1||c0&&v(!0),e>0&&v(!1)),this.setIndex(c),this.addAttribute("position",new In(l,3)),this.addAttribute("normal",new In(f,3)),this.addAttribute("uv",new In(h,2))}function ba(t,e,n,r,i,o,a){va.call(this,0,t,e,n,r,i,o,a),this.type="ConeGeometry",this.parameters={radius:t,height:e,radialSegments:n,heightSegments:r,openEnded:i,thetaStart:o,thetaLength:a}}function wa(t,e,n,r,i,o,a){ya.call(this,0,t,e,n,r,i,o,a),this.type="ConeBufferGeometry",this.parameters={radius:t,height:e,radialSegments:n,heightSegments:r,openEnded:i,thetaStart:o,thetaLength:a}}function xa(t,e,n,r){xn.call(this),this.type="CircleGeometry",this.parameters={radius:t,segments:e,thetaStart:n,thetaLength:r},this.fromBufferGeometry(new _a(t,e,n,r)),this.mergeVertices()}function _a(t,e,n,r){Dn.call(this),this.type="CircleBufferGeometry",this.parameters={radius:t,segments:e,thetaStart:n,thetaLength:r},t=t||1,e=void 0!==e?Math.max(3,e):8,n=void 0!==n?n:0,r=void 0!==r?r:2*Math.PI;var i,o,a=[],s=[],u=[],c=[],l=new Ve,f=new ze;for(s.push(0,0,0),u.push(0,0,1),c.push(.5,.5),o=0,i=3;o<=e;o++,i+=3){var h=n+o/e*r;l.x=t*Math.cos(h),l.y=t*Math.sin(h),s.push(l.x,l.y,l.z),u.push(0,0,1),f.x=(s[i]/t+1)/2,f.y=(s[i+1]/t+1)/2,c.push(f.x,f.y)}for(i=1;i<=e;i++)a.push(i,i+1,0);this.setIndex(a),this.addAttribute("position",new In(s,3)),this.addAttribute("normal",new In(u,3)),this.addAttribute("uv",new In(c,2))}oa.prototype=Object.create(xn.prototype),oa.prototype.constructor=oa,aa.prototype=Object.create(na.prototype),aa.prototype.constructor=aa,sa.prototype=Object.create(xn.prototype),sa.prototype.constructor=sa,ua.prototype=Object.create(Dn.prototype),ua.prototype.constructor=ua,ca.prototype=Object.create(xn.prototype),ca.prototype.constructor=ca,la.prototype=Object.create(Dn.prototype),la.prototype.constructor=la,fa.prototype=Object.create(xn.prototype),fa.prototype.constructor=fa,ha.prototype=Object.create(Dn.prototype),ha.prototype.constructor=ha,pa.prototype=Object.create(xn.prototype),pa.prototype.constructor=pa,pa.prototype.toJSON=function(){var t=xn.prototype.toJSON.call(this);return ma(this.parameters.shapes,t)},da.prototype=Object.create(Dn.prototype),da.prototype.constructor=da,da.prototype.toJSON=function(){var t=Dn.prototype.toJSON.call(this);return ma(this.parameters.shapes,t)},ga.prototype=Object.create(Dn.prototype),ga.prototype.constructor=ga,va.prototype=Object.create(xn.prototype),va.prototype.constructor=va,ya.prototype=Object.create(Dn.prototype),ya.prototype.constructor=ya,ba.prototype=Object.create(va.prototype),ba.prototype.constructor=ba,wa.prototype=Object.create(ya.prototype),wa.prototype.constructor=wa,xa.prototype=Object.create(xn.prototype),xa.prototype.constructor=xa,_a.prototype=Object.create(Dn.prototype),_a.prototype.constructor=_a;var Sa=Object.freeze({WireframeGeometry:lo,ParametricGeometry:fo,ParametricBufferGeometry:ho,TetrahedronGeometry:go,TetrahedronBufferGeometry:vo,OctahedronGeometry:yo,OctahedronBufferGeometry:bo,IcosahedronGeometry:wo,IcosahedronBufferGeometry:xo,DodecahedronGeometry:_o,DodecahedronBufferGeometry:So,PolyhedronGeometry:po,PolyhedronBufferGeometry:mo,TubeGeometry:Eo,TubeBufferGeometry:To,TorusKnotGeometry:Mo,TorusKnotBufferGeometry:Ao,TorusGeometry:Co,TorusBufferGeometry:Po,TextGeometry:oa,TextBufferGeometry:aa,SphereGeometry:sa,SphereBufferGeometry:ua,RingGeometry:ca,RingBufferGeometry:la,PlaneGeometry:Fn,PlaneBufferGeometry:Un,LatheGeometry:fa,LatheBufferGeometry:ha,ShapeGeometry:pa,ShapeBufferGeometry:da,ExtrudeGeometry:ea,ExtrudeBufferGeometry:na,EdgesGeometry:ga,ConeGeometry:ba,ConeBufferGeometry:wa,CylinderGeometry:va,CylinderBufferGeometry:ya,CircleGeometry:xa,CircleBufferGeometry:_a,BoxGeometry:Nn,BoxBufferGeometry:Bn});function Ea(t){zn.call(this),this.type="ShadowMaterial",this.color=new ln(0),this.transparent=!0,this.setValues(t)}function Ta(t){Wn.call(this,t),this.type="RawShaderMaterial"}function Ma(t){zn.call(this),this.defines={STANDARD:""},this.type="MeshStandardMaterial",this.color=new ln(16777215),this.roughness=.5,this.metalness=.5,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new ln(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Fe,this.normalScale=new ze(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.roughnessMap=null,this.metalnessMap=null,this.alphaMap=null,this.envMap=null,this.envMapIntensity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.skinning=!1,this.morphTargets=!1,this.morphNormals=!1,this.setValues(t)}function Aa(t){Ma.call(this),this.defines={PHYSICAL:""},this.type="MeshPhysicalMaterial",this.reflectivity=.5,this.clearCoat=0,this.clearCoatRoughness=0,this.setValues(t)}function Ca(t){zn.call(this),this.type="MeshPhongMaterial",this.color=new ln(16777215),this.specular=new ln(1118481),this.shininess=30,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new ln(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Fe,this.normalScale=new ze(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=tt,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.skinning=!1,this.morphTargets=!1,this.morphNormals=!1,this.setValues(t)}function Pa(t){Ca.call(this),this.defines={TOON:""},this.type="MeshToonMaterial",this.gradientMap=null,this.setValues(t)}function Ia(t){zn.call(this),this.type="MeshNormalMaterial",this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Fe,this.normalScale=new ze(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.fog=!1,this.lights=!1,this.skinning=!1,this.morphTargets=!1,this.morphNormals=!1,this.setValues(t)}function Oa(t){zn.call(this),this.type="MeshLambertMaterial",this.color=new ln(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new ln(0),this.emissiveIntensity=1,this.emissiveMap=null,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=tt,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.skinning=!1,this.morphTargets=!1,this.morphNormals=!1,this.setValues(t)}function Ra(t){zn.call(this),this.defines={MATCAP:""},this.type="MeshMatcapMaterial",this.color=new ln(16777215),this.matcap=null,this.map=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=Fe,this.normalScale=new ze(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.skinning=!1,this.morphTargets=!1,this.morphNormals=!1,this.lights=!1,this.setValues(t)}function ka(t){to.call(this),this.type="LineDashedMaterial",this.scale=1,this.dashSize=3,this.gapSize=1,this.setValues(t)}Ea.prototype=Object.create(zn.prototype),Ea.prototype.constructor=Ea,Ea.prototype.isShadowMaterial=!0,Ea.prototype.copy=function(t){return zn.prototype.copy.call(this,t),this.color.copy(t.color),this},Ta.prototype=Object.create(Wn.prototype),Ta.prototype.constructor=Ta,Ta.prototype.isRawShaderMaterial=!0,Ma.prototype=Object.create(zn.prototype),Ma.prototype.constructor=Ma,Ma.prototype.isMeshStandardMaterial=!0,Ma.prototype.copy=function(t){return zn.prototype.copy.call(this,t),this.defines={STANDARD:""},this.color.copy(t.color),this.roughness=t.roughness,this.metalness=t.metalness,this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.emissive.copy(t.emissive),this.emissiveMap=t.emissiveMap,this.emissiveIntensity=t.emissiveIntensity,this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.roughnessMap=t.roughnessMap,this.metalnessMap=t.metalnessMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.envMapIntensity=t.envMapIntensity,this.refractionRatio=t.refractionRatio,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.morphNormals=t.morphNormals,this},Aa.prototype=Object.create(Ma.prototype),Aa.prototype.constructor=Aa,Aa.prototype.isMeshPhysicalMaterial=!0,Aa.prototype.copy=function(t){return Ma.prototype.copy.call(this,t),this.defines={PHYSICAL:""},this.reflectivity=t.reflectivity,this.clearCoat=t.clearCoat,this.clearCoatRoughness=t.clearCoatRoughness,this},Ca.prototype=Object.create(zn.prototype),Ca.prototype.constructor=Ca,Ca.prototype.isMeshPhongMaterial=!0,Ca.prototype.copy=function(t){return zn.prototype.copy.call(this,t),this.color.copy(t.color),this.specular.copy(t.specular),this.shininess=t.shininess,this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.emissive.copy(t.emissive),this.emissiveMap=t.emissiveMap,this.emissiveIntensity=t.emissiveIntensity,this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.specularMap=t.specularMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.combine=t.combine,this.reflectivity=t.reflectivity,this.refractionRatio=t.refractionRatio,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.morphNormals=t.morphNormals,this},Pa.prototype=Object.create(Ca.prototype),Pa.prototype.constructor=Pa,Pa.prototype.isMeshToonMaterial=!0,Pa.prototype.copy=function(t){return Ca.prototype.copy.call(this,t),this.gradientMap=t.gradientMap,this},Ia.prototype=Object.create(zn.prototype),Ia.prototype.constructor=Ia,Ia.prototype.isMeshNormalMaterial=!0,Ia.prototype.copy=function(t){return zn.prototype.copy.call(this,t),this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.morphNormals=t.morphNormals,this},Oa.prototype=Object.create(zn.prototype),Oa.prototype.constructor=Oa,Oa.prototype.isMeshLambertMaterial=!0,Oa.prototype.copy=function(t){return zn.prototype.copy.call(this,t),this.color.copy(t.color),this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.emissive.copy(t.emissive),this.emissiveMap=t.emissiveMap,this.emissiveIntensity=t.emissiveIntensity,this.specularMap=t.specularMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.combine=t.combine,this.reflectivity=t.reflectivity,this.refractionRatio=t.refractionRatio,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.morphNormals=t.morphNormals,this},Ra.prototype=Object.create(zn.prototype),Ra.prototype.constructor=Ra,Ra.prototype.isMeshMatcapMaterial=!0,Ra.prototype.copy=function(t){return zn.prototype.copy.call(this,t),this.defines={MATCAP:""},this.color.copy(t.color),this.matcap=t.matcap,this.map=t.map,this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.alphaMap=t.alphaMap,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.morphNormals=t.morphNormals,this},ka.prototype=Object.create(to.prototype),ka.prototype.constructor=ka,ka.prototype.isLineDashedMaterial=!0,ka.prototype.copy=function(t){return to.prototype.copy.call(this,t),this.scale=t.scale,this.dashSize=t.dashSize,this.gapSize=t.gapSize,this};var La=Object.freeze({ShadowMaterial:Ea,SpriteMaterial:Yi,RawShaderMaterial:Ta,ShaderMaterial:Wn,PointsMaterial:io,MeshPhysicalMaterial:Aa,MeshStandardMaterial:Ma,MeshPhongMaterial:Ca,MeshToonMaterial:Pa,MeshNormalMaterial:Ia,MeshLambertMaterial:Oa,MeshDepthMaterial:Mi,MeshDistanceMaterial:Ai,MeshBasicMaterial:Xn,MeshMatcapMaterial:Ra,LineDashedMaterial:ka,LineBasicMaterial:to,Material:zn}),Da={arraySlice:function(t,e,n){return Da.isTypedArray(t)?new t.constructor(t.subarray(e,void 0!==n?n:t.length)):t.slice(e,n)},convertArray:function(t,e,n){return!t||!n&&t.constructor===e?t:"number"===typeof e.BYTES_PER_ELEMENT?new e(t):Array.prototype.slice.call(t)},isTypedArray:function(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)},getKeyframeOrder:function(t){for(var e=t.length,n=new Array(e),r=0;r!==e;++r)n[r]=r;return n.sort(function(e,n){return t[e]-t[n]}),n},sortedArray:function(t,e,n){for(var r=t.length,i=new t.constructor(r),o=0,a=0;a!==r;++o)for(var s=n[o]*e,u=0;u!==e;++u)i[a++]=t[s+u];return i},flattenJSON:function(t,e,n,r){for(var i=1,o=t[0];void 0!==o&&void 0===o[r];)o=t[i++];if(void 0!==o){var a=o[r];if(void 0!==a)if(Array.isArray(a))do{void 0!==(a=o[r])&&(e.push(o.time),n.push.apply(n,a)),o=t[i++]}while(void 0!==o);else if(void 0!==a.toArray)do{void 0!==(a=o[r])&&(e.push(o.time),a.toArray(n,n.length)),o=t[i++]}while(void 0!==o);else do{void 0!==(a=o[r])&&(e.push(o.time),n.push(a)),o=t[i++]}while(void 0!==o)}}};function Na(t,e,n,r){this.parameterPositions=t,this._cachedIndex=0,this.resultBuffer=void 0!==r?r:new e.constructor(n),this.sampleValues=e,this.valueSize=n}function Ba(t,e,n,r){Na.call(this,t,e,n,r),this._weightPrev=-0,this._offsetPrev=-0,this._weightNext=-0,this._offsetNext=-0}function Fa(t,e,n,r){Na.call(this,t,e,n,r)}function Ua(t,e,n,r){Na.call(this,t,e,n,r)}function ja(t,e,n,r){if(void 0===t)throw new Error("THREE.KeyframeTrack: track name is undefined");if(void 0===e||0===e.length)throw new Error("THREE.KeyframeTrack: no keyframes in track named "+t);this.name=t,this.times=Da.convertArray(e,this.TimeBufferType),this.values=Da.convertArray(n,this.ValueBufferType),this.setInterpolation(r||this.DefaultInterpolation)}function za(t,e,n){ja.call(this,t,e,n)}function Ga(t,e,n,r){ja.call(this,t,e,n,r)}function Va(t,e,n,r){ja.call(this,t,e,n,r)}function Wa(t,e,n,r){Na.call(this,t,e,n,r)}function Ha(t,e,n,r){ja.call(this,t,e,n,r)}function qa(t,e,n,r){ja.call(this,t,e,n,r)}function Xa(t,e,n,r){ja.call(this,t,e,n,r)}function Ya(t,e,n){this.name=t,this.tracks=n,this.duration=void 0!==e?e:-1,this.uuid=je.generateUUID(),this.duration<0&&this.resetDuration()}function Ka(t){if(void 0===t.type)throw new Error("THREE.KeyframeTrack: track type undefined, can not parse");var e=function(t){switch(t.toLowerCase()){case"scalar":case"double":case"float":case"number":case"integer":return Va;case"vector":case"vector2":case"vector3":case"vector4":return Xa;case"color":return Ga;case"quaternion":return Ha;case"bool":case"boolean":return za;case"string":return qa}throw new Error("THREE.KeyframeTrack: Unsupported typeName: "+t)}(t.type);if(void 0===t.times){var n=[],r=[];Da.flattenJSON(t.keys,n,r,"value"),t.times=n,t.values=r}return void 0!==e.parse?e.parse(t):new e(t.name,t.times,t.values,t.interpolation)}Object.assign(Na.prototype,{evaluate:function(t){var e=this.parameterPositions,n=this._cachedIndex,r=e[n],i=e[n-1];t:{e:{var o;n:{r:if(!(t=i)break t;var s=e[1];t=(i=e[--n-1]))break e}o=n,n=0}for(;n>>1;te;)--o;if(++o,0!==i||o!==r){i>=o&&(i=(o=Math.max(o,1))-1);var a=this.getValueSize();this.times=Da.arraySlice(n,i,o),this.values=Da.arraySlice(this.values,i*a,o*a)}return this},validate:function(){var t=!0,e=this.getValueSize();e-Math.floor(e)!==0&&(console.error("THREE.KeyframeTrack: Invalid value size in track.",this),t=!1);var n=this.times,r=this.values,i=n.length;0===i&&(console.error("THREE.KeyframeTrack: Track is empty.",this),t=!1);for(var o=null,a=0;a!==i;a++){var s=n[a];if("number"===typeof s&&isNaN(s)){console.error("THREE.KeyframeTrack: Time is not a valid number.",this,a,s),t=!1;break}if(null!==o&&o>s){console.error("THREE.KeyframeTrack: Out of order keys.",this,a,s,o),t=!1;break}o=s}if(void 0!==r&&Da.isTypedArray(r)){a=0;for(var u=r.length;a!==u;++a){var c=r[a];if(isNaN(c)){console.error("THREE.KeyframeTrack: Value is not a valid number.",this,a,c),t=!1;break}}}return t},optimize:function(){for(var t=this.times,e=this.values,n=this.getValueSize(),r=this.getInterpolation()===xe,i=1,o=t.length-1,a=1;a0){t[i]=t[o];for(d=o*n,m=i*n,h=0;h!==n;++h)e[m+h]=e[d+h];++i}return i!==t.length&&(this.times=Da.arraySlice(t,0,i),this.values=Da.arraySlice(e,0,i*n)),this},clone:function(){var t=Da.arraySlice(this.times,0),e=Da.arraySlice(this.values,0),n=new(0,this.constructor)(this.name,t,e);return n.createInterpolant=this.createInterpolant,n}}),za.prototype=Object.assign(Object.create(ja.prototype),{constructor:za,ValueTypeName:"bool",ValueBufferType:Array,DefaultInterpolation:be,InterpolantFactoryMethodLinear:void 0,InterpolantFactoryMethodSmooth:void 0}),Ga.prototype=Object.assign(Object.create(ja.prototype),{constructor:Ga,ValueTypeName:"color"}),Va.prototype=Object.assign(Object.create(ja.prototype),{constructor:Va,ValueTypeName:"number"}),Wa.prototype=Object.assign(Object.create(Na.prototype),{constructor:Wa,interpolate_:function(t,e,n,r){for(var i=this.resultBuffer,o=this.sampleValues,a=this.valueSize,s=t*a,u=(n-e)/(r-e),c=s+a;s!==c;s+=4)Ge.slerpFlat(i,0,o,s-a,o,s,u);return i}}),Ha.prototype=Object.assign(Object.create(ja.prototype),{constructor:Ha,ValueTypeName:"quaternion",DefaultInterpolation:we,InterpolantFactoryMethodLinear:function(t){return new Wa(this.times,this.values,this.getValueSize(),t)},InterpolantFactoryMethodSmooth:void 0}),qa.prototype=Object.assign(Object.create(ja.prototype),{constructor:qa,ValueTypeName:"string",ValueBufferType:Array,DefaultInterpolation:be,InterpolantFactoryMethodLinear:void 0,InterpolantFactoryMethodSmooth:void 0}),Xa.prototype=Object.assign(Object.create(ja.prototype),{constructor:Xa,ValueTypeName:"vector"}),Object.assign(Ya,{parse:function(t){for(var e=[],n=t.tracks,r=1/(t.fps||1),i=0,o=n.length;i!==o;++i)e.push(Ka(n[i]).scale(r));return new Ya(t.name,t.duration,e)},toJSON:function(t){for(var e=[],n=t.tracks,r={name:t.name,duration:t.duration,tracks:e,uuid:t.uuid},i=0,o=n.length;i!==o;++i)e.push(ja.toJSON(n[i]));return r},CreateFromMorphTargetSequence:function(t,e,n,r){for(var i=e.length,o=[],a=0;a1){var c=r[f=u[1]];c||(r[f]=c=[]),c.push(s)}}var l=[];for(var f in r)l.push(Ya.CreateFromMorphTargetSequence(f,r[f],e,n));return l},parseAnimation:function(t,e){if(!t)return console.error("THREE.AnimationClip: No animation in JSONLoader data."),null;for(var n=function(t,e,n,r,i){if(0!==n.length){var o=[],a=[];Da.flattenJSON(n,o,a,r),0!==o.length&&i.push(new t(e,o,a))}},r=[],i=t.name||"default",o=t.length||-1,a=t.fps||30,s=t.hierarchy||[],u=0;u0||0===t.search(/^data\:image\/jpeg/);i.format=r?Ut:jt,i.needsUpdate=!0,void 0!==e&&e(i)},n,r),i},setCrossOrigin:function(t){return this.crossOrigin=t,this},setPath:function(t){return this.path=t,this}}),Object.assign(ss.prototype,{getPoint:function(){return console.warn("THREE.Curve: .getPoint() not implemented."),null},getPointAt:function(t,e){var n=this.getUtoTmapping(t);return this.getPoint(n,e)},getPoints:function(t){void 0===t&&(t=5);for(var e=[],n=0;n<=t;n++)e.push(this.getPoint(n/t));return e},getSpacedPoints:function(t){void 0===t&&(t=5);for(var e=[],n=0;n<=t;n++)e.push(this.getPointAt(n/t));return e},getLength:function(){var t=this.getLengths();return t[t.length-1]},getLengths:function(t){if(void 0===t&&(t=this.arcLengthDivisions),this.cacheArcLengths&&this.cacheArcLengths.length===t+1&&!this.needsUpdate)return this.cacheArcLengths;this.needsUpdate=!1;var e,n,r=[],i=this.getPoint(0),o=0;for(r.push(0),n=1;n<=t;n++)o+=(e=this.getPoint(n/t)).distanceTo(i),r.push(o),i=e;return this.cacheArcLengths=r,r},updateArcLengths:function(){this.needsUpdate=!0,this.getLengths()},getUtoTmapping:function(t,e){var n,r=this.getLengths(),i=0,o=r.length;n=e||t*r[o-1];for(var a,s=0,u=o-1;s<=u;)if((a=r[i=Math.floor(s+(u-s)/2)]-n)<0)s=i+1;else{if(!(a>0)){u=i;break}u=i-1}if(r[i=u]===n)return i/(o-1);var c=r[i];return(i+(n-c)/(r[i+1]-c))/(o-1)},getTangent:function(t){var e=t-1e-4,n=t+1e-4;e<0&&(e=0),n>1&&(n=1);var r=this.getPoint(e);return this.getPoint(n).clone().sub(r).normalize()},getTangentAt:function(t){var e=this.getUtoTmapping(t);return this.getTangent(e)},computeFrenetFrames:function(t,e){var n,r,i,o=new Ve,a=[],s=[],u=[],c=new Ve,l=new rn;for(n=0;n<=t;n++)r=n/t,a[n]=this.getTangentAt(r),a[n].normalize();s[0]=new Ve,u[0]=new Ve;var f=Number.MAX_VALUE,h=Math.abs(a[0].x),p=Math.abs(a[0].y),d=Math.abs(a[0].z);for(h<=f&&(f=h,o.set(1,0,0)),p<=f&&(f=p,o.set(0,1,0)),d<=f&&o.set(0,0,1),c.crossVectors(a[0],o).normalize(),s[0].crossVectors(a[0],c),u[0].crossVectors(a[0],s[0]),n=1;n<=t;n++)s[n]=s[n-1].clone(),u[n]=u[n-1].clone(),c.crossVectors(a[n-1],a[n]),c.length()>Number.EPSILON&&(c.normalize(),i=Math.acos(je.clamp(a[n-1].dot(a[n]),-1,1)),s[n].applyMatrix4(l.makeRotationAxis(c,i))),u[n].crossVectors(a[n],s[n]);if(!0===e)for(i=Math.acos(je.clamp(s[0].dot(s[t]),-1,1)),i/=t,a[0].dot(c.crossVectors(s[0],s[t]))>0&&(i=-i),n=1;n<=t;n++)s[n].applyMatrix4(l.makeRotationAxis(a[n],i*n)),u[n].crossVectors(a[n],s[n]);return{tangents:a,normals:s,binormals:u}},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.arcLengthDivisions=t.arcLengthDivisions,this},toJSON:function(){var t={metadata:{version:4.5,type:"Curve",generator:"Curve.toJSON"}};return t.arcLengthDivisions=this.arcLengthDivisions,t.type=this.type,t},fromJSON:function(t){return this.arcLengthDivisions=t.arcLengthDivisions,this}}),us.prototype=Object.create(ss.prototype),us.prototype.constructor=us,us.prototype.isEllipseCurve=!0,us.prototype.getPoint=function(t,e){for(var n=e||new ze,r=2*Math.PI,i=this.aEndAngle-this.aStartAngle,o=Math.abs(i)r;)i-=r;i0?0:(Math.floor(Math.abs(l)/u)+1)*u:0===f&&l===u-1&&(l=u-2,f=1),this.closed||l>0?n=s[(l-1)%u]:(fs.subVectors(s[0],s[1]).add(s[0]),n=fs),r=s[l%u],i=s[(l+1)%u],this.closed||l+2r.length-2?r.length-1:o+1],l=r[o>r.length-3?r.length-1:o+2];return n.set(gs(a,s.x,u.x,c.x,l.x),gs(a,s.y,u.y,c.y,l.y)),n},Ts.prototype.copy=function(t){ss.prototype.copy.call(this,t),this.points=[];for(var e=0,n=t.points.length;e=e){var i=n[r]-e,o=this.curves[r],a=o.getLength(),s=0===a?0:1-i/a;return o.getPointAt(s)}r++}return null},getLength:function(){var t=this.getCurveLengths();return t[t.length-1]},updateArcLengths:function(){this.needsUpdate=!0,this.cacheLengths=null,this.getCurveLengths()},getCurveLengths:function(){if(this.cacheLengths&&this.cacheLengths.length===this.curves.length)return this.cacheLengths;for(var t=[],e=0,n=0,r=this.curves.length;n1&&!n[n.length-1].equals(n[0])&&n.push(n[0]),n},copy:function(t){ss.prototype.copy.call(this,t),this.curves=[];for(var e=0,n=t.curves.length;e0){var c=u.getPoint(0);c.equals(this.currentPoint)||this.lineTo(c.x,c.y)}this.curves.push(u);var l=u.getPoint(1);this.currentPoint.copy(l)},copy:function(t){return As.prototype.copy.call(this,t),this.currentPoint.copy(t.currentPoint),this},toJSON:function(){var t=As.prototype.toJSON.call(this);return t.currentPoint=this.currentPoint.toArray(),t},fromJSON:function(t){return As.prototype.fromJSON.call(this,t),this.currentPoint.fromArray(t.currentPoint),this}}),Ps.prototype=Object.assign(Object.create(Cs.prototype),{constructor:Ps,getPointsHoles:function(t){for(var e=[],n=0,r=this.holes.length;n0){var o=new is(new Ja(e));o.setCrossOrigin(this.crossOrigin);for(var a=0,s=t.length;a0?new Ji(a,s):new Yn(a,s),void 0!==t.drawMode&&r.setDrawMode(t.drawMode);break;case"LOD":r=new $i;break;case"Line":r=new eo(i(t.geometry),o(t.material),t.mode);break;case"LineLoop":r=new ro(i(t.geometry),o(t.material));break;case"LineSegments":r=new no(i(t.geometry),o(t.material));break;case"PointCloud":case"Points":r=new oo(i(t.geometry),o(t.material));break;case"Sprite":r=new Ki(o(t.material));break;case"Group":r=new Ri;break;default:r=new bn}if(r.uuid=t.uuid,void 0!==t.name&&(r.name=t.name),void 0!==t.matrix?(r.matrix.fromArray(t.matrix),void 0!==t.matrixAutoUpdate&&(r.matrixAutoUpdate=t.matrixAutoUpdate),r.matrixAutoUpdate&&r.matrix.decompose(r.position,r.quaternion,r.scale)):(void 0!==t.position&&r.position.fromArray(t.position),void 0!==t.rotation&&r.rotation.fromArray(t.rotation),void 0!==t.quaternion&&r.quaternion.fromArray(t.quaternion),void 0!==t.scale&&r.scale.fromArray(t.scale)),void 0!==t.castShadow&&(r.castShadow=t.castShadow),void 0!==t.receiveShadow&&(r.receiveShadow=t.receiveShadow),t.shadow&&(void 0!==t.shadow.bias&&(r.shadow.bias=t.shadow.bias),void 0!==t.shadow.radius&&(r.shadow.radius=t.shadow.radius),void 0!==t.shadow.mapSize&&r.shadow.mapSize.fromArray(t.shadow.mapSize),void 0!==t.shadow.camera&&(r.shadow.camera=this.parseObject(t.shadow.camera))),void 0!==t.visible&&(r.visible=t.visible),void 0!==t.frustumCulled&&(r.frustumCulled=t.frustumCulled),void 0!==t.renderOrder&&(r.renderOrder=t.renderOrder),void 0!==t.userData&&(r.userData=t.userData),void 0!==t.layers&&(r.layers.mask=t.layers),void 0!==t.children)for(var u=t.children,c=0;cNumber.EPSILON){if(c<0&&(a=e[o],u=-u,s=e[i],c=-c),t.ys.y)continue;if(t.y===a.y){if(t.x===a.x)return!0}else{var l=c*(t.x-a.x)-u*(t.y-a.y);if(0===l)return!0;if(l<0)continue;r=!r}}else{if(t.y!==a.y)continue;if(s.x<=t.x&&t.x<=a.x||a.x<=t.x&&t.x<=s.x)return!0}}return r}var i=Zo.isClockWise,o=this.subPaths;if(0===o.length)return[];if(!0===e)return n(o);var a,s,u,c=[];if(1===o.length)return s=o[0],(u=new Ps).curves=s.curves,c.push(u),c;var l=!i(o[0].getPoints());l=t?!l:l;var f,h,p=[],d=[],m=[],g=0;d[g]=void 0,m[g]=[];for(var v=0,y=o.length;v1){for(var b=!1,w=[],x=0,_=d.length;x<_;x++)p[x]=[];for(x=0,_=d.length;x<_;x++)for(var S=m[x],E=0;E0&&(b||(m=p))}v=0;for(var C=d.length;v0){this.source.connect(this.filters[0]);for(var t=1,e=this.filters.length;t0){this.source.disconnect(this.filters[0]);for(var t=1,e=this.filters.length;t=.5)for(var o=0;o!==i;++o)t[e+o]=t[n+o]},_slerp:function(t,e,n,r){Ge.slerpFlat(t,e,t,e,t,n,r)},_lerp:function(t,e,n,r,i){for(var o=1-r,a=0;a!==i;++a){var s=e+a;t[s]=t[s]*o+t[n+a]*r}}});var wu,xu;function _u(t,e,n){var r=n||Su.parseTrackName(e);this._targetGroup=t,this._bindings=t.subscribe_(e,r)}function Su(t,e,n){this.path=e,this.parsedPath=n||Su.parseTrackName(e),this.node=Su.findNode(t,this.parsedPath.nodeName)||t,this.rootNode=t}function Eu(){this.uuid=je.generateUUID(),this._objects=Array.prototype.slice.call(arguments),this.nCachedObjects_=0;var t={};this._indicesByUUID=t;for(var e=0,n=arguments.length;e!==n;++e)t[arguments[e].uuid]=e;this._paths=[],this._parsedPaths=[],this._bindings=[],this._bindingsIndicesByPath={};var r=this;this.stats={objects:{get total(){return r._objects.length},get inUse(){return this.total-r.nCachedObjects_}},get bindingsPerObject(){return r._bindings.length}}}function Tu(t,e,n){this._mixer=t,this._clip=e,this._localRoot=n||null;for(var r=e.tracks,i=r.length,o=new Array(i),a={endingStart:_e,endingEnd:_e},s=0;s!==i;++s){var u=r[s].createInterpolant(null);o[s]=u,u.settings=a}this._interpolantSettings=a,this._interpolants=o,this._propertyBindings=new Array(i),this._cacheIndex=null,this._byClipCacheIndex=null,this._timeScaleInterpolant=null,this._weightInterpolant=null,this.loop=ve,this._loopCount=-1,this._startTime=null,this.time=0,this.timeScale=1,this._effectiveTimeScale=1,this.weight=1,this._effectiveWeight=1,this.repetitions=1/0,this.paused=!1,this.enabled=!0,this.clampWhenFinished=!1,this.zeroSlopeAtStart=!0,this.zeroSlopeAtEnd=!0}function Mu(t){this._root=t,this._initMemoryManager(),this._accuIndex=0,this.time=0,this.timeScale=1}function Au(t){"string"===typeof t&&(console.warn("THREE.Uniform: Type parameter is no longer needed."),t=arguments[1]),this.value=t}function Cu(t,e,n){qi.call(this,t,e),this.meshPerAttribute=n||1}function Pu(t,e,n,r){this.ray=new Hn(t,e),this.near=n||0,this.far=r||1/0,this.params={Mesh:{},Line:{},LOD:{},Points:{threshold:1},Sprite:{}},Object.defineProperties(this.params,{PointCloud:{get:function(){return console.warn("THREE.Raycaster: params.PointCloud has been renamed to params.Points."),this.Points}}})}function Iu(t,e){return t.distance-e.distance}function Ou(t,e,n,r){if(!1!==t.visible&&(t.raycast(e,n),!0===r))for(var i=t.children,o=0,a=i.length;o=e){var l=e++,f=t[l];n[f.uuid]=c,t[c]=f,n[u]=l,t[l]=s;for(var h=0,p=i;h!==p;++h){var d=r[h],m=d[l],g=d[c];d[c]=m,d[l]=g}}}this.nCachedObjects_=e},uncache:function(){for(var t=this._objects,e=t.length,n=this.nCachedObjects_,r=this._indicesByUUID,i=this._bindings,o=i.length,a=0,s=arguments.length;a!==s;++a){var u=arguments[a].uuid,c=r[u];if(void 0!==c)if(delete r[u],c0)for(var u=this._interpolants,c=this._propertyBindings,l=0,f=u.length;l!==f;++l)u[l].evaluate(a),c[l].accumulate(r,s)}else this._updateWeight(t)},_updateWeight:function(t){var e=0;if(this.enabled){e=this.weight;var n=this._weightInterpolant;if(null!==n){var r=n.evaluate(t)[0];e*=r,t>n.parameterPositions[1]&&(this.stopFading(),0===r&&(this.enabled=!1))}}return this._effectiveWeight=e,e},_updateTimeScale:function(t){var e=0;if(!this.paused){e=this.timeScale;var n=this._timeScaleInterpolant;if(null!==n)e*=n.evaluate(t)[0],t>n.parameterPositions[1]&&(this.stopWarping(),0===e?this.paused=!0:this.timeScale=e)}return this._effectiveTimeScale=e,e},_updateTime:function(t){var e=this.time+t,n=this._clip.duration,r=this.loop,i=this._loopCount,o=r===ye;if(0===t)return-1===i?e:o&&1===(1&i)?n-e:e;if(r===ge){-1===i&&(this._loopCount=0,this._setEndings(!0,!0,!1));t:{if(e>=n)e=n;else{if(!(e<0)){this.time=e;break t}e=0}this.clampWhenFinished?this.paused=!0:this.enabled=!1,this.time=e,this._mixer.dispatchEvent({type:"finished",action:this,direction:t<0?-1:1})}}else{if(-1===i&&(t>=0?(i=0,this._setEndings(!0,0===this.repetitions,o)):this._setEndings(0===this.repetitions,!0,o)),e>=n||e<0){var a=Math.floor(e/n);e-=n*a,i+=Math.abs(a);var s=this.repetitions-i;if(s<=0)this.clampWhenFinished?this.paused=!0:this.enabled=!1,e=t>0?n:0,this.time=e,this._mixer.dispatchEvent({type:"finished",action:this,direction:t>0?1:-1});else{if(1===s){var u=t<0;this._setEndings(u,!u,o)}else this._setEndings(!1,!1,o);this._loopCount=i,this.time=e,this._mixer.dispatchEvent({type:"loop",action:this,loopDelta:a})}}else this.time=e;if(o&&1===(1&i))return n-e}return e},_setEndings:function(t,e,n){var r=this._interpolantSettings;n?(r.endingStart=Se,r.endingEnd=Se):(r.endingStart=t?this.zeroSlopeAtStart?Se:_e:Ee,r.endingEnd=e?this.zeroSlopeAtEnd?Se:_e:Ee)},_scheduleFading:function(t,e,n){var r=this._mixer,i=r.time,o=this._weightInterpolant;null===o&&(o=r._lendControlInterpolant(),this._weightInterpolant=o);var a=o.parameterPositions,s=o.sampleValues;return a[0]=i,s[0]=e,a[1]=i+t,s[1]=n,this}}),Mu.prototype=Object.assign(Object.create(r.prototype),{constructor:Mu,_bindAction:function(t,e){var n=t._localRoot||this._root,r=t._clip.tracks,i=r.length,o=t._propertyBindings,a=t._interpolants,s=n.uuid,u=this._bindingsByRootAndName,c=u[s];void 0===c&&(c={},u[s]=c);for(var l=0;l!==i;++l){var f=r[l],h=f.name,p=c[h];if(void 0!==p)o[l]=p;else{if(void 0!==(p=o[l])){null===p._cacheIndex&&(++p.referenceCount,this._addInactiveBinding(p,s,h));continue}var d=e&&e._propertyBindings[l].binding.parsedPath;++(p=new bu(Su.create(n,h,d),f.ValueTypeName,f.getValueSize())).referenceCount,this._addInactiveBinding(p,s,h),o[l]=p}a[l].resultBuffer=p.buffer}},_activateAction:function(t){if(!this._isActiveAction(t)){if(null===t._cacheIndex){var e=(t._localRoot||this._root).uuid,n=t._clip.uuid,r=this._actionsByClip[n];this._bindAction(t,r&&r.knownActions[0]),this._addInactiveAction(t,n,e)}for(var i=t._propertyBindings,o=0,a=i.length;o!==a;++o){var s=i[o];0===s.useCount++&&(this._lendBinding(s),s.saveOriginalState())}this._lendAction(t)}},_deactivateAction:function(t){if(this._isActiveAction(t)){for(var e=t._propertyBindings,n=0,r=e.length;n!==r;++n){var i=e[n];0===--i.useCount&&(i.restoreOriginalState(),this._takeBackBinding(i))}this._takeBackAction(t)}},_initMemoryManager:function(){this._actions=[],this._nActiveActions=0,this._actionsByClip={},this._bindings=[],this._nActiveBindings=0,this._bindingsByRootAndName={},this._controlInterpolants=[],this._nActiveControlInterpolants=0;var t=this;this.stats={actions:{get total(){return t._actions.length},get inUse(){return t._nActiveActions}},bindings:{get total(){return t._bindings.length},get inUse(){return t._nActiveBindings}},controlInterpolants:{get total(){return t._controlInterpolants.length},get inUse(){return t._nActiveControlInterpolants}}}},_isActiveAction:function(t){var e=t._cacheIndex;return null!==e&&ethis.max.x||t.ythis.max.y)},containsBox:function(t){return this.min.x<=t.min.x&&t.max.x<=this.max.x&&this.min.y<=t.min.y&&t.max.y<=this.max.y},getParameter:function(t,e){return void 0===e&&(console.warn("THREE.Box2: .getParameter() target is now required"),e=new ze),e.set((t.x-this.min.x)/(this.max.x-this.min.x),(t.y-this.min.y)/(this.max.y-this.min.y))},intersectsBox:function(t){return!(t.max.xthis.max.x||t.max.ythis.max.y)},clampPoint:function(t,e){return void 0===e&&(console.warn("THREE.Box2: .clampPoint() target is now required"),e=new ze),e.copy(t).clamp(this.min,this.max)},distanceToPoint:function(){var t=new ze;return function(e){return t.copy(e).clamp(this.min,this.max).sub(e).length()}}(),intersect:function(t){return this.min.max(t.min),this.max.min(t.max),this},union:function(t){return this.min.min(t.min),this.max.max(t.max),this},translate:function(t){return this.min.add(t),this.max.add(t),this},equals:function(t){return t.min.equals(this.min)&&t.max.equals(this.max)}}),Object.assign(Du.prototype,{set:function(t,e){return this.start.copy(t),this.end.copy(e),this},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.start.copy(t.start),this.end.copy(t.end),this},getCenter:function(t){return void 0===t&&(console.warn("THREE.Line3: .getCenter() target is now required"),t=new Ve),t.addVectors(this.start,this.end).multiplyScalar(.5)},delta:function(t){return void 0===t&&(console.warn("THREE.Line3: .delta() target is now required"),t=new Ve),t.subVectors(this.end,this.start)},distanceSq:function(){return this.start.distanceToSquared(this.end)},distance:function(){return this.start.distanceTo(this.end)},at:function(t,e){return void 0===e&&(console.warn("THREE.Line3: .at() target is now required"),e=new Ve),this.delta(e).multiplyScalar(t).add(this.start)},closestPointToPointParameter:function(){var t=new Ve,e=new Ve;return function(n,r){t.subVectors(n,this.start),e.subVectors(this.end,this.start);var i=e.dot(e),o=e.dot(t)/i;return r&&(o=je.clamp(o,0,1)),o}}(),closestPointToPoint:function(t,e,n){var r=this.closestPointToPointParameter(t,e);return void 0===n&&(console.warn("THREE.Line3: .closestPointToPoint() target is now required"),n=new Ve),this.delta(n).multiplyScalar(r).add(this.start)},applyMatrix4:function(t){return this.start.applyMatrix4(t),this.end.applyMatrix4(t),this},equals:function(t){return t.start.equals(this.start)&&t.end.equals(this.end)}}),Nu.prototype=Object.create(bn.prototype),Nu.prototype.constructor=Nu,Nu.prototype.isImmediateRenderObject=!0,Bu.prototype=Object.create(no.prototype),Bu.prototype.constructor=Bu,Bu.prototype.update=function(){var t=new Ve,e=new Ve,n=new We;return function(){var r=["a","b","c"];this.object.updateMatrixWorld(!0),n.getNormalMatrix(this.object.matrixWorld);var i=this.object.matrixWorld,o=this.geometry.attributes.position,a=this.object.geometry;if(a&&a.isGeometry)for(var s=a.vertices,u=a.faces,c=0,l=0,f=u.length;l1&&t.multiplyScalar(1/e),this.children[0].material.color.copy(this.material.color)}},zu.prototype.dispose=function(){this.geometry.dispose(),this.material.dispose(),this.children[0].geometry.dispose(),this.children[0].material.dispose()},Gu.prototype=Object.create(bn.prototype),Gu.prototype.constructor=Gu,Gu.prototype.dispose=function(){this.children[0].geometry.dispose(),this.children[0].material.dispose()},Gu.prototype.update=function(){var t=new Ve,e=new ln,n=new ln;return function(){var r=this.children[0];if(void 0!==this.color)this.material.color.set(this.color);else{var i=r.geometry.getAttribute("color");e.copy(this.light.color),n.copy(this.light.groundColor);for(var o=0,a=i.count;o.99999?this.quaternion.set(0,0,0,1):n.y<-.99999?this.quaternion.set(1,0,0,0):(e.set(n.z,0,-n.x).normalize(),t=Math.acos(n.y),this.quaternion.setFromAxisAngle(e,t))}}(),Qu.prototype.setLength=function(t,e,n){void 0===e&&(e=.2*t),void 0===n&&(n=.2*e),this.line.scale.set(1,Math.max(0,t-e),1),this.line.updateMatrix(),this.cone.scale.set(n,e,n),this.cone.position.y=t,this.cone.updateMatrix()},Qu.prototype.setColor=function(t){this.line.material.color.copy(t),this.cone.material.color.copy(t)},Qu.prototype.copy=function(t){return bn.prototype.copy.call(this,t,!1),this.line.copy(t.line),this.cone.copy(t.cone),this},Qu.prototype.clone=function(){return(new this.constructor).copy(this)},tc.prototype=Object.create(no.prototype),tc.prototype.constructor=tc;var nc=0,rc=1;function ic(t){return console.warn("THREE.MeshFaceMaterial has been removed. Use an Array instead."),t}function oc(t){return void 0===t&&(t=[]),console.warn("THREE.MultiMaterial has been removed. Use an Array instead."),t.isMultiMaterial=!0,t.materials=t,t.clone=function(){return t.slice()},t}function ac(t,e){return console.warn("THREE.PointCloud has been renamed to THREE.Points."),new oo(t,e)}function sc(t){return console.warn("THREE.Particle has been renamed to THREE.Sprite."),new Ki(t)}function uc(t,e){return console.warn("THREE.ParticleSystem has been renamed to THREE.Points."),new oo(t,e)}function cc(t){return console.warn("THREE.PointCloudMaterial has been renamed to THREE.PointsMaterial."),new io(t)}function lc(t){return console.warn("THREE.ParticleBasicMaterial has been renamed to THREE.PointsMaterial."),new io(t)}function fc(t){return console.warn("THREE.ParticleSystemMaterial has been renamed to THREE.PointsMaterial."),new io(t)}function hc(t,e,n){return console.warn("THREE.Vertex has been removed. Use THREE.Vector3 instead."),new Ve(t,e,n)}function pc(t,e){return console.warn("THREE.DynamicBufferAttribute has been removed. Use new THREE.BufferAttribute().setDynamic( true ) instead."),new _n(t,e).setDynamic(!0)}function dc(t,e){return console.warn("THREE.Int8Attribute has been removed. Use new THREE.Int8BufferAttribute() instead."),new Sn(t,e)}function mc(t,e){return console.warn("THREE.Uint8Attribute has been removed. Use new THREE.Uint8BufferAttribute() instead."),new En(t,e)}function gc(t,e){return console.warn("THREE.Uint8ClampedAttribute has been removed. Use new THREE.Uint8ClampedBufferAttribute() instead."),new Tn(t,e)}function vc(t,e){return console.warn("THREE.Int16Attribute has been removed. Use new THREE.Int16BufferAttribute() instead."),new Mn(t,e)}function yc(t,e){return console.warn("THREE.Uint16Attribute has been removed. Use new THREE.Uint16BufferAttribute() instead."),new An(t,e)}function bc(t,e){return console.warn("THREE.Int32Attribute has been removed. Use new THREE.Int32BufferAttribute() instead."),new Cn(t,e)}function wc(t,e){return console.warn("THREE.Uint32Attribute has been removed. Use new THREE.Uint32BufferAttribute() instead."),new Pn(t,e)}function xc(t,e){return console.warn("THREE.Float32Attribute has been removed. Use new THREE.Float32BufferAttribute() instead."),new In(t,e)}function _c(t,e){return console.warn("THREE.Float64Attribute has been removed. Use new THREE.Float64BufferAttribute() instead."),new On(t,e)}function Sc(t){console.warn("THREE.ClosedSplineCurve3 has been deprecated. Use THREE.CatmullRomCurve3 instead."),ms.call(this,t),this.type="catmullrom",this.closed=!0}function Ec(t){console.warn("THREE.SplineCurve3 has been deprecated. Use THREE.CatmullRomCurve3 instead."),ms.call(this,t),this.type="catmullrom"}function Tc(t){console.warn("THREE.Spline has been removed. Use THREE.CatmullRomCurve3 instead."),ms.call(this,t),this.type="catmullrom"}function Mc(t){return console.warn("THREE.AxisHelper has been renamed to THREE.AxesHelper."),new tc(t)}function Ac(t,e){return console.warn("THREE.BoundingBoxHelper has been deprecated. Creating a THREE.BoxHelper instead."),new $u(t,e)}function Cc(t,e){return console.warn("THREE.EdgesHelper has been removed. Use THREE.EdgesGeometry instead."),new no(new ga(t.geometry),new to({color:void 0!==e?e:16777215}))}function Pc(t,e){return console.warn("THREE.WireframeHelper has been removed. Use THREE.WireframeGeometry instead."),new no(new lo(t.geometry),new to({color:void 0!==e?e:16777215}))}function Ic(t){return console.warn("THREE.XHRLoader has been renamed to THREE.FileLoader."),new ts(t)}function Oc(t){return console.warn("THREE.BinaryTextureLoader has been renamed to THREE.DataTextureLoader."),new rs(t)}ss.create=function(t,e){return console.log("THREE.Curve.create() has been deprecated"),t.prototype=Object.create(ss.prototype),t.prototype.constructor=t,t.prototype.getPoint=e,t},Object.assign(As.prototype,{createPointsGeometry:function(t){console.warn("THREE.CurvePath: .createPointsGeometry() has been removed. Use new THREE.Geometry().setFromPoints( points ) instead.");var e=this.getPoints(t);return this.createGeometry(e)},createSpacedPointsGeometry:function(t){console.warn("THREE.CurvePath: .createSpacedPointsGeometry() has been removed. Use new THREE.Geometry().setFromPoints( points ) instead.");var e=this.getSpacedPoints(t);return this.createGeometry(e)},createGeometry:function(t){console.warn("THREE.CurvePath: .createGeometry() has been removed. Use new THREE.Geometry().setFromPoints( points ) instead.");for(var e=new xn,n=0,r=t.length;n1)for(var n=1;n1&&(t=[].slice.call(arguments)),t.filter(function(t){return-1===t}).length>1)throw new l.ValueError("can only specify one unknown dimension");var e=f.shapeSize(t);if(t=t.map(function(t){return-1===t?-1*this.size/e:t}.bind(this)),this.size!==f.shapeSize(t))throw new l.ValueError("total size of new array must be unchanged");var n,r,i,o,a=this.selection.shape,s=this.selection.offset,u=this.selection.stride,c=a.length,p=t.length;if(c===p){var d=!0;for(i=0;i=0;--i)n[i]=o,o*=t[i];for(r=s,i=0;i1&&(t=arguments);return new h(this.selection.transpose.apply(this.selection,t))},h.prototype.dot=function(t){t=t instanceof h?t:g(t,this.dtype);var e=this.shape,n=t.shape;if(2===e.length&&2===n.length&&e[1]===n[0]){var r=f.getType(this.dtype),i=new h(new r(e[0]*n[1]),[e[0],n[1]]);return a(i.selection,this.selection,t.selection),i}if(1===e.length&&2===n.length&&e[0]===n[0])return this.reshape([e[0],1]).T.dot(t).reshape(n[1]);if(2===e.length&&1===n.length&&e[1]===n[0])return this.dot(t.reshape([n[0],1])).reshape(e[0]);if(1===e.length&&1===n.length&&e[0]===n[0])return this.reshape([e[0],1]).T.dot(t.reshape([n[0],1])).reshape([1]);throw new l.ValueError("cannot compute the matrix product of given arrays")},h.prototype.assign=function(t,e){1===arguments.length&&(e=!0);var n=e?this.clone():this;return f.isNumber(t)?(o.assigns(n.selection,t),n):(t=g(t,this.dtype),o.assign(n.selection,t.selection),n)},h.prototype.add=function(t,e){1===arguments.length&&(e=!0);var n=e?this.clone():this;return f.isNumber(t)?(o.addseq(n.selection,t),n):(t=g(t,this.dtype),o.addeq(n.selection,t.selection),n)},h.prototype.subtract=function(t,e){1===arguments.length&&(e=!0);var n=e?this.clone():this;return f.isNumber(t)?(o.subseq(n.selection,t),n):(t=g(t,this.dtype),o.subeq(n.selection,t.selection),n)},h.prototype.multiply=function(t,e){1===arguments.length&&(e=!0);var n=e?this.clone():this;return f.isNumber(t)?(o.mulseq(n.selection,t),n):(t=g(t,this.dtype),o.muleq(n.selection,t.selection),n)},h.prototype.divide=function(t,e){1===arguments.length&&(e=!0);var n=e?this.clone():this;return f.isNumber(t)?(o.divseq(n.selection,t),n):(t=g(t,this.dtype),o.diveq(n.selection,t.selection),n)},h.prototype.pow=function(t,e){1===arguments.length&&(e=!0);var n=e?this.clone():this;return f.isNumber(t)?(o.powseq(n.selection,t),n):(t=g(t,this.dtype),o.poweq(n.selection,t.selection),n)},h.prototype.exp=function(t){0===arguments.length&&(t=!0);var e=t?this.clone():this;return o.expeq(e.selection),e},h.prototype.log=function(t){0===arguments.length&&(t=!0);var e=t?this.clone():this;return o.logeq(e.selection),e},h.prototype.sqrt=function(t){0===arguments.length&&(t=!0);var e=t?this.clone():this;return o.sqrteq(e.selection),e},h.prototype.max=function(){return 0===this.selection.size?null:o.sup(this.selection)},h.prototype.min=function(){return 0===this.selection.size?null:o.inf(this.selection)},h.prototype.sum=function(){return o.sum(this.selection)},h.prototype.std=function(t){t=f.defaults(t,{ddof:0});var e=this.clone();o.powseq(e.selection,2);var n=this.mean(),r=f.shapeSize(this.shape),i=o.sum(e.selection)/(r-t.ddof)-n*n*r/(r-t.ddof);return i>0?Math.sqrt(Math.abs(i)):0},h.prototype.mean=function(){return o.sum(this.selection)/f.shapeSize(this.shape)},h.prototype.mod=function(t,e){1===arguments.length&&(e=!0);var n=e?this.clone():this;return f.isNumber(t)?(o.modseq(n.selection,t),n):(t=g(t,this.dtype),o.modeq(n.selection,t.selection),n)},h.prototype.tolist=function(){return y(this.selection)},h.prototype.valueOf=function(){return this.tolist()},h.prototype.toString=function(){var t=b(this.max()).length,e=/\[\s+\[/g;var n=JSON.stringify(this.tolist(),function e(n,r){if(f.isString(r))return r;if(f.isNumber(r)){var i=b(r);return new Array(Math.max(0,t-i.length+2)).join(" ")+i}var o;n=n||0;var a=c.printThreshold,s=a/2|0;return o=r.length>a?[].concat(r.slice(0,s),[" ..."],r.slice(r.length-s)):r,new Array(n+1).join(" ")+"["+o.map(function(t,r){return e(0===r&&0===n?1:n+1,t)}).join(",")+"]"}).replace(/\]\,(\s*)\[/g,"],\n$1 [").replace(e,"[[").replace(e,"[[").replace(/\]\,(\s+)...\,(\s+)\[/g,"],\n$2 ...\n$2 [").slice(2,-1);switch(this.dtype){case"array":return"array(["+n+")";default:return"array(["+n+", dtype="+this.dtype+")"}},h.prototype.inspect=h.prototype.toString,h.prototype.toJSON=function(){return JSON.stringify(this.tolist())},h.prototype.clone=function(){var t=this.selection;return"undefined"===typeof t.data.slice?new h(r([].slice.apply(t.data),t.shape,t.stride,t.offset)):new h(r(t.data.slice(),t.shape,t.stride,t.offset))},h.prototype.equal=function(t){if(t=g(t),this.size!==t.size||this.ndim!==t.ndim)return!1;for(var e=this.ndim,n=0;nn.length-1)throw new l.ValueError("invalid axis");for(var r=0;r1&&(t=f.flatten(t,!0)),t instanceof n||(t=new n(t)),new h(t,r)}h.prototype.convolve=function(t){t=h.new(t);var e=this.ndim;if(e!==t.ndim)throw new l.ValueError("arrays must have the same dimensions");for(var n=new Array(e),r=new Array(e),i=this.selection,o=this.shape,a=t.selection,s=t.shape,u=0;u=0;--e)m[e]=n.shape[e],d[e]=c,c*=m[e],g[e]=n.shape[e]-i.shape[e]+1;var v=f.getType(n.dtype),y=new h(new v(f.shapeSize(g)),g),b=y.selection,w=u.mallocDouble(c),x=r(w,m,d,0);o.assigns(x,0),o.assign(x.hi.apply(x,n.shape),n);var _=u.mallocDouble(c),S=r(_,m,d,0);o.assigns(S,0),s(1,x,S);var E=u.mallocDouble(c),T=r(E,m,d,0);o.assigns(T,0),o.assign(T.hi.apply(T,i.shape),i);var M=u.mallocDouble(c),A=r(M,m,d,0);o.assigns(A,0),s(1,T,A),p(x,S,T,A),s(-1,x,S);var C,P=new Array(a),I=new Array(a),O=!1;for(e=0;em[e]&&(O=!0),I[e]=i.shape[e]-1,P[e]=Math.min(b.shape[e],m[e]-I[e]);return O&&o.assign(b,0),C=(C=x.lo.apply(x,I)).hi.apply(C,P),o.assign(b.hi.apply(b,P),C),u.freeDouble(w),u.freeDouble(_),u.freeDouble(E),u.freeDouble(M),y},h.new=g,t.exports=h;var v=i({args:["array","scalar","index"],body:function(t,e,n){var r,i=e;for(r=0;r=t.length)&&56320===(64512&t.charCodeAt(e+1)))}function a(t){return(t>>>24|t>>>8&65280|t<<8&16711680|(255&t)<<24)>>>0}function s(t){return 1===t.length?"0"+t:t}function u(t){return 7===t.length?"0"+t:6===t.length?"00"+t:5===t.length?"000"+t:4===t.length?"0000"+t:3===t.length?"00000"+t:2===t.length?"000000"+t:1===t.length?"0000000"+t:t}e.inherits=i,e.toArray=function(t,e){if(Array.isArray(t))return t.slice();if(!t)return[];var n=[];if("string"===typeof t)if(e){if("hex"===e)for((t=t.replace(/[^a-z0-9]+/gi,"")).length%2!==0&&(t="0"+t),i=0;i>6|192,n[r++]=63&a|128):o(t,i)?(a=65536+((1023&a)<<10)+(1023&t.charCodeAt(++i)),n[r++]=a>>18|240,n[r++]=a>>12&63|128,n[r++]=a>>6&63|128,n[r++]=63&a|128):(n[r++]=a>>12|224,n[r++]=a>>6&63|128,n[r++]=63&a|128)}else for(i=0;i>>0}return a},e.split32=function(t,e){for(var n=new Array(4*t.length),r=0,i=0;r>>24,n[i+1]=o>>>16&255,n[i+2]=o>>>8&255,n[i+3]=255&o):(n[i+3]=o>>>24,n[i+2]=o>>>16&255,n[i+1]=o>>>8&255,n[i]=255&o)}return n},e.rotr32=function(t,e){return t>>>e|t<<32-e},e.rotl32=function(t,e){return t<>>32-e},e.sum32=function(t,e){return t+e>>>0},e.sum32_3=function(t,e,n){return t+e+n>>>0},e.sum32_4=function(t,e,n,r){return t+e+n+r>>>0},e.sum32_5=function(t,e,n,r,i){return t+e+n+r+i>>>0},e.sum64=function(t,e,n,r){var i=t[e],o=r+t[e+1]>>>0,a=(o>>0,t[e+1]=o},e.sum64_hi=function(t,e,n,r){return(e+r>>>0>>0},e.sum64_lo=function(t,e,n,r){return e+r>>>0},e.sum64_4_hi=function(t,e,n,r,i,o,a,s){var u=0,c=e;return u+=(c=c+r>>>0)>>0)>>0)>>0},e.sum64_4_lo=function(t,e,n,r,i,o,a,s){return e+r+o+s>>>0},e.sum64_5_hi=function(t,e,n,r,i,o,a,s,u,c){var l=0,f=e;return l+=(f=f+r>>>0)>>0)>>0)>>0)>>0},e.sum64_5_lo=function(t,e,n,r,i,o,a,s,u,c){return e+r+o+s+c>>>0},e.rotr64_hi=function(t,e,n){return(e<<32-n|t>>>n)>>>0},e.rotr64_lo=function(t,e,n){return(t<<32-n|e>>>n)>>>0},e.shr64_hi=function(t,e,n){return t>>>n},e.shr64_lo=function(t,e,n){return(t<<32-n|e>>>n)>>>0}},function(t,e,n){"use strict";function r(t,e){for(var n=0;no)throw new RangeError("requested too many random bytes");var n=a.allocUnsafe(t);if(t>0)if(t>i)for(var u=0;u=this._finalSize&&(this._update(this._block),this._block.fill(0));var n=8*this._len;if(n<=4294967295)this._block.writeUInt32BE(n,this._blockSize-4);else{var r=(4294967295&n)>>>0,i=(n-r)/4294967296;this._block.writeUInt32BE(i,this._blockSize-8),this._block.writeUInt32BE(r,this._blockSize-4)}this._update(this._block);var o=this._hash();return t?o.toString(t):o},i.prototype._update=function(){throw new Error("_update must be implemented by subclass")},t.exports=i},function(t,e,n){"use strict";function r(t){return(r=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}n.d(e,"a",function(){return r})},function(t,e,n){"use strict";function r(t){return(r="function"===typeof Symbol&&"symbol"===typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"===typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function i(t){return(i="function"===typeof Symbol&&"symbol"===r(Symbol.iterator)?function(t){return r(t)}:function(t){return t&&"function"===typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":r(t)})(t)}function o(t,e){return!e||"object"!==i(e)&&"function"!==typeof e?function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t):e}n.d(e,"a",function(){return o})},function(t,e,n){"use strict";function r(t,e){return(r=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}function i(t,e){if("function"!==typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&r(t,e)}n.d(e,"a",function(){return i})},function(t,e,n){"use strict";var r=n(2),i=n(45),o=n(51),a=n(52),s=n(17);function u(t){s.call(this,"digest"),this._hash=t}r(u,s),u.prototype._update=function(t){this._hash.update(t)},u.prototype._final=function(){return this._hash.digest()},t.exports=function(t){return"md5"===(t=t.toLowerCase())?new i:"rmd160"===t||"ripemd160"===t?new o:new u(a(t))}},function(t,e,n){(function(t){function n(t){return Object.prototype.toString.call(t)}e.isArray=function(t){return Array.isArray?Array.isArray(t):"[object Array]"===n(t)},e.isBoolean=function(t){return"boolean"===typeof t},e.isNull=function(t){return null===t},e.isNullOrUndefined=function(t){return null==t},e.isNumber=function(t){return"number"===typeof t},e.isString=function(t){return"string"===typeof t},e.isSymbol=function(t){return"symbol"===typeof t},e.isUndefined=function(t){return void 0===t},e.isRegExp=function(t){return"[object RegExp]"===n(t)},e.isObject=function(t){return"object"===typeof t&&null!==t},e.isDate=function(t){return"[object Date]"===n(t)},e.isError=function(t){return"[object Error]"===n(t)||t instanceof Error},e.isFunction=function(t){return"function"===typeof t},e.isPrimitive=function(t){return null===t||"boolean"===typeof t||"number"===typeof t||"string"===typeof t||"symbol"===typeof t||"undefined"===typeof t},e.isBuffer=t.isBuffer}).call(this,n(7).Buffer)},function(t,e,n){(function(e){t.exports=function(t,n){for(var r=Math.min(t.length,n.length),i=new e(r),o=0;o=this._delta8){var n=(t=this.pending).length%this._delta8;this.pending=t.slice(t.length-n,t.length),0===this.pending.length&&(this.pending=null),t=r.join32(t,0,t.length-n,this.endian);for(var i=0;i>>24&255,r[i++]=t>>>16&255,r[i++]=t>>>8&255,r[i++]=255&t}else for(r[i++]=255&t,r[i++]=t>>>8&255,r[i++]=t>>>16&255,r[i++]=t>>>24&255,r[i++]=0,r[i++]=0,r[i++]=0,r[i++]=0,o=8;oMath.abs(this.stride[1]))?[1,0]:[0,1]}})"):3===e&&o.push("var s0=Math.abs(this.stride[0]),s1=Math.abs(this.stride[1]),s2=Math.abs(this.stride[2]);if(s0>s1){if(s1>s2){return [2,1,0];}else if(s0>s2){return [1,2,0];}else{return [1,0,2];}}else if(s0>s2){return [2,0,1];}else if(s2>s1){return [0,1,2];}else{return [0,2,1];}}})")):o.push("ORDER})")),o.push("proto.set=function "+n+"_set("+u.join(",")+",v){"),i?o.push("return this.data.set("+l+",v)}"):o.push("return this.data["+l+"]=v}"),o.push("proto.get=function "+n+"_get("+u.join(",")+"){"),i?o.push("return this.data.get("+l+")}"):o.push("return this.data["+l+"]}"),o.push("proto.index=function "+n+"_index(",u.join(),"){return "+l+"}"),o.push("proto.hi=function "+n+"_hi("+u.join(",")+"){return new "+n+"(this.data,"+a.map(function(t){return["(typeof i",t,"!=='number'||i",t,"<0)?this.shape[",t,"]:i",t,"|0"].join("")}).join(",")+","+a.map(function(t){return"this.stride["+t+"]"}).join(",")+",this.offset)}");var p=a.map(function(t){return"a"+t+"=this.shape["+t+"]"}),d=a.map(function(t){return"c"+t+"=this.stride["+t+"]"});o.push("proto.lo=function "+n+"_lo("+u.join(",")+"){var b=this.offset,d=0,"+p.join(",")+","+d.join(","));for(var m=0;m=0){d=i"+m+"|0;b+=c"+m+"*d;a"+m+"-=d}");o.push("return new "+n+"(this.data,"+a.map(function(t){return"a"+t}).join(",")+","+a.map(function(t){return"c"+t}).join(",")+",b)}"),o.push("proto.step=function "+n+"_step("+u.join(",")+"){var "+a.map(function(t){return"a"+t+"=this.shape["+t+"]"}).join(",")+","+a.map(function(t){return"b"+t+"=this.stride["+t+"]"}).join(",")+",c=this.offset,d=0,ceil=Math.ceil");for(m=0;m=0){c=(c+this.stride["+m+"]*i"+m+")|0}else{a.push(this.shape["+m+"]);b.push(this.stride["+m+"])}");return o.push("var ctor=CTOR_LIST[a.length+1];return ctor(this.data,a,b,c)}"),o.push("return function construct_"+n+"(data,shape,stride,offset){return new "+n+"(data,"+a.map(function(t){return"shape["+t+"]"}).join(",")+","+a.map(function(t){return"stride["+t+"]"}).join(",")+",offset)}"),new Function("CTOR_LIST","ORDER",o.join("\n"))(c[t],s)}var c={float32:[],float64:[],int8:[],int16:[],int32:[],uint8:[],uint16:[],uint32:[],array:[],uint8_clamped:[],buffer:[],generic:[]};t.exports=function(t,e,n,r){if(void 0===t)return(0,c.array[0])([]);"number"===typeof t&&(t=[t]),void 0===e&&(e=[t.length]);var a=e.length;if(void 0===n){n=new Array(a);for(var s=a-1,l=1;s>=0;--s)n[s]=l,l*=e[s]}if(void 0===r)for(r=0,s=0;s>",rrshift:">>>"};!function(){for(var t in s){var n=s[t];e[t]=a({args:["array","array","array"],body:{args:["a","b","c"],body:"a=b"+n+"c"},funcName:t}),e[t+"eq"]=a({args:["array","array"],body:{args:["a","b"],body:"a"+n+"=b"},rvalue:!0,funcName:t+"eq"}),e[t+"s"]=a({args:["array","array","scalar"],body:{args:["a","b","s"],body:"a=b"+n+"s"},funcName:t+"s"}),e[t+"seq"]=a({args:["array","scalar"],body:{args:["a","s"],body:"a"+n+"=s"},rvalue:!0,funcName:t+"seq"})}}();var u={not:"!",bnot:"~",neg:"-",recip:"1.0/"};!function(){for(var t in u){var n=u[t];e[t]=a({args:["array","array"],body:{args:["a","b"],body:"a="+n+"b"},funcName:t}),e[t+"eq"]=a({args:["array"],body:{args:["a"],body:"a="+n+"a"},rvalue:!0,count:2,funcName:t+"eq"})}}();var c={and:"&&",or:"||",eq:"===",neq:"!==",lt:"<",gt:">",leq:"<=",geq:">="};!function(){for(var t in c){var n=c[t];e[t]=a({args:["array","array","array"],body:{args:["a","b","c"],body:"a=b"+n+"c"},funcName:t}),e[t+"s"]=a({args:["array","array","scalar"],body:{args:["a","b","s"],body:"a=b"+n+"s"},funcName:t+"s"}),e[t+"eq"]=a({args:["array","array"],body:{args:["a","b"],body:"a=a"+n+"b"},rvalue:!0,count:2,funcName:t+"eq"}),e[t+"seq"]=a({args:["array","scalar"],body:{args:["a","s"],body:"a=a"+n+"s"},rvalue:!0,count:2,funcName:t+"seq"})}}();var l=["abs","acos","asin","atan","ceil","cos","exp","floor","log","round","sin","sqrt","tan"];!function(){for(var t=0;tthis_s){this_s=-a}else if(a>this_s){this_s=a}",localVars:[],thisVars:["this_s"]},post:{args:[],localVars:[],thisVars:["this_s"],body:"return this_s"},funcName:"norminf"}),e.norm1=r({args:["array"],pre:{args:[],localVars:[],thisVars:["this_s"],body:"this_s=0"},body:{args:[{name:"a",lvalue:!1,rvalue:!0,count:3}],body:"this_s+=a<0?-a:a",localVars:[],thisVars:["this_s"]},post:{args:[],localVars:[],thisVars:["this_s"],body:"return this_s"},funcName:"norm1"}),e.sup=r({args:["array"],pre:{body:"this_h=-Infinity",args:[],thisVars:["this_h"],localVars:[]},body:{body:"if(_inline_1_arg0_>this_h)this_h=_inline_1_arg0_",args:[{name:"_inline_1_arg0_",lvalue:!1,rvalue:!0,count:2}],thisVars:["this_h"],localVars:[]},post:{body:"return this_h",args:[],thisVars:["this_h"],localVars:[]}}),e.inf=r({args:["array"],pre:{body:"this_h=Infinity",args:[],thisVars:["this_h"],localVars:[]},body:{body:"if(_inline_1_arg0_this_v){this_v=_inline_1_arg1_;for(var _inline_1_k=0;_inline_1_k<_inline_1_arg0_.length;++_inline_1_k){this_i[_inline_1_k]=_inline_1_arg0_[_inline_1_k]}}}",args:[{name:"_inline_1_arg0_",lvalue:!1,rvalue:!0,count:2},{name:"_inline_1_arg1_",lvalue:!1,rvalue:!0,count:2}],thisVars:["this_i","this_v"],localVars:["_inline_1_k"]},post:{body:"{return this_i}",args:[],thisVars:["this_i"],localVars:[]}}),e.random=a({args:["array"],pre:{args:[],body:"this_f=Math.random",thisVars:["this_f"]},body:{args:["a"],body:"a=this_f()",thisVars:["this_f"]},funcName:"random"}),e.assign=a({args:["array","array"],body:{args:["a","b"],body:"a=b"},funcName:"assign"}),e.assigns=a({args:["array","scalar"],body:{args:["a","b"],body:"a=b"},funcName:"assigns"}),e.equals=r({args:["array","array"],pre:i,body:{args:[{name:"x",lvalue:!1,rvalue:!0,count:1},{name:"y",lvalue:!1,rvalue:!0,count:1}],body:"if(x!==y){return false}",localVars:[],thisVars:[]},post:{args:[],localVars:[],thisVars:[],body:"return true"},funcName:"equals"})},function(t,e,n){"use strict";var r=n(106),i=n(221);function o(t){return"number"===typeof t}function a(t){return"function"===typeof t}t.exports={isNumber:o,isString:function(t){return"string"===typeof t},isFunction:a,flatten:function t(e,n,r){r=r||[];for(var i=-1,a=e.length;++i>14}});t.exports=function(t){t instanceof i||(t=new i(t));var e=t.shape,n=e[0],r=e[1];if(1===(e[2]||1))return t;var s=[n,r],u=new i(new Uint8Array(o.shapeSize(s)),s),c=t.selection.pick(null,null,0),l=t.selection.pick(null,null,1),f=t.selection.pick(null,null,2);return a(u.selection,c,l,f),u}},function(t,e,n){"use strict";(function(e){!e.version||0===e.version.indexOf("v0.")||0===e.version.indexOf("v1.")&&0!==e.version.indexOf("v1.8.")?t.exports={nextTick:function(t,n,r,i){if("function"!==typeof t)throw new TypeError('"callback" argument must be a function');var o,a,s=arguments.length;switch(s){case 0:case 1:return e.nextTick(t);case 2:return e.nextTick(function(){t.call(null,n)});case 3:return e.nextTick(function(){t.call(null,n,r)});case 4:return e.nextTick(function(){t.call(null,n,r,i)});default:for(o=new Array(s-1),a=0;a>>24]^l[d>>>16&255]^f[m>>>8&255]^h[255&g]^e[v++],a=c[d>>>24]^l[m>>>16&255]^f[g>>>8&255]^h[255&p]^e[v++],s=c[m>>>24]^l[g>>>16&255]^f[p>>>8&255]^h[255&d]^e[v++],u=c[g>>>24]^l[p>>>16&255]^f[d>>>8&255]^h[255&m]^e[v++],p=o,d=a,m=s,g=u;return o=(r[p>>>24]<<24|r[d>>>16&255]<<16|r[m>>>8&255]<<8|r[255&g])^e[v++],a=(r[d>>>24]<<24|r[m>>>16&255]<<16|r[g>>>8&255]<<8|r[255&p])^e[v++],s=(r[m>>>24]<<24|r[g>>>16&255]<<16|r[p>>>8&255]<<8|r[255&d])^e[v++],u=(r[g>>>24]<<24|r[p>>>16&255]<<16|r[d>>>8&255]<<8|r[255&m])^e[v++],[o>>>=0,a>>>=0,s>>>=0,u>>>=0]}var s=[0,1,2,4,8,16,32,64,128,27,54],u=function(){for(var t=new Array(256),e=0;e<256;e++)t[e]=e<128?e<<1:e<<1^283;for(var n=[],r=[],i=[[],[],[],[]],o=[[],[],[],[]],a=0,s=0,u=0;u<256;++u){var c=s^s<<1^s<<2^s<<3^s<<4;c=c>>>8^255&c^99,n[a]=c,r[c]=a;var l=t[a],f=t[l],h=t[f],p=257*t[c]^16843008*c;i[0][a]=p<<24|p>>>8,i[1][a]=p<<16|p>>>16,i[2][a]=p<<8|p>>>24,i[3][a]=p,p=16843009*h^65537*f^257*l^16843008*a,o[0][c]=p<<24|p>>>8,o[1][c]=p<<16|p>>>16,o[2][c]=p<<8|p>>>24,o[3][c]=p,0===a?a=s=1:(a=l^t[t[t[h^l]]],s^=t[t[s]])}return{SBOX:n,INV_SBOX:r,SUB_MIX:i,INV_SUB_MIX:o}}();function c(t){this._key=i(t),this._reset()}c.blockSize=16,c.keySize=32,c.prototype.blockSize=c.blockSize,c.prototype.keySize=c.keySize,c.prototype._reset=function(){for(var t=this._key,e=t.length,n=e+6,r=4*(n+1),i=[],o=0;o>>24,a=u.SBOX[a>>>24]<<24|u.SBOX[a>>>16&255]<<16|u.SBOX[a>>>8&255]<<8|u.SBOX[255&a],a^=s[o/e|0]<<24):e>6&&o%e===4&&(a=u.SBOX[a>>>24]<<24|u.SBOX[a>>>16&255]<<16|u.SBOX[a>>>8&255]<<8|u.SBOX[255&a]),i[o]=i[o-e]^a}for(var c=[],l=0;l>>24]]^u.INV_SUB_MIX[1][u.SBOX[h>>>16&255]]^u.INV_SUB_MIX[2][u.SBOX[h>>>8&255]]^u.INV_SUB_MIX[3][u.SBOX[255&h]]}this._nRounds=n,this._keySchedule=i,this._invKeySchedule=c},c.prototype.encryptBlockRaw=function(t){return a(t=i(t),this._keySchedule,u.SUB_MIX,u.SBOX,this._nRounds)},c.prototype.encryptBlock=function(t){var e=this.encryptBlockRaw(t),n=r.allocUnsafe(16);return n.writeUInt32BE(e[0],0),n.writeUInt32BE(e[1],4),n.writeUInt32BE(e[2],8),n.writeUInt32BE(e[3],12),n},c.prototype.decryptBlock=function(t){var e=(t=i(t))[1];t[1]=t[3],t[3]=e;var n=a(t,this._invKeySchedule,u.INV_SUB_MIX,u.INV_SBOX,this._nRounds),o=r.allocUnsafe(16);return o.writeUInt32BE(n[0],0),o.writeUInt32BE(n[3],4),o.writeUInt32BE(n[2],8),o.writeUInt32BE(n[1],12),o},c.prototype.scrub=function(){o(this._keySchedule),o(this._invKeySchedule),o(this._key)},t.exports.AES=c},function(t,e,n){var r=n(3).Buffer,i=n(45);t.exports=function(t,e,n,o){if(r.isBuffer(t)||(t=r.from(t,"binary")),e&&(r.isBuffer(e)||(e=r.from(e,"binary")),8!==e.length))throw new RangeError("salt should be Buffer with 8 byte length");for(var a=n/8,s=r.alloc(a),u=r.alloc(o||0),c=r.alloc(0);a>0||o>0;){var l=new i;l.update(c),l.update(t),e&&l.update(e),c=l.digest();var f=0;if(a>0){var h=s.length-a;f=Math.min(a,c.length),c.copy(s,h,0,f),a-=f}if(f0){var p=u.length-o,d=Math.min(o,c.length-f);c.copy(u,p,f,f+d),o-=d}}return c.fill(0),{key:s,iv:u}}},function(t,e,n){"use strict";var r=e;r.base=n(171),r.short=n(172),r.mont=n(173),r.edwards=n(174)},function(t,e,n){var r=n(190),i=n(202),o=n(203),a=n(54),s=n(75),u=n(3).Buffer;function c(t){var e;"object"!==typeof t||u.isBuffer(t)||(e=t.passphrase,t=t.key),"string"===typeof t&&(t=u.from(t));var n,c,l=o(t,e),f=l.tag,h=l.data;switch(f){case"CERTIFICATE":c=r.certificate.decode(h,"der").tbsCertificate.subjectPublicKeyInfo;case"PUBLIC KEY":switch(c||(c=r.PublicKey.decode(h,"der")),n=c.algorithm.algorithm.join(".")){case"1.2.840.113549.1.1.1":return r.RSAPublicKey.decode(c.subjectPublicKey.data,"der");case"1.2.840.10045.2.1":return c.subjectPrivateKey=c.subjectPublicKey,{type:"ec",data:c};case"1.2.840.10040.4.1":return c.algorithm.params.pub_key=r.DSAparam.decode(c.subjectPublicKey.data,"der"),{type:"dsa",data:c.algorithm.params};default:throw new Error("unknown key id "+n)}throw new Error("unknown key type "+f);case"ENCRYPTED PRIVATE KEY":h=function(t,e){var n=t.algorithm.decrypt.kde.kdeparams.salt,r=parseInt(t.algorithm.decrypt.kde.kdeparams.iters.toString(),10),o=i[t.algorithm.decrypt.cipher.algo.join(".")],c=t.algorithm.decrypt.cipher.iv,l=t.subjectPrivateKey,f=parseInt(o.split("-")[1],10)/8,h=s.pbkdf2Sync(e,n,r,f,"sha1"),p=a.createDecipheriv(o,h,c),d=[];return d.push(p.update(l)),d.push(p.final()),u.concat(d)}(h=r.EncryptedPrivateKey.decode(h,"der"),e);case"PRIVATE KEY":switch(n=(c=r.PrivateKey.decode(h,"der")).algorithm.algorithm.join(".")){case"1.2.840.113549.1.1.1":return r.RSAPrivateKey.decode(c.subjectPrivateKey,"der");case"1.2.840.10045.2.1":return{curve:c.algorithm.curve,privateKey:r.ECPrivateKey.decode(c.subjectPrivateKey,"der").privateKey};case"1.2.840.10040.4.1":return c.algorithm.params.priv_key=r.DSAparam.decode(c.subjectPrivateKey,"der"),{type:"dsa",params:c.algorithm.params};default:throw new Error("unknown key id "+n)}throw new Error("unknown key type "+f);case"RSA PUBLIC KEY":return r.RSAPublicKey.decode(h,"der");case"RSA PRIVATE KEY":return r.RSAPrivateKey.decode(h,"der");case"DSA PRIVATE KEY":return{type:"dsa",params:r.DSAPrivateKey.decode(h,"der")};case"EC PRIVATE KEY":return{curve:(h=r.ECPrivateKey.decode(h,"der")).parameters.value,privateKey:h.privateKey};default:throw new Error("unknown key type "+f)}}t.exports=c,c.signature=r.signature},function(t,e,n){"use strict";t.exports={ValueError:function(){var t=Error.apply(this,arguments);return t.name=this.constructor.name,t},ConfigError:function(){var t=Error.apply(this,arguments);return t.name=this.constructor.name,t},NotImplementedError:function(){var t=Error.apply(this,arguments);return t.name=this.constructor.name,t}}},function(t,e,n){"use strict";function r(t){var e="";if(!t)try{t=n(210)}catch(r){e=r.toString()}return{readFile:t?function(e){return new Promise(function(n,r){t.readFile(e,function(t,e){return t?r(t):n(e)})})}:function(){throw new Error("readFile - failed to require fs in nodejs environment with error: "+e)}}}n.d(e,"a",function(){return r})},function(t,e,n){"use strict";var r={};n.r(r),n.d(r,"DrawBoxOptions",function(){return U}),n.d(r,"DrawBox",function(){return j}),n.d(r,"AnchorPosition",function(){return k}),n.d(r,"DrawTextFieldOptions",function(){return B}),n.d(r,"DrawTextField",function(){return F});var i={};n.r(i),n.d(i,"getModelUris",function(){return $}),n.d(i,"TinyYolov2",function(){return _t}),n.d(i,"TinyYolov2SizeType",function(){return pt}),n.d(i,"TinyYolov2Options",function(){return xt}),n.d(i,"validateConfig",function(){return mt}),n.d(i,"convLayer",function(){return z}),n.d(i,"disposeUnusedWeightTensors",function(){return G}),n.d(i,"extractConvParamsFactory",function(){return V}),n.d(i,"extractFCParamsFactory",function(){return W}),n.d(i,"extractSeparableConvParamsFactory",function(){return q}),n.d(i,"loadSeparableConvParamsFactory",function(){return X}),n.d(i,"extractWeightEntryFactory",function(){return Y}),n.d(i,"extractWeightsFactory",function(){return K}),n.d(i,"SeparableConvParams",function(){return H});var o={};n.r(o),n.d(o,"drawContour",function(){return St}),n.d(o,"drawDetections",function(){return At}),n.d(o,"drawFaceExpressions",function(){return Gt}),n.d(o,"DrawFaceLandmarksOptions",function(){return Xt}),n.d(o,"DrawFaceLandmarks",function(){return Yt}),n.d(o,"drawFaceLandmarks",function(){return Kt});var a=n(1),s=n(0),u=function(){function t(t,e){if(!y(t)||!y(e))throw new Error("Dimensions.constructor - expected width and height to be valid numbers, instead have "+JSON.stringify({width:t,height:e}));this._width=t,this._height=e}return Object.defineProperty(t.prototype,"width",{get:function(){return this._width},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"height",{get:function(){return this._height},enumerable:!0,configurable:!0}),t.prototype.reverse=function(){return new t(1/this.width,1/this.height)},t}(),c=function(){function t(t,e){this._x=t,this._y=e}return Object.defineProperty(t.prototype,"x",{get:function(){return this._x},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"y",{get:function(){return this._y},enumerable:!0,configurable:!0}),t.prototype.add=function(e){return new t(this.x+e.x,this.y+e.y)},t.prototype.sub=function(e){return new t(this.x-e.x,this.y-e.y)},t.prototype.mul=function(e){return new t(this.x*e.x,this.y*e.y)},t.prototype.div=function(e){return new t(this.x/e.x,this.y/e.y)},t.prototype.abs=function(){return new t(Math.abs(this.x),Math.abs(this.y))},t.prototype.magnitude=function(){return Math.sqrt(Math.pow(this.x,2)+Math.pow(this.y,2))},t.prototype.floor=function(){return new t(Math.floor(this.x),Math.floor(this.y))},t}();function l(t,e){return t instanceof s.a&&t.shape.length===e}function f(t){return l(t,3)}function h(t){return l(t,4)}function p(t){return t%2===0}function d(t,e){void 0===e&&(e=2);var n=Math.pow(10,e);return Math.floor(t*n)/n}function m(t){return t&&t.width&&t.height}function g(t){return t.reduce(function(t,e){return t.add(e)},new c(0,0)).div(new c(t.length,t.length))}function v(t,e,n){return Array(t).fill(0).map(function(t,r){return e+r*n})}function y(t){return!!t&&t!==1/0&&t!==-1/0&&!isNaN(t)||0===t}function b(t){return y(t)&&0<=t&&t<=1}var w=function(){function t(e,n){void 0===n&&(n=!0);var r=e||{},i=[r.left,r.top,r.right,r.bottom].every(y),o=[r.x,r.y,r.width,r.height].every(y);if(!o&&!i)throw new Error("Box.constructor - expected box to be IBoundingBox | IRect, instead have "+JSON.stringify(r));var a=o?[r.x,r.y,r.width,r.height]:[r.left,r.top,r.right-r.left,r.bottom-r.top],s=a[0],u=a[1],c=a[2],l=a[3];t.assertIsValidBox({x:s,y:u,width:c,height:l},"Box.constructor",n),this._x=s,this._y=u,this._width=c,this._height=l}return t.isRect=function(t){return!!t&&[t.x,t.y,t.width,t.height].every(y)},t.assertIsValidBox=function(e,n,r){if(void 0===r&&(r=!1),!t.isRect(e))throw new Error(n+" - invalid box: "+JSON.stringify(e)+", expected object with properties x, y, width, height");if(!r&&(e.width<0||e.height<0))throw new Error(n+" - width ("+e.width+") and height ("+e.height+") must be positive numbers")},Object.defineProperty(t.prototype,"x",{get:function(){return this._x},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"y",{get:function(){return this._y},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"width",{get:function(){return this._width},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"height",{get:function(){return this._height},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"left",{get:function(){return this.x},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"top",{get:function(){return this.y},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"right",{get:function(){return this.x+this.width},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"bottom",{get:function(){return this.y+this.height},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"area",{get:function(){return this.width*this.height},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"topLeft",{get:function(){return new c(this.left,this.top)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"topRight",{get:function(){return new c(this.right,this.top)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"bottomLeft",{get:function(){return new c(this.left,this.bottom)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"bottomRight",{get:function(){return new c(this.right,this.bottom)},enumerable:!0,configurable:!0}),t.prototype.round=function(){var e=[this.x,this.y,this.width,this.height].map(function(t){return Math.round(t)});return new t({x:e[0],y:e[1],width:e[2],height:e[3]})},t.prototype.floor=function(){var e=[this.x,this.y,this.width,this.height].map(function(t){return Math.floor(t)});return new t({x:e[0],y:e[1],width:e[2],height:e[3]})},t.prototype.toSquare=function(){var e=this.x,n=this.y,r=this.width,i=this.height,o=Math.abs(r-i);return re&&(i=-u+e+n,u=e),c>t&&(o=-c+t+r,c=t),a<1&&(o=2-a,a=1),s<1&&(o=2-s,s=1),{dy:1,edy:o,dx:1,edx:i,y:s,ey:c,x:a,ex:u,w:n,h:r}},t.prototype.calibrate=function(e){return new t({left:this.left+e.left*this.width,top:this.top+e.top*this.height,right:this.right+e.right*this.width,bottom:this.bottom+e.bottom*this.height}).toSquare().round()},t}(),x=function(t){function e(e,n,r,i,o){return void 0===o&&(o=!1),t.call(this,{left:e,top:n,right:r,bottom:i},o)||this}return a.c(e,t),e}(w),_=function(t){function e(e,n){var r=t.call(this,e)||this;return r._label=n,r}return a.c(e,t),e.assertIsValidLabeledBox=function(t,e){if(w.assertIsValidBox(t,e),!y(t.label))throw new Error(e+" - expected property label ("+t.label+") to be a number")},Object.defineProperty(e.prototype,"label",{get:function(){return this._label},enumerable:!0,configurable:!0}),e}(w),S=function(){function t(t,e,n,r,i){this._imageDims=new u(i.width,i.height),this._score=t,this._classScore=e,this._className=n,this._box=new w(r).rescale(this._imageDims)}return Object.defineProperty(t.prototype,"score",{get:function(){return this._score},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"classScore",{get:function(){return this._classScore},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"className",{get:function(){return this._className},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"box",{get:function(){return this._box},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"imageDims",{get:function(){return this._imageDims},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"imageWidth",{get:function(){return this.imageDims.width},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"imageHeight",{get:function(){return this.imageDims.height},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"relativeBox",{get:function(){return new w(this._box).rescale(this.imageDims.reverse())},enumerable:!0,configurable:!0}),t.prototype.forSize=function(e,n){return new t(this.score,this.classScore,this.className,this.relativeBox,{width:e,height:n})},t}(),E=(function(t){function e(e,n,r,i){var o=t.call(this,e,n)||this;return o._score=r,o._classScore=i,o}a.c(e,t),e.assertIsValidPredictedBox=function(t,e){if(_.assertIsValidLabeledBox(t,e),!b(t.score)||!b(t.classScore))throw new Error(e+" - expected properties score ("+t.score+") and ("+t.classScore+") to be a number between [0, 1]")},Object.defineProperty(e.prototype,"score",{get:function(){return this._score},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"classScore",{get:function(){return this._classScore},enumerable:!0,configurable:!0})}(_),function(t){function e(e,n,r,i,o){return void 0===o&&(o=!1),t.call(this,{x:e,y:n,width:r,height:i},o)||this}return a.c(e,t),e}(w));function T(){var t=window.fetch||function(){throw new Error("fetch - missing fetch implementation for browser environment")};return{Canvas:HTMLCanvasElement,CanvasRenderingContext2D:CanvasRenderingContext2D,Image:HTMLImageElement,ImageData:ImageData,Video:HTMLVideoElement,createCanvasElement:function(){return document.createElement("canvas")},createImageElement:function(){return document.createElement("img")},fetch:t,readFile:function(){throw new Error("readFile - filesystem not available for browser environment")}}}var M=n(43),A=n(59);function C(){return"object"===typeof window&&"undefined"!==typeof document&&"undefined"!==typeof HTMLImageElement&&"undefined"!==typeof HTMLCanvasElement&&"undefined"!==typeof HTMLVideoElement&&"undefined"!==typeof ImageData&&"undefined"!==typeof CanvasRenderingContext2D}var P,I=n(60);function O(t){P=t}function R(){C()&&O(T()),Object(I.a)()&&O(Object(A.a)())}var k,L={getEnv:function(){if(!P)throw new Error("getEnv - environment is not defined, check isNodejs() and isBrowser()");return P},setEnv:O,initialize:R,createBrowserEnv:T,createFileSystem:M.a,createNodejsEnv:A.a,monkeyPatch:function(t){if(P||R(),!P)throw new Error("monkeyPatch - environment is not defined, check isNodejs() and isBrowser()");var e=t.Canvas,n=void 0===e?P.Canvas:e,r=t.Image,i=void 0===r?P.Image:r;P.Canvas=n,P.Image=i,P.createCanvasElement=t.createCanvasElement||function(){return new n},P.createImageElement=t.createImageElement||function(){return new i},P.ImageData=t.ImageData||P.ImageData,P.Video=t.Video||P.Video,P.fetch=t.fetch||P.fetch,P.readFile=t.readFile||P.readFile},isBrowser:C,isNodejs:I.a};function D(t){return L.isNodejs()||"string"!==typeof t?t:document.getElementById(t)}function N(t){var e=L.getEnv(),n=e.Canvas;if(t instanceof e.CanvasRenderingContext2D)return t;var r=D(t);if(!(r instanceof n))throw new Error("resolveContext2d - expected canvas to be of instance of Canvas");var i=r.getContext("2d");if(!i)throw new Error("resolveContext2d - canvas 2d context is null");return i}R(),function(t){t.TOP_LEFT="TOP_LEFT",t.TOP_RIGHT="TOP_RIGHT",t.BOTTOM_LEFT="BOTTOM_LEFT",t.BOTTOM_RIGHT="BOTTOM_RIGHT"}(k||(k={}));var B=function(){return function(t){void 0===t&&(t={});var e=t.anchorPosition,n=t.backgroundColor,r=t.fontColor,i=t.fontSize,o=t.fontStyle,a=t.padding;this.anchorPosition=e||k.TOP_LEFT,this.backgroundColor=n||"rgba(0, 0, 0, 0.5)",this.fontColor=r||"rgba(255, 255, 255, 1)",this.fontSize=i||14,this.fontStyle=o||"Georgia",this.padding=a||4}}(),F=function(){function t(e,n,r){void 0===r&&(r={}),this.text="string"===typeof e?[e]:e instanceof t?e.text:e,this.anchor=n,this.options=new B(r)}return t.prototype.measureWidth=function(t){var e=this.options.padding;return this.text.map(function(e){return t.measureText(e).width}).reduce(function(t,e){return t=3}function Z(t){var e=L.getEnv(),n=e.Image,r=e.Video;return t instanceof n?new u(t.naturalWidth,t.naturalHeight):t instanceof r?new u(t.videoWidth,t.videoHeight):new u(t.width,t.height)}function Q(t){var e=t.width,n=t.height,r=(0,L.getEnv().createCanvasElement)();return r.width=e,r.height=n,r}function tt(t,e){var n=L.getEnv().ImageData;if(!(t instanceof n)&&!J(t))throw new Error("createCanvasFromMedia - media has not finished loading yet");var r=e||Z(t),i=r.width,o=r.height,a=Q({width:i,height:o});return t instanceof n?N(a).putImageData(t,0,0):N(a).drawImage(t,0,0,i,o),a}function et(t,e){return a.b(this,void 0,void 0,function(){var n;return a.d(this,function(r){switch(r.label){case 0:return[4,(0,L.getEnv().fetch)(t,e)];case 1:if(!((n=r.sent()).status<400))throw new Error("failed to fetch: ("+n.status+") "+n.statusText+", from url: "+n.url);return[2,n]}})})}function nt(t){return a.b(this,void 0,void 0,function(){return a.d(this,function(e){switch(e.label){case 0:return[4,et(t)];case 1:return[2,e.sent().json()]}})})}function rt(t,e){return a.b(this,void 0,void 0,function(){var n,r,i,o,u,c;return a.d(this,function(a){switch(a.label){case 0:return n=e||L.getEnv().createCanvasElement(),r=t.shape.slice(h(t)?1:0),i=r[0],o=r[1],u=r[2],c=s.L(function(){return t.as3D(i,o,u).toInt()}),[4,s.f.toPixels(c,n)];case 1:return a.sent(),c.dispose(),[2,n]}})})}function it(t){var e=L.getEnv(),n=e.Image,r=e.Canvas,i=e.Video;return t instanceof n||t instanceof r||t instanceof i}function ot(t,e){return a.b(this,void 0,void 0,function(){var n,r,i,o;return a.d(this,function(a){switch(a.label){case 0:return n=$(t,e),r=n.manifestUri,i=n.modelBaseUri,[4,nt(r)];case 1:return o=a.sent(),[2,s.p.loadWeights(o,i)]}})})}var at=function(){function t(t,e){void 0===e&&(e=!1);var n=this;if(this._imageTensors=[],this._canvases=[],this._treatAsBatchInput=!1,this._inputDimensions=[],!Array.isArray(t))throw new Error("NetInput.constructor - expected inputs to be an Array of TResolvedNetInput or to be instanceof tf.Tensor4D, instead have "+t);this._treatAsBatchInput=e,this._batchSize=t.length,t.forEach(function(t,e){if(f(t))return n._imageTensors[e]=t,void(n._inputDimensions[e]=t.shape);if(h(t)){var r=t.shape[0];if(1!==r)throw new Error("NetInput - tf.Tensor4D with batchSize "+r+" passed, but not supported in input array");return n._imageTensors[e]=t,void(n._inputDimensions[e]=t.shape.slice(1))}var i=t instanceof L.getEnv().Canvas?t:tt(t);n._canvases[e]=i,n._inputDimensions[e]=[i.height,i.width,3]})}return Object.defineProperty(t.prototype,"imageTensors",{get:function(){return this._imageTensors},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"canvases",{get:function(){return this._canvases},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"isBatchInput",{get:function(){return this.batchSize>1||this._treatAsBatchInput},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"batchSize",{get:function(){return this._batchSize},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"inputDimensions",{get:function(){return this._inputDimensions},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"inputSize",{get:function(){return this._inputSize},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"reshapedInputDimensions",{get:function(){var t=this;return v(this.batchSize,0,1).map(function(e,n){return t.getReshapedInputDimensions(n)})},enumerable:!0,configurable:!0}),t.prototype.getInput=function(t){return this.canvases[t]||this.imageTensors[t]},t.prototype.getInputDimensions=function(t){return this._inputDimensions[t]},t.prototype.getInputHeight=function(t){return this._inputDimensions[t][0]},t.prototype.getInputWidth=function(t){return this._inputDimensions[t][1]},t.prototype.getReshapedInputDimensions=function(t){if("number"!==typeof this.inputSize)throw new Error("getReshapedInputDimensions - inputSize not set, toBatchTensor has not been called yet");return function(t,e){var n=t.width,r=t.height,i=e/Math.max(r,n);return new u(Math.round(n*i),Math.round(r*i))}({width:this.getInputWidth(t),height:this.getInputHeight(t)},this.inputSize)},t.prototype.toBatchTensor=function(t,e){var n=this;return void 0===e&&(e=!0),this._inputSize=t,s.L(function(){var r=v(n.batchSize,0,1).map(function(r){var i=n.getInput(r);if(i instanceof s.a){var o=h(i)?i:i.expandDims();return(o=function(t,e){return void 0===e&&(e=!1),s.L(function(){var n=t.shape.slice(1),r=n[0],i=n[1];if(r===i)return t;var o=Math.abs(r-i),a=Math.round(o*(e?.5:1)),u=r>i?2:1,c=function(e){var n=t.shape.slice();return n[u]=e,s.n(n,0)},l=c(a),f=o-l.shape[u],h=[e&&f?c(f):null,t,l].filter(function(t){return!!t}).map(function(t){return t.toFloat()});return s.h(h,u)})}(o,e)).shape[1]===t&&o.shape[2]===t||(o=s.o.resizeBilinear(o,[t,t])),o.as3D(t,t,3)}if(i instanceof L.getEnv().Canvas)return s.f.fromPixels(function(t,e,n){void 0===n&&(n=!1);var r=L.getEnv(),i=r.Image,o=r.Canvas;if(!(t instanceof i||t instanceof o))throw new Error("imageToSquare - expected arg0 to be HTMLImageElement | HTMLCanvasElement");var a=Z(t),s=e/Math.max(a.height,a.width),u=s*a.width,c=s*a.height,l=Q({width:e,height:e}),f=t instanceof o?t:tt(t),h=Math.abs(u-c)/2,p=n&&u0;)a();return o}function ft(t,e){return s.L(function(){var n=e[0],r=e[1],i=e[2],o=s.n(t.shape.slice(0,3).concat([1]),n),a=s.n(t.shape.slice(0,3).concat([1]),r),u=s.n(t.shape.slice(0,3).concat([1]),i),c=s.h([o,a,u],3);return s.F(t,c)})}function ht(t){return 1/(1+Math.exp(-t))}var pt,dt=function(t){return"number"===typeof t};function mt(t){if(!t)throw new Error("invalid config: "+t);if("boolean"!==typeof t.withSeparableConvs)throw new Error("config.withSeparableConvs has to be a boolean, have: "+t.withSeparableConvs);if(!dt(t.iouThreshold)||t.iouThreshold<0||t.iouThreshold>1)throw new Error("config.iouThreshold has to be a number between [0, 1], have: "+t.iouThreshold);if(!Array.isArray(t.classes)||!t.classes.length||!t.classes.every(function(t){return"string"===typeof t}))throw new Error("config.classes has to be an array class names: string[], have: "+JSON.stringify(t.classes));if(!Array.isArray(t.anchors)||!t.anchors.length||!t.anchors.map(function(t){return t||{}}).every(function(t){return dt(t.x)&&dt(t.y)}))throw new Error("config.anchors has to be an array of { x: number, y: number }, have: "+JSON.stringify(t.anchors));if(t.meanRgb&&(!Array.isArray(t.meanRgb)||3!==t.meanRgb.length||!t.meanRgb.every(dt)))throw new Error("config.meanRgb has to be an array of shape [number, number, number], have: "+JSON.stringify(t.meanRgb))}function gt(t){return s.L(function(){var e=s.t(t,s.y(.10000000149011612));return s.c(s.w(s.F(t,e)),e)})}function vt(t,e){return s.L(function(){var n=s.v(t,[[0,0],[1,1],[1,1],[0,0]]);return n=s.i(n,e.conv.filters,[1,1],"valid"),n=s.F(n,e.bn.sub),n=s.t(n,e.bn.truediv),gt(n=s.c(n,e.conv.bias))})}function yt(t,e){return s.L(function(){var n=s.v(t,[[0,0],[1,1],[1,1],[0,0]]);return n=s.z(n,e.depthwise_filter,e.pointwise_filter,[1,1],"valid"),gt(n=s.c(n,e.bias))})}function bt(t,e){var n=V(t,e);var r=q(t,e);return{extractConvParams:n,extractConvWithBatchNormParams:function(r,i,o){return{conv:n(r,i,3,o+"/conv"),bn:function(n,r){var i=s.H(t(n)),o=s.H(t(n));return e.push({paramPath:r+"/sub"},{paramPath:r+"/truediv"}),{sub:i,truediv:o}}(i,o+"/bn")}},extractSeparableConvParams:r}}function wt(t,e){var n=Y(t,e);function r(t){return{filters:n(t+"/filters",4),bias:n(t+"/bias",1)}}return{extractConvParams:r,extractConvWithBatchNormParams:function(t){return{conv:r(t+"/conv"),bn:function(t){return{sub:n(t+"/sub",1),truediv:n(t+"/truediv",1)}}(t+"/bn")}},extractSeparableConvParams:X(n)}}!function(t){t[t.XS=224]="XS",t[t.SM=320]="SM",t[t.MD=416]="MD",t[t.LG=608]="LG"}(pt||(pt={}));var xt=function(){function t(t){var e=void 0===t?{}:t,n=e.inputSize,r=e.scoreThreshold;if(this._name="TinyYolov2Options",this._inputSize=n||416,this._scoreThreshold=r||.5,"number"!==typeof this._inputSize||this._inputSize%32!==0)throw new Error(this._name+" - expected inputSize to be a number divisible by 32");if("number"!==typeof this._scoreThreshold||this._scoreThreshold<=0||this._scoreThreshold>=1)throw new Error(this._name+" - expected scoreThreshold to be a number between 0 and 1")}return Object.defineProperty(t.prototype,"inputSize",{get:function(){return this._inputSize},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"scoreThreshold",{get:function(){return this._scoreThreshold},enumerable:!0,configurable:!0}),t}(),_t=function(t){function e(e){var n=t.call(this,"TinyYolov2")||this;return mt(e),n._config=e,n}return a.c(e,t),Object.defineProperty(e.prototype,"config",{get:function(){return this._config},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"withClassScores",{get:function(){return this.config.withClassScores||this.config.classes.length>1},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"boxEncodingSize",{get:function(){return 5+(this.withClassScores?this.config.classes.length:0)},enumerable:!0,configurable:!0}),e.prototype.runTinyYolov2=function(t,e){var n=vt(t,e.conv0);return n=vt(n=s.s(n,[2,2],[2,2],"same"),e.conv1),n=vt(n=s.s(n,[2,2],[2,2],"same"),e.conv2),n=vt(n=s.s(n,[2,2],[2,2],"same"),e.conv3),n=vt(n=s.s(n,[2,2],[2,2],"same"),e.conv4),n=vt(n=s.s(n,[2,2],[2,2],"same"),e.conv5),n=vt(n=s.s(n,[2,2],[1,1],"same"),e.conv6),z(n=vt(n,e.conv7),e.conv8,"valid",!1)},e.prototype.runMobilenet=function(t,e){var n=this.config.isFirstLayerConv2d?gt(z(t,e.conv0,"valid",!1)):yt(t,e.conv0);return n=yt(n=s.s(n,[2,2],[2,2],"same"),e.conv1),n=yt(n=s.s(n,[2,2],[2,2],"same"),e.conv2),n=yt(n=s.s(n,[2,2],[2,2],"same"),e.conv3),n=yt(n=s.s(n,[2,2],[2,2],"same"),e.conv4),n=yt(n=s.s(n,[2,2],[2,2],"same"),e.conv5),n=s.s(n,[2,2],[1,1],"same"),n=e.conv6?yt(n,e.conv6):n,z(n=e.conv7?yt(n,e.conv7):n,e.conv8,"valid",!1)},e.prototype.forwardInput=function(t,e){var n=this,r=this.params;if(!r)throw new Error("TinyYolov2 - load model before inference");return s.L(function(){var i=t.toBatchTensor(e,!1).toFloat();return i=(i=n.config.meanRgb?ft(i,n.config.meanRgb):i).div(s.y(256)),n.config.withSeparableConvs?n.runMobilenet(i,r):n.runTinyYolov2(i,r)})},e.prototype.forward=function(t,e){return a.b(this,void 0,void 0,function(){var n;return a.d(this,function(r){switch(r.label){case 0:return n=this.forwardInput,[4,st(t)];case 1:return[4,n.apply(this,[r.sent(),e])];case 2:return[2,r.sent()]}})})},e.prototype.detect=function(t,e){return void 0===e&&(e={}),a.b(this,void 0,void 0,function(){var n,r,i,o,u,c,l,f,h,p,d,m,g,v=this;return a.d(this,function(a){switch(a.label){case 0:return n=new xt(e),r=n.inputSize,i=n.scoreThreshold,[4,st(t)];case 1:return o=a.sent(),[4,this.forwardInput(o,r)];case 2:return u=a.sent(),c=s.L(function(){return s.O(u)[0].expandDims()}),l={width:o.getInputWidth(0),height:o.getInputHeight(0)},[4,this.extractBoxes(c,o.getReshapedInputDimensions(0),i)];case 3:return f=a.sent(),u.dispose(),c.dispose(),h=f.map(function(t){return t.box}),p=f.map(function(t){return t.score}),d=f.map(function(t){return t.classScore}),m=f.map(function(t){return v.config.classes[t.label]}),g=lt(h.map(function(t){return t.rescale(r)}),p,this.config.iouThreshold,!0),[2,g.map(function(t){return new S(p[t],d[t],m[t],h[t],l)})]}})})},e.prototype.getDefaultModelName=function(){return""},e.prototype.extractParamsFromWeigthMap=function(t){return function(t,e){var n,r=[],i=wt(t,r),o=i.extractConvParams,a=i.extractConvWithBatchNormParams,s=i.extractSeparableConvParams;if(e.withSeparableConvs){var u=e.filterSizes&&e.filterSizes.length||9;n={conv0:e.isFirstLayerConv2d?o("conv0"):s("conv0"),conv1:s("conv1"),conv2:s("conv2"),conv3:s("conv3"),conv4:s("conv4"),conv5:s("conv5"),conv6:u>7?s("conv6"):void 0,conv7:u>8?s("conv7"):void 0,conv8:o("conv8")}}else n={conv0:a("conv0"),conv1:a("conv1"),conv2:a("conv2"),conv3:a("conv3"),conv4:a("conv4"),conv5:a("conv5"),conv6:a("conv6"),conv7:a("conv7"),conv8:o("conv8")};return G(t,r),{params:n,paramMappings:r}}(t,this.config)},e.prototype.extractParams=function(t){var n=this.config.filterSizes||e.DEFAULT_FILTER_SIZES,r=n?n.length:void 0;if(7!==r&&8!==r&&9!==r)throw new Error("TinyYolov2 - expected 7 | 8 | 9 convolutional filters, but found "+r+" filterSizes in config");return function(t,e,n,r){var i,o=K(t),a=o.extractWeights,s=o.getRemainingWeights,u=[],c=bt(a,u),l=c.extractConvParams,f=c.extractConvWithBatchNormParams,h=c.extractSeparableConvParams;if(e.withSeparableConvs){var p=r[0],d=r[1],m=r[2],g=r[3],v=r[4],y=r[5],b=r[6],w=r[7],x=r[8];i={conv0:e.isFirstLayerConv2d?l(p,d,3,"conv0"):h(p,d,"conv0"),conv1:h(d,m,"conv1"),conv2:h(m,g,"conv2"),conv3:h(g,v,"conv3"),conv4:h(v,y,"conv4"),conv5:h(y,b,"conv5"),conv6:w?h(b,w,"conv6"):void 0,conv7:x?h(w,x,"conv7"):void 0,conv8:l(x||w||b,5*n,1,"conv8")}}else p=r[0],d=r[1],m=r[2],g=r[3],v=r[4],y=r[5],b=r[6],w=r[7],x=r[8],i={conv0:f(p,d,"conv0"),conv1:f(d,m,"conv1"),conv2:f(m,g,"conv2"),conv3:f(g,v,"conv3"),conv4:f(v,y,"conv4"),conv5:f(y,b,"conv5"),conv6:f(b,w,"conv6"),conv7:f(w,x,"conv7"),conv8:l(x,5*n,1,"conv8")};if(0!==s().length)throw new Error("weights remaing after extract: "+s().length);return{params:i,paramMappings:u}}(t,this.config,this.boxEncodingSize,n)},e.prototype.extractBoxes=function(t,e,n){return a.b(this,void 0,void 0,function(){var r,i,o,u,c,l,f,h,p,d,m,g,v,y,b,w,_,S,E,T,M,A,C,P,I,O,R,k,L,D=this;return a.d(this,function(N){switch(N.label){case 0:return r=e.width,i=e.height,o=Math.max(r,i),u=o/r,c=o/i,l=t.shape[1],f=this.config.anchors.length,h=s.L(function(){var e=t.reshape([l,l,f,D.boxEncodingSize]);return[e.slice([0,0,0,0],[l,l,f,4]),e.slice([0,0,0,4],[l,l,f,1]),D.withClassScores?s.D(e.slice([0,0,0,5],[l,l,f,D.config.classes.length]),3):s.y(0)]}),p=h[0],d=h[1],m=h[2],g=[],[4,d.array()];case 1:return v=N.sent(),[4,p.array()];case 2:y=N.sent(),b=0,N.label=3;case 3:if(!(bn?(E=(w+ht(y[b][w][_][0]))/l*u,T=(b+ht(y[b][w][_][1]))/l*c,M=Math.exp(y[b][w][_][2])*this.config.anchors[_].x/l*u,A=Math.exp(y[b][w][_][3])*this.config.anchors[_].y/l*c,C=E-M/2,P=T-A/2,I={row:b,col:w,anchor:_},this.withClassScores?[4,this.extractPredictedClass(m,I)]:[3,7]):[3,9]):[3,10];case 6:return L=N.sent(),[3,8];case 7:L={classScore:1,label:0},N.label=8;case 8:R=(O=L).classScore,k=O.label,g.push(a.a({box:new x(C,P,C+M,P+A),score:S,classScore:S*R,label:k},I)),N.label=9;case 9:return _++,[3,5];case 10:return w++,[3,4];case 11:return b++,[3,3];case 12:return p.dispose(),d.dispose(),m.dispose(),[2,g]}})})},e.prototype.extractPredictedClass=function(t,e){return a.b(this,void 0,void 0,function(){var n,r,i,o;return a.d(this,function(a){switch(a.label){case 0:return n=e.row,r=e.col,i=e.anchor,[4,t.array()];case 1:return o=a.sent(),[2,Array(this.config.classes.length).fill(0).map(function(t,e){return o[n][r][i][e]}).map(function(t,e){return{classScore:t,label:e}}).reduce(function(t,e){return t.classScore>e.classScore?t:e})]}})})},e.DEFAULT_FILTER_SIZES=[3,16,32,64,128,256,512,1024,1024],e}(ut);function St(t,e,n){if(void 0===n&&(n=!1),t.beginPath(),e.slice(1).forEach(function(n,r){var i=n.x,o=n.y,a=e[r];t.moveTo(a.x,a.y),t.lineTo(i,o)}),n){var r=e[e.length-1],i=e[0];if(!r||!i)return;t.moveTo(r.x,r.y),t.lineTo(i.x,i.y)}t.stroke()}var Et=function(t){function e(e,n,r){return t.call(this,e,e,"",n,r)||this}return a.c(e,t),e.prototype.forSize=function(n,r){var i=t.prototype.forSize.call(this,n,r);return new e(i.score,i.relativeBox,i.imageDims)},e}(S);function Tt(t){return t.detection instanceof Et}function Mt(t,e){var n={detection:e};return Object.assign({},t,n)}function At(t,e){(Array.isArray(e)?e:[e]).forEach(function(e){var n=e instanceof Et?e.score:Tt(e)?e.detection.score:void 0,i=e instanceof Et?e.box:Tt(e)?e.detection.box:new w(e),o=n?""+d(n):void 0;new r.DrawBox(i,{label:o}).draw(t)})}function Ct(t,e,n){return s.L(function(){var r=s.z(t,e.depthwise_filter,e.pointwise_filter,n,"same");return r=s.c(r,e.bias)})}function Pt(t,e,n){return void 0===n&&(n=!1),s.L(function(){var r=s.w(n?s.c(s.i(t,e.conv0.filters,[2,2],"same"),e.conv0.bias):Ct(t,e.conv0,[2,2])),i=Ct(r,e.conv1,[1,1]),o=Ct(s.w(s.c(r,i)),e.conv2,[1,1]);return s.w(s.c(r,s.c(i,o)))})}function It(t,e,n,r){return void 0===n&&(n=!1),void 0===r&&(r=!0),s.L(function(){var i=s.w(n?s.c(s.i(t,e.conv0.filters,r?[2,2]:[1,1],"same"),e.conv0.bias):Ct(t,e.conv0,r?[2,2]:[1,1])),o=Ct(i,e.conv1,[1,1]),a=Ct(s.w(s.c(i,o)),e.conv2,[1,1]),u=Ct(s.w(s.c(i,s.c(o,a))),e.conv3,[1,1]);return s.w(s.c(i,s.c(o,s.c(a,u))))})}function Ot(t,e){var n=i.extractConvParamsFactory(t,e),r=i.extractSeparableConvParamsFactory(t,e);function o(t,e,i,o){return void 0===o&&(o=!1),{conv0:o?n(t,e,3,i+"/conv0"):r(t,e,i+"/conv0"),conv1:r(e,e,i+"/conv1"),conv2:r(e,e,i+"/conv2")}}return{extractDenseBlock3Params:o,extractDenseBlock4Params:function(t,e,n,i){void 0===i&&(i=!1);var a=o(t,e,n,i);return{conv0:a.conv0,conv1:a.conv1,conv2:a.conv2,conv3:r(e,e,n+"/conv3")}}}}function Rt(t){return function(e){return{filters:t(e+"/filters",4),bias:t(e+"/bias",1)}}}function kt(t,e){var n=i.extractWeightEntryFactory(t,e),r=Rt(n),o=i.loadSeparableConvParamsFactory(n);return{extractDenseBlock3Params:function(t,e){return void 0===e&&(e=!1),{conv0:e?r(t+"/conv0"):o(t+"/conv0"),conv1:o(t+"/conv1"),conv2:o(t+"/conv2")}},extractDenseBlock4Params:function(t,e){return void 0===e&&(e=!1),{conv0:e?r(t+"/conv0"):o(t+"/conv0"),conv1:o(t+"/conv1"),conv2:o(t+"/conv2"),conv3:o(t+"/conv3")}}}}var Lt=function(t){function e(){return t.call(this,"FaceFeatureExtractor")||this}return a.c(e,t),e.prototype.forwardInput=function(t){var e=this.params;if(!e)throw new Error("FaceFeatureExtractor - load model before inference");return s.L(function(){var n=It(ft(t.toBatchTensor(112,!0),[122.782,117.001,104.298]).div(s.y(255)),e.dense0,!0);return n=It(n,e.dense1),n=It(n,e.dense2),n=It(n,e.dense3),n=s.d(n,[7,7],[2,2],"valid")})},e.prototype.forward=function(t){return a.b(this,void 0,void 0,function(){var e;return a.d(this,function(n){switch(n.label){case 0:return e=this.forwardInput,[4,st(t)];case 1:return[2,e.apply(this,[n.sent()])]}})})},e.prototype.getDefaultModelName=function(){return"face_feature_extractor_model"},e.prototype.extractParamsFromWeigthMap=function(t){return function(t){var e=[],n=kt(t,e).extractDenseBlock4Params,r={dense0:n("dense0",!0),dense1:n("dense1"),dense2:n("dense2"),dense3:n("dense3")};return i.disposeUnusedWeightTensors(t,e),{params:r,paramMappings:e}}(t)},e.prototype.extractParams=function(t){return function(t){var e=[],n=i.extractWeightsFactory(t),r=n.extractWeights,o=n.getRemainingWeights,a=Ot(r,e).extractDenseBlock4Params,s=a(3,32,"dense0",!0),u=a(32,64,"dense1"),c=a(64,128,"dense2"),l=a(128,256,"dense3");if(0!==o().length)throw new Error("weights remaing after extract: "+o().length);return{paramMappings:e,params:{dense0:s,dense1:u,dense2:c,dense3:l}}}(t)},e}(ut);function Dt(t,e){return s.L(function(){return s.c(s.q(t,e.weights),e.bias)})}function Nt(t){var e={},n={};return Object.keys(t).forEach(function(r){(r.startsWith("fc")?n:e)[r]=t[r]}),{featureExtractorMap:e,classifierMap:n}}var Bt=function(t){function e(e,n){var r=t.call(this,e)||this;return r._faceFeatureExtractor=n,r}return a.c(e,t),Object.defineProperty(e.prototype,"faceFeatureExtractor",{get:function(){return this._faceFeatureExtractor},enumerable:!0,configurable:!0}),e.prototype.runNet=function(t){var e=this,n=this.params;if(!n)throw new Error(this._name+" - load model before inference");return s.L(function(){var r=t instanceof at?e.faceFeatureExtractor.forwardInput(t):t;return Dt(r.as2D(r.shape[0],-1),n.fc)})},e.prototype.dispose=function(e){void 0===e&&(e=!0),this.faceFeatureExtractor.dispose(e),t.prototype.dispose.call(this,e)},e.prototype.loadClassifierParams=function(t){var e=this.extractClassifierParams(t),n=e.params,r=e.paramMappings;this._params=n,this._paramMappings=r},e.prototype.extractClassifierParams=function(t){return function(t,e,n){var r=[],o=i.extractWeightsFactory(t),a=o.extractWeights,s=o.getRemainingWeights,u=i.extractFCParamsFactory(a,r)(e,n,"fc");if(0!==s().length)throw new Error("weights remaing after extract: "+s().length);return{paramMappings:r,params:{fc:u}}}(t,this.getClassifierChannelsIn(),this.getClassifierChannelsOut())},e.prototype.extractParamsFromWeigthMap=function(t){var e=Nt(t),n=e.featureExtractorMap,r=e.classifierMap;return this.faceFeatureExtractor.loadFromWeightMap(n),function(t){var e,n=[],r=i.extractWeightEntryFactory(t,n),o={fc:(e="fc",{weights:r(e+"/weights",2),bias:r(e+"/bias",1)})};return i.disposeUnusedWeightTensors(t,n),{params:o,paramMappings:n}}(r)},e.prototype.extractParams=function(t){var e=this.getClassifierChannelsIn(),n=this.getClassifierChannelsOut(),r=n*e+n,i=t.slice(0,t.length-r),o=t.slice(t.length-r);return this.faceFeatureExtractor.extractWeights(i),this.extractClassifierParams(o)},e}(ut),Ft=["neutral","happy","sad","angry","fearful","disgusted","surprised"],Ut=function(){function t(t){var e=this;if(7!==t.length)throw new Error("FaceExpressions.constructor - expected probabilities.length to be 7, have: "+t.length);Ft.forEach(function(n,r){e[n]=t[r]})}return t.prototype.asSortedArray=function(){var t=this;return Ft.map(function(e){return{expression:e,probability:t[e]}}).sort(function(t,e){return e.probability-t.probability})},t}(),jt=function(t){function e(e){return void 0===e&&(e=new Lt),t.call(this,"FaceExpressionNet",e)||this}return a.c(e,t),e.prototype.forwardInput=function(t){var e=this;return s.L(function(){return s.D(e.runNet(t))})},e.prototype.forward=function(t){return a.b(this,void 0,void 0,function(){var e;return a.d(this,function(n){switch(n.label){case 0:return e=this.forwardInput,[4,st(t)];case 1:return[2,e.apply(this,[n.sent()])]}})})},e.prototype.predictExpressions=function(t){return a.b(this,void 0,void 0,function(){var e,n,r,i,o=this;return a.d(this,function(u){switch(u.label){case 0:return[4,st(t)];case 1:return e=u.sent(),[4,this.forwardInput(e)];case 2:return n=u.sent(),[4,Promise.all(s.O(n).map(function(t){return a.b(o,void 0,void 0,function(){var e;return a.d(this,function(n){switch(n.label){case 0:return[4,t.data()];case 1:return e=n.sent(),t.dispose(),[2,e]}})})}))];case 3:return r=u.sent(),n.dispose(),i=r.map(function(t){return new Ut(t)}),[2,e.isBatchInput?i:i[0]]}})})},e.prototype.getDefaultModelName=function(){return"face_expression_model"},e.prototype.getClassifierChannelsIn=function(){return 256},e.prototype.getClassifierChannelsOut=function(){return 7},e}(Bt);function zt(t,e){var n={expressions:e};return Object.assign({},t,n)}function Gt(t,e,n,i){void 0===n&&(n=.1),(Array.isArray(e)?e:[e]).forEach(function(e){var o=e instanceof Ut?e:e.expressions instanceof Ut?e.expressions:void 0;if(!o)throw new Error("drawFaceExpressions - expected faceExpressions to be FaceExpressions | WithFaceExpressions<{}> or array thereof");var a=o.asSortedArray().filter(function(t){return t.probability>n}),s=Tt(e)?e.detection.box.bottomLeft:i||new c(0,0);new r.DrawTextField(a.map(function(t){return t.expression+" ("+d(t.probability)+")"}),s).draw(t)})}var Vt=function(){function t(t,e,n){void 0===n&&(n=new c(0,0));var r=e.width,i=e.height;this._imgDims=new u(r,i),this._shift=n,this._positions=t.map(function(t){return t.mul(new c(r,i)).add(n)})}return Object.defineProperty(t.prototype,"shift",{get:function(){return new c(this._shift.x,this._shift.y)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"imageWidth",{get:function(){return this._imgDims.width},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"imageHeight",{get:function(){return this._imgDims.height},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"positions",{get:function(){return this._positions},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"relativePositions",{get:function(){var t=this;return this._positions.map(function(e){return e.sub(t._shift).div(new c(t.imageWidth,t.imageHeight))})},enumerable:!0,configurable:!0}),t.prototype.forSize=function(t,e){return new this.constructor(this.relativePositions,{width:t,height:e})},t.prototype.shiftBy=function(t,e){return new this.constructor(this.relativePositions,this._imgDims,new c(t,e))},t.prototype.shiftByPoint=function(t){return this.shiftBy(t.x,t.y)},t.prototype.align=function(t,e){if(void 0===e&&(e={}),t){var n=t instanceof Et?t.box.floor():new w(t);return this.shiftBy(n.x,n.y).align(null,e)}var r=Object.assign({},{useDlibAlignment:!1,minBoxPadding:.2},e),i=r.useDlibAlignment,o=r.minBoxPadding;return i?this.alignDlib():this.alignMinBbox(o)},t.prototype.alignDlib=function(){var t=this.getRefPointsForAlignment(),e=t[0],n=t[1],r=t[2],i=function(t){return r.sub(t).magnitude()},o=(i(e)+i(n))/2,a=Math.floor(o/.45),s=g(t),u=Math.floor(Math.max(0,s.x-.5*a)),c=Math.floor(Math.max(0,s.y-.43*a));return new E(u,c,Math.min(a,this.imageWidth+u),Math.min(a,this.imageHeight+c))},t.prototype.alignMinBbox=function(t){var e=function(t){var e=t.map(function(t){return t.x}),n=t.map(function(t){return t.y}),r=e.reduce(function(t,e){return e> or array thereof");new Yt(n).draw(t)})}function $t(t,e){var n=[],r=i.extractWeightsFactory(t),o=r.extractWeights,a=r.getRemainingWeights,s=function(t,e){var n=i.extractConvParamsFactory(t,e),r=i.extractSeparableConvParamsFactory(t,e);return{extractConvParams:n,extractSeparableConvParams:r,extractReductionBlockParams:function(t,e,i){return{separable_conv0:r(t,e,i+"/separable_conv0"),separable_conv1:r(e,e,i+"/separable_conv1"),expansion_conv:n(t,e,1,i+"/expansion_conv")}},extractMainBlockParams:function(t,e){return{separable_conv0:r(t,t,e+"/separable_conv0"),separable_conv1:r(t,t,e+"/separable_conv1"),separable_conv2:r(t,t,e+"/separable_conv2")}}}}(o,n),u=s.extractConvParams,c=s.extractSeparableConvParams,l=s.extractReductionBlockParams,f=s.extractMainBlockParams,h={conv_in:u(3,32,3,"entry_flow/conv_in"),reduction_block_0:l(32,64,"entry_flow/reduction_block_0"),reduction_block_1:l(64,128,"entry_flow/reduction_block_1")},p={};v(e,0,1).forEach(function(t){p["main_block_"+t]=f(128,"middle_flow/main_block_"+t)});var d={reduction_block:l(128,256,"exit_flow/reduction_block"),separable_conv:c(256,512,"exit_flow/separable_conv")};if(0!==a().length)throw new Error("weights remaing after extract: "+a().length);return{paramMappings:n,params:{entry_flow:h,middle_flow:p,exit_flow:d}}}function Jt(t,e){var n=[],r=function(t,e){var n=i.extractWeightEntryFactory(t,e),r=Rt(n),o=i.loadSeparableConvParamsFactory(n);return{extractConvParams:r,extractSeparableConvParams:o,extractReductionBlockParams:function(t){return{separable_conv0:o(t+"/separable_conv0"),separable_conv1:o(t+"/separable_conv1"),expansion_conv:r(t+"/expansion_conv")}},extractMainBlockParams:function(t){return{separable_conv0:o(t+"/separable_conv0"),separable_conv1:o(t+"/separable_conv1"),separable_conv2:o(t+"/separable_conv2")}}}}(t,n),o=r.extractConvParams,a=r.extractSeparableConvParams,s=r.extractReductionBlockParams,u=r.extractMainBlockParams,c={conv_in:o("entry_flow/conv_in"),reduction_block_0:s("entry_flow/reduction_block_0"),reduction_block_1:s("entry_flow/reduction_block_1")},l={};v(e,0,1).forEach(function(t){l["main_block_"+t]=u("middle_flow/main_block_"+t)});var f={reduction_block:s("exit_flow/reduction_block"),separable_conv:a("exit_flow/separable_conv")};return i.disposeUnusedWeightTensors(t,n),{params:{entry_flow:c,middle_flow:l,exit_flow:f},paramMappings:n}}function Zt(t,e,n){return s.c(s.i(t,e.filters,n,"same"),e.bias)}function Qt(t,e,n){void 0===n&&(n=!0);var r=n?s.w(t):t;return r=Ct(r,e.separable_conv0,[1,1]),r=Ct(s.w(r),e.separable_conv1,[1,1]),r=s.s(r,[3,3],[2,2],"same"),r=s.c(r,Zt(t,e.expansion_conv,[2,2]))}var te,ee=function(t){function e(e){var n=t.call(this,"TinyXception")||this;return n._numMainBlocks=e,n}return a.c(e,t),e.prototype.forwardInput=function(t){var e=this,n=this.params;if(!n)throw new Error("TinyXception - load model before inference");return s.L(function(){var r=ft(t.toBatchTensor(112,!0),[122.782,117.001,104.298]).div(s.y(256)),i=s.w(Zt(r,n.entry_flow.conv_in,[2,2]));return i=Qt(i,n.entry_flow.reduction_block_0,!1),i=Qt(i,n.entry_flow.reduction_block_1),v(e._numMainBlocks,0,1).forEach(function(t){i=function(t,e){var n=Ct(s.w(t),e.separable_conv0,[1,1]);return n=Ct(s.w(n),e.separable_conv1,[1,1]),n=Ct(s.w(n),e.separable_conv2,[1,1]),n=s.c(n,t)}(i,n.middle_flow["main_block_"+t])}),i=Qt(i,n.exit_flow.reduction_block),i=s.w(Ct(i,n.exit_flow.separable_conv,[1,1]))})},e.prototype.forward=function(t){return a.b(this,void 0,void 0,function(){var e;return a.d(this,function(n){switch(n.label){case 0:return e=this.forwardInput,[4,st(t)];case 1:return[2,e.apply(this,[n.sent()])]}})})},e.prototype.getDefaultModelName=function(){return"tiny_xception_model"},e.prototype.extractParamsFromWeigthMap=function(t){return Jt(t,this._numMainBlocks)},e.prototype.extractParams=function(t){return $t(t,this._numMainBlocks)},e}(ut);!function(t){t.FEMALE="female",t.MALE="male"}(te||(te={}));var ne=function(t){function e(e){void 0===e&&(e=new ee(2));var n=t.call(this,"AgeGenderNet")||this;return n._faceFeatureExtractor=e,n}return a.c(e,t),Object.defineProperty(e.prototype,"faceFeatureExtractor",{get:function(){return this._faceFeatureExtractor},enumerable:!0,configurable:!0}),e.prototype.runNet=function(t){var e=this,n=this.params;if(!n)throw new Error(this._name+" - load model before inference");return s.L(function(){var r=t instanceof at?e.faceFeatureExtractor.forwardInput(t):t,i=s.d(r,[7,7],[2,2],"valid").as2D(r.shape[0],-1);return{age:Dt(i,n.fc.age).as1D(),gender:Dt(i,n.fc.gender)}})},e.prototype.forwardInput=function(t){var e=this;return s.L(function(){var n=e.runNet(t),r=n.age,i=n.gender;return{age:r,gender:s.D(i)}})},e.prototype.forward=function(t){return a.b(this,void 0,void 0,function(){var e;return a.d(this,function(n){switch(n.label){case 0:return e=this.forwardInput,[4,st(t)];case 1:return[2,e.apply(this,[n.sent()])]}})})},e.prototype.predictAgeAndGender=function(t){return a.b(this,void 0,void 0,function(){var e,n,r,i,o,u,c=this;return a.d(this,function(l){switch(l.label){case 0:return[4,st(t)];case 1:return e=l.sent(),[4,this.forwardInput(e)];case 2:return n=l.sent(),r=s.O(n.age),i=s.O(n.gender),o=r.map(function(t,e){return{ageTensor:t,genderTensor:i[e]}}),[4,Promise.all(o.map(function(t){var e=t.ageTensor,n=t.genderTensor;return a.b(c,void 0,void 0,function(){var t,r,i,o,s;return a.d(this,function(a){switch(a.label){case 0:return[4,e.data()];case 1:return t=a.sent()[0],[4,n.data()];case 2:return r=a.sent()[0],o=(i=r>.5)?te.MALE:te.FEMALE,s=i?r:1-r,e.dispose(),n.dispose(),[2,{age:t,gender:o,genderProbability:s}]}})})}))];case 3:return u=l.sent(),n.age.dispose(),n.gender.dispose(),[2,e.isBatchInput?u:u[0]]}})})},e.prototype.getDefaultModelName=function(){return"age_gender_model"},e.prototype.dispose=function(e){void 0===e&&(e=!0),this.faceFeatureExtractor.dispose(e),t.prototype.dispose.call(this,e)},e.prototype.loadClassifierParams=function(t){var e=this.extractClassifierParams(t),n=e.params,r=e.paramMappings;this._params=n,this._paramMappings=r},e.prototype.extractClassifierParams=function(t){return function(t){var e=[],n=i.extractWeightsFactory(t),r=n.extractWeights,o=n.getRemainingWeights,a=i.extractFCParamsFactory(r,e),s=a(512,1,"fc/age"),u=a(512,2,"fc/gender");if(0!==o().length)throw new Error("weights remaing after extract: "+o().length);return{paramMappings:e,params:{fc:{age:s,gender:u}}}}(t)},e.prototype.extractParamsFromWeigthMap=function(t){var e=Nt(t),n=e.featureExtractorMap,r=e.classifierMap;return this.faceFeatureExtractor.loadFromWeightMap(n),function(t){var e=[],n=i.extractWeightEntryFactory(t,e);function r(t){return{weights:n(t+"/weights",2),bias:n(t+"/bias",1)}}var o={fc:{age:r("fc/age"),gender:r("fc/gender")}};return i.disposeUnusedWeightTensors(t,e),{params:o,paramMappings:e}}(r)},e.prototype.extractParams=function(t){var e=t.slice(0,t.length-1539),n=t.slice(t.length-1539);return this.faceFeatureExtractor.extractWeights(e),this.extractClassifierParams(n)},e}(ut),re=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.c(e,t),e.prototype.getRefPointsForAlignment=function(){var t=this.positions;return[t[0],t[1],g([t[3],t[4]])]},e}(Vt),ie=function(){function t(t,e){this._label=t,this._distance=e}return Object.defineProperty(t.prototype,"label",{get:function(){return this._label},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"distance",{get:function(){return this._distance},enumerable:!0,configurable:!0}),t.prototype.toString=function(t){return void 0===t&&(t=!0),this.label+(t?" ("+d(this.distance)+")":"")},t}(),oe=function(){function t(t,e){if("string"!==typeof t)throw new Error("LabeledFaceDescriptors - constructor expected label to be a string");if(!Array.isArray(e)||e.some(function(t){return!(t instanceof Float32Array)}))throw new Error("LabeledFaceDescriptors - constructor expected descriptors to be an array of Float32Array");this._label=t,this._descriptors=e}return Object.defineProperty(t.prototype,"label",{get:function(){return this._label},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"descriptors",{get:function(){return this._descriptors},enumerable:!0,configurable:!0}),t}();function ae(t,e){return a.b(this,void 0,void 0,function(){var n,r,i,o,s,u;return a.d(this,function(a){switch(a.label){case 0:return n=L.getEnv().Canvas,r=t,t instanceof n?[3,5]:[4,st(t)];case 1:if((i=a.sent()).batchSize>1)throw new Error("extractFaces - batchSize > 1 not supported");return(o=i.getInput(0))instanceof n?(s=o,[3,4]):[3,2];case 2:return[4,rt(o)];case 3:s=a.sent(),a.label=4;case 4:r=s,a.label=5;case 5:return u=N(r),[2,e.map(function(t){return t instanceof Et?t.forSize(r.width,r.height).box.floor():t}).map(function(t){return t.clipAtImageBorders(r.width,r.height)}).map(function(t){var e=t.x,n=t.y,r=t.width,i=t.height,o=Q({width:r,height:i});return N(o).putImageData(u.getImageData(e,n,r,i),0,0),o})]}})})}function se(t,e){return a.b(this,void 0,void 0,function(){return a.d(this,function(n){if(!f(t)&&!h(t))throw new Error("extractFaceTensors - expected image tensor to be 3D or 4D");if(h(t)&&t.shape[0]>1)throw new Error("extractFaceTensors - batchSize > 1 not supported");return[2,s.L(function(){var n=t.shape.slice(h(t)?1:0),r=n[0],i=n[1],o=n[2];return e.map(function(t){return t instanceof Et?t.forSize(i,r).box:t}).map(function(t){return t.clipAtImageBorders(i,r)}).map(function(e){var n=e.x,a=e.y,u=e.width,c=e.height;return s.C(t.as3D(r,i,o),[a,n,0],[c,u,o])})})]})})}var ue=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.c(e,t),e.prototype.postProcess=function(t,e,n){var r=n.map(function(t){var n=t.width,r=t.height,i=e/Math.max(r,n);return{width:n*i,height:r*i}}),i=r.length;return s.L(function(){var n=function(t,e){return s.E([s.n([68],t),s.n([68],e)],1).as2D(1,136).as1D()},o=function(t,e){var n=r[t],i=n.width,o=n.height;return e(i,o)?Math.abs(i-o)/2:0};return t.mul(s.n([i,136],e)).sub(s.E(Array.from(Array(i),function(t,e){return n(function(t){return o(t,function(t,e){return t 0");if("number"!==typeof this._scaleFactor||this._scaleFactor<=0||this._scaleFactor>=1)throw new Error(this._name+" - expected scaleFactor to be a number between 0 and 1");if("number"!==typeof this._maxNumScales||this._maxNumScales<0)throw new Error(this._name+" - expected maxNumScales to be a number > 0");if(!Array.isArray(this._scoreThresholds)||3!==this._scoreThresholds.length||this._scoreThresholds.some(function(t){return"number"!==typeof t}))throw new Error(this._name+" - expected scoreThresholds to be an array of numbers of length 3");if(this._scaleSteps&&(!Array.isArray(this._scaleSteps)||this._scaleSteps.some(function(t){return"number"!==typeof t})))throw new Error(this._name+" - expected scaleSteps to be an array of numbers")}return Object.defineProperty(t.prototype,"minFaceSize",{get:function(){return this._minFaceSize},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"scaleFactor",{get:function(){return this._scaleFactor},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"maxNumScales",{get:function(){return this._maxNumScales},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"scoreThresholds",{get:function(){return this._scoreThresholds},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"scaleSteps",{get:function(){return this._scaleSteps},enumerable:!0,configurable:!0}),t}();function Se(t,e){function n(n,r,i,o,a){var u=s.K(t(n*r*i*i),[i,i,n,r]),c=s.H(t(r));return e.push({paramPath:o+"/filters"},{paramPath:o+"/"+(a?"batch_norm_offset":"bias")}),{filters:u,bias:c}}function r(t,e,r,i){var o=n(t,e,r,i,!0);return{filters:o.filters,batch_norm_offset:o.bias}}function i(n,i,o){return{depthwise_conv:function(n,r){var i=s.K(t(9*n),[3,3,n,1]),o=s.H(t(n)),a=s.H(t(n)),u=s.H(t(n)),c=s.H(t(n));return e.push({paramPath:r+"/filters"},{paramPath:r+"/batch_norm_scale"},{paramPath:r+"/batch_norm_offset"},{paramPath:r+"/batch_norm_mean"},{paramPath:r+"/batch_norm_variance"}),{filters:i,batch_norm_scale:o,batch_norm_offset:a,batch_norm_mean:u,batch_norm_variance:c}}(n,o+"/depthwise_conv"),pointwise_conv:r(n,i,1,o+"/pointwise_conv")}}return{extractMobilenetV1Params:function(){return{conv_0:r(3,32,3,"mobilenetv1/conv_0"),conv_1:i(32,64,"mobilenetv1/conv_1"),conv_2:i(64,128,"mobilenetv1/conv_2"),conv_3:i(128,128,"mobilenetv1/conv_3"),conv_4:i(128,256,"mobilenetv1/conv_4"),conv_5:i(256,256,"mobilenetv1/conv_5"),conv_6:i(256,512,"mobilenetv1/conv_6"),conv_7:i(512,512,"mobilenetv1/conv_7"),conv_8:i(512,512,"mobilenetv1/conv_8"),conv_9:i(512,512,"mobilenetv1/conv_9"),conv_10:i(512,512,"mobilenetv1/conv_10"),conv_11:i(512,512,"mobilenetv1/conv_11"),conv_12:i(512,1024,"mobilenetv1/conv_12"),conv_13:i(1024,1024,"mobilenetv1/conv_13")}},extractPredictionLayerParams:function(){return{conv_0:r(1024,256,1,"prediction_layer/conv_0"),conv_1:r(256,512,3,"prediction_layer/conv_1"),conv_2:r(512,128,1,"prediction_layer/conv_2"),conv_3:r(128,256,3,"prediction_layer/conv_3"),conv_4:r(256,128,1,"prediction_layer/conv_4"),conv_5:r(128,256,3,"prediction_layer/conv_5"),conv_6:r(256,64,1,"prediction_layer/conv_6"),conv_7:r(64,128,3,"prediction_layer/conv_7"),box_predictor_0:{box_encoding_predictor:n(512,12,1,"prediction_layer/box_predictor_0/box_encoding_predictor"),class_predictor:n(512,9,1,"prediction_layer/box_predictor_0/class_predictor")},box_predictor_1:{box_encoding_predictor:n(1024,24,1,"prediction_layer/box_predictor_1/box_encoding_predictor"),class_predictor:n(1024,18,1,"prediction_layer/box_predictor_1/class_predictor")},box_predictor_2:{box_encoding_predictor:n(512,24,1,"prediction_layer/box_predictor_2/box_encoding_predictor"),class_predictor:n(512,18,1,"prediction_layer/box_predictor_2/class_predictor")},box_predictor_3:{box_encoding_predictor:n(256,24,1,"prediction_layer/box_predictor_3/box_encoding_predictor"),class_predictor:n(256,18,1,"prediction_layer/box_predictor_3/class_predictor")},box_predictor_4:{box_encoding_predictor:n(256,24,1,"prediction_layer/box_predictor_4/box_encoding_predictor"),class_predictor:n(256,18,1,"prediction_layer/box_predictor_4/class_predictor")},box_predictor_5:{box_encoding_predictor:n(128,24,1,"prediction_layer/box_predictor_5/box_encoding_predictor"),class_predictor:n(128,18,1,"prediction_layer/box_predictor_5/class_predictor")}}}}}function Ee(t){var e=[],n=function(t,e){var n=i.extractWeightEntryFactory(t,e);function r(t,e,r){return{filters:n(t+"/Conv2d_"+e+"_pointwise/weights",4,r+"/filters"),batch_norm_offset:n(t+"/Conv2d_"+e+"_pointwise/convolution_bn_offset",1,r+"/batch_norm_offset")}}function o(t){var e="mobilenetv1/conv_"+t,i="MobilenetV1/Conv2d_"+t+"_depthwise",o=e+"/depthwise_conv",a=e+"/pointwise_conv";return{depthwise_conv:{filters:n(i+"/depthwise_weights",4,o+"/filters"),batch_norm_scale:n(i+"/BatchNorm/gamma",1,o+"/batch_norm_scale"),batch_norm_offset:n(i+"/BatchNorm/beta",1,o+"/batch_norm_offset"),batch_norm_mean:n(i+"/BatchNorm/moving_mean",1,o+"/batch_norm_mean"),batch_norm_variance:n(i+"/BatchNorm/moving_variance",1,o+"/batch_norm_variance")},pointwise_conv:r("MobilenetV1",t,a)}}function a(t,e){return{filters:n(t+"/weights",4,e+"/filters"),bias:n(t+"/biases",1,e+"/bias")}}function s(t){return{box_encoding_predictor:a("Prediction/BoxPredictor_"+t+"/BoxEncodingPredictor","prediction_layer/box_predictor_"+t+"/box_encoding_predictor"),class_predictor:a("Prediction/BoxPredictor_"+t+"/ClassPredictor","prediction_layer/box_predictor_"+t+"/class_predictor")}}return{extractMobilenetV1Params:function(){return{conv_0:r("MobilenetV1",0,"mobilenetv1/conv_0"),conv_1:o(1),conv_2:o(2),conv_3:o(3),conv_4:o(4),conv_5:o(5),conv_6:o(6),conv_7:o(7),conv_8:o(8),conv_9:o(9),conv_10:o(10),conv_11:o(11),conv_12:o(12),conv_13:o(13)}},extractPredictionLayerParams:function(){return{conv_0:r("Prediction",0,"prediction_layer/conv_0"),conv_1:r("Prediction",1,"prediction_layer/conv_1"),conv_2:r("Prediction",2,"prediction_layer/conv_2"),conv_3:r("Prediction",3,"prediction_layer/conv_3"),conv_4:r("Prediction",4,"prediction_layer/conv_4"),conv_5:r("Prediction",5,"prediction_layer/conv_5"),conv_6:r("Prediction",6,"prediction_layer/conv_6"),conv_7:r("Prediction",7,"prediction_layer/conv_7"),box_predictor_0:s(0),box_predictor_1:s(1),box_predictor_2:s(2),box_predictor_3:s(3),box_predictor_4:s(4),box_predictor_5:s(5)}}}}(t,e),r=n.extractMobilenetV1Params,o=n.extractPredictionLayerParams,a=t["Output/extra_dim"];if(e.push({originalPath:"Output/extra_dim",paramPath:"output_layer/extra_dim"}),!f(a))throw new Error("expected weightMap['Output/extra_dim'] to be a Tensor3D, instead have "+a);var s={mobilenetv1:r(),prediction_layer:o(),output_layer:{extra_dim:a}};return i.disposeUnusedWeightTensors(t,e),{params:s,paramMappings:e}}function Te(t,e,n){return s.L(function(){var r=s.i(t,e.filters,n,"same");return r=s.c(r,e.batch_norm_offset),s.g(r,0,6)})}var Me=.0010000000474974513;function Ae(t,e){return s.L(function(){var n=null,r=Te(t,e.conv_0,[2,2]);if([e.conv_1,e.conv_2,e.conv_3,e.conv_4,e.conv_5,e.conv_6,e.conv_7,e.conv_8,e.conv_9,e.conv_10,e.conv_11,e.conv_12,e.conv_13].forEach(function(t,e){var i,o,a,u=e+1,c=function(t){return[2,4,6,12].some(function(e){return e===t})?[2,2]:[1,1]}(u);i=r,o=t.depthwise_conv,a=c,r=Te(r=s.L(function(){var t=s.j(i,o.filters,a,"same");return t=s.e(t,o.batch_norm_mean,o.batch_norm_variance,o.batch_norm_offset,o.batch_norm_scale,Me),s.g(t,0,6)}),t.pointwise_conv,[1,1]),11===u&&(n=r)}),null===n)throw new Error("mobileNetV1 - output of conv layer 11 is null");return{out:r,conv11:n}})}function Ce(t,e,n){var r=t.arraySync(),i=Math.min(r[e][0],r[e][2]),o=Math.min(r[e][1],r[e][3]),a=Math.max(r[e][0],r[e][2]),s=Math.max(r[e][1],r[e][3]),u=Math.min(r[n][0],r[n][2]),c=Math.min(r[n][1],r[n][3]),l=Math.max(r[n][0],r[n][2]),f=Math.max(r[n][1],r[n][3]),h=(a-i)*(s-o),p=(l-u)*(f-c);if(h<=0||p<=0)return 0;var d=Math.max(i,u),m=Math.max(o,c),g=Math.min(a,l),v=Math.min(s,f),y=Math.max(g-d,0)*Math.max(v-m,0);return y/(h+p-y)}function Pe(t,e){var n=function(t){var e=s.O(s.N(t,[1,0])),n=[s.F(e[2],e[0]),s.F(e[3],e[1])];return{sizes:n,centers:[s.c(e[0],s.k(n[0],s.y(2))),s.c(e[1],s.k(n[1],s.y(2)))]}}(t),r=n.sizes,i=n.centers,o=s.O(s.N(e,[1,0])),a=s.k(s.t(s.l(s.k(o[2],s.y(5))),r[0]),s.y(2)),u=s.c(s.t(s.k(o[0],s.y(10)),r[0]),i[0]),c=s.k(s.t(s.l(s.k(o[3],s.y(5))),r[1]),s.y(2)),l=s.c(s.t(s.k(o[1],s.y(10)),r[1]),i[1]);return s.N(s.E([s.F(u,a),s.F(l,c),s.c(u,a),s.c(l,c)]),[1,0])}function Ie(t,e){return s.L(function(){var n=t.shape[0];return{boxPredictionEncoding:s.x(i.convLayer(t,e.box_encoding_predictor),[n,-1,1,4]),classPrediction:s.x(i.convLayer(t,e.class_predictor),[n,-1,3])}})}var Oe=function(){function t(t){var e=void 0===t?{}:t,n=e.minConfidence,r=e.maxResults;if(this._name="SsdMobilenetv1Options",this._minConfidence=n||.5,this._maxResults=r||100,"number"!==typeof this._minConfidence||this._minConfidence<=0||this._minConfidence>=1)throw new Error(this._name+" - expected minConfidence to be a number between 0 and 1");if("number"!==typeof this._maxResults)throw new Error(this._name+" - expected maxResults to be a number")}return Object.defineProperty(t.prototype,"minConfidence",{get:function(){return this._minConfidence},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"maxResults",{get:function(){return this._maxResults},enumerable:!0,configurable:!0}),t}(),Re=function(t){function e(){return t.call(this,"SsdMobilenetv1")||this}return a.c(e,t),e.prototype.forwardInput=function(t){var e=this.params;if(!e)throw new Error("SsdMobilenetv1 - load model before inference");return s.L(function(){var n=t.toBatchTensor(512,!1).toFloat(),r=Ae(s.F(s.t(n,s.y(.007843137718737125)),s.y(1)),e.mobilenetv1),i=function(t,e,n){return s.L(function(){var r=Te(t,n.conv_0,[1,1]),i=Te(r,n.conv_1,[2,2]),o=Te(i,n.conv_2,[1,1]),a=Te(o,n.conv_3,[2,2]),u=Te(a,n.conv_4,[1,1]),c=Te(u,n.conv_5,[2,2]),l=Te(c,n.conv_6,[1,1]),f=Te(l,n.conv_7,[2,2]),h=Ie(e,n.box_predictor_0),p=Ie(t,n.box_predictor_1),d=Ie(i,n.box_predictor_2),m=Ie(a,n.box_predictor_3),g=Ie(c,n.box_predictor_4),v=Ie(f,n.box_predictor_5);return{boxPredictions:s.h([h.boxPredictionEncoding,p.boxPredictionEncoding,d.boxPredictionEncoding,m.boxPredictionEncoding,g.boxPredictionEncoding,v.boxPredictionEncoding],1),classPredictions:s.h([h.classPrediction,p.classPrediction,d.classPrediction,m.classPrediction,g.classPrediction,v.classPrediction],1)}})}(r.out,r.conv11,e.prediction_layer);return function(t,e,n){return s.L(function(){var r=t.shape[0],i=Pe(s.x(s.M(n.extra_dim,[r,1,1]),[-1,4]),s.x(t,[-1,4]));i=s.x(i,[r,i.shape[0]/r,4]);var o=s.A(s.B(e,[0,0,1],[-1,-1,-1])),a=s.B(o,[0,0,0],[-1,-1,1]);return a=s.x(a,[r,a.shape[1]]),{boxes:s.O(i),scores:s.O(a)}})}(i.boxPredictions,i.classPredictions,e.output_layer)})},e.prototype.forward=function(t){return a.b(this,void 0,void 0,function(){var e;return a.d(this,function(n){switch(n.label){case 0:return e=this.forwardInput,[4,st(t)];case 1:return[2,e.apply(this,[n.sent()])]}})})},e.prototype.locateFaces=function(t,e){return void 0===e&&(e={}),a.b(this,void 0,void 0,function(){var n,r,i,o,s,u,c,l,f,h,p,d,m,g,v,y,b,w,x,_;return a.d(this,function(a){switch(a.label){case 0:return n=new Oe(e),r=n.maxResults,i=n.minConfidence,[4,st(t)];case 1:for(o=a.sent(),s=this.forwardInput(o),u=s.boxes,c=s.scores,l=u[0],f=c[0],h=1;hi}).sort(function(t,e){return e.score-t.score}),u=[];return s.forEach(function(e){if(!(u.length>=a)){for(var n=e.score,o=u.length-1;o>=0;--o){var s=Ce(t,e.boxIndex,u[o]);if(0!==s&&(e.score*=s<=r?1:0,e.score<=i))break}n===e.score&&u.push(e.boxIndex)}}),u}(l,p,r,.5,i),v=o.getReshapedInputDimensions(0),y=o.inputSize,b=y/v.width,w=y/v.height,x=l.arraySync(),_=g.map(function(t){var e=[Math.max(0,x[t][0]),Math.min(1,x[t][2])].map(function(t){return t*w}),n=e[0],r=e[1],i=[Math.max(0,x[t][1]),Math.min(1,x[t][3])].map(function(t){return t*b}),a=i[0],s=i[1];return new Et(p[t],new E(a,n,s-a,r-n),{height:o.getInputHeight(0),width:o.getInputWidth(0)})}),l.dispose(),f.dispose(),[2,_]}})})},e.prototype.getDefaultModelName=function(){return"ssd_mobilenetv1_model"},e.prototype.extractParamsFromWeigthMap=function(t){return Ee(t)},e.prototype.extractParams=function(t){return function(t){var e=[],n=i.extractWeightsFactory(t),r=n.extractWeights,o=n.getRemainingWeights,a=Se(r,e),u=a.extractMobilenetV1Params,c=a.extractPredictionLayerParams,l=u(),f=c(),h={extra_dim:s.J(r(20472),[1,5118,4])};if(e.push({paramPath:"output_layer/extra_dim"}),0!==o().length)throw new Error("weights remaing after extract: "+o().length);return{params:{mobilenetv1:l,prediction_layer:f,output_layer:h},paramMappings:e}}(t)},e}(ut);!function(t){function e(){return null!==t&&t.apply(this,arguments)||this}a.c(e,t)}(Re);var ke=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._name="TinyFaceDetectorOptions",e}return a.c(e,t),e}(i.TinyYolov2Options),Le=function(){function t(){}return t.prototype.then=function(t){return a.b(this,void 0,void 0,function(){var e;return a.d(this,function(n){switch(n.label){case 0:return e=t,[4,this.run()];case 1:return[2,e.apply(void 0,[n.sent()])]}})})},t.prototype.run=function(){return a.b(this,void 0,void 0,function(){return a.d(this,function(t){throw new Error("ComposableTask - run is not implemented")})})},t}();function De(t,e,n,r,i){return void 0===i&&(i=function(t){return t.alignedRect}),a.b(this,void 0,void 0,function(){var o,u,c,l,f;return a.d(this,function(a){switch(a.label){case 0:return o=t.map(function(t){return Ht(t)?i(t):t.detection}),(c=r)?[3,5]:e instanceof s.a?[4,se(e,o)]:[3,2];case 1:return l=a.sent(),[3,4];case 2:return[4,ae(e,o)];case 3:l=a.sent(),a.label=4;case 4:c=l,a.label=5;case 5:return[4,n(u=c)];case 6:return f=a.sent(),u.forEach(function(t){return t instanceof s.a&&t.dispose()}),[2,f]}})})}function Ne(t,e,n,r,i){return a.b(this,void 0,void 0,function(){var o=this;return a.d(this,function(s){return[2,De([t],e,function(t){return a.b(o,void 0,void 0,function(){return a.d(this,function(e){return[2,n(t[0])]})})},r,i)]})})}var Be=2,Fe=12;function Ue(t){var e=i.extractWeightsFactory(t),n=e.extractWeights,r=e.getRemainingWeights,o=[],u=function(t,e){var n=i.extractConvParamsFactory(t,e),r=i.extractFCParamsFactory(t,e);function o(n,r){var i=s.H(t(n));return e.push({paramPath:r}),i}function u(t,e,r){return void 0===r&&(r=!1),{conv1:n(t[0],t[1],3,e+"/conv1"),prelu1_alpha:o(t[1],e+"/prelu1_alpha"),conv2:n(t[1],t[2],3,e+"/conv2"),prelu2_alpha:o(t[2],e+"/prelu2_alpha"),conv3:n(t[2],t[3],r?2:3,e+"/conv3"),prelu3_alpha:o(t[3],e+"/prelu3_alpha")}}return{extractPNetParams:function(){var t=u([3,10,16,32],"pnet"),e=n(32,2,1,"pnet/conv4_1"),r=n(32,4,1,"pnet/conv4_2");return a.a({},t,{conv4_1:e,conv4_2:r})},extractRNetParams:function(){var t=u([3,28,48,64],"rnet",!0),e=r(576,128,"rnet/fc1"),n=o(128,"rnet/prelu4_alpha"),i=r(128,2,"rnet/fc2_1"),s=r(128,4,"rnet/fc2_2");return a.a({},t,{fc1:e,prelu4_alpha:n,fc2_1:i,fc2_2:s})},extractONetParams:function(){var t=u([3,32,64,64],"onet"),e=n(64,128,2,"onet/conv4"),i=o(128,"onet/prelu4_alpha"),s=r(1152,256,"onet/fc1"),c=o(256,"onet/prelu5_alpha"),l=r(256,2,"onet/fc2_1"),f=r(256,4,"onet/fc2_2"),h=r(256,10,"onet/fc2_3");return a.a({},t,{conv4:e,prelu4_alpha:i,fc1:s,prelu5_alpha:c,fc2_1:l,fc2_2:f,fc2_3:h})}}}(n,o),c=u.extractPNetParams,l=u.extractRNetParams,f=u.extractONetParams,h=c(),p=l(),d=f();if(0!==r().length)throw new Error("weights remaing after extract: "+r().length);return{params:{pnet:h,rnet:p,onet:d},paramMappings:o}}function je(t){var e=[],n=function(t,e){var n=i.extractWeightEntryFactory(t,e);function r(t){return{filters:n(t+"/weights",4,t+"/filters"),bias:n(t+"/bias",1)}}function o(t){return{weights:n(t+"/weights",2),bias:n(t+"/bias",1)}}function s(t){return n(t,1)}function u(t){return{conv1:r(t+"/conv1"),prelu1_alpha:s(t+"/prelu1_alpha"),conv2:r(t+"/conv2"),prelu2_alpha:s(t+"/prelu2_alpha"),conv3:r(t+"/conv3"),prelu3_alpha:s(t+"/prelu3_alpha")}}return{extractPNetParams:function(){var t=u("pnet"),e=r("pnet/conv4_1"),n=r("pnet/conv4_2");return a.a({},t,{conv4_1:e,conv4_2:n})},extractRNetParams:function(){var t=u("rnet"),e=o("rnet/fc1"),n=s("rnet/prelu4_alpha"),r=o("rnet/fc2_1"),i=o("rnet/fc2_2");return a.a({},t,{fc1:e,prelu4_alpha:n,fc2_1:r,fc2_2:i})},extractONetParams:function(){var t=u("onet"),e=r("onet/conv4"),n=s("onet/prelu4_alpha"),i=o("onet/fc1"),c=s("onet/prelu5_alpha"),l=o("onet/fc2_1"),f=o("onet/fc2_2"),h=o("onet/fc2_3");return a.a({},t,{conv4:e,prelu4_alpha:n,fc1:i,prelu5_alpha:c,fc2_1:l,fc2_2:f,fc2_3:h})}}}(t,e),r=n.extractPNetParams,o=n.extractRNetParams,s=n.extractONetParams,u=r(),c=o(),l=s();return i.disposeUnusedWeightTensors(t,e),{params:{pnet:u,rnet:c,onet:l},paramMappings:e}}function ze(t,e){var n=e[0],r=e[1];return{height:Math.floor(n*t),width:Math.floor(r*t)}}var Ge=function(t){function e(e,n,r,i){return t.call(this,{left:e,top:n,right:r,bottom:i},!0)||this}return a.c(e,t),e}(w);function Ve(t){return s.L(function(){return s.t(s.F(t,s.y(127.5)),s.y(.0078125))})}function We(t,e){return s.L(function(){return s.c(s.w(t),s.t(e,s.u(s.w(s.u(t)))))})}function He(t,e,n){return void 0===n&&(n=!1),s.L(function(){var r=i.convLayer(t,e.conv1,"valid");return r=We(r,e.prelu1_alpha),r=s.s(r,n?[2,2]:[3,3],[2,2],"same"),r=We(r=i.convLayer(r,e.conv2,"valid"),e.prelu2_alpha),r=n?r:s.s(r,[3,3],[2,2],"valid"),r=We(r=i.convLayer(r,e.conv3,"valid"),e.prelu3_alpha)})}function qe(t,e,n,r,o){o.stage1=[];var a=e.map(function(e){return s.L(function(){var n={scale:e},o=function(t,e){return s.L(function(){var n=ze(e,t.shape.slice(1)),r=n.height,i=n.width,o=Ve(s.o.resizeBilinear(t,[r,i]));return s.N(o,[0,2,1,3])})}(t,e),a=Date.now(),u=function(t,e){return s.L(function(){var n=He(t,e,!0),r=i.convLayer(n,e.conv4_1,"valid"),o=s.m(s.r(r,3),3);return{prob:s.D(s.F(r,o),3),regions:i.convLayer(n,e.conv4_2,"valid")}})}(o,r),c=u.prob,l=u.regions;return n.pnet=Date.now()-a,{scoresTensor:s.O(s.O(c,3)[1])[0],regionsTensor:s.O(l)[0],scale:e,statsForScale:n}})}).map(function(t){var e=t.scoresTensor,r=t.regionsTensor,i=t.scale,a=t.statsForScale,s=function(t,e,n,r){for(var i=[],o=t.arraySync(),a=0;a=r&&i.push(new c(s,a));return i.map(function(t){var r=new x(Math.round((t.y*Be+1)/n),Math.round((t.x*Be+1)/n),Math.round((t.y*Be+Fe)/n),Math.round((t.x*Be+Fe)/n)),i=o[t.y][t.x],a=e.arraySync();return{cell:r,score:i,region:new Ge(a[t.y][t.x][0],a[t.y][t.x][1],a[t.y][t.x][2],a[t.y][t.x][3])}})}(e,r,i,n);if(e.dispose(),r.dispose(),!s.length)return o.stage1.push(a),[];var u=Date.now(),l=lt(s.map(function(t){return t.cell}),s.map(function(t){return t.score}),.5);return a.nms=Date.now()-u,a.numBoxes=l.length,o.stage1.push(a),l.map(function(t){return s[t]})}).reduce(function(t,e){return t.concat(e)},[]),u=[],l=[];if(a.length>0){var f=Date.now(),h=lt(a.map(function(t){return t.cell}),a.map(function(t){return t.score}),.7);o.stage1_nms=Date.now()-f,l=h.map(function(t){return a[t].score}),u=h.map(function(t){return a[t]}).map(function(t){var e=t.cell,n=t.region;return new x(e.left+n.left*e.width,e.top+n.top*e.height,e.right+n.right*e.width,e.bottom+n.bottom*e.height).toSquare().round()})}return{boxes:u,scores:l}}function Xe(t,e,n){var r=n.width,i=n.height;return a.b(this,void 0,void 0,function(){var n,o,u,c=this;return a.d(this,function(l){switch(l.label){case 0:return n=N(t),[4,Promise.all(e.map(function(e){return a.b(c,void 0,void 0,function(){var r,i,o,s,u,c,l,f;return a.d(this,function(a){return r=e.padAtBorders(t.height,t.width),i=r.y,o=r.ey,s=r.x,u=r.ex,c=s-1,l=i-1,f=n.getImageData(c,l,u-c,o-l),[2,L.isNodejs()?tt(f):createImageBitmap(f)]})})}))];case 1:return o=l.sent(),u=[],o.forEach(function(t){var e=N(Q({width:r,height:i}));e.drawImage(t,0,0,r,i);for(var n=e.getImageData(0,0,r,i).data,o=[],a=0;a1?s.h(c.map(function(t){return t.scores})):c[0].scores,p=(h=Array).from,[4,l.data()];case 2:return f=p.apply(h,[a.sent()]),l.dispose(),d=f.map(function(t,e){return{score:t,idx:e}}).filter(function(t){return t.score>n}).map(function(t){return t.idx}),m=d.map(function(t){return e[t]}),g=d.map(function(t){return f[t]}),v=[],y=[],m.length>0&&(o=Date.now(),b=lt(m,g,.7),i.stage2_nms=Date.now()-o,w=b.map(function(t){var e=c[d[t]].regions.arraySync();return new Ge(e[0][0],e[0][1],e[0][2],e[0][3])}),y=b.map(function(t){return g[t]}),v=b.map(function(t,e){return m[t].calibrate(w[e])})),c.forEach(function(t){t.regions.dispose(),t.scores.dispose()}),[2,{boxes:v,scores:y}]}})})}function Ke(t,e,n,r,o){return a.b(this,void 0,void 0,function(){var u,l,f,h,p,d,m,g,v,y,b,w,x,_,S;return a.d(this,function(a){switch(a.label){case 0:return u=Date.now(),[4,Xe(t,e,{width:48,height:48})];case 1:return l=a.sent(),o.stage3_extractImagePatches=Date.now()-u,u=Date.now(),f=l.map(function(t){var e=function(t,e){return s.L(function(){var n=He(t,e);n=s.s(n,[2,2],[2,2],"same"),n=We(n=i.convLayer(n,e.conv4,"valid"),e.prelu4_alpha);var r=We(Dt(s.x(n,[n.shape[0],e.fc1.weights.shape[0]]),e.fc1),e.prelu5_alpha),o=Dt(r,e.fc2_1),a=s.m(s.r(o,1),1),u=s.D(s.F(o,a),1),c=Dt(r,e.fc2_2),l=Dt(r,e.fc2_3);return{scores:s.O(u,1)[1],regions:c,points:l}})}(t,r);return t.dispose(),e}),o.stage3_onet=Date.now()-u,h=f.length>1?s.h(f.map(function(t){return t.scores})):f[0].scores,m=(d=Array).from,[4,h.data()];case 2:return p=m.apply(d,[a.sent()]),h.dispose(),g=p.map(function(t,e){return{score:t,idx:e}}).filter(function(t){return t.score>n}).map(function(t){return t.idx}),v=g.map(function(t){var e=f[t].regions.arraySync();return new Ge(e[0][0],e[0][1],e[0][2],e[0][3])}),y=g.map(function(t,n){return e[t].calibrate(v[n])}),b=g.map(function(t){return p[t]}),w=[],x=[],_=[],y.length>0&&(u=Date.now(),S=lt(y,b,.7,!1),o.stage3_nms=Date.now()-u,w=S.map(function(t){return y[t]}),x=S.map(function(t){return b[t]}),_=S.map(function(t,e){return Array(5).fill(0).map(function(n,r){var i=f[t].points.arraySync();return new c(i[0][r]*(w[e].width+1)+w[e].left,i[0][r+5]*(w[e].height+1)+w[e].top)})})),f.forEach(function(t){t.regions.dispose(),t.scores.dispose(),t.points.dispose()}),[2,{boxes:w,scores:x,points:_}]}})})}var $e=function(t){function e(){return t.call(this,"Mtcnn")||this}return a.c(e,t),e.prototype.forwardInput=function(t,e){return void 0===e&&(e={}),a.b(this,void 0,void 0,function(){var n,r,i,o,u,l,f,h,p,d,m,g,v,y,b,w,x,_,S,T,M;return a.d(this,function(a){switch(a.label){case 0:if(!(n=this.params))throw new Error("Mtcnn - load model before inference");if(!(r=t.canvases[0]))throw new Error("Mtcnn - inputCanvas is not defined, note that passing tensors into Mtcnn.forwardInput is not supported yet.");return i={},o=Date.now(),u=s.L(function(){return t=s.m(s.f.fromPixels(r)).toFloat(),s.L(function(){return s.E(s.O(t,3).reverse(),3)});var t}),l=function(t){return u.dispose(),i.total=Date.now()-o,t},f=u.shape.slice(1),h=f[0],p=f[1],d=new _e(e),m=d.minFaceSize,g=d.scaleFactor,v=d.maxNumScales,y=d.scoreThresholds,b=d.scaleSteps,w=(b||function(t,e,n){for(var r=n[0],i=n[1],o=Fe/t,a=[],s=Math.min(r,i)*o,u=0;s>=12;)a.push(o*Math.pow(e,u)),s*=e,u+=1;return a}(m,g,[h,p])).filter(function(t){var e=ze(t,[h,p]);return Math.min(e.width,e.height)>Fe}).slice(0,v),i.scales=w,i.pyramid=w.map(function(t){return ze(t,[h,p])}),x=Date.now(),[4,qe(u,w,y[0],n.pnet,i)];case 1:return _=a.sent(),i.total_stage1=Date.now()-x,_.boxes.length?(i.stage2_numInputBoxes=_.boxes.length,x=Date.now(),[4,Ye(r,_.boxes,y[1],n.rnet,i)]):[2,l({results:[],stats:i})];case 2:return S=a.sent(),i.total_stage2=Date.now()-x,S.boxes.length?(i.stage3_numInputBoxes=S.boxes.length,x=Date.now(),[4,Ke(r,S.boxes,y[2],n.onet,i)]):[2,l({results:[],stats:i})];case 3:return T=a.sent(),i.total_stage3=Date.now()-x,M=T.boxes.map(function(t,e){return qt(Mt({},new Et(T.scores[e],new E(t.left/p,t.top/h,t.width/p,t.height/h),{height:h,width:p})),new re(T.points[e].map(function(e){return e.sub(new c(t.left,t.top)).div(new c(t.width,t.height))}),{width:t.width,height:t.height}))}),[2,l({results:M,stats:i})]}})})},e.prototype.forward=function(t,e){return void 0===e&&(e={}),a.b(this,void 0,void 0,function(){var n;return a.d(this,function(r){switch(r.label){case 0:return n=this.forwardInput,[4,st(t)];case 1:return[4,n.apply(this,[r.sent(),e])];case 2:return[2,r.sent().results]}})})},e.prototype.forwardWithStats=function(t,e){return void 0===e&&(e={}),a.b(this,void 0,void 0,function(){var n;return a.d(this,function(r){switch(r.label){case 0:return n=this.forwardInput,[4,st(t)];case 1:return[2,n.apply(this,[r.sent(),e])]}})})},e.prototype.getDefaultModelName=function(){return"mtcnn_model"},e.prototype.extractParamsFromWeigthMap=function(t){return je(t)},e.prototype.extractParams=function(t){return Ue(t)},e}(ut),Je=.4,Ze=[new c(1.603231,2.094468),new c(6.041143,7.080126),new c(2.882459,3.518061),new c(4.266906,5.178857),new c(9.041765,10.66308)],Qe=[117.001,114.697,97.404],tn=function(t){function e(){var e={withSeparableConvs:!0,iouThreshold:Je,classes:["face"],anchors:Ze,meanRgb:Qe,isFirstLayerConv2d:!0,filterSizes:[3,16,32,64,128,256,512]};return t.call(this,e)||this}return a.c(e,t),Object.defineProperty(e.prototype,"anchors",{get:function(){return this.config.anchors},enumerable:!0,configurable:!0}),e.prototype.locateFaces=function(t,e){return a.b(this,void 0,void 0,function(){return a.d(this,function(n){switch(n.label){case 0:return[4,this.detect(t,e)];case 1:return[2,n.sent().map(function(t){return new Et(t.score,t.relativeBox,{width:t.imageWidth,height:t.imageHeight})})]}})})},e.prototype.getDefaultModelName=function(){return"tiny_face_detector_model"},e.prototype.extractParamsFromWeigthMap=function(e){return t.prototype.extractParamsFromWeigthMap.call(this,e)},e}(i.TinyYolov2),en=.4,nn=[new c(.738768,.874946),new c(2.42204,2.65704),new c(4.30971,7.04493),new c(10.246,4.59428),new c(12.6868,11.8741)],rn=[new c(1.603231,2.094468),new c(6.041143,7.080126),new c(2.882459,3.518061),new c(4.266906,5.178857),new c(9.041765,10.66308)],on=[117.001,114.697,97.404],an=function(t){function e(e){void 0===e&&(e=!0);var n=Object.assign({},{withSeparableConvs:e,iouThreshold:en,classes:["face"]},e?{anchors:rn,meanRgb:on}:{anchors:nn,withClassScores:!0});return t.call(this,n)||this}return a.c(e,t),Object.defineProperty(e.prototype,"withSeparableConvs",{get:function(){return this.config.withSeparableConvs},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"anchors",{get:function(){return this.config.anchors},enumerable:!0,configurable:!0}),e.prototype.locateFaces=function(t,e){return a.b(this,void 0,void 0,function(){return a.d(this,function(n){switch(n.label){case 0:return[4,this.detect(t,e)];case 1:return[2,n.sent().map(function(t){return new Et(t.score,t.relativeBox,{width:t.imageWidth,height:t.imageHeight})})]}})})},e.prototype.getDefaultModelName=function(){return this.withSeparableConvs?"tiny_yolov2_separable_conv_model":"tiny_yolov2_model"},e.prototype.extractParamsFromWeigthMap=function(e){return t.prototype.extractParamsFromWeigthMap.call(this,e)},e}(i.TinyYolov2);var sn={ssdMobilenetv1:new Re,tinyFaceDetector:new tn,tinyYolov2:new an,mtcnn:new $e,faceLandmark68Net:new ce,faceLandmark68TinyNet:new fe,faceRecognitionNet:new we,faceExpressionNet:new jt,ageGenderNet:new ne},un=function(t){return sn.tinyFaceDetector.load(t)};function cn(t,e){var n={age:e};return Object.assign({},t,n)}function ln(t,e,n){var r={gender:e,genderProbability:n};return Object.assign({},t,r)}var fn=function(t){function e(e,n,r){var i=t.call(this)||this;return i.parentTask=e,i.input=n,i.extractedFaces=r,i}return a.c(e,t),e}(Le),hn=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.c(e,t),e.prototype.run=function(){return a.b(this,void 0,void 0,function(){var t,e,n=this;return a.d(this,function(r){switch(r.label){case 0:return[4,this.parentTask];case 1:return[4,De(t=r.sent(),this.input,function(t){return a.b(n,void 0,void 0,function(){return a.d(this,function(e){switch(e.label){case 0:return[4,Promise.all(t.map(function(t){return sn.faceExpressionNet.predictExpressions(t)}))];case 1:return[2,e.sent()]}})})},this.extractedFaces)];case 2:return e=r.sent(),[2,t.map(function(t,n){return zt(t,e[n])})]}})})},e.prototype.withAgeAndGender=function(){return new vn(this,this.input)},e}(fn),pn=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.c(e,t),e.prototype.run=function(){return a.b(this,void 0,void 0,function(){var t,e;return a.d(this,function(n){switch(n.label){case 0:return[4,this.parentTask];case 1:return(t=n.sent())?[4,Ne(t,this.input,function(t){return sn.faceExpressionNet.predictExpressions(t)},this.extractedFaces)]:[2];case 2:return e=n.sent(),[2,zt(t,e)]}})})},e.prototype.withAgeAndGender=function(){return new yn(this,this.input)},e}(fn),dn=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.c(e,t),e.prototype.withAgeAndGender=function(){return new bn(this,this.input)},e.prototype.withFaceDescriptors=function(){return new _n(this,this.input)},e}(hn),mn=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.c(e,t),e.prototype.withAgeAndGender=function(){return new wn(this,this.input)},e.prototype.withFaceDescriptor=function(){return new Sn(this,this.input)},e}(pn),gn=function(t){function e(e,n,r){var i=t.call(this)||this;return i.parentTask=e,i.input=n,i.extractedFaces=r,i}return a.c(e,t),e}(Le),vn=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.c(e,t),e.prototype.run=function(){return a.b(this,void 0,void 0,function(){var t,e,n=this;return a.d(this,function(r){switch(r.label){case 0:return[4,this.parentTask];case 1:return[4,De(t=r.sent(),this.input,function(t){return a.b(n,void 0,void 0,function(){return a.d(this,function(e){switch(e.label){case 0:return[4,Promise.all(t.map(function(t){return sn.ageGenderNet.predictAgeAndGender(t)}))];case 1:return[2,e.sent()]}})})},this.extractedFaces)];case 2:return e=r.sent(),[2,t.map(function(t,n){var r=e[n],i=r.age;return cn(ln(t,r.gender,r.genderProbability),i)})]}})})},e.prototype.withFaceExpressions=function(){return new hn(this,this.input)},e}(gn),yn=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.c(e,t),e.prototype.run=function(){return a.b(this,void 0,void 0,function(){var t,e,n,r,i;return a.d(this,function(o){switch(o.label){case 0:return[4,this.parentTask];case 1:return(t=o.sent())?[4,Ne(t,this.input,function(t){return sn.ageGenderNet.predictAgeAndGender(t)},this.extractedFaces)]:[2];case 2:return e=o.sent(),n=e.age,r=e.gender,i=e.genderProbability,[2,cn(ln(t,r,i),n)]}})})},e.prototype.withFaceExpressions=function(){return new pn(this,this.input)},e}(gn),bn=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.c(e,t),e.prototype.withFaceExpressions=function(){return new dn(this,this.input)},e.prototype.withFaceDescriptors=function(){return new _n(this,this.input)},e}(vn),wn=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.c(e,t),e.prototype.withFaceExpressions=function(){return new mn(this,this.input)},e.prototype.withFaceDescriptor=function(){return new Sn(this,this.input)},e}(yn),xn=function(t){function e(e,n){var r=t.call(this)||this;return r.parentTask=e,r.input=n,r}return a.c(e,t),e}(Le),_n=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.c(e,t),e.prototype.run=function(){return a.b(this,void 0,void 0,function(){var t;return a.d(this,function(e){switch(e.label){case 0:return[4,this.parentTask];case 1:return[4,De(t=e.sent(),this.input,function(t){return Promise.all(t.map(function(t){return sn.faceRecognitionNet.computeFaceDescriptor(t)}))},null,function(t){return t.landmarks.align(null,{useDlibAlignment:!0})})];case 2:return[2,e.sent().map(function(e,n){return xe(t[n],e)})]}})})},e.prototype.withFaceExpressions=function(){return new dn(this,this.input)},e.prototype.withAgeAndGender=function(){return new bn(this,this.input)},e}(xn),Sn=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.c(e,t),e.prototype.run=function(){return a.b(this,void 0,void 0,function(){var t,e;return a.d(this,function(n){switch(n.label){case 0:return[4,this.parentTask];case 1:return(t=n.sent())?[4,Ne(t,this.input,function(t){return sn.faceRecognitionNet.computeFaceDescriptor(t)},null,function(t){return t.landmarks.align(null,{useDlibAlignment:!0})})]:[2];case 2:return e=n.sent(),[2,xe(t,e)]}})})},e.prototype.withFaceExpressions=function(){return new mn(this,this.input)},e.prototype.withAgeAndGender=function(){return new wn(this,this.input)},e}(xn),En=function(t){function e(e,n,r){var i=t.call(this)||this;return i.parentTask=e,i.input=n,i.useTinyLandmarkNet=r,i}return a.c(e,t),Object.defineProperty(e.prototype,"landmarkNet",{get:function(){return this.useTinyLandmarkNet?sn.faceLandmark68TinyNet:sn.faceLandmark68Net},enumerable:!0,configurable:!0}),e}(Le),Tn=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.c(e,t),e.prototype.run=function(){return a.b(this,void 0,void 0,function(){var t,e,n,r,i,o=this;return a.d(this,function(a){switch(a.label){case 0:return[4,this.parentTask];case 1:return t=a.sent(),e=t.map(function(t){return t.detection}),this.input instanceof s.a?[4,se(this.input,e)]:[3,3];case 2:return r=a.sent(),[3,5];case 3:return[4,ae(this.input,e)];case 4:r=a.sent(),a.label=5;case 5:return n=r,[4,Promise.all(n.map(function(t){return o.landmarkNet.detectLandmarks(t)}))];case 6:return i=a.sent(),n.forEach(function(t){return t instanceof s.a&&t.dispose()}),[2,t.map(function(t,e){return qt(t,i[e])})]}})})},e.prototype.withFaceExpressions=function(){return new dn(this,this.input)},e.prototype.withAgeAndGender=function(){return new bn(this,this.input)},e.prototype.withFaceDescriptors=function(){return new _n(this,this.input)},e}(En),Mn=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.c(e,t),e.prototype.run=function(){return a.b(this,void 0,void 0,function(){var t,e,n,r,i;return a.d(this,function(o){switch(o.label){case 0:return[4,this.parentTask];case 1:return(t=o.sent())?(e=t.detection,this.input instanceof s.a?[4,se(this.input,[e])]:[3,3]):[2];case 2:return r=o.sent(),[3,5];case 3:return[4,ae(this.input,[e])];case 4:r=o.sent(),o.label=5;case 5:return n=r,[4,this.landmarkNet.detectLandmarks(n[0])];case 6:return i=o.sent(),n.forEach(function(t){return t instanceof s.a&&t.dispose()}),[2,qt(t,i)]}})})},e.prototype.withFaceExpressions=function(){return new mn(this,this.input)},e.prototype.withAgeAndGender=function(){return new wn(this,this.input)},e.prototype.withFaceDescriptor=function(){return new Sn(this,this.input)},e}(En),An=function(t){function e(e,n){void 0===n&&(n=new Oe);var r=t.call(this)||this;return r.input=e,r.options=n,r}return a.c(e,t),e}(Le),Cn=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.c(e,t),e.prototype.run=function(){return a.b(this,void 0,void 0,function(){var t,e,n,r;return a.d(this,function(o){switch(o.label){case 0:return e=(t=this).input,(n=t.options)instanceof _e?[4,sn.mtcnn.forward(e,n)]:[3,2];case 1:return[2,o.sent().map(function(t){return t.detection})];case 2:if(!(r=n instanceof ke?function(t){return sn.tinyFaceDetector.locateFaces(t,n)}:n instanceof Oe?function(t){return sn.ssdMobilenetv1.locateFaces(t,n)}:n instanceof i.TinyYolov2Options?function(t){return sn.tinyYolov2.locateFaces(t,n)}:null))throw new Error("detectFaces - expected options to be instance of TinyFaceDetectorOptions | SsdMobilenetv1Options | MtcnnOptions | TinyYolov2Options");return[2,r(e)]}})})},e.prototype.runAndExtendWithFaceDetections=function(){var t=this;return new Promise(function(e){return a.b(t,void 0,void 0,function(){var t;return a.d(this,function(n){switch(n.label){case 0:return[4,this.run()];case 1:return t=n.sent(),[2,e(t.map(function(t){return Mt({},t)}))]}})})})},e.prototype.withFaceLandmarks=function(t){return void 0===t&&(t=!1),new Tn(this.runAndExtendWithFaceDetections(),this.input,t)},e.prototype.withFaceExpressions=function(){return new hn(this.runAndExtendWithFaceDetections(),this.input)},e.prototype.withAgeAndGender=function(){return new vn(this.runAndExtendWithFaceDetections(),this.input)},e}(An);!function(t){function e(){return null!==t&&t.apply(this,arguments)||this}a.c(e,t),e.prototype.run=function(){return a.b(this,void 0,void 0,function(){var t,e;return a.d(this,function(n){switch(n.label){case 0:return[4,new Cn(this.input,this.options)];case 1:return t=n.sent(),e=t[0],t.forEach(function(t){t.score>e.score&&(e=t)}),[2,e]}})})},e.prototype.runAndExtendWithFaceDetection=function(){var t=this;return new Promise(function(e){return a.b(t,void 0,void 0,function(){var t;return a.d(this,function(n){switch(n.label){case 0:return[4,this.run()];case 1:return t=n.sent(),[2,e(t?Mt({},t):void 0)]}})})})},e.prototype.withFaceLandmarks=function(t){return void 0===t&&(t=!1),new Mn(this.runAndExtendWithFaceDetection(),this.input,t)},e.prototype.withFaceExpressions=function(){return new pn(this.runAndExtendWithFaceDetection(),this.input)},e.prototype.withAgeAndGender=function(){return new yn(this.runAndExtendWithFaceDetection(),this.input)}}(An);function Pn(t,e){return void 0===e&&(e=new Oe),new Cn(t,e)}!function(){function t(t,e){void 0===e&&(e=.6),this._distanceThreshold=e;var n=Array.isArray(t)?t:[t];if(!n.length)throw new Error("FaceRecognizer.constructor - expected atleast one input");var r=1,i=function(){return"person "+r++};this._labeledDescriptors=n.map(function(t){if(t instanceof oe)return t;if(t instanceof Float32Array)return new oe(i(),[t]);if(t.descriptor&&t.descriptor instanceof Float32Array)return new oe(i(),[t.descriptor]);throw new Error("FaceRecognizer.constructor - expected inputs to be of type LabeledFaceDescriptors | WithFaceDescriptor | Float32Array | Array | Float32Array>")})}Object.defineProperty(t.prototype,"labeledDescriptors",{get:function(){return this._labeledDescriptors},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"distanceThreshold",{get:function(){return this._distanceThreshold},enumerable:!0,configurable:!0}),t.prototype.computeMeanDistance=function(t,e){return e.map(function(e){return function(t,e){if(t.length!==e.length)throw new Error("euclideanDistance: arr1.length !== arr2.length");var n=Array.from(t),r=Array.from(e);return Math.sqrt(n.map(function(t,e){return t-r[e]}).reduce(function(t,e){return t+Math.pow(e,2)},0))}(e,t)}).reduce(function(t,e){return t+e},0)/(e.length||1)},t.prototype.matchDescriptor=function(t){var e=this;return this.labeledDescriptors.map(function(n){var r=n.descriptors,i=n.label;return new ie(i,e.computeMeanDistance(t,r))}).reduce(function(t,e){return t.distance>>32-e}function c(t,e,n,r,i,o,a){return u(t+(e&n|~e&r)+i+o|0,a)+e|0}function l(t,e,n,r,i,o,a){return u(t+(e&r|n&~r)+i+o|0,a)+e|0}function f(t,e,n,r,i,o,a){return u(t+(e^n^r)+i+o|0,a)+e|0}function h(t,e,n,r,i,o,a){return u(t+(n^(e|~r))+i+o|0,a)+e|0}r(s,i),s.prototype._update=function(){for(var t=a,e=0;e<16;++e)t[e]=this._block.readInt32LE(4*e);var n=this._a,r=this._b,i=this._c,o=this._d;n=c(n,r,i,o,t[0],3614090360,7),o=c(o,n,r,i,t[1],3905402710,12),i=c(i,o,n,r,t[2],606105819,17),r=c(r,i,o,n,t[3],3250441966,22),n=c(n,r,i,o,t[4],4118548399,7),o=c(o,n,r,i,t[5],1200080426,12),i=c(i,o,n,r,t[6],2821735955,17),r=c(r,i,o,n,t[7],4249261313,22),n=c(n,r,i,o,t[8],1770035416,7),o=c(o,n,r,i,t[9],2336552879,12),i=c(i,o,n,r,t[10],4294925233,17),r=c(r,i,o,n,t[11],2304563134,22),n=c(n,r,i,o,t[12],1804603682,7),o=c(o,n,r,i,t[13],4254626195,12),i=c(i,o,n,r,t[14],2792965006,17),n=l(n,r=c(r,i,o,n,t[15],1236535329,22),i,o,t[1],4129170786,5),o=l(o,n,r,i,t[6],3225465664,9),i=l(i,o,n,r,t[11],643717713,14),r=l(r,i,o,n,t[0],3921069994,20),n=l(n,r,i,o,t[5],3593408605,5),o=l(o,n,r,i,t[10],38016083,9),i=l(i,o,n,r,t[15],3634488961,14),r=l(r,i,o,n,t[4],3889429448,20),n=l(n,r,i,o,t[9],568446438,5),o=l(o,n,r,i,t[14],3275163606,9),i=l(i,o,n,r,t[3],4107603335,14),r=l(r,i,o,n,t[8],1163531501,20),n=l(n,r,i,o,t[13],2850285829,5),o=l(o,n,r,i,t[2],4243563512,9),i=l(i,o,n,r,t[7],1735328473,14),n=f(n,r=l(r,i,o,n,t[12],2368359562,20),i,o,t[5],4294588738,4),o=f(o,n,r,i,t[8],2272392833,11),i=f(i,o,n,r,t[11],1839030562,16),r=f(r,i,o,n,t[14],4259657740,23),n=f(n,r,i,o,t[1],2763975236,4),o=f(o,n,r,i,t[4],1272893353,11),i=f(i,o,n,r,t[7],4139469664,16),r=f(r,i,o,n,t[10],3200236656,23),n=f(n,r,i,o,t[13],681279174,4),o=f(o,n,r,i,t[0],3936430074,11),i=f(i,o,n,r,t[3],3572445317,16),r=f(r,i,o,n,t[6],76029189,23),n=f(n,r,i,o,t[9],3654602809,4),o=f(o,n,r,i,t[12],3873151461,11),i=f(i,o,n,r,t[15],530742520,16),n=h(n,r=f(r,i,o,n,t[2],3299628645,23),i,o,t[0],4096336452,6),o=h(o,n,r,i,t[7],1126891415,10),i=h(i,o,n,r,t[14],2878612391,15),r=h(r,i,o,n,t[5],4237533241,21),n=h(n,r,i,o,t[12],1700485571,6),o=h(o,n,r,i,t[3],2399980690,10),i=h(i,o,n,r,t[10],4293915773,15),r=h(r,i,o,n,t[1],2240044497,21),n=h(n,r,i,o,t[8],1873313359,6),o=h(o,n,r,i,t[15],4264355552,10),i=h(i,o,n,r,t[6],2734768916,15),r=h(r,i,o,n,t[13],1309151649,21),n=h(n,r,i,o,t[4],4149444226,6),o=h(o,n,r,i,t[11],3174756917,10),i=h(i,o,n,r,t[2],718787259,15),r=h(r,i,o,n,t[9],3951481745,21),this._a=this._a+n|0,this._b=this._b+r|0,this._c=this._c+i|0,this._d=this._d+o|0},s.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var t=o.allocUnsafe(16);return t.writeInt32LE(this._a,0),t.writeInt32LE(this._b,4),t.writeInt32LE(this._c,8),t.writeInt32LE(this._d,12),t},t.exports=s},function(t,e,n){t.exports=i;var r=n(47).EventEmitter;function i(){r.call(this)}n(2)(i,r),i.Readable=n(48),i.Writable=n(134),i.Duplex=n(135),i.Transform=n(136),i.PassThrough=n(137),i.Stream=i,i.prototype.pipe=function(t,e){var n=this;function i(e){t.writable&&!1===t.write(e)&&n.pause&&n.pause()}function o(){n.readable&&n.resume&&n.resume()}n.on("data",i),t.on("drain",o),t._isStdio||e&&!1===e.end||(n.on("end",s),n.on("close",u));var a=!1;function s(){a||(a=!0,t.end())}function u(){a||(a=!0,"function"===typeof t.destroy&&t.destroy())}function c(t){if(l(),0===r.listenerCount(this,"error"))throw t}function l(){n.removeListener("data",i),t.removeListener("drain",o),n.removeListener("end",s),n.removeListener("close",u),n.removeListener("error",c),t.removeListener("error",c),n.removeListener("end",l),n.removeListener("close",l),t.removeListener("close",l)}return n.on("error",c),t.on("error",c),n.on("end",l),n.on("close",l),t.on("close",l),t.emit("pipe",n),t}},function(t,e,n){"use strict";var r,i="object"===typeof Reflect?Reflect:null,o=i&&"function"===typeof i.apply?i.apply:function(t,e,n){return Function.prototype.apply.call(t,e,n)};r=i&&"function"===typeof i.ownKeys?i.ownKeys:Object.getOwnPropertySymbols?function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:function(t){return Object.getOwnPropertyNames(t)};var a=Number.isNaN||function(t){return t!==t};function s(){s.init.call(this)}t.exports=s,s.EventEmitter=s,s.prototype._events=void 0,s.prototype._eventsCount=0,s.prototype._maxListeners=void 0;var u=10;function c(t){return void 0===t._maxListeners?s.defaultMaxListeners:t._maxListeners}function l(t,e,n,r){var i,o,a,s;if("function"!==typeof n)throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof n);if(void 0===(o=t._events)?(o=t._events=Object.create(null),t._eventsCount=0):(void 0!==o.newListener&&(t.emit("newListener",e,n.listener?n.listener:n),o=t._events),a=o[e]),void 0===a)a=o[e]=n,++t._eventsCount;else if("function"===typeof a?a=o[e]=r?[n,a]:[a,n]:r?a.unshift(n):a.push(n),(i=c(t))>0&&a.length>i&&!a.warned){a.warned=!0;var u=new Error("Possible EventEmitter memory leak detected. "+a.length+" "+String(e)+" listeners added. Use emitter.setMaxListeners() to increase limit");u.name="MaxListenersExceededWarning",u.emitter=t,u.type=e,u.count=a.length,s=u,console&&console.warn&&console.warn(s)}return t}function f(t,e,n){var r={fired:!1,wrapFn:void 0,target:t,type:e,listener:n},i=function(){for(var t=[],e=0;e0&&(a=e[0]),a instanceof Error)throw a;var s=new Error("Unhandled error."+(a?" ("+a.message+")":""));throw s.context=a,s}var u=i[t];if(void 0===u)return!1;if("function"===typeof u)o(u,this,e);else{var c=u.length,l=d(u,c);for(n=0;n=0;o--)if(n[o]===e||n[o].listener===e){a=n[o].listener,i=o;break}if(i<0)return this;0===i?n.shift():function(t,e){for(;e+1=0;r--)this.removeListener(t,e[r]);return this},s.prototype.listeners=function(t){return h(this,t,!0)},s.prototype.rawListeners=function(t){return h(this,t,!1)},s.listenerCount=function(t,e){return"function"===typeof t.listenerCount?t.listenerCount(e):p.call(t,e)},s.prototype.listenerCount=p,s.prototype.eventNames=function(){return this._eventsCount>0?r(this._events):[]}},function(t,e,n){(e=t.exports=n(66)).Stream=e,e.Readable=e,e.Writable=n(49),e.Duplex=n(20),e.Transform=n(69),e.PassThrough=n(133)},function(t,e,n){"use strict";(function(e,r,i){var o=n(37);function a(t){var e=this;this.next=null,this.entry=null,this.finish=function(){!function(t,e,n){var r=t.entry;t.entry=null;for(;r;){var i=r.callback;e.pendingcb--,i(n),r=r.next}e.corkedRequestsFree?e.corkedRequestsFree.next=t:e.corkedRequestsFree=t}(e,t)}}t.exports=y;var s,u=!e.browser&&["v0.10","v0.9."].indexOf(e.version.slice(0,5))>-1?r:o.nextTick;y.WritableState=v;var c=n(28);c.inherits=n(2);var l={deprecate:n(132)},f=n(67),h=n(3).Buffer,p=i.Uint8Array||function(){};var d,m=n(68);function g(){}function v(t,e){s=s||n(20),t=t||{};var r=e instanceof s;this.objectMode=!!t.objectMode,r&&(this.objectMode=this.objectMode||!!t.writableObjectMode);var i=t.highWaterMark,c=t.writableHighWaterMark,l=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(c||0===c)?c:l,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var f=!1===t.decodeStrings;this.decodeStrings=!f,this.defaultEncoding=t.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(t){!function(t,e){var n=t._writableState,r=n.sync,i=n.writecb;if(function(t){t.writing=!1,t.writecb=null,t.length-=t.writelen,t.writelen=0}(n),e)!function(t,e,n,r,i){--e.pendingcb,n?(o.nextTick(i,r),o.nextTick(E,t,e),t._writableState.errorEmitted=!0,t.emit("error",r)):(i(r),t._writableState.errorEmitted=!0,t.emit("error",r),E(t,e))}(t,n,r,e,i);else{var a=_(n);a||n.corked||n.bufferProcessing||!n.bufferedRequest||x(t,n),r?u(w,t,n,a,i):w(t,n,a,i)}}(e,t)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new a(this)}function y(t){if(s=s||n(20),!d.call(y,this)&&!(this instanceof s))return new y(t);this._writableState=new v(t,this),this.writable=!0,t&&("function"===typeof t.write&&(this._write=t.write),"function"===typeof t.writev&&(this._writev=t.writev),"function"===typeof t.destroy&&(this._destroy=t.destroy),"function"===typeof t.final&&(this._final=t.final)),f.call(this)}function b(t,e,n,r,i,o,a){e.writelen=r,e.writecb=a,e.writing=!0,e.sync=!0,n?t._writev(i,e.onwrite):t._write(i,o,e.onwrite),e.sync=!1}function w(t,e,n,r){n||function(t,e){0===e.length&&e.needDrain&&(e.needDrain=!1,t.emit("drain"))}(t,e),e.pendingcb--,r(),E(t,e)}function x(t,e){e.bufferProcessing=!0;var n=e.bufferedRequest;if(t._writev&&n&&n.next){var r=e.bufferedRequestCount,i=new Array(r),o=e.corkedRequestsFree;o.entry=n;for(var s=0,u=!0;n;)i[s]=n,n.isBuf||(u=!1),n=n.next,s+=1;i.allBuffers=u,b(t,e,!0,e.length,i,"",o.finish),e.pendingcb++,e.lastBufferedRequest=null,o.next?(e.corkedRequestsFree=o.next,o.next=null):e.corkedRequestsFree=new a(e),e.bufferedRequestCount=0}else{for(;n;){var c=n.chunk,l=n.encoding,f=n.callback;if(b(t,e,!1,e.objectMode?1:c.length,c,l,f),n=n.next,e.bufferedRequestCount--,e.writing)break}null===n&&(e.lastBufferedRequest=null)}e.bufferedRequest=n,e.bufferProcessing=!1}function _(t){return t.ending&&0===t.length&&null===t.bufferedRequest&&!t.finished&&!t.writing}function S(t,e){t._final(function(n){e.pendingcb--,n&&t.emit("error",n),e.prefinished=!0,t.emit("prefinish"),E(t,e)})}function E(t,e){var n=_(e);return n&&(!function(t,e){e.prefinished||e.finalCalled||("function"===typeof t._final?(e.pendingcb++,e.finalCalled=!0,o.nextTick(S,t,e)):(e.prefinished=!0,t.emit("prefinish")))}(t,e),0===e.pendingcb&&(e.finished=!0,t.emit("finish"))),n}c.inherits(y,f),v.prototype.getBuffer=function(){for(var t=this.bufferedRequest,e=[];t;)e.push(t),t=t.next;return e},function(){try{Object.defineProperty(v.prototype,"buffer",{get:l.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(t){}}(),"function"===typeof Symbol&&Symbol.hasInstance&&"function"===typeof Function.prototype[Symbol.hasInstance]?(d=Function.prototype[Symbol.hasInstance],Object.defineProperty(y,Symbol.hasInstance,{value:function(t){return!!d.call(this,t)||this===y&&(t&&t._writableState instanceof v)}})):d=function(t){return t instanceof this},y.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},y.prototype.write=function(t,e,n){var r,i=this._writableState,a=!1,s=!i.objectMode&&(r=t,h.isBuffer(r)||r instanceof p);return s&&!h.isBuffer(t)&&(t=function(t){return h.from(t)}(t)),"function"===typeof e&&(n=e,e=null),s?e="buffer":e||(e=i.defaultEncoding),"function"!==typeof n&&(n=g),i.ended?function(t,e){var n=new Error("write after end");t.emit("error",n),o.nextTick(e,n)}(this,n):(s||function(t,e,n,r){var i=!0,a=!1;return null===n?a=new TypeError("May not write null values to stream"):"string"===typeof n||void 0===n||e.objectMode||(a=new TypeError("Invalid non-string/buffer chunk")),a&&(t.emit("error",a),o.nextTick(r,a),i=!1),i}(this,i,t,n))&&(i.pendingcb++,a=function(t,e,n,r,i,o){if(!n){var a=function(t,e,n){t.objectMode||!1===t.decodeStrings||"string"!==typeof e||(e=h.from(e,n));return e}(e,r,i);r!==a&&(n=!0,i="buffer",r=a)}var s=e.objectMode?1:r.length;e.length+=s;var u=e.length-1))throw new TypeError("Unknown encoding: "+t);return this._writableState.defaultEncoding=t,this},Object.defineProperty(y.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),y.prototype._write=function(t,e,n){n(new Error("_write() is not implemented"))},y.prototype._writev=null,y.prototype.end=function(t,e,n){var r=this._writableState;"function"===typeof t?(n=t,t=null,e=null):"function"===typeof e&&(n=e,e=null),null!==t&&void 0!==t&&this.write(t,e),r.corked&&(r.corked=1,this.uncork()),r.ending||r.finished||function(t,e,n){e.ending=!0,E(t,e),n&&(e.finished?o.nextTick(n):t.once("finish",n));e.ended=!0,t.writable=!1}(this,r,n)},Object.defineProperty(y.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(t){this._writableState&&(this._writableState.destroyed=t)}}),y.prototype.destroy=m.destroy,y.prototype._undestroy=m.undestroy,y.prototype._destroy=function(t,e){this.end(),e(t)}}).call(this,n(12),n(63).setImmediate,n(9))},function(t,e,n){"use strict";var r=n(3).Buffer,i=r.isEncoding||function(t){switch((t=""+t)&&t.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function o(t){var e;switch(this.encoding=function(t){var e=function(t){if(!t)return"utf8";for(var e;;)switch(t){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return t;default:if(e)return;t=(""+t).toLowerCase(),e=!0}}(t);if("string"!==typeof e&&(r.isEncoding===i||!i(t)))throw new Error("Unknown encoding: "+t);return e||t}(t),this.encoding){case"utf16le":this.text=u,this.end=c,e=4;break;case"utf8":this.fillLast=s,e=4;break;case"base64":this.text=l,this.end=f,e=3;break;default:return this.write=h,void(this.end=p)}this.lastNeed=0,this.lastTotal=0,this.lastChar=r.allocUnsafe(e)}function a(t){return t<=127?0:t>>5===6?2:t>>4===14?3:t>>3===30?4:t>>6===2?-1:-2}function s(t){var e=this.lastTotal-this.lastNeed,n=function(t,e,n){if(128!==(192&e[0]))return t.lastNeed=0,"\ufffd";if(t.lastNeed>1&&e.length>1){if(128!==(192&e[1]))return t.lastNeed=1,"\ufffd";if(t.lastNeed>2&&e.length>2&&128!==(192&e[2]))return t.lastNeed=2,"\ufffd"}}(this,t);return void 0!==n?n:this.lastNeed<=t.length?(t.copy(this.lastChar,e,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(t.copy(this.lastChar,e,0,t.length),void(this.lastNeed-=t.length))}function u(t,e){if((t.length-e)%2===0){var n=t.toString("utf16le",e);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=t[t.length-1],t.toString("utf16le",e,t.length-1)}function c(t){var e=t&&t.length?this.write(t):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return e+this.lastChar.toString("utf16le",0,n)}return e}function l(t,e){var n=(t.length-e)%3;return 0===n?t.toString("base64",e):(this.lastNeed=3-n,this.lastTotal=3,1===n?this.lastChar[0]=t[t.length-1]:(this.lastChar[0]=t[t.length-2],this.lastChar[1]=t[t.length-1]),t.toString("base64",e,t.length-n))}function f(t){var e=t&&t.length?this.write(t):"";return this.lastNeed?e+this.lastChar.toString("base64",0,3-this.lastNeed):e}function h(t){return t.toString(this.encoding)}function p(t){return t&&t.length?this.write(t):""}e.StringDecoder=o,o.prototype.write=function(t){if(0===t.length)return"";var e,n;if(this.lastNeed){if(void 0===(e=this.fillLast(t)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0)return i>0&&(t.lastNeed=i-1),i;if(--r=0)return i>0&&(t.lastNeed=i-2),i;if(--r=0)return i>0&&(2===i?i=0:t.lastNeed=i-3),i;return 0}(this,t,e);if(!this.lastNeed)return t.toString("utf8",e);this.lastTotal=n;var r=t.length-(n-this.lastNeed);return t.copy(this.lastChar,0,r),t.toString("utf8",e,r)},o.prototype.fillLast=function(t){if(this.lastNeed<=t.length)return t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);t.copy(this.lastChar,this.lastTotal-this.lastNeed,0,t.length),this.lastNeed-=t.length}},function(t,e,n){"use strict";var r=n(7).Buffer,i=n(2),o=n(65),a=new Array(16),s=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13],u=[5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11],c=[11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6],l=[8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11],f=[0,1518500249,1859775393,2400959708,2840853838],h=[1352829926,1548603684,1836072691,2053994217,0];function p(){o.call(this,64),this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520}function d(t,e){return t<>>32-e}function m(t,e,n,r,i,o,a,s){return d(t+(e^n^r)+o+a|0,s)+i|0}function g(t,e,n,r,i,o,a,s){return d(t+(e&n|~e&r)+o+a|0,s)+i|0}function v(t,e,n,r,i,o,a,s){return d(t+((e|~n)^r)+o+a|0,s)+i|0}function y(t,e,n,r,i,o,a,s){return d(t+(e&r|n&~r)+o+a|0,s)+i|0}function b(t,e,n,r,i,o,a,s){return d(t+(e^(n|~r))+o+a|0,s)+i|0}i(p,o),p.prototype._update=function(){for(var t=a,e=0;e<16;++e)t[e]=this._block.readInt32LE(4*e);for(var n=0|this._a,r=0|this._b,i=0|this._c,o=0|this._d,p=0|this._e,w=0|this._a,x=0|this._b,_=0|this._c,S=0|this._d,E=0|this._e,T=0;T<80;T+=1){var M,A;T<16?(M=m(n,r,i,o,p,t[s[T]],f[0],c[T]),A=b(w,x,_,S,E,t[u[T]],h[0],l[T])):T<32?(M=g(n,r,i,o,p,t[s[T]],f[1],c[T]),A=y(w,x,_,S,E,t[u[T]],h[1],l[T])):T<48?(M=v(n,r,i,o,p,t[s[T]],f[2],c[T]),A=v(w,x,_,S,E,t[u[T]],h[2],l[T])):T<64?(M=y(n,r,i,o,p,t[s[T]],f[3],c[T]),A=g(w,x,_,S,E,t[u[T]],h[3],l[T])):(M=b(n,r,i,o,p,t[s[T]],f[4],c[T]),A=m(w,x,_,S,E,t[u[T]],h[4],l[T])),n=p,p=o,o=d(i,10),i=r,r=M,w=E,E=S,S=d(_,10),_=x,x=A}var C=this._b+i+S|0;this._b=this._c+o+E|0,this._c=this._d+p+w|0,this._d=this._e+n+x|0,this._e=this._a+r+_|0,this._a=C},p.prototype._digest=function(){this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),this._block.writeUInt32LE(this._length[0],56),this._block.writeUInt32LE(this._length[1],60),this._update();var t=r.alloc?r.alloc(20):new r(20);return t.writeInt32LE(this._a,0),t.writeInt32LE(this._b,4),t.writeInt32LE(this._c,8),t.writeInt32LE(this._d,12),t.writeInt32LE(this._e,16),t},t.exports=p},function(t,e,n){(e=t.exports=function(t){t=t.toLowerCase();var n=e[t];if(!n)throw new Error(t+" is not supported (we accept pull requests)");return new n}).sha=n(138),e.sha1=n(139),e.sha224=n(140),e.sha256=n(70),e.sha384=n(141),e.sha512=n(71)},function(t,e,n){"use strict";e.utils=n(147),e.Cipher=n(148),e.DES=n(149),e.CBC=n(150),e.EDE=n(151)},function(t,e,n){var r=n(152),i=n(160),o=n(81);e.createCipher=e.Cipher=r.createCipher,e.createCipheriv=e.Cipheriv=r.createCipheriv,e.createDecipher=e.Decipher=i.createDecipher,e.createDecipheriv=e.Decipheriv=i.createDecipheriv,e.listCiphers=e.getCiphers=function(){return Object.keys(o)}},function(t,e,n){var r={ECB:n(153),CBC:n(154),CFB:n(155),CFB8:n(156),CFB1:n(157),OFB:n(158),CTR:n(79),GCM:n(79)},i=n(81);for(var o in i)i[o].module=r[i[o].mode];t.exports=i},function(t,e,n){(function(e){var r=n(6),i=n(22);function o(t,n){var i=function(t){var e=a(t);return{blinder:e.toRed(r.mont(t.modulus)).redPow(new r(t.publicExponent)).fromRed(),unblinder:e.invm(t.modulus)}}(n),o=n.modulus.byteLength(),s=(r.mont(n.modulus),new r(t).mul(i.blinder).umod(n.modulus)),u=s.toRed(r.mont(n.prime1)),c=s.toRed(r.mont(n.prime2)),l=n.coefficient,f=n.prime1,h=n.prime2,p=u.redPow(n.exponent1),d=c.redPow(n.exponent2);p=p.fromRed(),d=d.fromRed();var m=p.isub(d).imul(l).umod(f);return m.imul(h),d.iadd(m),new e(d.imul(i.unblinder).umod(n.modulus).toArray(!1,o))}function a(t){for(var e=t.modulus.byteLength(),n=new r(i(e));n.cmp(t.modulus)>=0||!n.umod(t.prime1)||!n.umod(t.prime2);)n=new r(i(e));return n}t.exports=o,o.getr=a}).call(this,n(7).Buffer)},function(t,e,n){var r=e;r.utils=n(15),r.common=n(30),r.sha=n(176),r.ripemd=n(180),r.hmac=n(181),r.sha1=r.sha.sha1,r.sha256=r.sha.sha256,r.sha224=r.sha.sha224,r.sha384=r.sha.sha384,r.sha512=r.sha.sha512,r.ripemd160=r.ripemd.ripemd160},function(module,exports,__webpack_require__){var e;window,e=function(){return function(t){var e={};function n(r){if(e[r])return e[r].exports;var i=e[r]={i:r,l:!1,exports:{}};return t[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=t,n.c=e,n.d=function(t,e,r){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:r})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var i in t)n.d(r,i,function(e){return t[e]}.bind(null,i));return r},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=25)}([function(t,e,n){"use strict";var r=this&&this.__read||function(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var r,i,o=n.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(r=o.next()).done;)a.push(r.value)}catch(t){i={error:t}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return a},i=this&&this.__values||function(t){var e="function"==typeof Symbol&&t[Symbol.iterator],n=0;return e?e.call(t):{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}}},o=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});var a=o(n(13)),s=n(9),u=n(1);e.checkInputsShape=function(t){for(var e=[],n=1;n1&&p>1)return;u[s-f]=Math.max(h,p)}return u},t.index=function(e,n){var r=new Array(n.length);return t.fillIndex(e,n,r),r},t.fillIndex=function(t,e,n){for(var r=t.length-e.length,i=0;i=0;w--)l[w]=y%a[w],y=Math.floor(y/a[w]);g||(t.fillIndex(l,e.dims,f),p=e.get(f)),v||(t.fillIndex(l,n.dims,h),m=n.get(h)),c.set(l,r(p,m))}}return c}},t.isValidBroadcast=function(t,e){var n=t.length,r=e.length;if(n>r)return!1;for(var i=1;i<=n;i++)if(1!==t[n-i]&&t[n-i]!==e[r-i])return!1;return!0},t}();e.BroadcastUtil=l,e.arrayCopyHelper=function(t,e,n,r,i){if(r<0||r>=e.length)throw new Error("sourceIndex out of bounds");if(n<0||n>=t.length)throw new Error("targetIndex out of bounds");if(r+i>e.length)throw new Error("source indices to be copied are outside bounds");if(n+i>t.length)throw new Error("target array is too small to hold result");for(var o=0;oe.length)throw new Error("invalid dimension of "+n+" for sizeFromDimension as Tensor has "+e.length+" dimensions.");return t.getSizeFromDimensionRange(e,n,e.length)},t.sizeToDimension=function(e,n){if(n<0||n>e.length)throw new Error("invalid dimension of "+n+" for sizeToDimension as Tensor has "+e.length+" dimensions.");return t.getSizeFromDimensionRange(e,0,n)},t.getSizeFromDimensionRange=function(t,e,n){for(var r=1,i=e;i=0;--r)n[r]=n[r+1]*t[r+1];return n},t.transpose=function(t){return t.slice().reverse()},t.indicesToOffset=function(t,e,n){void 0===n&&(n=t.length);for(var r=0,i=0;i=e)throw new Error("unsupported axis for this operation.");return t<0?t+e:t},t.incrementIndex=function(t,e,n){if(0===e.length||0===t.length)throw new Error("Index incrementing unsupported for scalar Tensor");if(void 0===n)n=e.length;else if(n<=0||n>e.length)throw new Error("Incorrect axis to increment on");for(var r=n-1;r>=0&&(t[r]++,!(t[r]=e.length)throw new Error("the dimension with value zero exceeds the dimension size of the input tensor");i[s]=e[s]}else i[s]=n[s];a*=i[s]}}var u=t.size(e);if(-1!==o){if(u%a!=0)throw new Error("the input tensor cannot be reshaped to the requested shape. Input shape: ["+e+"] Output shape: ["+n+"]");i[o]=u/a}else if(a!==u)throw new Error("reshapedDims and originalDims don't have matching sizes");return i},t.sortBasedOnPerm=function(t,e){return e?e.map(function(e){return t[e]}):t.slice().reverse()},t.padShape=function(t,e){var n=t.length;return t.map(function(t,r){return t+e[r]+e[r+n]})},t.areEqual=function(t,e){return t.length===e.length&&t.every(function(t,n){return t===e[n]})},t.validateDimsAndCalcSize=function(t){var e,n;if(t.length>6)throw new TypeError("Only rank 0 to 6 is supported for tensor shape.");var r=1;try{for(var o=i(t),a=o.next();!a.done;a=o.next()){var s=a.value;if(!Number.isInteger(s))throw new TypeError("Invalid shape: "+s+" is not an integer");if(s<=0||s>2147483647)throw new TypeError("Invalid shape: length "+s+" is not allowed");r*=s}}catch(t){e={error:t}}finally{try{a&&!a.done&&(n=o.return)&&n.call(o)}finally{if(e)throw e.error}}return r},t.flattenShape=function(t,e){var n=t.reduce(function(t,e){return t*e},1),r=t.slice(e).reduce(function(t,e){return t*e},1);return[n/r,r]},t.squeezeShape=function(t,e){var n=new Array;if(e.some(function(e){return e>=t.length||e<0}))throw new Error("'axes' has an out of range axis");for(var r=0;r=0;if(i&&1!==t[r])throw new Error("squeeze an axis of size different than 1");(0===e.length&&t[r]>1||e.length>0&&!i)&&n.push(t[r])}return n},t.unsqueezeShape=function(t,e){var n=new Array(t.length+e.length);n.fill(0);for(var r=0;r=n.length)throw new Error("'axes' has an out of range axis");if(0!==n[i])throw new Error("'axes' has a duplicate axis");n[i]=1}var o=0;for(r=0;r=e.length)throw new Error("sourceIndex out of bounds");if(n<0||n>=t.length)throw new Error("targetIndex out of bounds");if(r+i>e.length)throw new Error("source indices to be copied are outside bounds");if(n+i>t.length)throw new Error("target array is too small to hold result");for(var o=0;o=e.length)throw new Error("sourceIndex out of bounds");if(n<0||n>=t.length)throw new Error("targetIndex out of bounds");if(r+i>e.length)throw new Error("source indices to be copied are outside bounds");if(n+i>t.length)throw new Error("target array is too small to hold result");for(var a=0;a=e.length)throw new Error("sourceIndex out of bounds");if(n<0||n>=t.length)throw new Error("targetIndex out of bounds");if(r+i>e.length)throw new Error("source indices to be copied are outside bounds");if(n+i>t.length)throw new Error("target array is too small to hold result");for(var a=0;a=e.length)throw new Error("sourceIndex out of bounds");if(n<0||n>=t.length)throw new Error("targetIndex out of bounds");if(r+i>e.length)throw new Error("source indices to be copied are outside bounds");if(n+i>t.length)throw new Error("target array is too small to hold result");for(var o=0;o=n.length)return a(e[o]);for(var c=n[i],l=c>=r.length?1:d.size(r.slice(c+1)),f=0;f=n.length?n.push(e[o+2]):n[o]=e[o+2];for(o=0;o=n[o]||i[o+n.length]>=n[o])throw new Error("pads should be smaller than kernel")}},t.adjustPadsBasedOnAutoPad=function(e,n,r,i,o,a){if(a){if(o.length!==2*(e.length-2))throw new Error("length of pads should be twice the length of data dimensions");if(n.length!==e.length-2)throw new Error("length of strides should be the length of data dimensions");if(i.length!==e.length-2)throw new Error("length of kernel shapes should be the length of data dimensions");for(var s=0;s0&&i[i.length-1])&&(6===o[0]||2===o[0])){a=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0){var o=i.data,c=new DataView(n.rawData.buffer,n.rawData.byteOffset,n.rawData.byteLength),l=function(t){switch(t){case s.onnx.TensorProto.DataType.UINT8:case s.onnx.TensorProto.DataType.INT8:case s.onnx.TensorProto.DataType.BOOL:return 1;case s.onnx.TensorProto.DataType.UINT16:case s.onnx.TensorProto.DataType.INT16:return 2;case s.onnx.TensorProto.DataType.FLOAT:case s.onnx.TensorProto.DataType.INT32:case s.onnx.TensorProto.DataType.UINT32:return 4;case s.onnx.TensorProto.DataType.INT64:case s.onnx.TensorProto.DataType.DOUBLE:case s.onnx.TensorProto.DataType.UINT64:return 8;default:throw new Error("cannot calculate sizeof() on type "+s.onnx.TensorProto.DataType[t])}}(n.dataType),p=n.rawData.byteLength/l;if(n.rawData.byteLength%l!=0)throw new Error("invalid buffer length");if(o.length!==p)throw new Error("buffer length mismatch");for(var d=0;d=this._flushBatchSize||t-this._flushTime>=this._flushIntervalInMilliseconds){for(var n=this._flushPointer;this._flushPointer0?(c.Logger.verbose("WebAssembly-Workers","User has requested "+t+" Workers."),"undefined"==typeof window||void 0===window.Worker?(c.Logger.error("WebAssembly-Workers","Environment does not support usage of Workers. Will not spawn workers."),s=0):(c.Logger.verbose("WebAssembly-Workers","Environment supports usage of Workers. Will spawn "+t+" Workers"),s=t)):(c.Logger.verbose("WebAssembly-Workers","User has disabled usage of Workers. Will not spawn workers."),s=0);var v=new Array(s);a=new Array(s),u=new Array(s);for(var y=function(t){var e=new Promise(function(e,r){var i=n(99)();a[t]=i,u[t]=[],i.onerror=function(e){c.Logger.error("WebAssembly-Workers","worker-"+t+" ERR: "+e),f||r()},i.onmessage=function(n){if(!(n&&n.data&&n.data.type))throw new Error("missing message type from worker");if("init-success"===n.data.type)e();else{if("ccall"!==n.data.type)throw new Error("unknown message type from worker: "+n.data.type);var r=n.data.perfData;u[t].shift()(n.data.buffer,r)}}});v[t]=e},b=0;b=s)throw new Error("invalid worker ID "+t+". should be in range [0, "+s+")");var o=[],c=e.calculateOffsets(o,r),h=new ArrayBuffer(c);e.ccallSerialize(new Uint8Array(h),o,r);var p=l.now();return a[t].postMessage({type:"ccall",func:n,buffer:h},[h]),new Promise(function(n,i){u[t].push(function(t,i){i.startTimeWorker=i.startTime,i.endTimeWorker=i.endTime,i.startTime=p,i.endTime=l.now(),e.ccallDeserialize(new Uint8Array(t),o,r),n(i)})})},e}(l.WasmBinding);e.WasmBinding=p},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),function(t){t[t.ValueBased=0]="ValueBased",t[t.Positional=1]="Positional"}(e.FunctionType||(e.FunctionType={}));var r=function(t,e){this.glContext=t,this.programInfo=e};e.GlslContext=r;var i=function(t){this.context=t};e.GlslLib=i;var o=function(t,e){this.routineBody=t,this.dependencies=e};e.GlslLibRoutine=o;var a=function(){function t(t,e,n){this.name=t,this.dependencies=n||[],e&&(this.routineBody=e)}return t.prototype.addDependency=function(t){t&&this.dependencies.push(t)},t}();e.GlslLibRoutineNode=a;var s=function(){function t(){}return t.returnOrderedNodes=function(t){if(!t||0===t.length)return[];if(1===t.length)return t;var e=new Set,n=new Set,r=new Array;return this.createOrderedNodes(t,e,n,r),r},t.createOrderedNodes=function(t,e,n,r){for(var i=0;i0)for(var o=0;o0)},r.Buffer=function(){try{var t=r.inquire("buffer").Buffer;return t.prototype.utf8Write?t:null}catch(t){return null}}(),r._Buffer_from=null,r._Buffer_allocUnsafe=null,r.newBuffer=function(t){return"number"==typeof t?r.Buffer?r._Buffer_allocUnsafe(t):new r.Array(t):r.Buffer?r._Buffer_from(t):"undefined"==typeof Uint8Array?t:new Uint8Array(t)},r.Array="undefined"!=typeof Uint8Array?Uint8Array:Array,r.Long=r.global.dcodeIO&&r.global.dcodeIO.Long||r.global.Long||r.inquire("long"),r.key2Re=/^true|false|0|1$/,r.key32Re=/^-?(?:0|[1-9][0-9]*)$/,r.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/,r.longToHash=function(t){return t?r.LongBits.from(t).toHash():r.LongBits.zeroHash},r.longFromHash=function(t,e){var n=r.LongBits.fromHash(t);return r.Long?r.Long.fromBits(n.lo,n.hi,e):n.toNumber(Boolean(e))},r.merge=i,r.lcFirst=function(t){return t.charAt(0).toLowerCase()+t.substring(1)},r.newError=o,r.ProtocolError=o("ProtocolError"),r.oneOfGetter=function(t){for(var e={},n=0;n-1;--n)if(1===e[t[n]]&&void 0!==this[t[n]]&&null!==this[t[n]])return t[n]}},r.oneOfSetter=function(t){return function(e){for(var n=0;n>>3){case 1:r.name=t.string();break;case 21:r.refAttrName=t.string();break;case 13:r.docString=t.string();break;case 20:r.type=t.int32();break;case 2:r.f=t.float();break;case 3:r.i=t.int64();break;case 4:r.s=t.bytes();break;case 5:r.t=s.onnx.TensorProto.decode(t,t.uint32());break;case 6:r.g=s.onnx.GraphProto.decode(t,t.uint32());break;case 7:if(r.floats&&r.floats.length||(r.floats=[]),2==(7&o))for(var a=t.uint32()+t.pos;t.pos>>0,t.i.high>>>0).toNumber())),null!=t.s&&("string"==typeof t.s?a.base64.decode(t.s,e.s=a.newBuffer(a.base64.length(t.s)),0):t.s.length&&(e.s=t.s)),null!=t.t){if("object"!=typeof t.t)throw TypeError(".onnx.AttributeProto.t: object expected");e.t=s.onnx.TensorProto.fromObject(t.t)}if(null!=t.g){if("object"!=typeof t.g)throw TypeError(".onnx.AttributeProto.g: object expected");e.g=s.onnx.GraphProto.fromObject(t.g)}if(t.floats){if(!Array.isArray(t.floats))throw TypeError(".onnx.AttributeProto.floats: array expected");e.floats=[];for(var n=0;n>>0,t.ints[n].high>>>0).toNumber())}if(t.strings){if(!Array.isArray(t.strings))throw TypeError(".onnx.AttributeProto.strings: array expected");for(e.strings=[],n=0;n>>0,t.i.high>>>0).toNumber():t.i),null!=t.s&&t.hasOwnProperty("s")&&(n.s=e.bytes===String?a.base64.encode(t.s,0,t.s.length):e.bytes===Array?Array.prototype.slice.call(t.s):t.s),null!=t.t&&t.hasOwnProperty("t")&&(n.t=s.onnx.TensorProto.toObject(t.t,e)),null!=t.g&&t.hasOwnProperty("g")&&(n.g=s.onnx.GraphProto.toObject(t.g,e)),t.floats&&t.floats.length){n.floats=[];for(var i=0;i>>0,t.ints[i].high>>>0).toNumber():t.ints[i];if(t.strings&&t.strings.length)for(n.strings=[],i=0;i>>3){case 1:r.name=t.string();break;case 2:r.type=s.onnx.TypeProto.decode(t,t.uint32());break;case 3:r.docString=t.string();break;default:t.skipType(7&o)}}return r},t.decodeDelimited=function(t){return t instanceof i||(t=new i(t)),this.decode(t,t.uint32())},t.verify=function(t){if("object"!=typeof t||null===t)return"object expected";if(null!=t.name&&t.hasOwnProperty("name")&&!a.isString(t.name))return"name: string expected";if(null!=t.type&&t.hasOwnProperty("type")){var e=s.onnx.TypeProto.verify(t.type);if(e)return"type."+e}return null!=t.docString&&t.hasOwnProperty("docString")&&!a.isString(t.docString)?"docString: string expected":null},t.fromObject=function(t){if(t instanceof s.onnx.ValueInfoProto)return t;var e=new s.onnx.ValueInfoProto;if(null!=t.name&&(e.name=String(t.name)),null!=t.type){if("object"!=typeof t.type)throw TypeError(".onnx.ValueInfoProto.type: object expected");e.type=s.onnx.TypeProto.fromObject(t.type)}return null!=t.docString&&(e.docString=String(t.docString)),e},t.toObject=function(t,e){e||(e={});var n={};return e.defaults&&(n.name="",n.type=null,n.docString=""),null!=t.name&&t.hasOwnProperty("name")&&(n.name=t.name),null!=t.type&&t.hasOwnProperty("type")&&(n.type=s.onnx.TypeProto.toObject(t.type,e)),null!=t.docString&&t.hasOwnProperty("docString")&&(n.docString=t.docString),n},t.prototype.toJSON=function(){return this.constructor.toObject(this,r.util.toJSONOptions)},t}(),n.NodeProto=function(){function t(t){if(this.input=[],this.output=[],this.attribute=[],t)for(var e=Object.keys(t),n=0;n>>3){case 1:r.input&&r.input.length||(r.input=[]),r.input.push(t.string());break;case 2:r.output&&r.output.length||(r.output=[]),r.output.push(t.string());break;case 3:r.name=t.string();break;case 4:r.opType=t.string();break;case 7:r.domain=t.string();break;case 5:r.attribute&&r.attribute.length||(r.attribute=[]),r.attribute.push(s.onnx.AttributeProto.decode(t,t.uint32()));break;case 6:r.docString=t.string();break;default:t.skipType(7&o)}}return r},t.decodeDelimited=function(t){return t instanceof i||(t=new i(t)),this.decode(t,t.uint32())},t.verify=function(t){if("object"!=typeof t||null===t)return"object expected";if(null!=t.input&&t.hasOwnProperty("input")){if(!Array.isArray(t.input))return"input: array expected";for(var e=0;e>>3){case 1:r.irVersion=t.int64();break;case 8:r.opsetImport&&r.opsetImport.length||(r.opsetImport=[]),r.opsetImport.push(s.onnx.OperatorSetIdProto.decode(t,t.uint32()));break;case 2:r.producerName=t.string();break;case 3:r.producerVersion=t.string();break;case 4:r.domain=t.string();break;case 5:r.modelVersion=t.int64();break;case 6:r.docString=t.string();break;case 7:r.graph=s.onnx.GraphProto.decode(t,t.uint32());break;case 14:r.metadataProps&&r.metadataProps.length||(r.metadataProps=[]),r.metadataProps.push(s.onnx.StringStringEntryProto.decode(t,t.uint32()));break;default:t.skipType(7&o)}}return r},t.decodeDelimited=function(t){return t instanceof i||(t=new i(t)),this.decode(t,t.uint32())},t.verify=function(t){if("object"!=typeof t||null===t)return"object expected";if(null!=t.irVersion&&t.hasOwnProperty("irVersion")&&!(a.isInteger(t.irVersion)||t.irVersion&&a.isInteger(t.irVersion.low)&&a.isInteger(t.irVersion.high)))return"irVersion: integer|Long expected";if(null!=t.opsetImport&&t.hasOwnProperty("opsetImport")){if(!Array.isArray(t.opsetImport))return"opsetImport: array expected";for(var e=0;e>>0,t.irVersion.high>>>0).toNumber())),t.opsetImport){if(!Array.isArray(t.opsetImport))throw TypeError(".onnx.ModelProto.opsetImport: array expected");e.opsetImport=[];for(var n=0;n>>0,t.modelVersion.high>>>0).toNumber())),null!=t.docString&&(e.docString=String(t.docString)),null!=t.graph){if("object"!=typeof t.graph)throw TypeError(".onnx.ModelProto.graph: object expected");e.graph=s.onnx.GraphProto.fromObject(t.graph)}if(t.metadataProps){if(!Array.isArray(t.metadataProps))throw TypeError(".onnx.ModelProto.metadataProps: array expected");for(e.metadataProps=[],n=0;n>>0,t.irVersion.high>>>0).toNumber():t.irVersion),null!=t.producerName&&t.hasOwnProperty("producerName")&&(n.producerName=t.producerName),null!=t.producerVersion&&t.hasOwnProperty("producerVersion")&&(n.producerVersion=t.producerVersion),null!=t.domain&&t.hasOwnProperty("domain")&&(n.domain=t.domain),null!=t.modelVersion&&t.hasOwnProperty("modelVersion")&&("number"==typeof t.modelVersion?n.modelVersion=e.longs===String?String(t.modelVersion):t.modelVersion:n.modelVersion=e.longs===String?a.Long.prototype.toString.call(t.modelVersion):e.longs===Number?new a.LongBits(t.modelVersion.low>>>0,t.modelVersion.high>>>0).toNumber():t.modelVersion),null!=t.docString&&t.hasOwnProperty("docString")&&(n.docString=t.docString),null!=t.graph&&t.hasOwnProperty("graph")&&(n.graph=s.onnx.GraphProto.toObject(t.graph,e)),t.opsetImport&&t.opsetImport.length){n.opsetImport=[];for(var i=0;i>>3){case 1:r.key=t.string();break;case 2:r.value=t.string();break;default:t.skipType(7&o)}}return r},t.decodeDelimited=function(t){return t instanceof i||(t=new i(t)),this.decode(t,t.uint32())},t.verify=function(t){return"object"!=typeof t||null===t?"object expected":null!=t.key&&t.hasOwnProperty("key")&&!a.isString(t.key)?"key: string expected":null!=t.value&&t.hasOwnProperty("value")&&!a.isString(t.value)?"value: string expected":null},t.fromObject=function(t){if(t instanceof s.onnx.StringStringEntryProto)return t;var e=new s.onnx.StringStringEntryProto;return null!=t.key&&(e.key=String(t.key)),null!=t.value&&(e.value=String(t.value)),e},t.toObject=function(t,e){e||(e={});var n={};return e.defaults&&(n.key="",n.value=""),null!=t.key&&t.hasOwnProperty("key")&&(n.key=t.key),null!=t.value&&t.hasOwnProperty("value")&&(n.value=t.value),n},t.prototype.toJSON=function(){return this.constructor.toObject(this,r.util.toJSONOptions)},t}(),n.TensorAnnotation=function(){function t(t){if(this.quantParameterTensorNames=[],t)for(var e=Object.keys(t),n=0;n>>3){case 1:r.tensorName=t.string();break;case 2:r.quantParameterTensorNames&&r.quantParameterTensorNames.length||(r.quantParameterTensorNames=[]),r.quantParameterTensorNames.push(s.onnx.StringStringEntryProto.decode(t,t.uint32()));break;default:t.skipType(7&o)}}return r},t.decodeDelimited=function(t){return t instanceof i||(t=new i(t)),this.decode(t,t.uint32())},t.verify=function(t){if("object"!=typeof t||null===t)return"object expected";if(null!=t.tensorName&&t.hasOwnProperty("tensorName")&&!a.isString(t.tensorName))return"tensorName: string expected";if(null!=t.quantParameterTensorNames&&t.hasOwnProperty("quantParameterTensorNames")){if(!Array.isArray(t.quantParameterTensorNames))return"quantParameterTensorNames: array expected";for(var e=0;e>>3){case 1:r.node&&r.node.length||(r.node=[]),r.node.push(s.onnx.NodeProto.decode(t,t.uint32()));break;case 2:r.name=t.string();break;case 5:r.initializer&&r.initializer.length||(r.initializer=[]),r.initializer.push(s.onnx.TensorProto.decode(t,t.uint32()));break;case 10:r.docString=t.string();break;case 11:r.input&&r.input.length||(r.input=[]),r.input.push(s.onnx.ValueInfoProto.decode(t,t.uint32()));break;case 12:r.output&&r.output.length||(r.output=[]),r.output.push(s.onnx.ValueInfoProto.decode(t,t.uint32()));break;case 13:r.valueInfo&&r.valueInfo.length||(r.valueInfo=[]),r.valueInfo.push(s.onnx.ValueInfoProto.decode(t,t.uint32()));break;case 14:r.quantizationAnnotation&&r.quantizationAnnotation.length||(r.quantizationAnnotation=[]),r.quantizationAnnotation.push(s.onnx.TensorAnnotation.decode(t,t.uint32()));break;default:t.skipType(7&o)}}return r},t.decodeDelimited=function(t){return t instanceof i||(t=new i(t)),this.decode(t,t.uint32())},t.verify=function(t){if("object"!=typeof t||null===t)return"object expected";if(null!=t.node&&t.hasOwnProperty("node")){if(!Array.isArray(t.node))return"node: array expected";for(var e=0;e>>3){case 1:if(r.dims&&r.dims.length||(r.dims=[]),2==(7&o))for(var a=t.uint32()+t.pos;t.pos>>0,t.dims[n].high>>>0).toNumber())}if(null!=t.dataType&&(e.dataType=0|t.dataType),null!=t.segment){if("object"!=typeof t.segment)throw TypeError(".onnx.TensorProto.segment: object expected");e.segment=s.onnx.TensorProto.Segment.fromObject(t.segment)}if(t.floatData){if(!Array.isArray(t.floatData))throw TypeError(".onnx.TensorProto.floatData: array expected");for(e.floatData=[],n=0;n>>0,t.int64Data[n].high>>>0).toNumber())}if(null!=t.name&&(e.name=String(t.name)),null!=t.docString&&(e.docString=String(t.docString)),null!=t.rawData&&("string"==typeof t.rawData?a.base64.decode(t.rawData,e.rawData=a.newBuffer(a.base64.length(t.rawData)),0):t.rawData.length&&(e.rawData=t.rawData)),t.externalData){if(!Array.isArray(t.externalData))throw TypeError(".onnx.TensorProto.externalData: array expected");for(e.externalData=[],n=0;n>>0,t.uint64Data[n].high>>>0).toNumber(!0))}return e},t.toObject=function(t,e){e||(e={});var n={};if((e.arrays||e.defaults)&&(n.dims=[],n.floatData=[],n.int32Data=[],n.stringData=[],n.int64Data=[],n.doubleData=[],n.uint64Data=[],n.externalData=[]),e.defaults&&(n.dataType=0,n.segment=null,n.name="",e.bytes===String?n.rawData="":(n.rawData=[],e.bytes!==Array&&(n.rawData=a.newBuffer(n.rawData))),n.docString="",n.dataLocation=e.enums===String?"DEFAULT":0),t.dims&&t.dims.length){n.dims=[];for(var r=0;r>>0,t.dims[r].high>>>0).toNumber():t.dims[r]}if(null!=t.dataType&&t.hasOwnProperty("dataType")&&(n.dataType=t.dataType),null!=t.segment&&t.hasOwnProperty("segment")&&(n.segment=s.onnx.TensorProto.Segment.toObject(t.segment,e)),t.floatData&&t.floatData.length)for(n.floatData=[],r=0;r>>0,t.int64Data[r].high>>>0).toNumber():t.int64Data[r];if(null!=t.name&&t.hasOwnProperty("name")&&(n.name=t.name),null!=t.rawData&&t.hasOwnProperty("rawData")&&(n.rawData=e.bytes===String?a.base64.encode(t.rawData,0,t.rawData.length):e.bytes===Array?Array.prototype.slice.call(t.rawData):t.rawData),t.doubleData&&t.doubleData.length)for(n.doubleData=[],r=0;r>>0,t.uint64Data[r].high>>>0).toNumber(!0):t.uint64Data[r];if(null!=t.docString&&t.hasOwnProperty("docString")&&(n.docString=t.docString),t.externalData&&t.externalData.length)for(n.externalData=[],r=0;r>>3){case 1:r.begin=t.int64();break;case 2:r.end=t.int64();break;default:t.skipType(7&o)}}return r},t.decodeDelimited=function(t){return t instanceof i||(t=new i(t)),this.decode(t,t.uint32())},t.verify=function(t){return"object"!=typeof t||null===t?"object expected":null!=t.begin&&t.hasOwnProperty("begin")&&!(a.isInteger(t.begin)||t.begin&&a.isInteger(t.begin.low)&&a.isInteger(t.begin.high))?"begin: integer|Long expected":null!=t.end&&t.hasOwnProperty("end")&&!(a.isInteger(t.end)||t.end&&a.isInteger(t.end.low)&&a.isInteger(t.end.high))?"end: integer|Long expected":null},t.fromObject=function(t){if(t instanceof s.onnx.TensorProto.Segment)return t;var e=new s.onnx.TensorProto.Segment;return null!=t.begin&&(a.Long?(e.begin=a.Long.fromValue(t.begin)).unsigned=!1:"string"==typeof t.begin?e.begin=parseInt(t.begin,10):"number"==typeof t.begin?e.begin=t.begin:"object"==typeof t.begin&&(e.begin=new a.LongBits(t.begin.low>>>0,t.begin.high>>>0).toNumber())),null!=t.end&&(a.Long?(e.end=a.Long.fromValue(t.end)).unsigned=!1:"string"==typeof t.end?e.end=parseInt(t.end,10):"number"==typeof t.end?e.end=t.end:"object"==typeof t.end&&(e.end=new a.LongBits(t.end.low>>>0,t.end.high>>>0).toNumber())),e},t.toObject=function(t,e){e||(e={});var n={};if(e.defaults){if(a.Long){var r=new a.Long(0,0,!1);n.begin=e.longs===String?r.toString():e.longs===Number?r.toNumber():r}else n.begin=e.longs===String?"0":0;a.Long?(r=new a.Long(0,0,!1),n.end=e.longs===String?r.toString():e.longs===Number?r.toNumber():r):n.end=e.longs===String?"0":0}return null!=t.begin&&t.hasOwnProperty("begin")&&("number"==typeof t.begin?n.begin=e.longs===String?String(t.begin):t.begin:n.begin=e.longs===String?a.Long.prototype.toString.call(t.begin):e.longs===Number?new a.LongBits(t.begin.low>>>0,t.begin.high>>>0).toNumber():t.begin),null!=t.end&&t.hasOwnProperty("end")&&("number"==typeof t.end?n.end=e.longs===String?String(t.end):t.end:n.end=e.longs===String?a.Long.prototype.toString.call(t.end):e.longs===Number?new a.LongBits(t.end.low>>>0,t.end.high>>>0).toNumber():t.end),n},t.prototype.toJSON=function(){return this.constructor.toObject(this,r.util.toJSONOptions)},t}(),t.DataLocation=function(){var t={},e=Object.create(t);return e[t[0]="DEFAULT"]=0,e[t[1]="EXTERNAL"]=1,e}(),t}(),n.TensorShapeProto=function(){function t(t){if(this.dim=[],t)for(var e=Object.keys(t),n=0;n>>3){case 1:r.dim&&r.dim.length||(r.dim=[]),r.dim.push(s.onnx.TensorShapeProto.Dimension.decode(t,t.uint32()));break;default:t.skipType(7&o)}}return r},t.decodeDelimited=function(t){return t instanceof i||(t=new i(t)),this.decode(t,t.uint32())},t.verify=function(t){if("object"!=typeof t||null===t)return"object expected";if(null!=t.dim&&t.hasOwnProperty("dim")){if(!Array.isArray(t.dim))return"dim: array expected";for(var e=0;e>>3){case 1:r.dimValue=t.int64();break;case 2:r.dimParam=t.string();break;case 3:r.denotation=t.string();break;default:t.skipType(7&o)}}return r},t.decodeDelimited=function(t){return t instanceof i||(t=new i(t)),this.decode(t,t.uint32())},t.verify=function(t){if("object"!=typeof t||null===t)return"object expected";var e={};if(null!=t.dimValue&&t.hasOwnProperty("dimValue")&&(e.value=1,!(a.isInteger(t.dimValue)||t.dimValue&&a.isInteger(t.dimValue.low)&&a.isInteger(t.dimValue.high))))return"dimValue: integer|Long expected";if(null!=t.dimParam&&t.hasOwnProperty("dimParam")){if(1===e.value)return"value: multiple values";if(e.value=1,!a.isString(t.dimParam))return"dimParam: string expected"}return null!=t.denotation&&t.hasOwnProperty("denotation")&&!a.isString(t.denotation)?"denotation: string expected":null},t.fromObject=function(t){if(t instanceof s.onnx.TensorShapeProto.Dimension)return t;var e=new s.onnx.TensorShapeProto.Dimension;return null!=t.dimValue&&(a.Long?(e.dimValue=a.Long.fromValue(t.dimValue)).unsigned=!1:"string"==typeof t.dimValue?e.dimValue=parseInt(t.dimValue,10):"number"==typeof t.dimValue?e.dimValue=t.dimValue:"object"==typeof t.dimValue&&(e.dimValue=new a.LongBits(t.dimValue.low>>>0,t.dimValue.high>>>0).toNumber())),null!=t.dimParam&&(e.dimParam=String(t.dimParam)),null!=t.denotation&&(e.denotation=String(t.denotation)),e},t.toObject=function(t,e){e||(e={});var n={};return e.defaults&&(n.denotation=""),null!=t.dimValue&&t.hasOwnProperty("dimValue")&&("number"==typeof t.dimValue?n.dimValue=e.longs===String?String(t.dimValue):t.dimValue:n.dimValue=e.longs===String?a.Long.prototype.toString.call(t.dimValue):e.longs===Number?new a.LongBits(t.dimValue.low>>>0,t.dimValue.high>>>0).toNumber():t.dimValue,e.oneofs&&(n.value="dimValue")),null!=t.dimParam&&t.hasOwnProperty("dimParam")&&(n.dimParam=t.dimParam,e.oneofs&&(n.value="dimParam")),null!=t.denotation&&t.hasOwnProperty("denotation")&&(n.denotation=t.denotation),n},t.prototype.toJSON=function(){return this.constructor.toObject(this,r.util.toJSONOptions)},t}(),t}(),n.TypeProto=function(){function t(t){if(t)for(var e=Object.keys(t),n=0;n>>3){case 1:r.tensorType=s.onnx.TypeProto.Tensor.decode(t,t.uint32());break;case 6:r.denotation=t.string();break;default:t.skipType(7&o)}}return r},t.decodeDelimited=function(t){return t instanceof i||(t=new i(t)),this.decode(t,t.uint32())},t.verify=function(t){if("object"!=typeof t||null===t)return"object expected";if(null!=t.tensorType&&t.hasOwnProperty("tensorType")){var e=s.onnx.TypeProto.Tensor.verify(t.tensorType);if(e)return"tensorType."+e}return null!=t.denotation&&t.hasOwnProperty("denotation")&&!a.isString(t.denotation)?"denotation: string expected":null},t.fromObject=function(t){if(t instanceof s.onnx.TypeProto)return t;var e=new s.onnx.TypeProto;if(null!=t.tensorType){if("object"!=typeof t.tensorType)throw TypeError(".onnx.TypeProto.tensorType: object expected");e.tensorType=s.onnx.TypeProto.Tensor.fromObject(t.tensorType)}return null!=t.denotation&&(e.denotation=String(t.denotation)),e},t.toObject=function(t,e){e||(e={});var n={};return e.defaults&&(n.denotation=""),null!=t.tensorType&&t.hasOwnProperty("tensorType")&&(n.tensorType=s.onnx.TypeProto.Tensor.toObject(t.tensorType,e),e.oneofs&&(n.value="tensorType")),null!=t.denotation&&t.hasOwnProperty("denotation")&&(n.denotation=t.denotation),n},t.prototype.toJSON=function(){return this.constructor.toObject(this,r.util.toJSONOptions)},t.Tensor=function(){function t(t){if(t)for(var e=Object.keys(t),n=0;n>>3){case 1:r.elemType=t.int32();break;case 2:r.shape=s.onnx.TensorShapeProto.decode(t,t.uint32());break;default:t.skipType(7&o)}}return r},t.decodeDelimited=function(t){return t instanceof i||(t=new i(t)),this.decode(t,t.uint32())},t.verify=function(t){if("object"!=typeof t||null===t)return"object expected";if(null!=t.elemType&&t.hasOwnProperty("elemType")&&!a.isInteger(t.elemType))return"elemType: integer expected";if(null!=t.shape&&t.hasOwnProperty("shape")){var e=s.onnx.TensorShapeProto.verify(t.shape);if(e)return"shape."+e}return null},t.fromObject=function(t){if(t instanceof s.onnx.TypeProto.Tensor)return t;var e=new s.onnx.TypeProto.Tensor;if(null!=t.elemType&&(e.elemType=0|t.elemType),null!=t.shape){if("object"!=typeof t.shape)throw TypeError(".onnx.TypeProto.Tensor.shape: object expected");e.shape=s.onnx.TensorShapeProto.fromObject(t.shape)}return e},t.toObject=function(t,e){e||(e={});var n={};return e.defaults&&(n.elemType=0,n.shape=null),null!=t.elemType&&t.hasOwnProperty("elemType")&&(n.elemType=t.elemType),null!=t.shape&&t.hasOwnProperty("shape")&&(n.shape=s.onnx.TensorShapeProto.toObject(t.shape,e)),n},t.prototype.toJSON=function(){return this.constructor.toObject(this,r.util.toJSONOptions)},t}(),t}(),n.OperatorSetIdProto=function(){function t(t){if(t)for(var e=Object.keys(t),n=0;n>>3){case 1:r.domain=t.string();break;case 2:r.version=t.int64();break;default:t.skipType(7&o)}}return r},t.decodeDelimited=function(t){return t instanceof i||(t=new i(t)),this.decode(t,t.uint32())},t.verify=function(t){return"object"!=typeof t||null===t?"object expected":null!=t.domain&&t.hasOwnProperty("domain")&&!a.isString(t.domain)?"domain: string expected":null!=t.version&&t.hasOwnProperty("version")&&!(a.isInteger(t.version)||t.version&&a.isInteger(t.version.low)&&a.isInteger(t.version.high))?"version: integer|Long expected":null},t.fromObject=function(t){if(t instanceof s.onnx.OperatorSetIdProto)return t;var e=new s.onnx.OperatorSetIdProto;return null!=t.domain&&(e.domain=String(t.domain)),null!=t.version&&(a.Long?(e.version=a.Long.fromValue(t.version)).unsigned=!1:"string"==typeof t.version?e.version=parseInt(t.version,10):"number"==typeof t.version?e.version=t.version:"object"==typeof t.version&&(e.version=new a.LongBits(t.version.low>>>0,t.version.high>>>0).toNumber())),e},t.toObject=function(t,e){e||(e={});var n={};if(e.defaults)if(n.domain="",a.Long){var r=new a.Long(0,0,!1);n.version=e.longs===String?r.toString():e.longs===Number?r.toNumber():r}else n.version=e.longs===String?"0":0;return null!=t.domain&&t.hasOwnProperty("domain")&&(n.domain=t.domain),null!=t.version&&t.hasOwnProperty("version")&&("number"==typeof t.version?n.version=e.longs===String?String(t.version):t.version:n.version=e.longs===String?a.Long.prototype.toString.call(t.version):e.longs===Number?new a.LongBits(t.version.low>>>0,t.version.high>>>0).toNumber():t.version),n},t.prototype.toJSON=function(){return this.constructor.toObject(this,r.util.toJSONOptions)},t}(),n}(),t.exports=s},function(t,e,n){"use strict";var r,i=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(36),a=n(0),s=n(46),u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){var n=a.ShapeUtil.calculateReshapedDims(e[0].dims,e[1].integerData);return[c(t,e[0],n)]},e}(o.Reshape);function c(t,e,n){var r=t.getOrCreateTextureData(e),i=n;4===r.channels&&(i=s.getPackedShape(n));var o={channels:r.channels,height:r.height,width:r.width,shape:0!==i.length?i:[1],strides:a.ShapeUtil.computeStrides(i),unpackedShape:n};return t.createSharedTextureData(o,e.type,r.texture,e.dataId).tensor}e.WebGLReshape=u,e.reshape=c},function(t,e,n){"use strict";var r=this&&this.__values||function(t){var e="function"==typeof Symbol&&t[Symbol.iterator],n=0;return e?e.call(t):{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}}};function i(t,e){if(e.endsWith("+")){var n=Number.parseInt(e.substring(0,e.length-1),10);return!isNaN(n)&&n<=t}if(2===e.split("-").length){var r=e.split("-"),i=(n=Number.parseInt(r[0],10),Number.parseInt(r[1],10));return!isNaN(n)&&!isNaN(i)&&n<=t&&t<=i}return Number.parseInt(e,10)===t}Object.defineProperty(e,"__esModule",{value:!0}),e.resolveOperator=function(t,e,n){var o,a,s,u;try{for(var c=r(n),l=c.next();!l.done;l=c.next()){var f=l.value,h=f[0],p=f[1],d=f[2],m=f[3];if(t.opType===h)try{for(var g=(s=void 0,r(e)),v=g.next();!v.done;v=g.next()){var y=v.value;if((y.domain===p||"ai.onnx"===y.domain&&""===p)&&i(y.version,d))return m(t)}}catch(t){s={error:t}}finally{try{v&&!v.done&&(u=g.return)&&u.call(g)}finally{if(s)throw s.error}}}}catch(t){o={error:t}}finally{try{l&&!l.done&&(a=c.return)&&a.call(c)}finally{if(o)throw o.error}}throw new TypeError("cannot resolve operator '"+t.opType+"' with opsets: "+e.map(function(t){return(t.domain||"ai.onnx")+" v"+t.version}).join(", "))}},function(t,e,n){"use strict";(function(t){var r=n(55),i=n(56),o=n(57);function a(){return u.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function s(t,e){if(a()=a())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a().toString(16)+" bytes");return 0|t}function d(t,e){if(u.isBuffer(t))return t.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(t)||t instanceof ArrayBuffer))return t.byteLength;"string"!=typeof t&&(t=""+t);var n=t.length;if(0===n)return 0;for(var r=!1;;)switch(e){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return j(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return z(t).length;default:if(r)return j(t).length;e=(""+e).toLowerCase(),r=!0}}function m(t,e,n){var r=t[e];t[e]=t[n],t[n]=r}function g(t,e,n,r,i){if(0===t.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=i?0:t.length-1),n<0&&(n=t.length+n),n>=t.length){if(i)return-1;n=t.length-1}else if(n<0){if(!i)return-1;n=0}if("string"==typeof e&&(e=u.from(e,r)),u.isBuffer(e))return 0===e.length?-1:v(t,e,n,r,i);if("number"==typeof e)return e&=255,u.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(t,e,n):Uint8Array.prototype.lastIndexOf.call(t,e,n):v(t,[e],n,r,i);throw new TypeError("val must be string, number or Buffer")}function v(t,e,n,r,i){var o,a=1,s=t.length,u=e.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(t.length<2||e.length<2)return-1;a=2,s/=2,u/=2,n/=2}function c(t,e){return 1===a?t[e]:t.readUInt16BE(e*a)}if(i){var l=-1;for(o=n;os&&(n=s-u),o=n;o>=0;o--){for(var f=!0,h=0;hi&&(r=i):r=i;var o=e.length;if(o%2!=0)throw new TypeError("Invalid hex string");r>o/2&&(r=o/2);for(var a=0;a>8,i=n%256,o.push(i),o.push(r);return o}(e,t.length-n),t,n,r)}function E(t,e,n){return 0===e&&n===t.length?r.fromByteArray(t):r.fromByteArray(t.slice(e,n))}function T(t,e,n){n=Math.min(t.length,n);for(var r=[],i=e;i239?4:c>223?3:c>191?2:1;if(i+f<=n)switch(f){case 1:c<128&&(l=c);break;case 2:128==(192&(o=t[i+1]))&&(u=(31&c)<<6|63&o)>127&&(l=u);break;case 3:o=t[i+1],a=t[i+2],128==(192&o)&&128==(192&a)&&(u=(15&c)<<12|(63&o)<<6|63&a)>2047&&(u<55296||u>57343)&&(l=u);break;case 4:o=t[i+1],a=t[i+2],s=t[i+3],128==(192&o)&&128==(192&a)&&128==(192&s)&&(u=(15&c)<<18|(63&o)<<12|(63&a)<<6|63&s)>65535&&u<1114112&&(l=u)}null===l?(l=65533,f=1):l>65535&&(l-=65536,r.push(l>>>10&1023|55296),l=56320|1023&l),r.push(l),i+=f}return function(t){var e=t.length;if(e<=M)return String.fromCharCode.apply(String,t);for(var n="",r=0;rthis.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return P(this,e,n);case"utf8":case"utf-8":return T(this,e,n);case"ascii":return A(this,e,n);case"latin1":case"binary":return C(this,e,n);case"base64":return E(this,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return I(this,e,n);default:if(r)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),r=!0}}.apply(this,arguments)},u.prototype.equals=function(t){if(!u.isBuffer(t))throw new TypeError("Argument must be a Buffer");return this===t||0===u.compare(this,t)},u.prototype.inspect=function(){var t="",n=e.INSPECT_MAX_BYTES;return this.length>0&&(t=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(t+=" ... ")),""},u.prototype.compare=function(t,e,n,r,i){if(!u.isBuffer(t))throw new TypeError("Argument must be a Buffer");if(void 0===e&&(e=0),void 0===n&&(n=t?t.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),e<0||n>t.length||r<0||i>this.length)throw new RangeError("out of range index");if(r>=i&&e>=n)return 0;if(r>=i)return-1;if(e>=n)return 1;if(this===t)return 0;for(var o=(i>>>=0)-(r>>>=0),a=(n>>>=0)-(e>>>=0),s=Math.min(o,a),c=this.slice(r,i),l=t.slice(e,n),f=0;fi)&&(n=i),t.length>0&&(n<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var o=!1;;)switch(r){case"hex":return y(this,t,e,n);case"utf8":case"utf-8":return b(this,t,e,n);case"ascii":return w(this,t,e,n);case"latin1":case"binary":return x(this,t,e,n);case"base64":return _(this,t,e,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return S(this,t,e,n);default:if(o)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),o=!0}},u.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var M=4096;function A(t,e,n){var r="";n=Math.min(t.length,n);for(var i=e;ir)&&(n=r);for(var i="",o=e;on)throw new RangeError("Trying to access beyond buffer length")}function R(t,e,n,r,i,o){if(!u.isBuffer(t))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>i||et.length)throw new RangeError("Index out of range")}function k(t,e,n,r){e<0&&(e=65535+e+1);for(var i=0,o=Math.min(t.length-n,2);i>>8*(r?i:1-i)}function L(t,e,n,r){e<0&&(e=4294967295+e+1);for(var i=0,o=Math.min(t.length-n,4);i>>8*(r?i:3-i)&255}function D(t,e,n,r,i,o){if(n+r>t.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function N(t,e,n,r,o){return o||D(t,0,n,4),i.write(t,e,n,r,23,4),n+4}function B(t,e,n,r,o){return o||D(t,0,n,8),i.write(t,e,n,r,52,8),n+8}u.prototype.slice=function(t,e){var n,r=this.length;if((t=~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),(e=void 0===e?r:~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),e0&&(i*=256);)r+=this[t+--e]*i;return r},u.prototype.readUInt8=function(t,e){return e||O(t,1,this.length),this[t]},u.prototype.readUInt16LE=function(t,e){return e||O(t,2,this.length),this[t]|this[t+1]<<8},u.prototype.readUInt16BE=function(t,e){return e||O(t,2,this.length),this[t]<<8|this[t+1]},u.prototype.readUInt32LE=function(t,e){return e||O(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},u.prototype.readUInt32BE=function(t,e){return e||O(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},u.prototype.readIntLE=function(t,e,n){t|=0,e|=0,n||O(t,e,this.length);for(var r=this[t],i=1,o=0;++o=(i*=128)&&(r-=Math.pow(2,8*e)),r},u.prototype.readIntBE=function(t,e,n){t|=0,e|=0,n||O(t,e,this.length);for(var r=e,i=1,o=this[t+--r];r>0&&(i*=256);)o+=this[t+--r]*i;return o>=(i*=128)&&(o-=Math.pow(2,8*e)),o},u.prototype.readInt8=function(t,e){return e||O(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},u.prototype.readInt16LE=function(t,e){e||O(t,2,this.length);var n=this[t]|this[t+1]<<8;return 32768&n?4294901760|n:n},u.prototype.readInt16BE=function(t,e){e||O(t,2,this.length);var n=this[t+1]|this[t]<<8;return 32768&n?4294901760|n:n},u.prototype.readInt32LE=function(t,e){return e||O(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},u.prototype.readInt32BE=function(t,e){return e||O(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},u.prototype.readFloatLE=function(t,e){return e||O(t,4,this.length),i.read(this,t,!0,23,4)},u.prototype.readFloatBE=function(t,e){return e||O(t,4,this.length),i.read(this,t,!1,23,4)},u.prototype.readDoubleLE=function(t,e){return e||O(t,8,this.length),i.read(this,t,!0,52,8)},u.prototype.readDoubleBE=function(t,e){return e||O(t,8,this.length),i.read(this,t,!1,52,8)},u.prototype.writeUIntLE=function(t,e,n,r){t=+t,e|=0,n|=0,r||R(this,t,e,n,Math.pow(2,8*n)-1,0);var i=1,o=0;for(this[e]=255&t;++o=0&&(o*=256);)this[e+i]=t/o&255;return e+n},u.prototype.writeUInt8=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,1,255,0),u.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),this[e]=255&t,e+1},u.prototype.writeUInt16LE=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):k(this,t,e,!0),e+2},u.prototype.writeUInt16BE=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,2,65535,0),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):k(this,t,e,!1),e+2},u.prototype.writeUInt32LE=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t):L(this,t,e,!0),e+4},u.prototype.writeUInt32BE=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,4,4294967295,0),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):L(this,t,e,!1),e+4},u.prototype.writeIntLE=function(t,e,n,r){if(t=+t,e|=0,!r){var i=Math.pow(2,8*n-1);R(this,t,e,n,i-1,-i)}var o=0,a=1,s=0;for(this[e]=255&t;++o>0)-s&255;return e+n},u.prototype.writeIntBE=function(t,e,n,r){if(t=+t,e|=0,!r){var i=Math.pow(2,8*n-1);R(this,t,e,n,i-1,-i)}var o=n-1,a=1,s=0;for(this[e+o]=255&t;--o>=0&&(a*=256);)t<0&&0===s&&0!==this[e+o+1]&&(s=1),this[e+o]=(t/a>>0)-s&255;return e+n},u.prototype.writeInt8=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,1,127,-128),u.TYPED_ARRAY_SUPPORT||(t=Math.floor(t)),t<0&&(t=255+t+1),this[e]=255&t,e+1},u.prototype.writeInt16LE=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):k(this,t,e,!0),e+2},u.prototype.writeInt16BE=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,2,32767,-32768),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):k(this,t,e,!1),e+2},u.prototype.writeInt32LE=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,4,2147483647,-2147483648),u.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24):L(this,t,e,!0),e+4},u.prototype.writeInt32BE=function(t,e,n){return t=+t,e|=0,n||R(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),u.TYPED_ARRAY_SUPPORT?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):L(this,t,e,!1),e+4},u.prototype.writeFloatLE=function(t,e,n){return N(this,t,e,!0,n)},u.prototype.writeFloatBE=function(t,e,n){return N(this,t,e,!1,n)},u.prototype.writeDoubleLE=function(t,e,n){return B(this,t,e,!0,n)},u.prototype.writeDoubleBE=function(t,e,n){return B(this,t,e,!1,n)},u.prototype.copy=function(t,e,n,r){if(n||(n=0),r||0===r||(r=this.length),e>=t.length&&(e=t.length),e||(e=0),r>0&&r=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),t.length-e=0;--i)t[i+e]=this[i+n];else if(o<1e3||!u.TYPED_ARRAY_SUPPORT)for(i=0;i>>=0,n=void 0===n?this.length:n>>>0,t||(t=0),"number"==typeof t)for(o=e;o55295&&n<57344){if(!i){if(n>56319){(e-=3)>-1&&o.push(239,191,189);continue}if(a+1===r){(e-=3)>-1&&o.push(239,191,189);continue}i=n;continue}if(n<56320){(e-=3)>-1&&o.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(e-=3)>-1&&o.push(239,191,189);if(i=null,n<128){if((e-=1)<0)break;o.push(n)}else if(n<2048){if((e-=2)<0)break;o.push(n>>6|192,63&n|128)}else if(n<65536){if((e-=3)<0)break;o.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;o.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return o}function z(t){return r.toByteArray(function(t){if((t=function(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}(t).replace(F,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function G(t,e,n,r){for(var i=0;i=e.length||i>=t.length);++i)e[i+n]=t[i];return i}}).call(this,n(8))},function(t,e){t.exports=r;var n=null;try{n=new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([0,97,115,109,1,0,0,0,1,13,2,96,0,1,127,96,4,127,127,127,127,1,127,3,7,6,0,1,1,1,1,1,6,6,1,127,1,65,0,11,7,50,6,3,109,117,108,0,1,5,100,105,118,95,115,0,2,5,100,105,118,95,117,0,3,5,114,101,109,95,115,0,4,5,114,101,109,95,117,0,5,8,103,101,116,95,104,105,103,104,0,0,10,191,1,6,4,0,35,0,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,126,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,127,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,128,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,129,34,4,66,32,135,167,36,0,32,4,167,11,36,1,1,126,32,0,173,32,1,173,66,32,134,132,32,2,173,32,3,173,66,32,134,132,130,34,4,66,32,135,167,36,0,32,4,167,11])),{}).exports}catch(t){}function r(t,e,n){this.low=0|t,this.high=0|e,this.unsigned=!!n}function i(t){return!0===(t&&t.__isLong__)}r.prototype.__isLong__,Object.defineProperty(r.prototype,"__isLong__",{value:!0}),r.isLong=i;var o={},a={};function s(t,e){var n,r,i;return e?(i=0<=(t>>>=0)&&t<256)&&(r=a[t])?r:(n=c(t,(0|t)<0?-1:0,!0),i&&(a[t]=n),n):(i=-128<=(t|=0)&&t<128)&&(r=o[t])?r:(n=c(t,t<0?-1:0,!1),i&&(o[t]=n),n)}function u(t,e){if(isNaN(t))return e?y:v;if(e){if(t<0)return y;if(t>=d)return S}else{if(t<=-m)return E;if(t+1>=m)return _}return t<0?u(-t,e).neg():c(t%p|0,t/p|0,e)}function c(t,e,n){return new r(t,e,n)}r.fromInt=s,r.fromNumber=u,r.fromBits=c;var l=Math.pow;function f(t,e,n){if(0===t.length)throw Error("empty string");if("NaN"===t||"Infinity"===t||"+Infinity"===t||"-Infinity"===t)return v;if("number"==typeof e?(n=e,e=!1):e=!!e,(n=n||10)<2||360)throw Error("interior hyphen");if(0===r)return f(t.substring(1),e,n).neg();for(var i=u(l(n,8)),o=v,a=0;a>>0:this.low},T.toNumber=function(){return this.unsigned?(this.high>>>0)*p+(this.low>>>0):this.high*p+(this.low>>>0)},T.toString=function(t){if((t=t||10)<2||36>>0).toString(t);if((o=s).isZero())return c+a;for(;c.length<6;)c="0"+c;a=""+c+a}},T.getHighBits=function(){return this.high},T.getHighBitsUnsigned=function(){return this.high>>>0},T.getLowBits=function(){return this.low},T.getLowBitsUnsigned=function(){return this.low>>>0},T.getNumBitsAbs=function(){if(this.isNegative())return this.eq(E)?64:this.neg().getNumBitsAbs();for(var t=0!=this.high?this.high:this.low,e=31;e>0&&0==(t&1<=0},T.isOdd=function(){return 1==(1&this.low)},T.isEven=function(){return 0==(1&this.low)},T.equals=function(t){return i(t)||(t=h(t)),(this.unsigned===t.unsigned||this.high>>>31!=1||t.high>>>31!=1)&&this.high===t.high&&this.low===t.low},T.eq=T.equals,T.notEquals=function(t){return!this.eq(t)},T.neq=T.notEquals,T.ne=T.notEquals,T.lessThan=function(t){return this.comp(t)<0},T.lt=T.lessThan,T.lessThanOrEqual=function(t){return this.comp(t)<=0},T.lte=T.lessThanOrEqual,T.le=T.lessThanOrEqual,T.greaterThan=function(t){return this.comp(t)>0},T.gt=T.greaterThan,T.greaterThanOrEqual=function(t){return this.comp(t)>=0},T.gte=T.greaterThanOrEqual,T.ge=T.greaterThanOrEqual,T.compare=function(t){if(i(t)||(t=h(t)),this.eq(t))return 0;var e=this.isNegative(),n=t.isNegative();return e&&!n?-1:!e&&n?1:this.unsigned?t.high>>>0>this.high>>>0||t.high===this.high&&t.low>>>0>this.low>>>0?-1:1:this.sub(t).isNegative()?-1:1},T.comp=T.compare,T.negate=function(){return!this.unsigned&&this.eq(E)?E:this.not().add(b)},T.neg=T.negate,T.add=function(t){i(t)||(t=h(t));var e=this.high>>>16,n=65535&this.high,r=this.low>>>16,o=65535&this.low,a=t.high>>>16,s=65535&t.high,u=t.low>>>16,l=0,f=0,p=0,d=0;return p+=(d+=o+(65535&t.low))>>>16,f+=(p+=r+u)>>>16,l+=(f+=n+s)>>>16,l+=e+a,c((p&=65535)<<16|(d&=65535),(l&=65535)<<16|(f&=65535),this.unsigned)},T.subtract=function(t){return i(t)||(t=h(t)),this.add(t.neg())},T.sub=T.subtract,T.multiply=function(t){if(this.isZero())return v;if(i(t)||(t=h(t)),n)return c(n.mul(this.low,this.high,t.low,t.high),n.get_high(),this.unsigned);if(t.isZero())return v;if(this.eq(E))return t.isOdd()?E:v;if(t.eq(E))return this.isOdd()?E:v;if(this.isNegative())return t.isNegative()?this.neg().mul(t.neg()):this.neg().mul(t).neg();if(t.isNegative())return this.mul(t.neg()).neg();if(this.lt(g)&&t.lt(g))return u(this.toNumber()*t.toNumber(),this.unsigned);var e=this.high>>>16,r=65535&this.high,o=this.low>>>16,a=65535&this.low,s=t.high>>>16,l=65535&t.high,f=t.low>>>16,p=65535&t.low,d=0,m=0,y=0,b=0;return y+=(b+=a*p)>>>16,m+=(y+=o*p)>>>16,y&=65535,m+=(y+=a*f)>>>16,d+=(m+=r*p)>>>16,m&=65535,d+=(m+=o*f)>>>16,m&=65535,d+=(m+=a*l)>>>16,d+=e*p+r*f+o*l+a*s,c((y&=65535)<<16|(b&=65535),(d&=65535)<<16|(m&=65535),this.unsigned)},T.mul=T.multiply,T.divide=function(t){if(i(t)||(t=h(t)),t.isZero())throw Error("division by zero");var e,r,o;if(n)return this.unsigned||-2147483648!==this.high||-1!==t.low||-1!==t.high?c((this.unsigned?n.div_u:n.div_s)(this.low,this.high,t.low,t.high),n.get_high(),this.unsigned):this;if(this.isZero())return this.unsigned?y:v;if(this.unsigned){if(t.unsigned||(t=t.toUnsigned()),t.gt(this))return y;if(t.gt(this.shru(1)))return w;o=y}else{if(this.eq(E))return t.eq(b)||t.eq(x)?E:t.eq(E)?b:(e=this.shr(1).div(t).shl(1)).eq(v)?t.isNegative()?b:x:(r=this.sub(t.mul(e)),o=e.add(r.div(t)));if(t.eq(E))return this.unsigned?y:v;if(this.isNegative())return t.isNegative()?this.neg().div(t.neg()):this.neg().div(t).neg();if(t.isNegative())return this.div(t.neg()).neg();o=v}for(r=this;r.gte(t);){e=Math.max(1,Math.floor(r.toNumber()/t.toNumber()));for(var a=Math.ceil(Math.log(e)/Math.LN2),s=a<=48?1:l(2,a-48),f=u(e),p=f.mul(t);p.isNegative()||p.gt(r);)p=(f=u(e-=s,this.unsigned)).mul(t);f.isZero()&&(f=b),o=o.add(f),r=r.sub(p)}return o},T.div=T.divide,T.modulo=function(t){return i(t)||(t=h(t)),n?c((this.unsigned?n.rem_u:n.rem_s)(this.low,this.high,t.low,t.high),n.get_high(),this.unsigned):this.sub(this.div(t).mul(t))},T.mod=T.modulo,T.rem=T.modulo,T.not=function(){return c(~this.low,~this.high,this.unsigned)},T.and=function(t){return i(t)||(t=h(t)),c(this.low&t.low,this.high&t.high,this.unsigned)},T.or=function(t){return i(t)||(t=h(t)),c(this.low|t.low,this.high|t.high,this.unsigned)},T.xor=function(t){return i(t)||(t=h(t)),c(this.low^t.low,this.high^t.high,this.unsigned)},T.shiftLeft=function(t){return i(t)&&(t=t.toInt()),0==(t&=63)?this:t<32?c(this.low<>>32-t,this.unsigned):c(0,this.low<>>t|this.high<<32-t,this.high>>t,this.unsigned):c(this.high>>t-32,this.high>=0?0:-1,this.unsigned)},T.shr=T.shiftRight,T.shiftRightUnsigned=function(t){if(i(t)&&(t=t.toInt()),0===(t&=63))return this;var e=this.high;return t<32?c(this.low>>>t|e<<32-t,e>>>t,this.unsigned):c(32===t?e:e>>>t-32,0,this.unsigned)},T.shru=T.shiftRightUnsigned,T.shr_u=T.shiftRightUnsigned,T.toSigned=function(){return this.unsigned?c(this.low,this.high,!1):this},T.toUnsigned=function(){return this.unsigned?this:c(this.low,this.high,!0)},T.toBytes=function(t){return t?this.toBytesLE():this.toBytesBE()},T.toBytesLE=function(){var t=this.high,e=this.low;return[255&e,e>>>8&255,e>>>16&255,e>>>24,255&t,t>>>8&255,t>>>16&255,t>>>24]},T.toBytesBE=function(){var t=this.high,e=this.low;return[t>>>24,t>>>16&255,t>>>8&255,255&t,e>>>24,e>>>16&255,e>>>8&255,255&e]},r.fromBytes=function(t,e,n){return n?r.fromBytesLE(t,e):r.fromBytesBE(t,e)},r.fromBytesLE=function(t,e){return new r(t[0]|t[1]<<8|t[2]<<16|t[3]<<24,t[4]|t[5]<<8|t[6]<<16|t[7]<<24,e)},r.fromBytesBE=function(t,e){return new r(t[4]<<24|t[5]<<16|t[6]<<8|t[7],t[0]<<24|t[1]<<16|t[2]<<8|t[3],e)}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(){}return t.prototype.initialize=function(t){this.epsilon=t.getFloat("epsilon",1e-5),this.momentum=t.getFloat("momentum",.9),this.spatial=t.getInt("spatial",1)},t.prototype.checkInputs=function(t){return!(!t||5!==t.length)&&this.checkInputTypes(t)},t.prototype.checkInputTypes=function(t){var e=t[0],n=t[1],r=t[2],i=t[3],o=t[4];return!(e.dims.length<3||1!==n.dims.length||1!==r.dims.length||1!==i.dims.length||1!==o.dims.length)&&n.dims[0]===e.dims[1]&&r.dims[0]===e.dims[1]&&i.dims[0]===e.dims[1]&&o.dims[0]===e.dims[1]&&!("float32"!==e.type&&"float64"!==e.type||"float32"!==n.type&&"float64"!==n.type||"float32"!==r.type&&"float64"!==r.type||"float32"!==i.type&&"float64"!==i.type||"float32"!==o.type&&"float64"!==o.type)},t}();e.BatchNormalization=r},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e,n){this.typeConstraint=t,this.opType=e,this.resultType=n}return t.prototype.initialize=function(t){},t.prototype.checkInputs=function(t){return!(!t||2!==t.length)&&this.checkInputTypes(t)},t.prototype.checkInputTypes=function(t){return-1!==this.typeConstraint.indexOf(t[0].type)&&t[0].type===t[1].type},t}();e.BinaryOp=r},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(){}return t.prototype.initialize=function(t){this.autoPad=t.getString("auto_pad","NOTSET"),this.dilations=t.getInts("dilations",[1,1]),this.group=t.getInt("group",1),this.kernelShape=t.getInts("kernel_shape",[]),this.pads=t.getInts("pads",[0,0,0,0]),this.strides=t.getInts("strides",[1,1])},t.prototype.checkInputs=function(t){if(!t||2!==t.length&&3!==t.length)return!1;if(4!==t[0].dims.length||4!==t[1].dims.length)return!1;if(t[0].dims[1]!==t[1].dims[1]*this.group)return!1;if(3===t.length&&(1!==t[2].dims.length||t[1].dims[0]!==t[2].dims[0]))return!1;var e=t[0].dims.length-2;return this.dilations.length===e&&this.strides.length===e&&this.pads.length===2*e&&(0===this.kernelShape.length||this.kernelShape.length===t[1].dims.length-2)&&this.checkInputTypes(t)},t.prototype.checkInputTypes=function(t){return"float32"===t[0].type&&"float32"===t[1].type&&(3!==t.length||"float32"===t[2].type)},t}();e.Conv=r},function(t,e,n){"use strict";var r,i=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}),o=this&&this.__read||function(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var r,i,o=n.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(r=o.next()).done;)a.push(r.value)}catch(t){i={error:t}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return a};Object.defineProperty(e,"__esModule",{value:!0});var a=n(18),s=n(1),u=n(0),c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){return[l(e[0],e[1])]},e}(a.MatMul);function l(t,e){var n=o(u.MatMulUtil.preprocessInputShapes(t.dims,e.dims),2),r=n[0],i=n[1],a=[r[r.length-2],i[i.length-1]],c=u.BroadcastUtil.calcShape(r,i,!0);if(!c)throw new Error("input dimensions do not match the requirement");for(var l=u.ShapeUtil.size(c)/(a[0]*a[1]),h=new s.Tensor(c,"float64"===t.type||"float64"===e.type?"float64":"float32"),p=0,d=new Array(c.length),m=new Array(t.dims.length),g=new Array(e.dims.length),v=0;v=0;b--)d[b]=y%c[b],y=Math.floor(y/c[b]);u.BroadcastUtil.fillIndex(d,t.dims,m),u.BroadcastUtil.fillIndex(d,e.dims,g);var w=m.length<=2?0:u.ShapeUtil.indicesToOffset(m,t.strides,c.length-2),x=g.length<=2?0:u.ShapeUtil.indicesToOffset(g,e.strides,c.length-2);f(t.floatData.subarray(w),e.floatData.subarray(x),h.floatData.subarray(p),!1,!1,1,0,a[0],a[1],r[r.length-1]),p+=a[0]*a[1]}return h}function f(t,e,n,r,i,o,a,s,u,c){return r&&i?function(t,e,n,r,i,o,a,s){for(var u=0,c=0,l=0,f=0;f1)for(var n=1;n=0?t:t*e})}],["Reciprocal","","6+",function(){return new C.CpuUnaryOp(i.FLOAT_TYPES,A.reciprocal)}],["ReduceLogSum","","1+",function(){return new b.CpuReduceLogSum}],["ReduceMax","","1+",function(){return new b.CpuReduceMax}],["ReduceMean","","1+",function(){return new b.CpuReduceMean}],["ReduceMin","","1+",function(){return new b.CpuReduceMin}],["ReduceProd","","1+",function(){return new b.CpuReduceProd}],["ReduceSum","","1+",function(){return new b.CpuReduceSum}],["ReduceSumSquare","","1+",function(){return new b.CpuReduceSumSquare}],["Relu","","6+",function(){return new C.CpuUnaryOp(i.FLOAT_TYPES,A.relu)}],["Reshape","","5+",function(){return new w.CpuReshape}],["Sigmoid","","6+",function(){return new C.CpuUnaryOp(i.FLOAT_TYPES,A.sigmoid)}],["Sign","","9+",function(){return new C.CpuUnaryOp(i.NUMBER_TYPES,A.sign)}],["Sin","","7+",function(){return new C.CpuUnaryOp(i.FLOAT_TYPES,A.sin)}],["Sinh","","9+",function(){return new C.CpuUnaryOp(i.FLOAT_TYPES,A.sinh)}],["Slice","","10+",function(){return new x.CpuSliceV10}],["Slice","","1-9",function(){return new x.CpuSlice}],["Softmax","","1+",function(){return new _.CpuSoftmax}],["Sqrt","","6+",function(){return new C.CpuUnaryOp(i.FLOAT_TYPES,A.sqrt)}],["Squeeze","","1+",function(){return new S.CpuSqueeze}],["Sub","","7+",function(){return new s.CpuBinaryOp(i.NUMBER_TYPES,function(t,e){return t-e})}],["Sum","","6+",function(){return new E.CpuSum}],["Tan","","7+",function(){return new C.CpuUnaryOp(i.FLOAT_TYPES,A.tan)}],["Tanh","","6+",function(){return new C.CpuUnaryOp(i.FLOAT_TYPES,A.tanh)}],["Tile","","6+",function(){return new T.CpuTile}],["Transpose","","1+",function(){return new M.CpuTranspose}],["Unsqueeze","","1+",function(){return new P.CpuUnsqueeze}],["Xor","","7+",function(){return new s.CpuBinaryOp(["bool"],function(t,e){return t^e})}]]},function(t,e,n){"use strict";t.exports=f;var r,i=n(6),o=i.LongBits,a=i.base64,s=i.utf8;function u(t,e,n){this.fn=t,this.len=e,this.next=void 0,this.val=n}function c(){}function l(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}function f(){this.len=0,this.head=new u(c,0,0),this.tail=this.head,this.states=null}function h(t,e,n){e[n]=255&t}function p(t,e){this.len=t,this.next=void 0,this.val=e}function d(t,e,n){for(;t.hi;)e[n++]=127&t.lo|128,t.lo=(t.lo>>>7|t.hi<<25)>>>0,t.hi>>>=7;for(;t.lo>127;)e[n++]=127&t.lo|128,t.lo=t.lo>>>7;e[n++]=t.lo}function m(t,e,n){e[n]=255&t,e[n+1]=t>>>8&255,e[n+2]=t>>>16&255,e[n+3]=t>>>24}f.create=i.Buffer?function(){return(f.create=function(){return new r})()}:function(){return new f},f.alloc=function(t){return new i.Array(t)},i.Array!==Array&&(f.alloc=i.pool(f.alloc,i.Array.prototype.subarray)),f.prototype._push=function(t,e,n){return this.tail=this.tail.next=new u(t,e,n),this.len+=e,this},p.prototype=Object.create(u.prototype),p.prototype.fn=function(t,e,n){for(;t>127;)e[n++]=127&t|128,t>>>=7;e[n]=t},f.prototype.uint32=function(t){return this.len+=(this.tail=this.tail.next=new p((t>>>=0)<128?1:t<16384?2:t<2097152?3:t<268435456?4:5,t)).len,this},f.prototype.int32=function(t){return t<0?this._push(d,10,o.fromNumber(t)):this.uint32(t)},f.prototype.sint32=function(t){return this.uint32((t<<1^t>>31)>>>0)},f.prototype.uint64=function(t){var e=o.from(t);return this._push(d,e.length(),e)},f.prototype.int64=f.prototype.uint64,f.prototype.sint64=function(t){var e=o.from(t).zzEncode();return this._push(d,e.length(),e)},f.prototype.bool=function(t){return this._push(h,1,t?1:0)},f.prototype.fixed32=function(t){return this._push(m,4,t>>>0)},f.prototype.sfixed32=f.prototype.fixed32,f.prototype.fixed64=function(t){var e=o.from(t);return this._push(m,4,e.lo)._push(m,4,e.hi)},f.prototype.sfixed64=f.prototype.fixed64,f.prototype.float=function(t){return this._push(i.float.writeFloatLE,4,t)},f.prototype.double=function(t){return this._push(i.float.writeDoubleLE,8,t)};var g=i.Array.prototype.set?function(t,e,n){e.set(t,n)}:function(t,e,n){for(var r=0;r>>0;if(!e)return this._push(h,1,0);if(i.isString(t)){var n=f.alloc(e=a.length(t));a.decode(t,n,0),t=n}return this.uint32(e)._push(g,e,t)},f.prototype.string=function(t){var e=s.length(t);return e?this.uint32(e)._push(s.write,e,t):this._push(h,1,0)},f.prototype.fork=function(){return this.states=new l(this),this.head=this.tail=new u(c,0,0),this.len=0,this},f.prototype.reset=function(){return this.states?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new u(c,0,0),this.len=0),this},f.prototype.ldelim=function(){var t=this.head,e=this.tail,n=this.len;return this.reset().uint32(n),n&&(this.tail.next=t.next,this.tail=e,this.len+=n),this},f.prototype.finish=function(){for(var t=this.head.next,e=this.constructor.alloc(this.len),n=0;t;)t.fn(t.val,e,n),n+=t.len,t=t.next;return e},f._configure=function(t){r=t}},function(t,e,n){"use strict";t.exports=u;var r,i=n(6),o=i.LongBits,a=i.utf8;function s(t,e){return RangeError("index out of range: "+t.pos+" + "+(e||1)+" > "+t.len)}function u(t){this.buf=t,this.pos=0,this.len=t.length}var c,l="undefined"!=typeof Uint8Array?function(t){if(t instanceof Uint8Array||Array.isArray(t))return new u(t);throw Error("illegal buffer")}:function(t){if(Array.isArray(t))return new u(t);throw Error("illegal buffer")};function f(){var t=new o(0,0),e=0;if(!(this.len-this.pos>4)){for(;e<3;++e){if(this.pos>=this.len)throw s(this);if(t.lo=(t.lo|(127&this.buf[this.pos])<<7*e)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(127&this.buf[this.pos++])<<7*e)>>>0,t}for(;e<4;++e)if(t.lo=(t.lo|(127&this.buf[this.pos])<<7*e)>>>0,this.buf[this.pos++]<128)return t;if(t.lo=(t.lo|(127&this.buf[this.pos])<<28)>>>0,t.hi=(t.hi|(127&this.buf[this.pos])>>4)>>>0,this.buf[this.pos++]<128)return t;if(e=0,this.len-this.pos>4){for(;e<5;++e)if(t.hi=(t.hi|(127&this.buf[this.pos])<<7*e+3)>>>0,this.buf[this.pos++]<128)return t}else for(;e<5;++e){if(this.pos>=this.len)throw s(this);if(t.hi=(t.hi|(127&this.buf[this.pos])<<7*e+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}function h(t,e){return(t[e-4]|t[e-3]<<8|t[e-2]<<16|t[e-1]<<24)>>>0}function p(){if(this.pos+8>this.len)throw s(this,8);return new o(h(this.buf,this.pos+=4),h(this.buf,this.pos+=4))}u.create=i.Buffer?function(t){return(u.create=function(t){return i.Buffer.isBuffer(t)?new r(t):l(t)})(t)}:l,u.prototype._slice=i.Array.prototype.subarray||i.Array.prototype.slice,u.prototype.uint32=(c=4294967295,function(){if(c=(127&this.buf[this.pos])>>>0,this.buf[this.pos++]<128)return c;if(c=(c|(127&this.buf[this.pos])<<7)>>>0,this.buf[this.pos++]<128)return c;if(c=(c|(127&this.buf[this.pos])<<14)>>>0,this.buf[this.pos++]<128)return c;if(c=(c|(127&this.buf[this.pos])<<21)>>>0,this.buf[this.pos++]<128)return c;if(c=(c|(15&this.buf[this.pos])<<28)>>>0,this.buf[this.pos++]<128)return c;if((this.pos+=5)>this.len)throw this.pos=this.len,s(this,10);return c}),u.prototype.int32=function(){return 0|this.uint32()},u.prototype.sint32=function(){var t=this.uint32();return t>>>1^-(1&t)|0},u.prototype.bool=function(){return 0!==this.uint32()},u.prototype.fixed32=function(){if(this.pos+4>this.len)throw s(this,4);return h(this.buf,this.pos+=4)},u.prototype.sfixed32=function(){if(this.pos+4>this.len)throw s(this,4);return 0|h(this.buf,this.pos+=4)},u.prototype.float=function(){if(this.pos+4>this.len)throw s(this,4);var t=i.float.readFloatLE(this.buf,this.pos);return this.pos+=4,t},u.prototype.double=function(){if(this.pos+8>this.len)throw s(this,4);var t=i.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,t},u.prototype.bytes=function(){var t=this.uint32(),e=this.pos,n=this.pos+t;if(n>this.len)throw s(this,t);return this.pos+=t,Array.isArray(this.buf)?this.buf.slice(e,n):e===n?new this.buf.constructor(0):this._slice.call(this.buf,e,n)},u.prototype.string=function(){var t=this.bytes();return a.read(t,0,t.length)},u.prototype.skip=function(t){if("number"==typeof t){if(this.pos+t>this.len)throw s(this,t);this.pos+=t}else do{if(this.pos>=this.len)throw s(this)}while(128&this.buf[this.pos++]);return this},u.prototype.skipType=function(t){switch(t){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;4!=(t=7&this.uint32());)this.skipType(t);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+t+" at offset "+this.pos)}return this},u._configure=function(t){r=t;var e=i.Long?"toLong":"toNumber";i.merge(u.prototype,{int64:function(){return f.call(this)[e](!1)},uint64:function(){return f.call(this)[e](!0)},sint64:function(){return f.call(this).zzDecode()[e](!1)},fixed64:function(){return p.call(this)[e](!0)},sfixed64:function(){return p.call(this)[e](!1)}})}},function(t,e,n){"use strict";var r=this&&this.__values||function(t){var e="function"==typeof Symbol&&t[Symbol.iterator],n=0;return e?e.call(t):{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}}};Object.defineProperty(e,"__esModule",{value:!0});var i=function(){function t(){}return t.prototype.initialize=function(t){this.axis=t.getInt("axis")},t.prototype.checkInputs=function(t){return!(!t||t.length<1)&&this.checkInputTypes(t)},t.prototype.checkInputTypes=function(t){var e,n,i=t[0].type,o=t[0].dims.length;if("string"===i)return!1;try{for(var a=r(t),s=a.next();!s.done;s=a.next()){var u=s.value;if(u.type!==i)return!1;if(u.dims.length!==o)return!1}}catch(t){e={error:t}}finally{try{s&&!s.done&&(n=a.return)&&n.call(a)}finally{if(e)throw e.error}}return!0},t}();e.Concat=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(){}return t.prototype.initialize=function(t){this.ratio=t.getFloat("ratio",.5),this.testMode=!0},t.prototype.checkInputs=function(t){return!(!t||1!==t.length)&&this.checkInputTypes(t)},t.prototype.checkInputTypes=function(t){return"float32"===t[0].type||"float64"===t[0].type},t}();e.Dropout=r},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(){}return t.prototype.initialize=function(t){this.axis=t.getInt("axis",1)},t.prototype.checkInputs=function(t){return!(!t||1!==t.length)&&0!==t[0].dims.length&&!(this.axis<0||this.axis>t[0].dims.length)&&this.checkInputTypes(t)},t.prototype.checkInputTypes=function(t){return"string"!==t[0].type},t}();e.Flatten=r},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n(7),i=function(){function t(){}return t.prototype.initialize=function(t){this.axis=t.getInt("axis",0)},t.prototype.checkInputs=function(t){if(!t||2!==t.length)return!1;var e=t[0].dims.length;return!(e<1)&&!(this.axis<-e||this.axis>e-1)&&this.checkInputTypes(t)},t.prototype.checkInputTypes=function(t){return-1!==r.NUMBER_TYPES.indexOf(t[0].type)&&("int32"===t[1].type||"int16"===t[1].type)},t}();e.Gather=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(){}return t.prototype.initialize=function(t){this.scale=t.getFloat("scale"),this.bias=t.getFloats("bias")},t.prototype.checkInputs=function(t){return!(!t||1!==t.length)&&4===t[0].dims.length&&this.checkInputTypes(t)},t.prototype.checkInputTypes=function(t){return"float32"===t[0].type||"float64"===t[0].type},t}();e.ImageScaler=r},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(){}return t.prototype.initialize=function(t){this.epsilon=t.getFloat("epsilon",1e-5)},t.prototype.checkInputs=function(t){return!(!t||3!==t.length)&&this.checkInputTypes(t)},t.prototype.checkInputTypes=function(t){var e=t[0],n=t[1],r=t[2];return!(e.dims.length<3||1!==n.dims.length||1!==r.dims.length)&&n.dims[0]===e.dims[1]&&r.dims[0]===e.dims[1]&&!("float32"!==e.type&&"float64"!==e.type||"float32"!==n.type&&"float64"!==n.type||"float32"!==r.type&&"float64"!==r.type)},t}();e.InstanceNormalization=r},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n(7),i=function(){function t(){}return t.prototype.initialize=function(t){this.axes=t.getInts("axes",[]),this.keepDims=1===t.getInt("keepdims",1)},t.prototype.checkInputs=function(t){return!(!t||1!==t.length)&&this.checkInputTypes(t)},t.prototype.checkInputTypes=function(t){return-1!==r.NUMBER_TYPES.indexOf(t[0].type)},t}();e.ReduceBase=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(){}return t.prototype.initialize=function(t){},t.prototype.checkInputs=function(t){return!(!t||2!==t.length||1!==t[1].dims.length)&&this.checkInputTypes(t)},t.prototype.checkInputTypes=function(t){return("float32"===t[0].type||"float64"===t[0].type)&&"int32"===t[1].type},t}();e.Reshape=r},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(){}return t.prototype.initialize=function(t){this.starts=t.getInts("starts"),this.ends=t.getInts("ends"),this.axes=t.getInts("axes",[])},t.prototype.checkInputs=function(t){return!(!t||1!==t.length)&&this.checkInputTypes(t)},t.prototype.checkInputTypes=function(t){return"float32"===t[0].type||"float64"===t[0].type},t}();e.Slice=r;var i=function(){function t(){}return t.prototype.initialize=function(t){},t.prototype.checkInputs=function(t){return!(!t||t.length<3||t.length>5)&&this.checkInputTypes(t)},t.prototype.checkInputTypes=function(t){return"int32"===t[1].type&&1===t[1].dims.length&&"int32"===t[2].type&&1===t[2].dims.length&&(!(t.length>=4)||"int32"===t[3].type&&1===t[3].dims.length)&&(!(t.length>=5)||"int32"===t[4].type&&1===t[4].dims.length)},t}();e.SliceV10=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(){}return t.prototype.initialize=function(t){this.axes=t.getInts("axes")},t.prototype.checkInputs=function(t){return!(!t||1!==t.length)&&this.checkInputTypes(t)},t.prototype.checkInputTypes=function(t){return"string"!==t[0].type},t}();e.Squeeze=r},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n(7),i=function(){function t(){}return t.prototype.initialize=function(t){},t.prototype.checkInputs=function(t){return!(!t||2!==t.length)&&1===t[1].dims.length&&t[1].dims[0]===t[0].dims.length&&this.checkInputTypes(t)},t.prototype.checkInputTypes=function(t){return-1!==r.NUMBER_TYPES.indexOf(t[0].type)&&("int32"===t[1].type||"int16"===t[1].type)},t}();e.Tile=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(){}return t.prototype.initialize=function(t){this.perm=t.getInts("perm",[])},t.prototype.checkInputs=function(t){return!(!t||1!==t.length)&&this.checkInputTypes(t)},t.prototype.checkInputTypes=function(t){return"float32"===t[0].type||"float64"===t[0].type},t}();e.Transpose=r},function(t,e,n){"use strict";var r,i=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(42),a=n(1),s=function(t){function e(e,n,r,i){var o=t.call(this,e,i)||this;return o.func=n,o.attributesInitializer=r,o}return i(e,t),e.prototype.initialize=function(t){this.attributesInitializer&&(this.attributes=this.attributesInitializer(t))},e.prototype.run=function(t,e){return[u(e[0],this.func,this.attributes,this.resultType)]},e}(o.UnaryOp);function u(t,e,n,r){var i=new a.Tensor(t.dims,r||t.type);return e(t.data,i.data,n),i}e.CpuUnaryOp=s,e.unaryOp=u,e.abs=function(t,e){for(var n=0;ni?i:a}},e.cos=function(t,e){for(var n=0;n=0?o:r*(Math.exp(o)-1)}},e.exp=function(t,e){for(var n=0;n=0?o:r*o}},e.log=function(t,e){for(var n=0;n0?1:t[n]<0?-1:0},e.sin=function(t,e){for(var n=0;n0)&&!(r=o.next()).done;)a.push(r.value)}catch(t){i={error:t}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return a},i=this&&this.__spread||function(){for(var t=[],e=0;e=e.dims[n])throw new RangeError("Input index array dims don't match the tensor dims.")});var a=this.internalTensor.get(o);return"bool"===this.type?1===a:a},t.prototype.set=function(t,e){for(var n=this,r=[],o=2;o=n.dims[e])throw new RangeError("Input index array dims don't match the tensor dims.")}),"boolean"==typeof t?this.internalTensor.set(a,t?1:0):this.internalTensor.set(a,t)},t}();e.Tensor=u},function(t,e,n){"use strict";var r=this&&this.__values||function(t){var e="function"==typeof Symbol&&t[Symbol.iterator],n=0;return e?e.call(t):{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}}};Object.defineProperty(e,"__esModule",{value:!0});var i=n(1),o=n(47);e.fromInternalTensor=function(t){switch(t.type){case"bool":return new o.Tensor(new Uint8Array(t.integerData),"bool",t.dims);case"float32":return new o.Tensor(t.floatData,"float32",t.dims);case"float64":return new o.Tensor(new Float32Array(t.floatData),"float32",t.dims);case"string":return new o.Tensor(t.stringData,"string",t.dims);case"int8":return new o.Tensor(new Int32Array(t.integerData),"int32",t.dims);case"int32":return new o.Tensor(t.integerData,"int32",t.dims);default:throw new TypeError("Tensor type is not supported. ")}},e.toInternalTensor=function(t){return new i.Tensor(t.dims,t.type,void 0,void 0,t.data)},e.matchElementType=function(t,e){switch(typeof e){case"string":if("string"!==t)throw new TypeError("The new element type doesn't match the tensor data type.");break;case"number":if("float32"!==t&&"int32"!==t)throw new TypeError("The new element type doesn't match the tensor data type.");if("float32"===t&&Number.isInteger(e))throw new TypeError("The new element type doesn't match the tensor data type.");if("int32"===t&&!Number.isInteger(e))throw new TypeError("The new element type doesn't match the tensor data type.");break;case"boolean":if("bool"!==t)throw new TypeError("The new element type doesn't match the tensor data type.");break;default:throw new TypeError("The new element type is not supported.")}},e.validateIndices=function(t){var e,n;if(t.length<0||t.length>6)throw new RangeError("Only rank 0 to 6 is supported for tensor shape.");try{for(var i=r(t),o=i.next();!o.done;o=i.next()){var a=o.value;if(!Number.isInteger(a))throw new TypeError("Invalid index: "+a+" is not an integer");if(a<0||a>2147483647)throw new TypeError("Invalid index: length "+a+" is not allowed")}}catch(t){e={error:t}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(e)throw e.error}}}},function(t,e,n){"use strict";function r(t){for(var n in t)e.hasOwnProperty(n)||(e[n]=t[n])}Object.defineProperty(e,"__esModule",{value:!0});var i=n(50),o=n(95),a=n(113),s=n(163);r(n(164)),r(n(165)),e.backend={cpu:new i.CpuBackend,wasm:new o.WasmBackend,webgl:new a.WebGLBackend},e.ENV=s.envImpl},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n(51),i=function(){function t(){}return t.prototype.initialize=function(){return!0},t.prototype.createSessionHandler=function(t){return new r.CpuSessionHandler(this,t)},t.prototype.dispose=function(){},t}();e.CpuBackend=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n(11),i=n(52),o=n(26),a=function(){function t(t,e){this.backend=t,this.context=e}return t.prototype.createInferenceHandler=function(){return new i.CpuInferenceHandler(this,this.context.profiler)},t.prototype.dispose=function(){},t.prototype.resolve=function(t,e){var n=r.resolveOperator(t,e,o.CPU_OP_RESOLVE_RULES);return n.initialize(t.attributes),n},t}();e.CpuSessionHandler=a},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){this.session=t,this.profiler=e}return t.prototype.dispose=function(){},t}();e.CpuInferenceHandler=r},function(t,e,n){"use strict";var r,i=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(54),a=n(1),s=n(0),u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){return[c(e[0],this.axis,this.keepDims)]},e}(o.ArgMax);function c(t,e,n){var r=t.dims?t.dims.length:1;e=s.ShapeUtil.parseAxis(e,r);for(var i=s.ReduceUtil.calcReduceShape(t.dims,[e],!0),o=t.data,u=new Int32Array(s.ShapeUtil.size(i)),c=s.ShapeUtil.sizeFromDimension(t.dims,e+1),l=s.ShapeUtil.computeStrides(i),f=s.ShapeUtil.computeStrides(t.dims),h=new Array(t.dims.length),p=0;pg&&(g=b,v=y)}u[p]=v}return new a.Tensor(n?i:s.ReduceUtil.calcReduceShape(t.dims,[e],n),"int32",void 0,void 0,u)}e.CpuArgMax=u,e.argMax=c},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n(7),i=function(){function t(){}return t.prototype.initialize=function(t){this.axis=t.getInt("axis",0),this.keepDims=1===t.getInt("keepdims",1)},t.prototype.checkInputs=function(t){return!(!t||1!==t.length)&&this.checkInputTypes(t)},t.prototype.checkInputTypes=function(t){return-1!==r.NUMBER_TYPES.indexOf(t[0].type)},t}();e.ArgMax=i},function(t,e,n){"use strict";e.byteLength=function(t){var e=c(t),n=e[0],r=e[1];return 3*(n+r)/4-r},e.toByteArray=function(t){for(var e,n=c(t),r=n[0],a=n[1],s=new o(3*(r+a)/4-a),u=0,l=a>0?r-4:r,f=0;f>16&255,s[u++]=e>>8&255,s[u++]=255&e;return 2===a&&(e=i[t.charCodeAt(f)]<<2|i[t.charCodeAt(f+1)]>>4,s[u++]=255&e),1===a&&(e=i[t.charCodeAt(f)]<<10|i[t.charCodeAt(f+1)]<<4|i[t.charCodeAt(f+2)]>>2,s[u++]=e>>8&255,s[u++]=255&e),s},e.fromByteArray=function(t){for(var e,n=t.length,i=n%3,o=[],a=0,s=n-i;as?s:a+16383));return 1===i?(e=t[n-1],o.push(r[e>>2]+r[e<<4&63]+"==")):2===i&&(e=(t[n-2]<<8)+t[n-1],o.push(r[e>>10]+r[e>>4&63]+r[e<<2&63]+"=")),o.join("")};for(var r=[],i=[],o="undefined"!=typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0,u=a.length;s0)throw new Error("Invalid string. Length must be a multiple of 4");var n=t.indexOf("=");return-1===n&&(n=e),[n,n===e?0:4-n%4]}function l(t,e,n){for(var i,o,a=[],s=e;s>18&63]+r[o>>12&63]+r[o>>6&63]+r[63&o]);return a.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},function(t,e){e.read=function(t,e,n,r,i){var o,a,s=8*i-r-1,u=(1<>1,l=-7,f=n?i-1:0,h=n?-1:1,p=t[e+f];for(f+=h,o=p&(1<<-l)-1,p>>=-l,l+=s;l>0;o=256*o+t[e+f],f+=h,l-=8);for(a=o&(1<<-l)-1,o>>=-l,l+=r;l>0;a=256*a+t[e+f],f+=h,l-=8);if(0===o)o=1-c;else{if(o===u)return a?NaN:1/0*(p?-1:1);a+=Math.pow(2,r),o-=c}return(p?-1:1)*a*Math.pow(2,o-r)},e.write=function(t,e,n,r,i,o){var a,s,u,c=8*o-i-1,l=(1<>1,h=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,p=r?0:o-1,d=r?1:-1,m=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,a=l):(a=Math.floor(Math.log(e)/Math.LN2),e*(u=Math.pow(2,-a))<1&&(a--,u*=2),(e+=a+f>=1?h/u:h*Math.pow(2,1-f))*u>=2&&(a++,u/=2),a+f>=l?(s=0,a=l):a+f>=1?(s=(e*u-1)*Math.pow(2,i),a+=f):(s=e*Math.pow(2,f-1)*Math.pow(2,i),a=0));i>=8;t[n+p]=255&s,p+=d,s/=256,i-=8);for(a=a<0;t[n+p]=255&a,p+=d,a/=256,c-=8);t[n+p-d]|=128*m}},function(t,e){var n={}.toString;t.exports=Array.isArray||function(t){return"[object Array]"==n.call(t)}},function(t,e,n){"use strict";t.exports=n(59)},function(t,e,n){"use strict";var r=e;function i(){r.Reader._configure(r.BufferReader),r.util._configure()}r.build="minimal",r.Writer=n(27),r.BufferWriter=n(68),r.Reader=n(28),r.BufferReader=n(69),r.util=n(6),r.rpc=n(70),r.roots=n(72),r.configure=i,r.Writer._configure(r.BufferWriter),i()},function(t,e,n){"use strict";t.exports=function(t,e){for(var n=new Array(arguments.length-1),r=0,i=2,o=!0;i1&&"="===t.charAt(e);)++n;return Math.ceil(3*t.length)/4-n};for(var i=new Array(64),o=new Array(123),a=0;a<64;)o[i[a]=a<26?a+65:a<52?a+71:a<62?a-4:a-59|43]=a++;r.encode=function(t,e,n){for(var r,o=null,a=[],s=0,u=0;e>2],r=(3&c)<<4,u=1;break;case 1:a[s++]=i[r|c>>4],r=(15&c)<<2,u=2;break;case 2:a[s++]=i[r|c>>6],a[s++]=i[63&c],u=0}s>8191&&((o||(o=[])).push(String.fromCharCode.apply(String,a)),s=0)}return u&&(a[s++]=i[r],a[s++]=61,1===u&&(a[s++]=61)),o?(s&&o.push(String.fromCharCode.apply(String,a.slice(0,s))),o.join("")):String.fromCharCode.apply(String,a.slice(0,s))},r.decode=function(t,e,n){for(var r,i=n,a=0,s=0;s1)break;if(void 0===(u=o[u]))throw Error("invalid encoding");switch(a){case 0:r=u,a=1;break;case 1:e[n++]=r<<2|(48&u)>>4,r=u,a=2;break;case 2:e[n++]=(15&r)<<4|(60&u)>>2,r=u,a=3;break;case 3:e[n++]=(3&r)<<6|u,a=0}}if(1===a)throw Error("invalid encoding");return n-i},r.test=function(t){return/^(?:[A-Za-z0-9+\/]{4})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$/.test(t)}},function(t,e,n){"use strict";function r(){this._listeners={}}t.exports=r,r.prototype.on=function(t,e,n){return(this._listeners[t]||(this._listeners[t]=[])).push({fn:e,ctx:n||this}),this},r.prototype.off=function(t,e){if(void 0===t)this._listeners={};else if(void 0===e)this._listeners[t]=[];else for(var n=this._listeners[t],r=0;r0?0:2147483648,n,r);else if(isNaN(e))t(2143289344,n,r);else if(e>3.4028234663852886e38)t((i<<31|2139095040)>>>0,n,r);else if(e<1.1754943508222875e-38)t((i<<31|Math.round(e/1.401298464324817e-45))>>>0,n,r);else{var o=Math.floor(Math.log(e)/Math.LN2);t((i<<31|o+127<<23|8388607&Math.round(e*Math.pow(2,-o)*8388608))>>>0,n,r)}}function n(t,e,n){var r=t(e,n),i=2*(r>>31)+1,o=r>>>23&255,a=8388607&r;return 255===o?a?NaN:i*(1/0):0===o?1.401298464324817e-45*i*a:i*Math.pow(2,o-150)*(a+8388608)}t.writeFloatLE=e.bind(null,i),t.writeFloatBE=e.bind(null,o),t.readFloatLE=n.bind(null,a),t.readFloatBE=n.bind(null,s)}(),"undefined"!=typeof Float64Array?function(){var e=new Float64Array([-0]),n=new Uint8Array(e.buffer),r=128===n[7];function i(t,r,i){e[0]=t,r[i]=n[0],r[i+1]=n[1],r[i+2]=n[2],r[i+3]=n[3],r[i+4]=n[4],r[i+5]=n[5],r[i+6]=n[6],r[i+7]=n[7]}function o(t,r,i){e[0]=t,r[i]=n[7],r[i+1]=n[6],r[i+2]=n[5],r[i+3]=n[4],r[i+4]=n[3],r[i+5]=n[2],r[i+6]=n[1],r[i+7]=n[0]}function a(t,r){return n[0]=t[r],n[1]=t[r+1],n[2]=t[r+2],n[3]=t[r+3],n[4]=t[r+4],n[5]=t[r+5],n[6]=t[r+6],n[7]=t[r+7],e[0]}function s(t,r){return n[7]=t[r],n[6]=t[r+1],n[5]=t[r+2],n[4]=t[r+3],n[3]=t[r+4],n[2]=t[r+5],n[1]=t[r+6],n[0]=t[r+7],e[0]}t.writeDoubleLE=r?i:o,t.writeDoubleBE=r?o:i,t.readDoubleLE=r?a:s,t.readDoubleBE=r?s:a}():function(){function e(t,e,n,r,i,o){var a=r<0?1:0;if(a&&(r=-r),0===r)t(0,i,o+e),t(1/r>0?0:2147483648,i,o+n);else if(isNaN(r))t(0,i,o+e),t(2146959360,i,o+n);else if(r>1.7976931348623157e308)t(0,i,o+e),t((a<<31|2146435072)>>>0,i,o+n);else{var s;if(r<2.2250738585072014e-308)t((s=r/5e-324)>>>0,i,o+e),t((a<<31|s/4294967296)>>>0,i,o+n);else{var u=Math.floor(Math.log(r)/Math.LN2);1024===u&&(u=1023),t(4503599627370496*(s=r*Math.pow(2,-u))>>>0,i,o+e),t((a<<31|u+1023<<20|1048576*s&1048575)>>>0,i,o+n)}}}function n(t,e,n,r,i){var o=t(r,i+e),a=t(r,i+n),s=2*(a>>31)+1,u=a>>>20&2047,c=4294967296*(1048575&a)+o;return 2047===u?c?NaN:s*(1/0):0===u?5e-324*s*c:s*Math.pow(2,u-1075)*(c+4503599627370496)}t.writeDoubleLE=e.bind(null,i,0,4),t.writeDoubleBE=e.bind(null,o,4,0),t.readDoubleLE=n.bind(null,a,0,4),t.readDoubleBE=n.bind(null,s,4,0)}(),t}function i(t,e,n){e[n]=255&t,e[n+1]=t>>>8&255,e[n+2]=t>>>16&255,e[n+3]=t>>>24}function o(t,e,n){e[n]=t>>>24,e[n+1]=t>>>16&255,e[n+2]=t>>>8&255,e[n+3]=255&t}function a(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16|t[e+3]<<24)>>>0}function s(t,e){return(t[e]<<24|t[e+1]<<16|t[e+2]<<8|t[e+3])>>>0}t.exports=r(r)},function(module,exports,__webpack_require__){"use strict";function inquire(moduleName){try{var mod=eval("quire".replace(/^/,"re"))(moduleName);if(mod&&(mod.length||Object.keys(mod).length))return mod}catch(t){}return null}module.exports=inquire},function(t,e,n){"use strict";var r=e;r.length=function(t){for(var e=0,n=0,r=0;r191&&r<224?o[a++]=(31&r)<<6|63&t[e++]:r>239&&r<365?(r=((7&r)<<18|(63&t[e++])<<12|(63&t[e++])<<6|63&t[e++])-65536,o[a++]=55296+(r>>10),o[a++]=56320+(1023&r)):o[a++]=(15&r)<<12|(63&t[e++])<<6|63&t[e++],a>8191&&((i||(i=[])).push(String.fromCharCode.apply(String,o)),a=0);return i?(a&&i.push(String.fromCharCode.apply(String,o.slice(0,a))),i.join("")):String.fromCharCode.apply(String,o.slice(0,a))},r.write=function(t,e,n){for(var r,i,o=n,a=0;a>6|192,e[n++]=63&r|128):55296==(64512&r)&&56320==(64512&(i=t.charCodeAt(a+1)))?(r=65536+((1023&r)<<10)+(1023&i),++a,e[n++]=r>>18|240,e[n++]=r>>12&63|128,e[n++]=r>>6&63|128,e[n++]=63&r|128):(e[n++]=r>>12|224,e[n++]=r>>6&63|128,e[n++]=63&r|128);return n-o}},function(t,e,n){"use strict";t.exports=function(t,e,n){var r=n||8192,i=r>>>1,o=null,a=r;return function(n){if(n<1||n>i)return t(n);a+n>r&&(o=t(r),a=0);var s=e.call(o,a,a+=n);return 7&a&&(a=1+(7|a)),s}}},function(t,e,n){"use strict";t.exports=i;var r=n(6);function i(t,e){this.lo=t>>>0,this.hi=e>>>0}var o=i.zero=new i(0,0);o.toNumber=function(){return 0},o.zzEncode=o.zzDecode=function(){return this},o.length=function(){return 1};var a=i.zeroHash="\0\0\0\0\0\0\0\0";i.fromNumber=function(t){if(0===t)return o;var e=t<0;e&&(t=-t);var n=t>>>0,r=(t-n)/4294967296>>>0;return e&&(r=~r>>>0,n=~n>>>0,++n>4294967295&&(n=0,++r>4294967295&&(r=0))),new i(n,r)},i.from=function(t){if("number"==typeof t)return i.fromNumber(t);if(r.isString(t)){if(!r.Long)return i.fromNumber(parseInt(t,10));t=r.Long.fromString(t)}return t.low||t.high?new i(t.low>>>0,t.high>>>0):o},i.prototype.toNumber=function(t){if(!t&&this.hi>>>31){var e=1+~this.lo>>>0,n=~this.hi>>>0;return e||(n=n+1>>>0),-(e+4294967296*n)}return this.lo+4294967296*this.hi},i.prototype.toLong=function(t){return r.Long?new r.Long(0|this.lo,0|this.hi,Boolean(t)):{low:0|this.lo,high:0|this.hi,unsigned:Boolean(t)}};var s=String.prototype.charCodeAt;i.fromHash=function(t){return t===a?o:new i((s.call(t,0)|s.call(t,1)<<8|s.call(t,2)<<16|s.call(t,3)<<24)>>>0,(s.call(t,4)|s.call(t,5)<<8|s.call(t,6)<<16|s.call(t,7)<<24)>>>0)},i.prototype.toHash=function(){return String.fromCharCode(255&this.lo,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24,255&this.hi,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24)},i.prototype.zzEncode=function(){var t=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^t)>>>0,this.lo=(this.lo<<1^t)>>>0,this},i.prototype.zzDecode=function(){var t=-(1&this.lo);return this.lo=((this.lo>>>1|this.hi<<31)^t)>>>0,this.hi=(this.hi>>>1^t)>>>0,this},i.prototype.length=function(){var t=this.lo,e=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return 0===n?0===e?t<16384?t<128?1:2:t<2097152?3:4:e<16384?e<128?5:6:e<2097152?7:8:n<128?9:10}},function(t,e,n){"use strict";t.exports=a;var r=n(27);(a.prototype=Object.create(r.prototype)).constructor=a;var i=n(6),o=i.Buffer;function a(){r.call(this)}a.alloc=function(t){return(a.alloc=i._Buffer_allocUnsafe)(t)};var s=o&&o.prototype instanceof Uint8Array&&"set"===o.prototype.set.name?function(t,e,n){e.set(t,n)}:function(t,e,n){if(t.copy)t.copy(e,n,0,t.length);else for(var r=0;r>>0;return this.uint32(e),e&&this._push(s,e,t),this},a.prototype.string=function(t){var e=o.byteLength(t);return this.uint32(e),e&&this._push(u,e,t),this}},function(t,e,n){"use strict";t.exports=o;var r=n(28);(o.prototype=Object.create(r.prototype)).constructor=o;var i=n(6);function o(t){r.call(this,t)}i.Buffer&&(o.prototype._slice=i.Buffer.prototype.slice),o.prototype.string=function(){var t=this.uint32();return this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+t,this.len))}},function(t,e,n){"use strict";e.Service=n(71)},function(t,e,n){"use strict";t.exports=i;var r=n(6);function i(t,e,n){if("function"!=typeof t)throw TypeError("rpcImpl must be a function");r.EventEmitter.call(this),this.rpcImpl=t,this.requestDelimited=Boolean(e),this.responseDelimited=Boolean(n)}(i.prototype=Object.create(r.EventEmitter.prototype)).constructor=i,i.prototype.rpcCall=function t(e,n,i,o,a){if(!o)throw TypeError("request must be specified");var s=this;if(!a)return r.asPromise(t,s,e,n,i,o);if(s.rpcImpl)try{return s.rpcImpl(e,n[s.requestDelimited?"encodeDelimited":"encode"](o).finish(),function(t,n){if(t)return s.emit("error",t,e),a(t);if(null!==n){if(!(n instanceof i))try{n=i[s.responseDelimited?"decodeDelimited":"decode"](n)}catch(t){return s.emit("error",t,e),a(t)}return s.emit("data",n,e),a(null,n)}s.end(!0)})}catch(t){return s.emit("error",t,e),void setTimeout(function(){a(t)},0)}else setTimeout(function(){a(Error("already ended"))},0)},i.prototype.end=function(t){return this.rpcImpl&&(t||this.rpcImpl(null,null,null),this.rpcImpl=null,this.emit("end").off()),this}},function(t,e,n){"use strict";t.exports={}},function(t,e,n){"use strict";var r,i=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(14),a=n(1),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){return[u(e[0],e[1],e[2],e[3],e[4],this.epsilon,this.momentum,this.spatial)]},e}(o.BatchNormalization);function u(t,e,n,r,i,o,s,u){for(var c=t.dims,l=c[0],f=c[1],h=1,p=2;p=r.length||e<-1*r.length)throw new Error("axis specified for concat doesn't match input dimensionality");e<0&&(e=r.length+e);for(var i=r[e],o=new Array(r.length),a=1;a=e;a--)p*=o[a];for(var d=0,m=0;m=e;a--)v*=g.dims[a];for(var y=g.numberData,b=u.ShapeUtil.size(g.dims),w=d,x=(a=0,0);a=0&&M=0&&A0)&&!(r=o.next()).done;)a.push(r.value)}catch(t){i={error:t}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return a},a=this&&this.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)Object.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e.default=t,e};Object.defineProperty(e,"__esModule",{value:!0});var s=n(19),u=n(1),c=a(n(0)),l=n(17),f=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){return[h(e[0],e[1],e[2],this.alpha,this.beta,this.transA,this.transB)]},e}(s.Gemm);function h(t,e,n,r,i,a,s){var f=o(c.GemmUtil.getShapeOfGemmResult(t.dims,a,e.dims,s,n.dims),3),h=f[0],p=f[1],d=f[2],m=new u.Tensor([h,p],t.type);if(c.BroadcastUtil.calc(m,n,function(t,e){return e},!0)!==m)throw new Error("tensor C is not broadcastable to [M,N]");return l.matMul2d(t.floatData,e.floatData,m.floatData,a,s,r,i,h,p,d),m}e.CpuGemm=f,e.gemm=h},function(t,e,n){"use strict";var r,i=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}),o=this&&this.__read||function(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var r,i,o=n.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(r=o.next()).done;)a.push(r.value)}catch(t){i={error:t}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return a};Object.defineProperty(e,"__esModule",{value:!0});var a=n(33),s=n(1),u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){return[c(e[0],this.bias,this.scale)]},e}(a.ImageScaler);function c(t,e,n){for(var r=o(t.dims,4),i=r[0],a=r[1],u=r[2],c=r[3],l=new s.Tensor([i,a,u,c],t.type),f=t.floatData,h=l.floatData,p=0;p=e.dims[P]||S[P]<0){M++,A=!0;break}T=A?T:l(T,e.get(S))}T=f(T,r?p:p-M),y.set(x,T)}return y}e.CpuGlobalMaxPool=f,e.averagePool=h,e.globalAveragePool=p,e.maxPool=d,e.globalMaxPool=m,e.pool=g},function(t,e,n){"use strict";var r,i=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(35),a=n(0),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){return[d(e[0],this.axes,this.keepDims)]},e}(o.ReduceBase);e.CpuReduceSum=s;var u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){return[m(e[0],this.axes,this.keepDims)]},e}(o.ReduceBase);e.CpuReduceSumSquare=u;var c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){return[g(e[0],this.axes,this.keepDims)]},e}(o.ReduceBase);e.CpuReduceLogSum=c;var l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){return[v(e[0],this.axes,this.keepDims)]},e}(o.ReduceBase);e.CpuReduceMax=l;var f=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){return[y(e[0],this.axes,this.keepDims)]},e}(o.ReduceBase);e.CpuReduceMin=f;var h=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){return[b(e[0],this.axes,this.keepDims)]},e}(o.ReduceBase);e.CpuReduceMean=h;var p=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){return[w(e[0],this.axes,this.keepDims)]},e}(o.ReduceBase);function d(t,e,n){return a.ReduceUtil.calcReduce(t,e,n,function(t){return t},function(t,e){return t+e})}function m(t,e,n){return a.ReduceUtil.calcReduce(t,e,n,function(t){return t*t},function(t,e){return t+e})}function g(t,e,n){for(var r=a.ReduceUtil.calcReduce(t,e,n,function(t){return t},function(t,e){return t+e}),i=r.floatData.length,o=0;o=5&&e[4].integerData.some(function(t){return 1!==t}))throw new Error("currently non-1 steps is not supported for Slice");var n=Array.from(e[1].integerData),r=Array.from(e[2].integerData),i=e.length>=4?Array.from(e[3].integerData):[];return[l(e[0],n,r,i)]},e}(o.SliceV10);function l(t,e,n,r){0===r.length&&(r=t.dims.map(function(t,e){return e})),r=r.map(function(e){return s.ShapeUtil.parseAxis(e,t.dims.length)}),e=e.map(function(e,n){return e>t.dims[r[n]]-1?t.dims[r[n]]:s.ShapeUtil.parseAxis(e,t.dims[r[n]])}),n=n.map(function(e,n){return e>t.dims[r[n]]-1?t.dims[r[n]]:s.ShapeUtil.parseAxis(e,t.dims[r[n]])});var i=[],o=[];r.forEach(function(t,r){i[t]=n[r]-e[r],o[t]=e[r]});for(var u=0;ud&&(d=c[p+m]);var g=0;for(m=0;m=0;--o){var x=i[o];w&&x===o?y*=n[x]:(w=!1,b*=n[x],++v)}return 1===b?(f=y,h=g,p=m,s.arrayCopyHelper(h,p,0,0,f)):1===y?function(t,e,n,r,i,o){for(var a=new Array(t).fill(0),u=0,c=0;c0&&i[i.length-1])&&(6===o[0]||2===o[0])){a=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]this.numBytesAllocated&&this.expandMemory(c),t.ccallSerialize(r.HEAPU8.subarray(this.ptr8,this.ptr8+c),u,o);var l=e.now();this.func(n,this.ptr8);var f=e.now();return t.ccallDeserialize(r.HEAPU8.subarray(this.ptr8,this.ptr8+c),u,o),{startTime:s,endTime:e.now(),startTimeFunc:l,endTimeFunc:f}},t.prototype.ccallRaw=function(t,n){if(!i)throw new Error("wasm not initialized. please ensure 'init()' is called.");var o=e.now(),a=n.byteLength;a>this.numBytesAllocated&&this.expandMemory(a),r.HEAPU8.subarray(this.ptr8,this.ptr8+a).set(n);var s=e.now();this.func(t,this.ptr8);var u=e.now();return n.set(r.HEAPU8.subarray(this.ptr8,this.ptr8+a)),{startTime:o,endTime:e.now(),startTimeFunc:s,endTimeFunc:u}},t.prototype.func=function(t,e){(0,r[t])(e)},t.calculateOffsets=function(t,e){for(var n=4+4*e.length,r=0;r>2;if(i[a+1]=f,"out"!==l&&0!==f)switch(c){case"bool":t[f]=!0===u?1:0;break;case"int32":r[h]=u;break;case"float32":o[h]=u;break;case"boolptr":var p=u;t.subarray(f,f+p.length).set(u);break;case"int32ptr":var d=u;r.subarray(h,h+d.length).set(d);break;case"float32ptr":var m=u;o.subarray(h,h+m.length).set(m);break;default:throw new Error("not supported parameter type: "+c)}}},t.ccallDeserialize=function(t,e,n){for(var r=new Float32Array(t.buffer,t.byteOffset),i=new Uint8Array(t.buffer,t.byteOffset),o=0;o>2;if("out"===c||"inout"===c)switch(u){case"float32ptr":var h=s;h.set(r.subarray(f,f+h.length));break;case"boolptr":var p=s;p.set(i.subarray(l,l+p.length));break;default:throw new Error("not supported parameter type: "+u)}}},t.prototype.expandMemory=function(t){if(0!==this.ptr8&&r._free(this.ptr8),this.numBytesAllocated=2*t,this.ptr8=r._malloc(this.numBytesAllocated),0===this.ptr8)throw new Error("Unable to allocate requested amount of memory. Failing.")},t.prototype.dispose=function(){if(!i)throw new Error("wasm not initialized. please ensure 'init()' is called.");0!==this.ptr8&&r._free(this.ptr8)},t}();e.WasmBinding=a,e.now="undefined"!=typeof performance&&performance.now?function(){return performance.now()}:Date.now},function(t,e,n){(function(e,r){var i,o=(i="undefined"!=typeof document&&document.currentScript?document.currentScript.src:void 0,function(t){t=void 0!==(t=t||{})?t:{};var o,a={};for(o in t)t.hasOwnProperty(o)&&(a[o]=t[o]);t.arguments=[],t.thisProgram="./this.program",t.quit=function(t,e){throw e},t.preRun=[],t.postRun=[];var s,u,c=!1,l=!1;c="object"==typeof window,l="function"==typeof importScripts,s="object"==typeof e&&!c&&!l,u=!c&&!s&&!l;var f,h,p="";s?(p=r+"/",t.read=function(t,e){var r;return f||(f=n(44)),h||(h=n(98)),t=h.normalize(t),r=f.readFileSync(t),e?r:r.toString()},t.readBinary=function(e){var n=t.read(e,!0);return n.buffer||(n=new Uint8Array(n)),x(n.buffer),n},e.argv.length>1&&(t.thisProgram=e.argv[1].replace(/\\/g,"/")),t.arguments=e.argv.slice(2),e.on("uncaughtException",function(t){if(!(t instanceof it))throw t}),e.on("unhandledRejection",at),t.quit=function(t){e.exit(t)},t.inspect=function(){return"[Emscripten Module object]"}):u?("undefined"!=typeof read&&(t.read=function(t){return read(t)}),t.readBinary=function(t){var e;return"function"==typeof readbuffer?new Uint8Array(readbuffer(t)):(x("object"==typeof(e=read(t,"binary"))),e)},"undefined"!=typeof scriptArgs?t.arguments=scriptArgs:void 0!==arguments&&(t.arguments=arguments),"function"==typeof quit&&(t.quit=function(t){quit(t)})):(c||l)&&(l?p=self.location.href:document.currentScript&&(p=document.currentScript.src),i&&(p=i),p=0!==p.indexOf("blob:")?p.substr(0,p.lastIndexOf("/")+1):"",t.read=function(t){var e=new XMLHttpRequest;return e.open("GET",t,!1),e.send(null),e.responseText},l&&(t.readBinary=function(t){var e=new XMLHttpRequest;return e.open("GET",t,!1),e.responseType="arraybuffer",e.send(null),new Uint8Array(e.response)}),t.readAsync=function(t,e,n){var r=new XMLHttpRequest;r.open("GET",t,!0),r.responseType="arraybuffer",r.onload=function(){200==r.status||0==r.status&&r.response?e(r.response):n()},r.onerror=n,r.send(null)},t.setWindowTitle=function(t){document.title=t});var d=t.print||("undefined"!=typeof console?console.log.bind(console):"undefined"!=typeof print?print:null),m=t.printErr||("undefined"!=typeof printErr?printErr:"undefined"!=typeof console&&console.warn.bind(console)||d);for(o in a)a.hasOwnProperty(o)&&(t[o]=a[o]);a=void 0;var g={"f64-rem":function(t,e){return t%e},debugger:function(){}};new Array(0);var v,y=0,b=function(t){y=t};"object"!=typeof WebAssembly&&m("no native wasm support detected");var w=!1;function x(t,e){t||at("Assertion failed: "+e)}var _,S,E,T,M="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function A(t,e,n){for(var r=e+n,i=e;t[i]&&!(i>=r);)++i;if(i-e>16&&t.subarray&&M)return M.decode(t.subarray(e,i));for(var o="";e>10,56320|1023&c)}}else o+=String.fromCharCode((31&a)<<6|s)}else o+=String.fromCharCode(a)}return o}function C(t,e){return t?A(E,t,e):""}function P(t,e){return t%e>0&&(t+=e-t%e),t}function I(){t.HEAP8=S=new Int8Array(_),t.HEAP16=new Int16Array(_),t.HEAP32=T=new Int32Array(_),t.HEAPU8=E=new Uint8Array(_),t.HEAPU16=new Uint16Array(_),t.HEAPU32=new Uint32Array(_),t.HEAPF32=new Float32Array(_),t.HEAPF64=new Float64Array(_)}"undefined"!=typeof TextDecoder&&new TextDecoder("utf-16le");var O=t.TOTAL_MEMORY||16777216;function R(e){for(;e.length>0;){var n=e.shift();if("function"!=typeof n){var r=n.func;"number"==typeof r?void 0===n.arg?t.dynCall_v(r):t.dynCall_vi(r,n.arg):r(void 0===n.arg?null:n.arg)}else n()}}O<5242880&&m("TOTAL_MEMORY should be larger than TOTAL_STACK, was "+O+"! (TOTAL_STACK=5242880)"),t.buffer?_=t.buffer:"object"==typeof WebAssembly&&"function"==typeof WebAssembly.Memory?(v=new WebAssembly.Memory({initial:O/65536}),_=v.buffer):_=new ArrayBuffer(O),I(),T[1524]=5249232;var k=[],L=[],D=[],N=[],B=!1;Math.abs,Math.ceil,Math.floor,Math.min;var F=0,U=null,j=null;t.preloadedImages={},t.preloadedAudios={};var z="data:application/octet-stream;base64,";function G(t){return String.prototype.startsWith?t.startsWith(z):0===t.indexOf(z)}var V,W="onnx-wasm.wasm";function H(){try{if(t.wasmBinary)return new Uint8Array(t.wasmBinary);if(t.readBinary)return t.readBinary(W);throw"both async and sync fetching of the wasm failed"}catch(t){at(t)}}function q(e){var n={env:e,global:{NaN:NaN,Infinity:1/0},"global.Math":Math,asm2wasm:g};function r(e,n){var r=e.exports;t.asm=r,function(e){if(F--,t.monitorRunDependencies&&t.monitorRunDependencies(F),0==F&&(null!==U&&(clearInterval(U),U=null),j)){var n=j;j=null,n()}}()}if(F++,t.monitorRunDependencies&&t.monitorRunDependencies(F),t.instantiateWasm)try{return t.instantiateWasm(n,r)}catch(t){return m("Module.instantiateWasm callback failed with error: "+t),!1}function i(t){r(t.instance)}function o(e){(t.wasmBinary||!c&&!l||"function"!=typeof fetch?new Promise(function(t,e){t(H())}):fetch(W,{credentials:"same-origin"}).then(function(t){if(!t.ok)throw"failed to load wasm binary file at '"+W+"'";return t.arrayBuffer()}).catch(function(){return H()})).then(function(t){return WebAssembly.instantiate(t,n)}).then(e,function(t){m("failed to asynchronously prepare wasm: "+t),at(t)})}return t.wasmBinary||"function"!=typeof WebAssembly.instantiateStreaming||G(W)||"function"!=typeof fetch?o(i):WebAssembly.instantiateStreaming(fetch(W,{credentials:"same-origin"}),n).then(i,function(t){m("wasm streaming compile failed: "+t),m("falling back to ArrayBuffer instantiation"),o(i)}),{}}function X(){return!!X.uncaught_exception}function Y(t){try{return nt(t)}catch(t){}}G(W)||(V=W,W=t.locateFile?t.locateFile(V,p):p+V),t.asm=function(t,e,n){return e.memory=v,e.table=new WebAssembly.Table({initial:41,maximum:41,element:"anyfunc"}),e.__memory_base=1024,e.__table_base=0,q(e)};var K={last:0,caught:[],infos:{},deAdjust:function(t){if(!t||K.infos[t])return t;for(var e in K.infos)for(var n=+e,r=K.infos[n].adjusted,i=r.length,o=0;o0),n.refcount--,0!==n.refcount||n.rethrown||(n.destructor&&t.dynCall_vi(n.destructor,e),delete K.infos[e],Y(e))}},clearRef:function(t){t&&(K.infos[t].refcount=0)}},$={buffers:[null,[],[]],printChar:function(t,e){var n=$.buffers[t];0===e||10===e?((1===t?d:m)(A(n,0)),n.length=0):n.push(e)},varargs:0,get:function(t){return $.varargs+=4,T[$.varargs-4>>2]},getStr:function(){return C($.get())},get64:function(){var t=$.get();return $.get(),t},getZero:function(){$.get()}};function J(){var e=t._fflush;e&&e(0);var n=$.buffers;n[1].length&&$.printChar(1,10),n[2].length&&$.printChar(2,10)}function Z(){return S.length}function Q(t){t=P(t,65536);var e=_.byteLength;try{return-1!==v.grow((t-e)/65536)?_=v.buffer:null}catch(t){return null}}[].push(J);var tt={abort:at,setTempRet0:b,getTempRet0:function(){return y},__ZSt18uncaught_exceptionv:X,___assert_fail:function(t,e,n,r){at("Assertion failed: "+C(t)+", at: "+[e?C(e):"unknown filename",n,r?C(r):"unknown function"])},___cxa_allocate_exception:function(t){return rt(t)},___cxa_find_matching_catch:function e(){var n=K.last;if(!n)return 0|(b(0),0);var r=K.infos[n],i=r.type;if(!i)return 0|(b(0),n);var o=Array.prototype.slice.call(arguments);t.___cxa_is_pointer_type(i),e.buffer||(e.buffer=rt(4)),T[e.buffer>>2]=n,n=e.buffer;for(var a=0;a>2],r.adjusted.push(n),0|(b(o[a]),n);return n=T[n>>2],0|(b(i),n)},___cxa_free_exception:Y,___cxa_throw:function(t,e,n){throw K.infos[t]={ptr:t,adjusted:[t],type:e,destructor:n,refcount:0,caught:!1,rethrown:!1},K.last=t,"uncaught_exception"in X?X.uncaught_exception++:X.uncaught_exception=1,t},___gxx_personality_v0:function(){},___lock:function(){},___resumeException:function(t){throw K.last||(K.last=t),t},___setErrNo:function(e){return t.___errno_location&&(T[t.___errno_location()>>2]=e),e},___syscall140:function(t,e){$.varargs=e;try{var n=$.getStreamFromFD(),r=($.get(),$.get()),i=$.get(),o=$.get(),a=r;return FS.llseek(n,a,o),T[i>>2]=n.position,n.getdents&&0===a&&0===o&&(n.getdents=null),0}catch(t){return"undefined"!=typeof FS&&t instanceof FS.ErrnoError||at(t),-t.errno}},___syscall146:function(t,e){$.varargs=e;try{for(var n=$.get(),r=$.get(),i=$.get(),o=0,a=0;a>2],u=T[r+(8*a+4)>>2],c=0;c2147418112)return!1;for(var n=Math.max(e,16777216);n0||(function(){if(t.preRun)for("function"==typeof t.preRun&&(t.preRun=[t.preRun]);t.preRun.length;)e=t.preRun.shift(),k.unshift(e);var e;R(k)}(),F>0||t.calledRun||(t.setStatus?(t.setStatus("Running..."),setTimeout(function(){setTimeout(function(){t.setStatus("")},1),n()},1)):n()))}function at(e){throw t.onAbort&&t.onAbort(e),void 0!==e?(d(e),m(e),e=JSON.stringify(e)):e="",w=!0,"abort("+e+"). Build with -s ASSERTIONS=1 for more info."}if(t._matmul_f32=function(){return t.asm._matmul_f32.apply(null,arguments)},t._max_pool_f32=function(){return t.asm._max_pool_f32.apply(null,arguments)},t._memcpy=function(){return t.asm._memcpy.apply(null,arguments)},t._memset=function(){return t.asm._memset.apply(null,arguments)},t._mul_f32=function(){return t.asm._mul_f32.apply(null,arguments)},t._or_u8=function(){return t.asm._or_u8.apply(null,arguments)},t._prelu_f32=function(){return t.asm._prelu_f32.apply(null,arguments)},t._sbrk=function(){return t.asm._sbrk.apply(null,arguments)},t._softmax_f32=function(){return t.asm._softmax_f32.apply(null,arguments)},t._sub_f32=function(){return t.asm._sub_f32.apply(null,arguments)},t._sum_f32=function(){return t.asm._sum_f32.apply(null,arguments)},t._xor_u8=function(){return t.asm._xor_u8.apply(null,arguments)},t.establishStackSpace=function(){return t.asm.establishStackSpace.apply(null,arguments)},t.stackAlloc=function(){return t.asm.stackAlloc.apply(null,arguments)},t.stackRestore=function(){return t.asm.stackRestore.apply(null,arguments)},t.stackSave=function(){return t.asm.stackSave.apply(null,arguments)},t.dynCall_ii=function(){return t.asm.dynCall_ii.apply(null,arguments)},t.dynCall_iiii=function(){return t.asm.dynCall_iiii.apply(null,arguments)},t.dynCall_v=function(){return t.asm.dynCall_v.apply(null,arguments)},t.dynCall_vi=function(){return t.asm.dynCall_vi.apply(null,arguments)},t.dynCall_viiii=function(){return t.asm.dynCall_viiii.apply(null,arguments)},t.dynCall_viiiii=function(){return t.asm.dynCall_viiiii.apply(null,arguments)},t.dynCall_viiiiii=function(){return t.asm.dynCall_viiiiii.apply(null,arguments)},t.asm=et,t.then=function(e){if(t.calledRun)e(t);else{var n=t.onRuntimeInitialized;t.onRuntimeInitialized=function(){n&&n(),e(t)}}return t},it.prototype=new Error,it.prototype.constructor=it,j=function e(){t.calledRun||ot(),t.calledRun||(j=e)},t.run=ot,t.abort=at,t.preInit)for("function"==typeof t.preInit&&(t.preInit=[t.preInit]);t.preInit.length>0;)t.preInit.pop()();return ot(),t});t.exports=o}).call(this,n(23),"/")},function(t,e,n){(function(t){function n(t,e){for(var n=0,r=t.length-1;r>=0;r--){var i=t[r];"."===i?t.splice(r,1):".."===i?(t.splice(r,1),n++):n&&(t.splice(r,1),n--)}if(e)for(;n--;n)t.unshift("..");return t}var r=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/,i=function(t){return r.exec(t).slice(1)};function o(t,e){if(t.filter)return t.filter(e);for(var n=[],r=0;r=-1&&!r;i--){var a=i>=0?arguments[i]:t.cwd();if("string"!=typeof a)throw new TypeError("Arguments to path.resolve must be strings");a&&(e=a+"/"+e,r="/"===a.charAt(0))}return(r?"/":"")+(e=n(o(e.split("/"),function(t){return!!t}),!r).join("/"))||"."},e.normalize=function(t){var r=e.isAbsolute(t),i="/"===a(t,-1);return(t=n(o(t.split("/"),function(t){return!!t}),!r).join("/"))||r||(t="."),t&&i&&(t+="/"),(r?"/":"")+t},e.isAbsolute=function(t){return"/"===t.charAt(0)},e.join=function(){var t=Array.prototype.slice.call(arguments,0);return e.normalize(o(t,function(t,e){if("string"!=typeof t)throw new TypeError("Arguments to path.join must be strings");return t}).join("/"))},e.relative=function(t,n){function r(t){for(var e=0;e=0&&""===t[n];n--);return e>n?[]:t.slice(e,n-e+1)}t=e.resolve(t).substr(1),n=e.resolve(n).substr(1);for(var i=r(t.split("/")),o=r(n.split("/")),a=Math.min(i.length,o.length),s=a,u=0;u0&&i[i.length-1])&&(6===o[0]||2===o[0])){a=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0?w[_]:null,"float32ptr"],[this.dilations,"int32ptr"],[this.group,"int32"],[this.pads,"int32ptr"],[this.strides,"int32ptr"])):(y[_]=n.floatData.subarray(_*p),b[_]=s.floatData.subarray(_*g),r&&(w[_]=r.floatData.subarray(_*h[0])),l.WasmBinding.getInstance().ccall("_conv_f32",[t.floatData,"float32ptr"],[t.dims,"int32ptr"],[y[_],"float32ptr"],[d,"int32ptr"],[b[_],"float32ptr","out"],[v,"int32ptr"],[w.length>0?w[_]:null,"float32ptr"],[this.dilations,"int32ptr"],[this.group,"int32"],[this.pads,"int32ptr"],[this.strides,"int32ptr"]));return[4,Promise.all(x)];case 2:return a.sent(),[2,[s]]}})})},e.prototype.checkInputTypes=function(t){return"float32"===t[0].type&&"float32"===t[1].type&&(3!==t.length||"float32"===t[2].type)},e}(s.Conv);e.WasmConv=f},function(t,e,n){"use strict";var r,i=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}),o=this&&this.__read||function(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var r,i,o=n.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(r=o.next()).done;)a.push(r.value)}catch(t){i={error:t}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return a};Object.defineProperty(e,"__esModule",{value:!0});var a=n(19),s=n(1),u=n(0),c=n(4),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){var n=e[0],r=e[1],i=e[2],a=o(u.GemmUtil.getShapeOfGemmResult(n.dims,this.transA,r.dims,this.transB,i.dims),2),l=a[0],f=a[1],h=new s.Tensor([l,f],n.type);if(!u.BroadcastUtil.calc(h,i,function(t,e){return e},!0))throw new Error("c is not broadcastable to the shape of the result of the Gemm operator");return c.WasmBinding.getInstance().ccall("_gemm_f32",[this.transA,"bool"],[this.transB,"bool"],[this.transA?n.dims[1]:n.dims[0],"int32"],[this.transB?r.dims[0]:r.dims[1],"int32"],[this.transA?n.dims[0]:n.dims[1],"int32"],[this.alpha,"float32"],[n.floatData,"float32ptr"],[r.floatData,"float32ptr"],[this.beta,"float32"],[h.floatData,"float32ptr","inout"]),[h]},e.prototype.checkInputTypes=function(t){return"float32"===t[0].type&&"float32"===t[1].type&&"float32"===t[2].type&&t[0].type===t[1].type&&t[0].type===t[2].type},e}(a.Gemm);e.WasmGemm=l},function(t,e,n){"use strict";var r,i=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(34),a=n(1),s=n(4),u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){for(var n=e[0],r=e[1],i=e[2],o=1,u=2;u0)&&!(r=o.next()).done;)a.push(r.value)}catch(t){i={error:t}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return a};Object.defineProperty(e,"__esModule",{value:!0});var a=n(18),s=n(1),u=n(0),c=n(4),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){var n=o(u.MatMulUtil.preprocessInputShapes(e[0].dims,e[1].dims),2),r=n[0],i=n[1],a=u.BroadcastUtil.calcShape(r,i,!0);if(!a)throw new Error("input dimensions do not match the requirement");var l=u.ShapeUtil.size(a),f=new Float32Array(l);c.WasmBinding.getInstance().ccall("_matmul_f32",[e[0].floatData,"float32ptr"],[e[0].dims,"int32ptr"],[e[0].dims.length,"int32"],[e[1].floatData,"float32ptr"],[e[1].dims,"int32ptr"],[e[1].dims.length,"int32"],[f,"float32ptr","out"],[f.length,"int32"],[a,"int32ptr"],[a.length,"int32"]),u.MatMulUtil.postprocessOutputShape(a,e[0].dims.length,e[1].dims.length);var h=new s.Tensor(a,e[0].type);return h.floatData.set(f),[h]},e.prototype.checkInputTypes=function(t){return"float32"===t[0].type&&"float32"===t[1].type&&t[0].type===t[1].type},e}(a.MatMul);e.WasmMatMul=l},function(t,e,n){"use strict";var r,i=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}),o=this&&this.__awaiter||function(t,e,n,r){return new(n||(n=Promise))(function(i,o){function a(t){try{u(r.next(t))}catch(t){o(t)}}function s(t){try{u(r.throw(t))}catch(t){o(t)}}function u(t){t.done?i(t.value):new n(function(e){e(t.value)}).then(a,s)}u((r=r.apply(t,e||[])).next())})},a=this&&this.__generator||function(t,e){var n,r,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(i=2&o[0]?r.return:o[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,o[1])).done)return i;switch(r=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,r=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!(i=(i=a.trys).length>0&&i[i.length-1])&&(6===o[0]||2===o[0])){a=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0)&&!(r=o.next()).done;)a.push(r.value)}catch(t){i={error:t}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return a},a=this&&this.__spread||function(){for(var t=[],e=0;e0)&&!(r=o.next()).done;)a.push(r.value)}catch(t){i={error:t}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return a};Object.defineProperty(e,"__esModule",{value:!0});var o=n(3),a=n(1),s=n(0),u=n(116),c=n(46),l=function(){function t(t){this.session=t,this.textureDataCache=new Map}return t.prototype.run=function(t,e){var n=this.session.programManager.getArtifact(t);if(!n){var r=t.createProgramInfo(this,e);n=this.session.programManager.build(r),this.session.programManager.setArtifact(t,n)}var i=t.createRunData(this,n.programInfo,e);return this.session.programManager.run(n,i),[i.outputTextureData.tensor]},t.prototype.getOrCreateTextureData=function(t,e){var n=this.getTextureData(t.dataId);return n?o.Logger.verbose("InferenceHandler","Retrieving TextureData from cache: ["+t.dims+"]"):(o.Logger.verbose("InferenceHandler","Creating new TextureData for dims: ["+t.dims+"]"),e||(e=this.createTextureLayoutFromShape(t.dims.slice())),n=this.createTextureData(e,t.type,t.numberData,t,1)),n},t.prototype.createTextureDataFromLayout=function(t,e){return this.createTextureData(t,e)},t.prototype.createTextureDataFromLayoutBindTensor=function(t,e,n,r){return this.createTextureData(t,e,n,r,1)},t.prototype.createTextureData=function(t,e,n,r,i){o.Logger.verbose("InferenceHandler","Creating TextureData: layout:["+JSON.stringify(t)+"]");var a=this.session.textureManager.createTextureFromLayout(e,t,n,i);return this.createTextureDataFromTexture(t,e,a,r)},t.prototype.createSharedTextureData=function(t,e,n,r){return this.createTextureDataFromTexture(t,e,n,void 0,r)},t.prototype.createTextureDataFromTexture=function(t,e,n,i,o){var s=this,u=r({},t,{tensor:i||new a.Tensor(t.unpackedShape,e,function(t){return s.readTexture(u)},void 0,void 0,o),texture:n});return this.setTextureData(u.tensor.dataId,u),u},t.prototype.getTextureData=function(t){return this.session.isInitializer(t)?this.session.getTextureData(t):this.textureDataCache.get(t)},t.prototype.setTextureData=function(t,e){this.session.isInitializer(t)?this.session.setTextureData(t,e):this.textureDataCache.set(t,e)},t.prototype.getOrCreateTextureLayout=function(t,e,n){return void 0===e&&(e=1),this.getTextureData(t.dataId)||this.createTextureLayoutFromShape(1===e?t.dims.slice():c.getPackedShape(t.dims.slice()),e,n)},t.prototype.createTextureLayoutFromShape=function(t,e,n,r){void 0===e&&(e=1);var o=i(this.session.layoutStrategy.computeTextureWH(t,r),2),a=o[0],u=o[1],c=t;if(0===t.length&&(c=[1]),1===e)n=t;else if(!n)throw new Error("Unpacked shape is needed when using channels > 1");return{width:a,height:u,channels:e||1,shape:c,strides:s.ShapeUtil.computeStrides(c),unpackedShape:n}},t.prototype.dispose=function(){var t=this;this.session.textureManager.clearActiveTextures(),this.textureDataCache.forEach(function(e){return t.session.textureManager.releaseTexture(e)}),this.textureDataCache=new Map},t.prototype.readTexture=function(t){if(!this.session.backend.glContext.isFloat32DownloadSupported){var e=(new u.WebGLUint8Encode).runInternal(this,t);return this.session.textureManager.readUint8TextureAsFloat(e)}return this.session.textureManager.readTexture(t,t.tensor.type,t.channels)},t}();e.WebGLInferenceHandler=l},function(t,e,n){"use strict";var r=this&&this.__read||function(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var r,i,o=n.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(r=o.next()).done;)a.push(r.value)}catch(t){i={error:t}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return a};Object.defineProperty(e,"__esModule",{value:!0});var i=n(0),o=n(2),a=function(){function t(){}return t.prototype.runInternal=function(t,e){var n=e.shape,a=r(t.session.layoutStrategy.computeTextureWH(e.shape),2),s={width:a[0],height:a[1],channels:4,shape:n,strides:i.ShapeUtil.computeStrides(n),unpackedShape:n},u=o.getGlsl(t.session.backend.glContext.version),c={inputLayouts:[e],outputLayout:s,samplers:["X"],shaderSource:"\n const float FLOAT_MAX = 1.70141184e38;\n const float FLOAT_MIN = 1.17549435e-38;\n\n bool isNaN(float val) {\n return (val < 1.0 || 0.0 < val || val == 0.0) ? false : true;\n }\n\n highp vec4 encodeAsUint8(highp float v) {\n if (isNaN(v)) {\n return vec4(255, 255, 255, 255);\n }\n\n highp float av = abs(v);\n\n if(av < FLOAT_MIN) {\n return vec4(0.0, 0.0, 0.0, 0.0);\n } else if(v > FLOAT_MAX) {\n return vec4(0.0, 0.0, 128.0, 127.0) / 255.0;\n } else if(v < -FLOAT_MAX) {\n return vec4(0.0, 0.0, 128.0, 255.0) / 255.0;\n }\n\n highp vec4 c = vec4(0,0,0,0);\n\n highp float e = floor(log2(av));\n highp float m = exp2(fract(log2(av))) - 1.0;\n\n c[2] = floor(128.0 * m);\n m -= c[2] / 128.0;\n c[1] = floor(32768.0 * m);\n m -= c[1] / 32768.0;\n c[0] = floor(8388608.0 * m);\n\n highp float ebias = e + 127.0;\n c[3] = floor(ebias / 2.0);\n ebias -= c[3] * 2.0;\n c[2] += floor(ebias) * 128.0;\n\n c[3] += 128.0 * step(0.0, -v);\n\n return c / 255.0;\n }\n\n void main() {\n float value = "+u.texture2D+"(X,TexCoords).r;\n "+u.output+" = encodeAsUint8(value);\n }",hasMain:!0},l=t.session.programManager.build(c),f=t.session.backend.glContext.getEncoder("byte",4),h=t.session.backend.glContext.allocateTexture(s.width,s.height,f),p={inputTextureDatas:[e],outputTextureData:t.createSharedTextureData(s,"uint8",h,{}),uniformData:{}};return t.session.programManager.run(l,p),p.outputTextureData},t}();e.WebGLUint8Encode=a},function(t,e,n){"use strict";var r=this&&this.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)Object.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e.default=t,e};Object.defineProperty(e,"__esModule",{value:!0});var i=n(7),o=n(118),a=r(n(119)),s=n(120),u=n(121),c=n(122),l=n(123),f=n(124),h=n(126),p=n(127),d=n(128),m=n(129),g=n(130),v=n(132),y=n(133),b=n(135),w=r(n(136)),x=n(10),_=n(137),S=n(138),E=n(139),T=n(141),M=n(142),A=n(143),C=n(144),P=r(n(145)),I=n(146);e.WEBGL_OP_RESOLVE_RULES=[["Abs","","6+",function(){return new P.WebGLUnaryOp(i.NUMBER_TYPES,P.glslAbs())}],["Acos","","7+",function(){return new P.WebGLUnaryOp(i.FLOAT_TYPES,P.glslAcos())}],["Add","","7+",function(){return new a.WebGLBinaryOp(i.NUMBER_TYPES,a.glslAdd())}],["And","","7+",function(){return new a.WebGLBinaryOp(["bool"],a.glslAnd())}],["Asin","","7+",function(){return new P.WebGLUnaryOp(i.FLOAT_TYPES,P.glslAsin())}],["Atan","","7+",function(){return new P.WebGLUnaryOp(i.FLOAT_TYPES,P.glslAtan())}],["AveragePool","","7+",function(){return new b.WebGLAveragePool}],["BatchNormalization","","7+",function(){return new o.WebGLBatchNormalization}],["Ceil","","6+",function(){return new P.WebGLUnaryOp(i.FLOAT_TYPES,P.glslCeil())}],["Clip","","6+",function(){return new s.WebGLClip}],["Concat","","4+",function(){return new u.WebGLConcat}],["Conv","","1+",function(){return new c.WebGLConv}],["Cos","","7+",function(){return new P.WebGLUnaryOp(i.FLOAT_TYPES,P.glslCos())}],["Div","","7+",function(){return new a.WebGLBinaryOp(i.NUMBER_TYPES,a.glslDiv())}],["Dropout","","7+",function(){return new l.WebGLDropout}],["Equal","","7+",function(){return new a.WebGLBinaryOp(i.NUMBER_TYPES,a.glslEqual(),void 0,"bool")}],["Elu","","6+",function(){return new f.WebGLElu}],["Exp","","6+",function(){return new P.WebGLUnaryOp(i.FLOAT_TYPES,P.glslExp())}],["Flatten","","1+",function(){return new h.WebGLFlatten}],["Floor","","6+",function(){return new P.WebGLUnaryOp(i.FLOAT_TYPES,P.glslFloor())}],["Gather","","1+",function(){return new p.WebGLGather}],["Gemm","","7+",function(){return new d.WebGLGemm}],["GlobalAveragePool","","1+",function(){return new b.WebGLGlobalAveragePool}],["GlobalMaxPool","","1+",function(){return new b.WebGLGlobalMaxPool}],["Greater","","7+",function(){return new a.WebGLBinaryOp(i.NUMBER_TYPES,a.glslGreater(),void 0,"bool")}],["Identity","","1+",function(){return new P.WebGLUnaryOp(i.NUMBER_TYPES,P.glslIdentity())}],["ImageScaler","","1+",function(){return new m.WebGLImageScaler}],["LeakyRelu","","6+",function(){return new g.WebGLLeakyRelu}],["Less","","7+",function(){return new a.WebGLBinaryOp(i.NUMBER_TYPES,a.glslLess(),void 0,"bool")}],["Log","","6+",function(){return new P.WebGLUnaryOp(i.FLOAT_TYPES,P.glslLog())}],["MatMul","","1+",function(){return new v.WebGLMatMul}],["MaxPool","","1+",function(){return new b.WebGLMaxPool}],["Mul","","7+",function(){return new a.WebGLBinaryOp(i.NUMBER_TYPES,a.glslMul())}],["Neg","","6+",function(){return new P.WebGLUnaryOp(i.NUMBER_TYPES,P.glslNeg())}],["Not","","1+",function(){return new P.WebGLUnaryOp(["bool"],P.glslNot())}],["Or","","7+",function(){return new a.WebGLBinaryOp(["bool"],a.glslOr())}],["Pad","","2+",function(){return new y.WebGLPad}],["Pow","","7+",function(){return new a.WebGLBinaryOp(i.FLOAT_TYPES,a.glslPow())}],["PRelu","","7+",function(){return new a.WebGLBinaryOp(i.FLOAT_TYPES,a.glslPRelu())}],["ReduceLogSum","","1+",function(){return new w.WebGLReduceLogSum}],["ReduceMax","","1+",function(){return new w.WebGLReduceMax}],["ReduceMean","","1+",function(){return new w.WebGLReduceMean}],["ReduceMin","","1+",function(){return new w.WebGLReduceMin}],["ReduceProd","","1+",function(){return new w.WebGLReduceProd}],["ReduceSum","","1+",function(){return new w.WebGLReduceSum}],["ReduceSumSquare","","1+",function(){return new w.WebGLReduceSumSquare}],["Relu","","6+",function(){return new P.WebGLUnaryOp(i.FLOAT_TYPES,P.glslRelu())}],["Reshape","","5+",function(){return new x.WebGLReshape}],["Sigmoid","","6+",function(){return new P.WebGLUnaryOp(i.FLOAT_TYPES,P.glslSigmoid())}],["Sin","","7+",function(){return new P.WebGLUnaryOp(i.FLOAT_TYPES,P.glslSin())}],["Slice","","10+",function(){return new _.WebGLSliceV10}],["Slice","","1-9",function(){return new _.WebGLSlice}],["Softmax","","1+",function(){return new S.WebGLSoftmax}],["Split","","2+",function(t){return new E.WebGLSplit(t.outputs.length)}],["Sqrt","","6+",function(){return new P.WebGLUnaryOp(i.FLOAT_TYPES,P.glslSqrt())}],["Squeeze","","1+",function(){return new T.WebGLSqueeze}],["Sub","","7+",function(){return new a.WebGLBinaryOp(i.NUMBER_TYPES,a.glslSub())}],["Sum","","6+",function(){return new M.WebGLSum}],["Tan","","7+",function(){return new P.WebGLUnaryOp(i.FLOAT_TYPES,P.glslTan())}],["Tanh","","6+",function(){return new P.WebGLUnaryOp(i.FLOAT_TYPES,P.glslTanh())}],["Tile","","6+",function(){return new A.WebGLTile}],["Transpose","","1+",function(){return new C.WebGLTranspose}],["Unsqueeze","","1+",function(){return new I.WebGLUnsqueeze}],["Xor","","7+",function(){return new a.WebGLBinaryOp(["bool"],a.glslXor())}]]},function(t,e,n){"use strict";var r,i=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(14),a=n(2),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){return t.run(this,e)},e.prototype.createProgramInfo=function(t,e){var n=e.map(function(e){return t.getOrCreateTextureLayout(e)}),r=e[0].dims.slice(),i=r.length,o=n[1],s=a.getGlsl(t.session.backend.glContext.version),u="\n float process(int["+i+"] indices) {\n vec2 position = offsetToCoords(indices[1], "+o.width+", "+o.height+");\n float scale = getColorAsFloat("+s.texture2D+"(Scale, position));\n float mean = getColorAsFloat("+s.texture2D+"(Mean, position));\n float variance = getColorAsFloat("+s.texture2D+"(Variance, position));\n float b = getColorAsFloat("+s.texture2D+"(B, position));\n\n return scale * ( (_A(indices) - mean) / sqrt(variance + float("+this.epsilon+")) ) + b;\n }";return{inputLayouts:n,outputLayout:t.createTextureLayoutFromShape(r),samplers:["A","Scale","B","Mean","Variance"],shaderSource:u}},e.prototype.createRunData=function(t,e,n){var r=[t.getOrCreateTextureData(n[0],e.inputLayouts[0])];n.slice(1).forEach(function(e){return r.push(t.getOrCreateTextureData(e))});var i=t.createTextureDataFromLayout(e.outputLayout,r[0].tensor.type);return{inputTextureDatas:r,outputTextureData:i,uniformData:{}}},e}(o.BatchNormalization);e.WebGLBatchNormalization=s},function(t,e,n){"use strict";var r,i=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(15),a=n(0),s=n(5),u=n(2),c=function(t){function e(e,n,r,i){var o=t.call(this,e,r,i)||this;return o.glslFunc=n,o}return i(e,t),e.prototype.run=function(t,e){return t.run(this,e)},e.prototype.createProgramInfo=function(t,e){var n=e.map(function(e){return t.getOrCreateTextureLayout(e)});if(!a.ShapeUtil.areEqual(e[0].dims,e[1].dims)){var r=a.BroadcastUtil.calcShape(e[0].dims,e[1].dims,!1);if(!r)throw new Error("Can't perform binary op on the given tensors");var i=r.length,o=0!==e[0].dims.length?e[0].dims.length:1,s=0!==e[1].dims.length?e[1].dims.length:1,c=0!==e[0].dims.length?"bcastIndices_A(indices, aindices);":"aindices[0] = 0;",l=0!==e[1].dims.length?"bcastIndices_B(indices, bindices);":"bindices[0] = 0;",f="\n "+this.glslFunc.body+"\n float process(int indices["+i+"]) {\n int aindices["+o+"];\n int bindices["+s+"];\n "+c+"\n "+l+"\n return "+this.glslFunc.name+"(_A(aindices), _B(bindices));\n }";return{inputLayouts:n,outputLayout:t.createTextureLayoutFromShape(r),samplers:["A","B"],shaderSource:f}}var h=u.getGlsl(t.session.backend.glContext.version),p="\n "+this.glslFunc.body+"\n void main() {\n vec4 v1 = "+h.texture2D+"(A, TexCoords);\n vec4 v2 = "+h.texture2D+"(B, TexCoords);\n vec4 result = "+this.glslFunc.name+"(v1, v2);\n "+h.output+" = result;\n }\n ";return{hasMain:!0,inputLayouts:n,outputLayout:t.createTextureLayoutFromShape(e[0].dims),samplers:["A","B"],shaderSource:p}},e.prototype.createRunData=function(t,e,n){return{inputTextureDatas:n.map(function(n,r){return t.getOrCreateTextureData(n,e.inputLayouts[r])}),outputTextureData:t.createTextureDataFromLayout(e.outputLayout,this.resultType?this.resultType:n[0].type),uniformData:{}}},e}(o.BinaryOp);e.WebGLBinaryOp=c,e.glslAdd=function(){return{body:"\n float add_(float a, float b) {\n return a + b;\n }\n vec4 add_(vec4 v1, vec4 v2) {\n return v1 + v2;\n }\n ",name:"add_",type:s.FunctionType.ValueBased}},e.glslDiv=function(){return{body:"\n float div_(float a, float b) {\n return a / b;\n }\n vec4 div_(vec4 v1, vec4 v2) {\n return v1 / v2;\n }\n ",name:"div_",type:s.FunctionType.ValueBased}},e.glslMul=function(){return{body:"\n float mul_(float a, float b) {\n return a * b;\n }\n vec4 mul_(vec4 v1, vec4 v2) {\n return v1 * v2;\n }\n ",name:"mul_",type:s.FunctionType.ValueBased}},e.glslSub=function(){return{body:"\n float sub_(float a, float b) {\n return a - b;\n }\n vec4 sub_(vec4 v1, vec4 v2) {\n return v1 - v2;\n }\n ",name:"sub_",type:s.FunctionType.ValueBased}},e.glslEqual=function(){return{body:"\n float equal_(float a, float b) {\n return float(a == b);\n }\n vec4 equal_(vec4 v1, vec4 v2) {\n return vec4( v1 == v2 );\n }\n ",name:"equal_",type:s.FunctionType.ValueBased}},e.glslGreater=function(){return{body:"\n float greater_(float a, float b) {\n return float(a > b);\n }\n vec4 greater_(vec4 v1, vec4 v2) {\n return vec4( v1.r > v2.r ,\n v1.g > v2.g,\n v1.b > v2.b,\n v1.a > v2.a );\n }\n ",name:"greater_",type:s.FunctionType.ValueBased}},e.glslLess=function(){return{body:"\n float less_(float a, float b) {\n return float(a < b);\n }\n vec4 less_(vec4 v1, vec4 v2) {\n return vec4( v1.r < v2.r ,\n v1.g < v2.g,\n v1.b < v2.b,\n v1.a < v2.a );\n }\n ",name:"less_",type:s.FunctionType.ValueBased}},e.glslAnd=function(){return{body:"\n float and_(float a, float b) {\n return float( bool(a) && bool(b) );\n }\n vec4 and_(vec4 v1, vec4 v2) {\n bvec4 b1 = bvec4(v1);\n bvec4 b2 = bvec4(v2);\n return vec4( b1.r && b2.r ,\n b1.g && b2.g,\n b1.b && b2.b,\n b1.a && b2.a );\n }\n ",name:"and_",type:s.FunctionType.ValueBased}},e.glslOr=function(){return{body:"\n float or_(float a, float b) {\n return float( bool(a) || bool(b) );\n }\n vec4 or_(vec4 v1, vec4 v2) {\n bvec4 b1 = bvec4(v1);\n bvec4 b2 = bvec4(v2);\n return vec4( b1.r || b2.r ,\n b1.g || b2.g,\n b1.b || b2.b,\n b1.a || b2.a );\n }\n ",name:"or_",type:s.FunctionType.ValueBased}},e.glslXor=function(){return{body:"\n float xor_(float a, float b) {\n return float( bool(a) ^^ bool(b) );\n }\n vec4 xor_(vec4 v1, vec4 v2) {\n bvec4 b1 = bvec4(v1);\n bvec4 b2 = bvec4(v2);\n return vec4( b1.r ^^ b2.r ,\n b1.g ^^ b2.g,\n b1.b ^^ b2.b,\n b1.a ^^ b2.a );\n }\n ",name:"xor_",type:s.FunctionType.ValueBased}},e.glslPow=function(){return function(t){var e=t+"_";return{body:"\n float pow_(float a, float b) {\n return pow(a, b);\n }\n vec4 pow_(vec4 v1, vec4 v2) {\n return pow(v1, v2);\n }\n ",name:e,type:s.FunctionType.ValueBased}}("pow")},e.glslPRelu=function(){return{body:"\n float prelu_(float a, float b) {\n return a < 0.0 ? a * b: a;\n }\n vec4 prelu_(vec4 v1, vec4 v2) {\n return vec4(\n v1.r < 0.0 ? v1.r * v2.r: v1.r,\n v1.g < 0.0 ? v1.g * v2.g: v1.g,\n v1.b < 0.0 ? v1.b * v2.b: v1.b,\n v1.a < 0.0 ? v1.a * v2.a: v1.a\n );\n }\n ",name:"prelu_",type:s.FunctionType.ValueBased}}},function(t,e,n){"use strict";var r,i=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(45),a=n(2),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){return t.run(this,e)},e.prototype.createProgramInfo=function(t,e){var n=e[0].dims.slice(),r=a.getGlsl(t.session.backend.glContext.version),i="\n const float min = float("+this.min+");\n const float max = float("+this.max+");\n void main() {\n float v = "+r.texture2D+"(A, TexCoords).r;\n "+r.output+" = vec4(clamp(v, min, max));\n }\n ";return{inputLayouts:[t.getOrCreateTextureLayout(e[0])],outputLayout:t.createTextureLayoutFromShape(n),samplers:["A"],shaderSource:i,hasMain:!0}},e.prototype.createRunData=function(t,e,n){var r=[t.getOrCreateTextureData(n[0],e.inputLayouts[0])];return{inputTextureDatas:r,outputTextureData:t.createTextureDataFromLayout(e.outputLayout,r[0].tensor.type),uniformData:{}}},e}(o.Clip);e.WebGLClip=s},function(t,e,n){"use strict";var r,i=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){return t.run(this,e)},e.prototype.createProgramInfo=function(t,e){var n=e[0].dims.slice();if(this.axis>=n.length||this.axis<-1*n.length)throw new Error("axis specified for concat doesn't match input dimensionality");this.axis<0&&(this.axis=n.length+this.axis);for(var r=n.slice(0),i=1;i0)&&!(r=o.next()).done;)a.push(r.value)}catch(t){i={error:t}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return a},a=this&&this.__spread||function(){for(var t=[],e=0;e=3?r[2]:void 0,a=t.getTextureData(i.dataId);if(!a){s.Logger.verbose("Conv","Did not find the adjustedKernel texture in the cache. Creating rew.");var u=e.prepKernelForDotProduct(i.dims.slice(),this.group,4,i.floatData);a=t.createTextureDataFromLayoutBindTensor(n[1].inputLayouts[1],i.type,u,i)}var c={inputTextureDatas:[t.getOrCreateTextureData(r[0])],outputTextureData:t.createTextureDataFromLayout(n[0].outputLayout,r[0].type),uniformData:{}},l=[c.outputTextureData,a];return o&&l.push(t.getOrCreateTextureData(o)),[c,{inputTextureDatas:l,outputTextureData:t.createTextureDataFromLayout(n[1].outputLayout,r[0].type),uniformData:{},draw:function(t,e){for(var n=t.gl,r=e.programInfo.params.sharedDim,i=e.programInfo.params.sharedDimReadSize,o=e.uniformLocations.find(function(t){return"sharedDimOffset"===t.name}).location,a=!1,u=0;u= 0 &&\n xh2 < XH &&\n xw2 >= 0 &&\n xw2 < XW) {\n v[i] = _X(x);\n }\n }\n ++p;\n }\n return v;\n }\n ";return{inputLayouts:[t.createTextureLayoutFromShape(i)],outputLayout:u,samplers:["X"],shaderSource:c}},e.prototype.createDotProductProgramInfo=function(t,e,n,r){var i,o=n[0].dims.slice(),a=n[1].dims.slice(),s=[a[0],Math.ceil(o[1]*a[2]*a[3]/4)],u=t.createTextureLayoutFromShape(s,4,[s[0],4*s[1]],{breakAxis:1}),c=r.length,f=[e,u];3===n.length&&(i=t.createTextureLayoutFromShape(n[2].dims.slice()),f.push(i));var h=t.createTextureLayoutFromShape(r),p=n.length<3?"0.0":"_B(b)",d=e.shape[3],m=t.session.backend.glContext.isBlendSupported&&t.session.backend.matmulMaxBatchSize?this.calcSharedDimReadSize(t.session.backend.matmulMaxBatchSize,d):d,g=["Im2Col","K"];3===n.length&&g.push("B");var v=l.getGlsl(t.session.backend.glContext.version),y="\n float process(int indices["+c+"]) {\n int b[1];\n b[0] = indices[1];\n int im2col["+e.shape.length+"];\n im2col[0] = indices[0];\n im2col[1] = indices[2];\n im2col[2] = indices[3];\n int im2colOffset = im2col[0] * "+e.strides[0]+" + im2col[1] * "+e.strides[1]+" + im2col[2] * "+e.strides[2]+" + sharedDimOffset;\n int kernelOffset = indices[1] * "+u.strides[0]+" + sharedDimOffset;\n float sum = sharedDimOffset == 0 ? "+p+" : 0.0;\n for (int i = 0; i < "+m+"; ++i) {\n vec2 im2colCoords = offsetToCoords(im2colOffset, "+e.width+", "+e.height+");\n vec2 kernelCoords = offsetToCoords(kernelOffset, "+u.width+", "+u.height+");\n sum += dot("+v.texture2D+"(Im2Col, im2colCoords), "+v.texture2D+"(K, kernelCoords));\n ++im2colOffset;\n ++kernelOffset;\n }\n return sum;\n }";return{inputLayouts:3===n.length?[e,u,i]:[e,u],outputLayout:h,shaderSource:y,samplers:g,variables:[{name:"sharedDimOffset",type:"int"}],params:{sharedDim:d,sharedDimReadSize:m}}},e.prepKernelForDotProduct=function(t,e,n,r){if(1===e&&(1===n||t[2]*t[3]%n==0))return r;for(var i=c.ShapeUtil.computeStrides(t),o=t[1]*t[2]*t[3],a=Math.ceil(o/n)*n,s=t[0]*a,u=new Float32Array(s),l=new Float32Array(a),f=0;f= 0.0 ? v: (exp(v) - 1.0) * "+this.alpha.toExponential()+"); /* float number format */\n }\n ";return{inputLayouts:[t.getOrCreateTextureLayout(e[0])],outputLayout:t.createTextureLayoutFromShape(n),samplers:["A"],shaderSource:i,hasMain:!0}},e.prototype.createRunData=function(t,e,n){var r=[t.getOrCreateTextureData(n[0],e.inputLayouts[0])];return{inputTextureDatas:r,outputTextureData:t.createTextureDataFromLayout(e.outputLayout,r[0].tensor.type),uniformData:{}}},e}(o.Elu);e.WebGLElu=s},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(){}return t.prototype.initialize=function(t){this.alpha=t.getFloat("alpha",1)},t.prototype.checkInputs=function(t){return!(!t||1!==t.length)&&this.checkInputTypes(t)},t.prototype.checkInputTypes=function(t){return"float32"===t[0].type||"float64"===t[0].type},t}();e.Elu=r},function(t,e,n){"use strict";var r,i=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(31),a=n(0),s=n(10),u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){var n=a.ShapeUtil.flattenShape(e[0].dims,this.axis);return[s.reshape(t,e[0],n)]},e}(o.Flatten);e.WebGLFlatten=u},function(t,e,n){"use strict";var r,i=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){return t.run(this,e)},e.prototype.createProgramInfo=function(t,e){var n=e[0].dims.slice(),r=e[1].dims.slice(),i=new Array(n.length+r.length-1);if(0===i.length)throw Error("A scalar tensor output has not been supported");for(var o=[],a=0;a0)&&!(r=o.next()).done;)a.push(r.value)}catch(t){i={error:t}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return a};Object.defineProperty(e,"__esModule",{value:!0});var a=n(19),s=n(0),u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){return t.run(this,e)},e.prototype.createProgramInfo=function(t,e){var n=e[0].dims.slice(),r=e[1].dims.slice(),i=e[2].dims.slice(),a=o(s.GemmUtil.getShapeOfGemmResult(n,this.transA,r,this.transB,i),2),u=[a[0],a[1]];if(!u)throw new Error("Can't use gemm on the given tensors");var c=n[n.length-1],l="";this.transA&&(c=n[0]),this.transA&&this.transB?l="value += _A_T(a) * _B_T(b);":this.transA&&!this.transB?l="value += _A_T(a) * _B(b);":!this.transA&&this.transB?l="value += _A(a) * _B_T(b);":this.transA||this.transB||(l="value += _A(a) * _B(b);");var f=u.length,h="\n float process(int indices["+f+"]) {\n int a["+f+"];\n int b["+f+"];\n int c["+i.length+"];\n\n copyVec(indices, a);\n copyVec(indices, b);\n bcastIndices_C(indices, c);\n\n float value = 0.0;\n for (int k=0; k<"+c+"; ++k) {\n a["+(f-1)+"] = k;\n b["+(f-2)+"] = k;\n "+l+"\n }\n\n value = value * alpha;\n value += beta * _C(c);\n return value;\n }";return{inputLayouts:e.map(function(e){return t.getOrCreateTextureLayout(e)}),outputLayout:t.createTextureLayoutFromShape(u),samplers:["A","B","C"],variables:[{name:"alpha",type:"float"},{name:"beta",type:"float"}],shaderSource:h}},e.prototype.createRunData=function(t,e,n){var r=n.map(function(n,r){return t.getOrCreateTextureData(n,e.inputLayouts[r])});return{inputTextureDatas:r,outputTextureData:t.createTextureDataFromLayout(e.outputLayout,r[0].tensor.type),uniformData:{alpha:this.alpha,beta:this.beta}}},e}(a.Gemm);e.WebGLGemm=u},function(t,e,n){"use strict";var r,i=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){return t.run(this,e)},e.prototype.createProgramInfo=function(t,e){var n=e[0].dims.slice(),r=n.length,i="\n "+this.createGetBiasMethod(this.bias.length)+"\n float process(int indices["+r+"]) {\n return _X(indices) * scale + getBias(bias, indices[1]);\n }";return{inputLayouts:[t.getOrCreateTextureLayout(e[0])],outputLayout:t.createTextureLayoutFromShape(n),samplers:["X"],variables:[{name:"bias",type:"float",arrayLength:this.bias.length},{name:"scale",type:"float"}],shaderSource:i}},e.prototype.createRunData=function(t,e,n){var r=[t.getOrCreateTextureData(n[0],e.inputLayouts[0])];return{inputTextureDatas:r,outputTextureData:t.createTextureDataFromLayout(e.outputLayout,r[0].tensor.type),uniformData:{bias:this.bias,scale:this.scale}}},e.prototype.createGetBiasMethod=function(t){for(var e=["float getBias(float bias["+t+"], int channel) {"],n=0;n=0;--l)c+="\n k = m["+l+"] - "+a[l]+";\n if (k < 0) return constant;\n if (k >= "+n[l]+") return constant;\n offset += k * "+r[l]+";\n ";return"\n float pad"+e+"(int m["+u+"]) {\n const float constant = float("+s+");\n int offset = 0;\n int k = 0;\n "+c+"\n vec2 coords = offsetToCoords(offset, "+i+", "+o+");\n float value = getColorAsFloat("+t.texture2D+"("+e+", coords));\n return value;\n }\n "}(t,e,n.shape,n.strides,n.width,n.height,i,o);case"reflect":return function(t,e,n,r,i,o,a){for(var s=n.length,u="",c=s-1;c>=0;--c)u+="\n k = m["+c+"] - "+a[c]+";\n if (k < 0) { k = -k; }\n {\n const int _2n_1 = "+2*(n[c]-1)+";\n k = int( mod( float(k), float(_2n_1) ) ) ;\n if(k >= "+n[c]+") { k = _2n_1 - k; }\n }\n offset += k * "+r[c]+";\n ";return"\n float pad"+e+"(int m["+s+"]) {\n int offset = 0;\n int k = 0;\n "+u+"\n vec2 coords = offsetToCoords(offset, "+i+", "+o+");\n float value = getColorAsFloat("+t.texture2D+"("+e+", coords));\n return value;\n }\n "}(t,e,n.shape,n.strides,n.width,n.height,i);case"edge":return function(t,e,n,r,i,o,a){for(var s=n.length,u="",c=s-1;c>=0;--c)u+="\n k = m["+c+"] - "+a[c]+";\n if (k < 0) k = 0;\n if (k >= "+n[c]+") k = "+(n[c]-1)+";\n offset += k * "+r[c]+";\n ";return"\n float pad"+e+"(int m["+s+"]) {\n int offset = 0;\n int k = 0;\n "+u+"\n vec2 coords = offsetToCoords(offset, "+i+", "+o+");\n float value = getColorAsFloat("+t.texture2D+"("+e+", coords));\n return value;\n }\n "}(t,e,n.shape,n.strides,n.width,n.height,i);default:throw new Error("Invalid mode")}}e.WebGLPad=u,e.getPadFunction=c},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(){}return t.prototype.initialize=function(t){this.mode=t.getString("mode","constant"),this.value=t.getFloat("value",0),this.pads=t.getInts("pads")},t.prototype.checkInputs=function(t){return!(!t||1!==t.length)&&this.checkInputTypes(t)},t.prototype.checkInputTypes=function(t){return"float32"===t[0].type||"float64"===t[0].type},t}();e.Pad=r},function(t,e,n){"use strict";var r,i=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(20),a=n(0),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){return t.run(this,e)},e.prototype.createProgramInfo=function(t,e){return c(t,e,!0,this.kernelShape,this.autoPad,this.strides,this.pads,this.countIncludePad)},e.prototype.createRunData=function(t,e,n){var r=[t.getOrCreateTextureData(n[0],e.inputLayouts[0])];return{inputTextureDatas:r,outputTextureData:t.createTextureDataFromLayout(e.outputLayout,r[0].tensor.type),uniformData:{}}},e}(o.GlobalAveragePool);e.WebGLGlobalAveragePool=s;var u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){return t.run(this,e)},e.prototype.createProgramInfo=function(t,e){return c(t,e,!1,this.kernelShape,this.autoPad,this.strides,this.pads,this.countIncludePad)},e.prototype.createRunData=function(t,e,n){var r=[t.getOrCreateTextureData(n[0],e.inputLayouts[0])];return{inputTextureDatas:r,outputTextureData:t.createTextureDataFromLayout(e.outputLayout,r[0].tensor.type),uniformData:{}}},e}(o.AveragePool);function c(t,e,n,r,i,o,s,u){void 0===r&&(r=[]),void 0===i&&(i=""),void 0===o&&(o=[]),void 0===s&&(s=[]);var c=e[0].dims.slice();a.PoolConvUtil.adjustPoolAttributes(n,c,r,o,s);var l=a.PoolConvUtil.computePoolOutputShape(n,c,o,r,s,i),f=a.ShapeUtil.size(r),h="";h+=u?"value /= float("+f+");":"value /= float("+f+" - pad);";var d=t.getOrCreateTextureLayout(e[0]),m="\n "+p(d,r,s,o,"value += _X(x);",h,"0.0")+"\n ";return{inputLayouts:[d],outputLayout:t.createTextureLayoutFromShape(l),samplers:["X"],shaderSource:m}}e.WebGLAveragePool=u;var l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){return t.run(this,e)},e.prototype.createProgramInfo=function(t,e){return h(t,e,!0,this.kernelShape,this.autoPad,this.strides,this.pads)},e.prototype.createRunData=function(t,e,n){var r=[t.getOrCreateTextureData(n[0])];return{inputTextureDatas:r,outputTextureData:t.createTextureDataFromLayout(e.outputLayout,r[0].tensor.type),uniformData:{}}},e}(o.GlobalMaxPool);e.WebGLGlobalMaxPool=l;var f=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){return t.run(this,e)},e.prototype.createProgramInfo=function(t,e){return h(t,e,!1,this.kernelShape,this.autoPad,this.strides,this.pads)},e.prototype.createRunData=function(t,e,n){var r=[t.getOrCreateTextureData(n[0])];return{inputTextureDatas:r,outputTextureData:t.createTextureDataFromLayout(e.outputLayout,r[0].tensor.type),uniformData:{}}},e}(o.MaxPool);function h(t,e,n,r,i,o,s){void 0===r&&(r=[]),void 0===i&&(i=""),void 0===o&&(o=[]),void 0===s&&(s=[]);var u=e[0].dims.slice();a.PoolConvUtil.adjustPoolAttributes(n,u,r,o,s);var c=a.PoolConvUtil.computePoolOutputShape(n,u,o,r,s,i),l=t.createTextureLayoutFromShape(u),f="\n "+p(l,r,s,o,"\n value = max(_X(x), value);\n ","","-1e5")+"\n ";return{inputLayouts:[l],outputLayout:t.createTextureLayoutFromShape(c),samplers:["X"],shaderSource:f}}function p(t,e,n,r,i,o,s){var u=t.shape,c=t.shape.length;if(e.length<=2){var l,f=e[e.length-1],h=r[r.length-1],p=n[n.length/2-1],g=n[n.length-1],v=u[c-1],y="",b="";if(l=p+g!==0?"\n for (int i = 0; i < "+f+"; i++) {\n x["+c+" - 1] = indices["+c+" - 1] * "+h+" - "+p+" + i;\n if (x["+c+" - 1] < 0 || x["+c+" - 1] >= "+v+") {\n pad++;\n continue;\n }\n "+i+"\n }":"\n for (int i = 0; i < "+f+"; i++) {\n x["+c+" - 1] = indices["+c+" - 1] * "+h+" - "+p+" + i;\n "+i+"\n }",2===e.length){var w=e[e.length-2],x=r[r.length-2],_=n[n.length/2-2],S=n[n.length-2],E=u[c-2];y=_+S!==0?"\n for (int j = 0; j < "+w+"; j++) {\n x["+c+" - 2] = indices["+c+" - 2] * "+x+" - "+_+" + j;\n if (x["+c+" - 2] < 0 || x["+c+" - 2] >= "+E+") {\n pad+= "+f+";\n continue;\n }\n ":"\n for (int j = 0; j < "+w+"; j++) {\n x["+c+" - 2] = indices["+c+" - 2] * "+x+" - "+_+" + j;\n ",b="\n }\n "}return"\n float process(int indices["+c+"]) {\n int x["+c+"];\n copyVec(indices, x);\n\n float value = "+s+";\n int pad = 0;\n "+y+"\n "+l+"\n "+b+"\n "+o+"\n return value;\n }\n "}var T=a.ShapeUtil.size(e),M=a.ShapeUtil.computeStrides(e),A=M.length,C=n.length,P=m(A),I=d(u,"inputDims"),O=d(n,"pads"),R=d(M,"kernelStrides");return"\n "+P+"\n float process(int indices["+c+"]) {\n int x["+c+"];\n copyVec(indices, x);\n int offset["+A+"];\n int pads["+C+"];\n int inputDims["+c+"];\n int kernelStrides["+A+"];\n int strides["+A+"];\n "+O+"\n "+I+"\n "+d(r,"strides")+"\n "+R+"\n\n float value = "+s+";\n int pad = 0;\n bool isPad = false;\n for (int i = 0; i < "+T+"; i++) {\n offsetToIndices(i, kernelStrides, offset);\n isPad = false;\n for (int j = "+c+" - "+A+"; j < "+c+"; j++) {\n x[j] = indices[j] * strides[j - "+c+" + "+A+"]\n + offset[j - "+c+" + "+A+"] - pads[j - 2];\n "+(n.reduce(function(t,e){return t+e})?"\n if (x[j] >= inputDims[j] || x[j] < 0) {\n pad++;\n isPad = true;\n break;\n }\n }\n if (!isPad) {\n "+i+"\n }":"\n }\n "+i)+"\n }\n "+o+"\n\n return value;\n }"}function d(t,e){for(var n="",r=0;r=0||0===this.axes.length?(this.keepDims&&n.push(1),a="\n for(int j"+s+" = 0; j"+s+" < "+e[0].dims[s]+"; j"+s+"++) {\n inputIdx["+s+"] = j"+s+";\n "+a+"\n }\n "):(i.push("inputIdx["+s+"] = outputIdx["+n.length+"];"),n.push(e[0].dims[s]));var u="\n float process(int outputIdx["+(n.length||1)+"]) {\n float value; // final result\n int inputIdx["+r+"]; // addressing input data\n "+i.join("\n")+"\n "+o[0]+" // init ops for reduce max/min\n "+a+"\n "+o[2]+" // final computation for reduce mean\n return value;\n }";return{inputLayouts:e.map(function(e){return t.getOrCreateTextureLayout(e)}),outputLayout:t.createTextureLayoutFromShape(n),samplers:["A"],shaderSource:u}},e.prototype.createRunData=function(t,e,n){var r=n.map(function(n,r){return t.getOrCreateTextureData(n,e.inputLayouts[r])});return{inputTextureDatas:r,outputTextureData:t.createTextureDataFromLayout(e.outputLayout,r[0].tensor.type),uniformData:{}}},e}(n(35).ReduceBase),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.getOps=function(t){return["value = 0.0;","value += _A(inputIdx);",""]},e}(o);e.WebGLReduceSum=a;var s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.getOps=function(t){for(var e=1,n=0;n=0||0===this.axes.length)&&(e*=t[0].dims[n]);return["value = 0.0;","value += _A(inputIdx);","value /= "+e+".;"]},e}(o);e.WebGLReduceMean=s;var u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.getOps=function(t){for(var e=[],n=0;n=0||0===this.axes.length)&&e.push("inputIdx["+n+"] = 0;");return[e.join("\n")+"\nvalue = _A(inputIdx);","value = max(value, _A(inputIdx));",""]},e}(o);e.WebGLReduceMax=u;var c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.getOps=function(t){for(var e=[],n=0;n=0||0===this.axes.length)&&e.push("inputIdx["+n+"] = 0;");return[e.join("\n")+"\nvalue = _A(inputIdx);","value = min(value, _A(inputIdx));",""]},e}(o);e.WebGLReduceMin=c;var l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.getOps=function(t){return["value = 1.0;","value *= _A(inputIdx);",""]},e}(o);e.WebGLReduceProd=l;var f=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.getOps=function(t){return["value = 0.0;","value += _A(inputIdx);","value = log(value);"]},e}(o);e.WebGLReduceLogSum=f;var h=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.getOps=function(t){return["float t; value = 0.0;","t = _A(inputIdx); value += t * t;",""]},e}(o);e.WebGLReduceSumSquare=h},function(t,e,n){"use strict";var r,i=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)});Object.defineProperty(e,"__esModule",{value:!0});var o=n(37),a=n(0),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){return t.run(this,e)},e.prototype.createProgramInfo=function(t,e){return c(t,e[0],this.starts,this.ends,this.axes)},e.prototype.createRunData=function(t,e,n){return l(t,e,n)},e}(o.Slice);e.WebGLSlice=s;var u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){return t.run(this,e)},e.prototype.createProgramInfo=function(t,e){if(!t.session.isInitializer(e[1].dataId)||!t.session.isInitializer(e[2].dataId)||e.length>=4&&!t.session.isInitializer(e[3].dataId)||e.length>=5&&!t.session.isInitializer(e[4].dataId))throw new Error("dynamic slice attributes are not allowed");if(e.length>=5&&e[4].integerData.some(function(t){return 1!==t}))throw new Error("currently non-1 steps is not supported for Slice");var n=Array.from(e[1].integerData),r=Array.from(e[2].integerData),i=e.length>=4?Array.from(e[3].integerData):[];return c(t,e[0],n,r,i)},e.prototype.createRunData=function(t,e,n){return l(t,e,n)},e}(o.SliceV10);function c(t,e,n,r,i){0===i.length&&(i=e.dims.slice(0).map(function(t,e){return e})),i=i.map(function(t){return a.ShapeUtil.parseAxis(t,e.dims.length)}),n=n.map(function(t,n){return t>e.dims[i[n]]-1?e.dims[i[n]]:a.ShapeUtil.parseAxis(t,e.dims[i[n]])}),r=r.map(function(t,n){return t>e.dims[i[n]]-1?e.dims[i[n]]:a.ShapeUtil.parseAxis(t,e.dims[i[n]])});for(var o=e.dims.slice(),s=[],u=0;u0&&s.push("outputIdx["+i[u]+"] += "+n[u]+";");var c="\n float process(int outputIdx["+o.length+"]) {\n "+s.join("\n ")+"\n return _A(outputIdx);\n }";return{inputLayouts:[t.getOrCreateTextureLayout(e)],outputLayout:t.createTextureLayoutFromShape(o),samplers:["A"],shaderSource:c}}function l(t,e,n){var r=[t.getOrCreateTextureData(n[0],e.inputLayouts[0])];return{inputTextureDatas:r,outputTextureData:t.createTextureDataFromLayout(e.outputLayout,r[0].tensor.type),uniformData:{}}}e.WebGLSliceV10=u},function(t,e,n){"use strict";var r,i=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}),o=this&&this.__read||function(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var r,i,o=n.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(r=o.next()).done;)a.push(r.value)}catch(t){i={error:t}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return a},a=this&&this.__spread||function(){for(var t=[],e=0;e max)\n max = current;\n }\n\n return max;\n }";return{inputLayouts:[o],outputLayout:t.createTextureLayoutFromShape(i),samplers:["A"],shaderSource:f}},e.prototype.createProgramInfos=function(t,e){var n=e[0].dims.slice(),r=u.ShapeUtil.parseAxis(this.axis,n.length),i=u.ShapeUtil.sizeToDimension(n,r),o=u.ShapeUtil.sizeFromDimension(n,r),a=this.createComputeMaxProgramInfo(t,e[0],i,o,[i]),s=this.createComputScaleProgramInfo(t,e[0],i,o,a.outputLayout,[i]);return[a,s,this.createSoftMaxProgramInfo(t,e[0],i,o,a.outputLayout,s.outputLayout)]},e.prototype.createRunDatas=function(t,e,n){var r=n[0].type,i=t.getOrCreateTextureData(n[0],e[0].inputLayouts[0]),o=[];o.push({inputTextureDatas:[i],outputTextureData:t.createTextureDataFromLayout(e[0].outputLayout,r),uniformData:{}});for(var s=1;s0)&&!(r=o.next()).done;)a.push(r.value)}catch(t){i={error:t}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return a};Object.defineProperty(e,"__esModule",{value:!0});var a=n(140),s=n(0),u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.run=function(t,e){var n=this,r=this.getProgramCount(t,e);if(!this.artifacts){this.artifacts=[];for(var i=0;i0)&&!(r=o.next()).done;)a.push(r.value)}catch(t){i={error:t}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return a},a=this&&this.__spread||function(){for(var t=[],e=0;e=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}}};Object.defineProperty(e,"__esModule",{value:!0});var o=n(24),a=n(3),s=n(150),u=n(2),c=function(){function t(t,e){this.profiler=t,this.glContext=e,this.repo=new Map,this.attributesBound=!1}return t.prototype.getArtifact=function(t){return this.repo.get(t)},t.prototype.setArtifact=function(t,e){this.repo.set(t,e)},t.prototype.run=function(t,e){var n=this;this.profiler.event("backend","ProgramManager.run",function(){var r=n.glContext.gl,i=t.program;r.useProgram(i);try{n.bindOutput(e.outputTextureData),n.attributesBound||n.bindAttributes(t.attribLocations),n.bindUniforms(t.uniformLocations,e.uniformData,e.inputTextureDatas)}catch(e){throw a.Logger.error("ProgramManager",t.programInfo.shaderSource),e}n.profiler.event("backend","GlContext.draw()",function(){n.doDraw(t,e),r.flush()})})},t.prototype.dispose=function(){var t=this;this.vertexShader&&this.glContext.deleteShader(this.vertexShader),this.repo.forEach(function(e){return t.glContext.deleteProgram(e.program)})},t.prototype.build=function(t){var e=this;return this.profiler.event("backend","ProgramManager.build",function(){var n=new s.GlslPreprocessor(e.glContext,t),r=n.preprocess(),i=e.compile(r);return{programInfo:t,program:i,uniformLocations:e.getUniformLocations(i,n.context.programInfo.samplers,n.context.programInfo.variables),attribLocations:e.getAttribLocations(i)}})},t.prototype.doDraw=function(t,e){e.draw?(a.Logger.verbose("ProgramManager","Custom draw function"),e.draw(this.glContext,t)):this.glContext.draw()},t.prototype.compile=function(t){if(!this.vertexShader){a.Logger.verbose("ProrgramManager","Compiling and caching Vertex shader for the first time");var e=u.getVertexShaderSource(this.glContext.version);this.vertexShader=this.glContext.compileShader(e,this.glContext.gl.VERTEX_SHADER)}o.env.debug&&a.Logger.verbose("ProrgramManager","FragShader:\n"+t+"\n");var n=this.glContext.compileShader(t,this.glContext.gl.FRAGMENT_SHADER),r=this.glContext.createProgram(this.vertexShader,n);return this.glContext.deleteShader(n),r},t.prototype.bindOutput=function(t){a.Logger.verbose("ProrgramManager","Binding output texture to Framebuffer: w/h="+t.width+"/"+t.height+", shape="+t.shape+", type="+t.tensor.type),this.glContext.attachFramebuffer(t.texture,t.width,t.height)},t.prototype.bindAttributes=function(t){var e=t.position,n=t.textureCoord;this.glContext.setVertexAttributes(e,n),this.attributesBound=!0},t.prototype.bindUniforms=function(t,e,n){var r,o,a=this.glContext.gl,s=0;try{for(var u=i(t),c=u.next();!c.done;c=u.next()){var l=c.value,f=l.name,h=l.type,p=l.location,d=l.arrayLength;switch(h){case"sampler2D":this.bindTexture(n[s],p,s),s++;break;case"float":d?a.uniform1fv(p,e[f]):a.uniform1f(p,e[f]);break;case"int":d?a.uniform1iv(p,e[f]):a.uniform1i(p,e[f]);break;default:throw new Error("Uniform not implemented: "+h)}}}catch(t){r={error:t}}finally{try{c&&!c.done&&(o=u.return)&&o.call(u)}finally{if(r)throw r.error}}},t.prototype.bindTexture=function(t,e,n){this.glContext.bindTextureToUniform(t.texture,n,e)},t.prototype.getAttribLocations=function(t){return{position:this.getAttribLocation(t,"position"),textureCoord:this.getAttribLocation(t,"textureCoord")}},t.prototype.getUniformLocations=function(t,e,n){var o,a,s,u,c=[];if(e)try{for(var l=i(e),f=l.next();!f.done;f=l.next()){var h=f.value;c.push({name:h,type:"sampler2D",location:this.getUniformLocation(t,h)})}}catch(t){o={error:t}}finally{try{f&&!f.done&&(a=l.return)&&a.call(l)}finally{if(o)throw o.error}}if(n)try{for(var p=i(n),d=p.next();!d.done;d=p.next()){var m=d.value;c.push(r({},m,{location:this.getUniformLocation(t,m.name)}))}}catch(t){s={error:t}}finally{try{d&&!d.done&&(u=p.return)&&u.call(p)}finally{if(s)throw s.error}}return c},t.prototype.getUniformLocation=function(t,e){var n=this.glContext.gl.getUniformLocation(t,e);if(null===n)throw new Error("Uniform "+e+" not found.");return n},t.prototype.getAttribLocation=function(t,e){return this.glContext.gl.getAttribLocation(t,e)},t}();e.ProgramManager=c},function(t,e,n){(function(t,r){var i;(function(){"use strict";var o={function:!0,object:!0},a=o[typeof window]&&window||this,s=o[typeof e]&&e,u=o[typeof t]&&t&&!t.nodeType&&t,c=s&&u&&"object"==typeof r&&r;!c||c.global!==c&&c.window!==c&&c.self!==c||(a=c);var l=Math.pow(2,53)-1,f=/\bOpera/,h=Object.prototype,p=h.hasOwnProperty,d=h.toString;function m(t){return(t=String(t)).charAt(0).toUpperCase()+t.slice(1)}function g(t){return t=x(t),/^(?:webOS|i(?:OS|P))/.test(t)?t:m(t)}function v(t,e){for(var n in t)p.call(t,n)&&e(t[n],n,t)}function y(t){return null==t?m(t):d.call(t).slice(8,-1)}function b(t){return String(t).replace(/([ -])(?!$)/g,"$1?")}function w(t,e){var n=null;return function(t,e){var n=-1,r=t?t.length:0;if("number"==typeof r&&r>-1&&r<=l)for(;++n3?"WebKit":/\bOpera\b/.test(F)&&(/\bOPR\b/.test(e)?"Blink":"Presto"))||/\b(?:Midori|Nook|Safari)\b/i.test(e)&&!/^(?:Trident|EdgeHTML)$/.test(B)&&"WebKit"||!B&&/\bMSIE\b/i.test(e)&&("Mac OS"==z?"Tasman":"Trident")||"WebKit"==B&&/\bPlayStation\b(?! Vita\b)/i.test(F)&&"NetFront")&&(B=[s]),"IE"==F&&(s=(/; *(?:XBLWP|ZuneWP)(\d+)/i.exec(e)||0)[1])?(F+=" Mobile",z="Windows Phone "+(/\+$/.test(s)?s:s+".x"),k.unshift("desktop mode")):/\bWPDesktop\b/i.test(e)?(F="IE Mobile",z="Windows Phone 8.x",k.unshift("desktop mode"),N||(N=(/\brv:([\d.]+)/.exec(e)||0)[1])):"IE"!=F&&"Trident"==B&&(s=/\brv:([\d.]+)/.exec(e))&&(F&&k.push("identifying as "+F+(N?" "+N:"")),F="IE",N=s[1]),D){if(l="global",h=null!=(c=n)?typeof c[l]:"number",/^(?:boolean|number|string|undefined)$/.test(h)||"object"==h&&!c[l])y(s=n.runtime)==m?(F="Adobe AIR",z=s.flash.system.Capabilities.os):y(s=n.phantom)==E?(F="PhantomJS",N=(s=s.version||null)&&s.major+"."+s.minor+"."+s.patch):"number"==typeof P.documentMode&&(s=/\bTrident\/(\d+)/i.exec(e))?(N=[N,P.documentMode],(s=+s[1]+4)!=N[1]&&(k.push("IE "+N[1]+" mode"),B&&(B[1]=""),N[1]=s),N="IE"==F?String(N[1].toFixed(1)):N[0]):"number"==typeof P.documentMode&&/^(?:Chrome|Firefox)\b/.test(F)&&(k.push("masking as "+F+" "+N),F="IE",N="11.0",B=["Trident"],z="Windows");else if(T&&(R=(s=T.lang.System).getProperty("os.arch"),z=z||s.getProperty("os.name")+" "+s.getProperty("os.version")),M){try{N=n.require("ringo/engine").version.join("."),F="RingoJS"}catch(t){(s=n.system)&&s.global.system==n.system&&(F="Narwhal",z||(z=s[0].os||null))}F||(F="Rhino")}else"object"==typeof n.process&&!n.process.browser&&(s=n.process)&&("object"==typeof s.versions&&("string"==typeof s.versions.electron?(k.push("Node "+s.versions.node),F="Electron",N=s.versions.electron):"string"==typeof s.versions.nw&&(k.push("Chromium "+N,"Node "+s.versions.node),F="NW.js",N=s.versions.nw)),F||(F="Node.js",R=s.arch,z=s.platform,N=(N=/[\d.]+/.exec(s.version))?N[0]:null));z=z&&g(z)}if(N&&(s=/(?:[ab]|dp|pre|[ab]\d+pre)(?:\d+\+?)?$/i.exec(N)||/(?:alpha|beta)(?: ?\d)?/i.exec(e+";"+(D&&i.appMinorVersion))||/\bMinefield\b/i.test(e)&&"a")&&(L=/b/i.test(s)?"beta":"alpha",N=N.replace(RegExp(s+"\\+?$"),"")+("beta"==L?C:A)+(/\d+\+?/.exec(s)||"")),"Fennec"==F||"Firefox"==F&&/\b(?:Android|Firefox OS)\b/.test(z))F="Firefox Mobile";else if("Maxthon"==F&&N)N=N.replace(/\.[\d.]+/,".x");else if(/\bXbox\b/i.test(U))"Xbox 360"==U&&(z=null),"Xbox 360"==U&&/\bIEMobile\b/.test(e)&&k.unshift("mobile mode");else if(!/^(?:Chrome|IE|Opera)$/.test(F)&&(!F||U||/Browser|Mobi/.test(F))||"Windows CE"!=z&&!/Mobi/i.test(e))if("IE"==F&&D)try{null===n.external&&k.unshift("platform preview")}catch(t){k.unshift("embedded")}else(/\bBlackBerry\b/.test(U)||/\bBB10\b/.test(e))&&(s=(RegExp(U.replace(/ +/g," *")+"/([.\\d]+)","i").exec(e)||0)[1]||N)?(z=((s=[s,/BB10/.test(e)])[1]?(U=null,j="BlackBerry"):"Device Software")+" "+s[0],N=null):this!=v&&"Wii"!=U&&(D&&I||/Opera/.test(F)&&/\b(?:MSIE|Firefox)\b/i.test(e)||"Firefox"==F&&/\bOS X (?:\d+\.){2,}/.test(z)||"IE"==F&&(z&&!/^Win/.test(z)&&N>5.5||/\bWindows XP\b/.test(z)&&N>8||8==N&&!/\bTrident\b/.test(e)))&&!f.test(s=t.call(v,e.replace(f,"")+";"))&&s.name&&(s="ing as "+s.name+((s=s.version)?" "+s:""),f.test(F)?(/\bIE\b/.test(s)&&"Mac OS"==z&&(z=null),s="identify"+s):(s="mask"+s,F=O?g(O.replace(/([a-z])([A-Z])/g,"$1 $2")):"Opera",/\bIE\b/.test(s)&&(z=null),D||(N=null)),B=["Presto"],k.push(s));else F+=" Mobile";(s=(/\bAppleWebKit\/([\d.]+\+?)/i.exec(e)||0)[1])&&(s=[parseFloat(s.replace(/\.(\d)$/,".0$1")),s],"Safari"==F&&"+"==s[1].slice(-1)?(F="WebKit Nightly",L="alpha",N=s[1].slice(0,-1)):N!=s[1]&&N!=(s[2]=(/\bSafari\/([\d.]+\+?)/i.exec(e)||0)[1])||(N=null),s[1]=(/\bChrome\/([\d.]+)/i.exec(e)||0)[1],537.36==s[0]&&537.36==s[2]&&parseFloat(s[1])>=28&&"WebKit"==B&&(B=["Blink"]),D&&(p||s[1])?(B&&(B[1]="like Chrome"),s=s[1]||((s=s[0])<530?1:s<532?2:s<532.05?3:s<533?4:s<534.03?5:s<534.07?6:s<534.1?7:s<534.13?8:s<534.16?9:s<534.24?10:s<534.3?11:s<535.01?12:s<535.02?"13+":s<535.07?15:s<535.11?16:s<535.19?17:s<536.05?18:s<536.1?19:s<537.01?20:s<537.11?"21+":s<537.13?23:s<537.18?24:s<537.24?25:s<537.36?26:"Blink"!=B?"27":"28")):(B&&(B[1]="like Safari"),s=(s=s[0])<400?1:s<500?2:s<526?3:s<533?4:s<534?"4+":s<535?5:s<537?6:s<538?7:s<601?8:"8"),B&&(B[1]+=" "+(s+="number"==typeof s?".x":/[.+]/.test(s)?"":"+")),"Safari"==F&&(!N||parseInt(N)>45)&&(N=s)),"Opera"==F&&(s=/\bzbov|zvav$/.exec(z))?(F+=" ",k.unshift("desktop mode"),"zvav"==s?(F+="Mini",N=null):F+="Mobile",z=z.replace(RegExp(" *"+s+"$"),"")):"Safari"==F&&/\bChrome\b/.exec(B&&B[1])&&(k.unshift("desktop mode"),F="Chrome Mobile",N=null,/\bOS X\b/.test(z)?(j="Apple",z="iOS 4.3+"):z=null),N&&0==N.indexOf(s=/[\d.]+$/.exec(z))&&e.indexOf("/"+s+"-")>-1&&(z=x(z.replace(s,""))),B&&!/\b(?:Avant|Nook)\b/.test(F)&&(/Browser|Lunascape|Maxthon/.test(F)||"Safari"!=F&&/^iOS/.test(z)&&/\bSafari\b/.test(B[1])||/^(?:Adobe|Arora|Breach|Midori|Opera|Phantom|Rekonq|Rock|Samsung Internet|Sleipnir|Web)/.test(F)&&B[1])&&(s=B[B.length-1])&&k.push(s),k.length&&(k=["("+k.join("; ")+")"]),j&&U&&U.indexOf(j)<0&&k.push("on "+j),U&&k.push((/^on /.test(k[k.length-1])?"":"on ")+U),z&&(s=/ ([\d.+]+)$/.exec(z),u=s&&"/"==z.charAt(z.length-s[0].length-1),z={architecture:32,family:s&&!u?z.replace(s[0],""):z,version:s?s[1]:null,toString:function(){var t=this.version;return this.family+(t&&!u?" "+t:"")+(64==this.architecture?" 64-bit":"")}}),(s=/\b(?:AMD|IA|Win|WOW|x86_|x)64\b/i.exec(R))&&!/\bi686\b/i.test(R)?(z&&(z.architecture=64,z.family=z.family.replace(RegExp(" *"+s),"")),F&&(/\bWOW64\b/i.test(e)||D&&/\w(?:86|32)$/.test(i.cpuClass||i.platform)&&!/\bWin64; x64\b/i.test(e))&&k.unshift("32-bit")):z&&/^OS X/.test(z.family)&&"Chrome"==F&&parseFloat(N)>=39&&(z.architecture=64),e||(e=null);var V={};return V.description=e,V.layout=B&&B[0],V.manufacturer=j,V.name=F,V.prerelease=L,V.product=U,V.ua=e,V.version=F&&N,V.os=z||{architecture:null,family:null,version:null,toString:function(){return"null"}},V.parse=t,V.toString=function(){return this.description||""},V.version&&k.unshift(N),V.name&&k.unshift(F),z&&F&&(z!=String(z).split(" ")[0]||z!=F.split(" ")[0]&&!U)&&k.push(U?"("+z+")":"on "+z),k.length&&(V.description=k.join(" ")),V}();a.platform=_,void 0===(i=function(){return _}.call(e,n,e,t))||(t.exports=i)}).call(this)}).call(this,n(149)(t),n(8))},function(t,e){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),t.webpackPolyfill=1),t}},function(t,e,n){"use strict";var r=this&&this.__values||function(t){var e="function"==typeof Symbol&&t[Symbol.iterator],n=0;return e?e.call(t):{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}}};Object.defineProperty(e,"__esModule",{value:!0});var i=n(5),o=n(151),a=n(152),s=n(2),u=function(){function t(t,e){var n=this;this.libs={},this.glslLibRoutineDependencyGraph={},this.context=new i.GlslContext(t,e),Object.keys(a.glslRegistry).forEach(function(t){var e=new a.glslRegistry[t](n.context);n.libs[t]=e});var r=this.glslLibRoutineDependencyGraph;for(var o in this.libs){var s=this.libs[o].getFunctions();for(var u in s){var c=o+"."+u,l=void 0;r[c]?(l=r[c]).routineBody=s[u].routineBody:(l=new i.GlslLibRoutineNode(c,s[u].routineBody),r[c]=l);var f=s[u].dependencies;if(f)for(var h=0;he)){for(var s=o.length,u=e-s,c="bcastMatmulIndices_"+r,l="",f=0;f=0;--i)r+="\n offset += indices["+i+"] * "+n[i]+";\n ";return"\n int "+t+"(int indices["+e+"]) {\n int offset = 0;\n "+r+"\n return offset;\n }\n "},e.prototype.offsetToIndices=function(){var t=this.context.programInfo,n={};return this.context.programInfo.samplers.forEach(function(r,i){var o=t.inputLayouts[i].shape,s=t.inputLayouts[i].strides,u=o.length,c="offsetToIndices_"+r;n[c]=new a.GlslLibRoutine(e.offsetToIndicesSingle(c,u,s)),n[c="offsetToIndices_"+r+"_T"]=new a.GlslLibRoutine(e.offsetToIndicesSingle(c,u,s.slice().reverse()))}),n},e.offsetToIndicesSingle=function(t,e,n){for(var r=[],i=0;i= 0; --i) {\n if(i > axis) continue;\n indices[i] += 1;\n if(indices[i] < shape[i]) {\n break;\n }\n indices[i] = 0;\n }\n }\n ";e[s]=new a.GlslLibRoutine(l)}),e},e}(a.GlslLib);e.ShapeUtilsGlslLib=s},function(t,e,n){"use strict";var r,i=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)},function(t,e){function n(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}),o=this&&this.__assign||function(){return(o=Object.assign||function(t){for(var e,n=1,r=arguments.length;n=t.length?1:t.slice(e.breakAxis).reduce(function(t,e){return t*e}),o=e.breakAxis<=0?1:t.slice(0,e.breakAxis).reduce(function(t,e){return t*e});if(!(i>n||o>n))return[i,o];r.Logger.verbose("TextureLayout","Given width/height preferences were unattainable: shape:"+t+", breakAxis:"+e.breakAxis)}for(var a=t.reduce(function(t,e){return t*e}),s=Math.floor(Math.sqrt(a));s=n||a%s!=0)throw new Error("The given dimensions are outside this GPU's boundaries: "+t);return[s,a/s]},t}();e.AlwaysKeepOriginalSizeStrategy=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n(3),i=function(){function t(t,e,n,r){this.glContext=t,this.layoutStrategy=e,this.profiler=n,this.config=r,r.reuseTextures&&(this.inUseTextures=new Map,this.idleTextures=new Map,this.textureLookup=new Map)}return t.prototype.createTextureFromLayout=function(t,e,n,i){var o,a,s=this.toEncoderType(t),u=this.glContext.getEncoder(s,e.channels||1,i);if(this.config.reuseTextures){o=e.width+"x"+e.height+"_"+u.format+"_"+u.internalFormat+"_"+u.textureType,(a=this.inUseTextures.get(o))||(a=[],this.inUseTextures.set(o,a));var c=this.idleTextures.get(o);if(c&&c.length>0){var l=c.pop();return a.push(l),1===i&&this.glContext.updateTexture(l,e.width,e.height,u,this.toTextureData(t,n)),l}}r.Logger.verbose("TextureManager","Creating new texture of size "+e.width+"x"+e.height);var f=this.glContext.allocateTexture(e.width,e.height,u,this.toTextureData(t,n));return this.config.reuseTextures&&(a.push(f),this.textureLookup.set(f,o)),f},t.prototype.readTexture=function(t,e,n){var r=this;return n||(n=1),this.profiler.event("backend","TextureManager.readTexture",function(){var i=t.shape.reduce(function(t,e){return t*e})*n,o=r.glContext.readTexture(t.texture,t.width,t.height,i,r.toEncoderType(e),n);return r.toTensorData(e,o)})},t.prototype.readUint8TextureAsFloat=function(t){var e=this;return this.profiler.event("backend","TextureManager.readUint8TextureAsFloat",function(){var n=t.shape.reduce(function(t,e){return t*e}),r=e.glContext.readTexture(t.texture,t.width,t.height,4*n,"byte",4);return new Float32Array(r.buffer,r.byteOffset,n)})},t.prototype.releaseTexture=function(t,e){var n;if(this.config.reuseTextures&&(n=this.textureLookup.get(t.texture))){e&&this.textureLookup.delete(n);var i=this.inUseTextures.get(n);if(i){var o=i.indexOf(t.texture);if(-1!==o){i.splice(o,1);var a=this.idleTextures.get(n);a||(a=[],this.idleTextures.set(n,a)),a.push(t.texture)}}}n&&!e||(r.Logger.verbose("TextureManager","Deleting texture of size "+t.width+"x"+t.height),this.glContext.deleteTexture(t.texture))},t.prototype.toTensorData=function(t,e){return e.constructor===Float32Array?e:new Float32Array(e)},t.prototype.toTextureData=function(t,e){if(e)return e.constructor===Float32Array?e:new Float32Array(e)},t.prototype.toEncoderType=function(t){return"float"},t.prototype.clearActiveTextures=function(){this.glContext.clearActiveTextures()},t}();e.TextureManager=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n(3),i=n(161),o={};function a(t){var e,n=function(){var t=document.createElement("canvas");return t.width=1,t.height=1,t}(),o={alpha:!1,depth:!1,antialias:!1,stencil:!1,preserveDrawingBuffer:!1,premultipliedAlpha:!1,failIfMajorPerformanceCaveat:!1};if((!t||"webgl2"===t)&&(e=n.getContext("webgl2",o)))try{return new i.WebGLContext(e,2)}catch(t){r.Logger.warning("GlContextFactory","failed to create WebGLContext using contextId 'webgl2'. Error: "+t)}if((!t||"webgl"===t)&&(e=n.getContext("webgl",o)||n.getContext("experimental-webgl",o)))try{return new i.WebGLContext(e,1)}catch(t){r.Logger.warning("GlContextFactory","failed to create WebGLContext using contextId 'webgl' or 'experimental-webgl'. Error: "+t)}throw new Error("WebGL is not supported")}e.createWebGLContext=function t(e){var n;(!e||"webgl2"===e)&&"webgl2"in o?n=o.webgl2:(!e||"webgl"===e)&&"webgl"in o&&(n=o.webgl),n=n||a(e),e=e||1===n.version?"webgl":"webgl2";var r=n.gl;return o[e]=n,r.isContextLost()?(delete o[e],t(e)):(r.disable(r.DEPTH_TEST),r.disable(r.STENCIL_TEST),r.disable(r.BLEND),r.disable(r.DITHER),r.disable(r.POLYGON_OFFSET_FILL),r.disable(r.SAMPLE_COVERAGE),r.enable(r.SCISSOR_TEST),r.enable(r.CULL_FACE),r.cullFace(r.BACK),n)},e.createNewWebGLContext=a},function(t,e,n){"use strict";var r=this&&this.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)Object.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e.default=t,e};Object.defineProperty(e,"__esModule",{value:!0});var i=n(24),o=r(n(162)),a=function(){function t(t,e){this.frameBufferBound=!1,this.gl=t,this.version=e,this.getExtensions(),this.vertexbuffer=this.createVertexbuffer(),this.framebuffer=this.createFramebuffer(),this.queryVitalParameters()}return t.prototype.allocateTexture=function(t,e,n,r){var i=this.gl,o=i.createTexture();i.bindTexture(i.TEXTURE_2D,o),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_MIN_FILTER,i.NEAREST),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_MAG_FILTER,i.NEAREST),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_WRAP_S,i.CLAMP_TO_EDGE),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_WRAP_T,i.CLAMP_TO_EDGE);var a=r?n.encode(r,t*e):null;return i.texImage2D(i.TEXTURE_2D,0,n.internalFormat,t,e,0,n.format,n.textureType,a),this.checkError(),o},t.prototype.updateTexture=function(t,e,n,r,i){var o=this.gl;o.bindTexture(o.TEXTURE_2D,t);var a=r.encode(i,e*n);o.texSubImage2D(o.TEXTURE_2D,0,0,0,e,n,r.format,r.textureType,a),this.checkError()},t.prototype.attachFramebuffer=function(t,e,n){var r=this.gl;r.bindTexture(r.TEXTURE_2D,t),r.bindFramebuffer(r.FRAMEBUFFER,this.framebuffer),r.framebufferTexture2D(r.FRAMEBUFFER,r.COLOR_ATTACHMENT0,r.TEXTURE_2D,t,0),this.checkError(),r.viewport(0,0,e,n),r.scissor(0,0,e,n)},t.prototype.readTexture=function(t,e,n,r,i,o){var a=this.gl;o||(o=1),this.frameBufferBound||this.attachFramebuffer(t,e,n);var s=this.getEncoder(i,o),u=s.allocate(e*n);return a.bindTexture(a.TEXTURE_2D,t),a.framebufferTexture2D(a.FRAMEBUFFER,a.COLOR_ATTACHMENT0,a.TEXTURE_2D,t,0),a.readPixels(0,0,e,n,a.RGBA,s.textureType,u),this.checkError(),s.decode(u,r)},t.prototype.isFramebufferReady=function(){return!0},t.prototype.getActiveTexture=function(){var t=this.gl;return"TEXTURE"+(t.getParameter(this.gl.ACTIVE_TEXTURE)-t.TEXTURE0)},t.prototype.getTextureBinding=function(){return this.gl.getParameter(this.gl.TEXTURE_BINDING_2D)},t.prototype.getFramebufferBinding=function(){return this.gl.getParameter(this.gl.FRAMEBUFFER_BINDING)},t.prototype.setVertexAttributes=function(t,e){var n=this.gl;n.vertexAttribPointer(t,3,n.FLOAT,!1,20,0),n.enableVertexAttribArray(t),-1!==e&&(n.vertexAttribPointer(e,2,n.FLOAT,!1,20,12),n.enableVertexAttribArray(e)),this.checkError()},t.prototype.createProgram=function(t,e){var n=this.gl,r=n.createProgram();return n.attachShader(r,t),n.attachShader(r,e),n.linkProgram(r),r},t.prototype.compileShader=function(t,e){var n=this.gl,r=n.createShader(e);if(!r)throw new Error("createShader() returned null with type "+e);if(n.shaderSource(r,t),n.compileShader(r),!1===n.getShaderParameter(r,n.COMPILE_STATUS))throw new Error("Failed to compile shader: "+n.getShaderInfoLog(r));return r},t.prototype.deleteShader=function(t){this.gl.deleteShader(t)},t.prototype.bindTextureToUniform=function(t,e,n){var r=this.gl;r.activeTexture(r.TEXTURE0+e),this.checkError(),r.bindTexture(r.TEXTURE_2D,t),this.checkError(),r.uniform1i(n,e),this.checkError()},t.prototype.draw=function(){this.gl.drawArrays(this.gl.TRIANGLE_STRIP,0,4),this.checkError()},t.prototype.checkError=function(){if(i.env.debug){var t=this.gl,e=t.getError(),n="";switch(e){case t.NO_ERROR:return;case t.INVALID_ENUM:n="INVALID_ENUM";break;case t.INVALID_VALUE:n="INVALID_VALUE";break;case t.INVALID_OPERATION:n="INVALID_OPERATION";break;case t.INVALID_FRAMEBUFFER_OPERATION:n="INVALID_FRAMEBUFFER_OPERATION";break;case t.OUT_OF_MEMORY:n="OUT_OF_MEMORY";break;case t.CONTEXT_LOST_WEBGL:n="CONTEXT_LOST_WEBGL";break;default:n="Unknown WebGL Error: "+e.toString(16)}throw new Error(n)}},t.prototype.deleteTexture=function(t){this.gl.deleteTexture(t)},t.prototype.deleteProgram=function(t){this.gl.deleteProgram(t)},t.prototype.getEncoder=function(t,e,n){if(void 0===n&&(n=0),2===this.version)return new o.RedFloat32DataEncoder(this.gl,e);switch(t){case"float":return 1===n||this.isRenderFloat32Supported?new o.RGBAFloatDataEncoder(this.gl,e):new o.RGBAFloatDataEncoder(this.gl,e,this.textureHalfFloatExtension.HALF_FLOAT_OES);case"int":throw new Error("not implemented");case"byte":return new o.Uint8DataEncoder(this.gl,e);default:throw new Error("Invalid dataType: "+t)}},t.prototype.clearActiveTextures=function(){for(var t=this.gl,e=0;et.length?(r.Logger.warning("Encoder","Source data too small. Allocating larger array"),i=t,n=this.allocate(e*this.channelSize),i.forEach(function(t,e){return n[e]=t})):n=i=t,n},t.prototype.allocate=function(t){return new Float32Array(4*t)},t.prototype.decode=function(t,e){return 1===this.channelSize?t.filter(function(t,e){return e%4==0}).subarray(0,e):t.subarray(0,e)},t}();e.RedFloat32DataEncoder=i;var o=function(){function t(t,e,n){if(void 0===e&&(e=1),1!==e&&4!==e)throw new Error("Invalid number of channels: "+e);this.internalFormat=t.RGBA,this.format=t.RGBA,this.channelSize=e,this.textureType=n||t.FLOAT}return t.prototype.encode=function(t,e){var n=t;return 1===this.channelSize&&(r.Logger.verbose("Encoder","Exploding into a larger array"),n=this.allocate(e),t.forEach(function(t,e){return n[4*e]=t})),n},t.prototype.allocate=function(t){return new Float32Array(4*t)},t.prototype.decode=function(t,e){return 1===this.channelSize?t.filter(function(t,e){return e%4==0}).subarray(0,e):t.subarray(0,e)},t}();e.RGBAFloatDataEncoder=o;var a=function(){function t(t,e){if(void 0===e&&(e=1),this.channelSize=4,1===e)this.internalFormat=t.ALPHA,this.format=t.ALPHA,this.textureType=t.UNSIGNED_BYTE,this.channelSize=e;else{if(4!==e)throw new Error("Invalid number of channels: "+e);this.internalFormat=t.RGBA,this.format=t.RGBA,this.textureType=t.UNSIGNED_BYTE,this.channelSize=e}}return t.prototype.encode=function(t,e){return new Uint8Array(t.buffer,t.byteOffset,t.byteLength)},t.prototype.allocate=function(t){return new Uint8Array(t*this.channelSize)},t.prototype.decode=function(t,e){if(t.constructor===Uint8Array)return t.subarray(0,e);throw new Error("Invalid array type: "+t.constructor)},t}();e.Uint8DataEncoder=a},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=n(24),i=function(){function t(){}return Object.defineProperty(t.prototype,"debug",{get:function(){return r.env.debug},set:function(t){r.env.debug=t},enumerable:!0,configurable:!0}),t}();e.envImpl=new i},function(t,e,n){"use strict";var r=this&&this.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)Object.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e.default=t,e};Object.defineProperty(e,"__esModule",{value:!0});var i=r(n(47));e.Tensor=i.Tensor},function(t,e,n){"use strict";var r=this&&this.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)Object.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e.default=t,e};Object.defineProperty(e,"__esModule",{value:!0});var i=r(n(166));e.InferenceSession=i.InferenceSession},function(t,e,n){"use strict";var r=this&&this.__awaiter||function(t,e,n,r){return new(n||(n=Promise))(function(i,o){function a(t){try{u(r.next(t))}catch(t){o(t)}}function s(t){try{u(r.throw(t))}catch(t){o(t)}}function u(t){t.done?i(t.value):new n(function(e){e(t.value)}).then(a,s)}u((r=r.apply(t,e||[])).next())})},i=this&&this.__generator||function(t,e){var n,r,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(i=2&o[0]?r.return:o[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,o[1])).done)return i;switch(r=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,r=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!(i=(i=a.trys).length>0&&i[i.length-1])&&(6===o[0]||2===o[0])){a=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]0&&i[i.length-1])&&(6===o[0]||2===o[0])){a=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]=o)return t;switch(t){case"%s":return String(r[n++]);case"%d":return Number(r[n++]);case"%j":try{return JSON.stringify(r[n++])}catch(t){return"[Circular]"}default:return t}}),u=r[n];n=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),d(n)?r.showHidden=n:n&&e._extend(r,n),y(r.showHidden)&&(r.showHidden=!1),y(r.depth)&&(r.depth=2),y(r.colors)&&(r.colors=!1),y(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=u),l(r,t,r.depth)}function u(t,e){var n=s.styles[e];return n?"\x1b["+s.colors[n][0]+"m"+t+"\x1b["+s.colors[n][1]+"m":t}function c(t,e){return t}function l(t,n,r){if(t.customInspect&&n&&S(n.inspect)&&n.inspect!==e.inspect&&(!n.constructor||n.constructor.prototype!==n)){var i=n.inspect(r,t);return v(i)||(i=l(t,i,r)),i}var o=function(t,e){if(y(e))return t.stylize("undefined","undefined");if(v(e)){var n="'"+JSON.stringify(e).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return t.stylize(n,"string")}return g(e)?t.stylize(""+e,"number"):d(e)?t.stylize(""+e,"boolean"):m(e)?t.stylize("null","null"):void 0}(t,n);if(o)return o;var a=Object.keys(n),s=function(t){var e={};return a.forEach(function(t,n){e[t]=!0}),e}();if(t.showHidden&&(a=Object.getOwnPropertyNames(n)),_(n)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return f(n);if(0===a.length){if(S(n)){var u=n.name?": "+n.name:"";return t.stylize("[Function"+u+"]","special")}if(b(n))return t.stylize(RegExp.prototype.toString.call(n),"regexp");if(x(n))return t.stylize(Date.prototype.toString.call(n),"date");if(_(n))return f(n)}var c,w="",E=!1,T=["{","}"];return p(n)&&(E=!0,T=["[","]"]),S(n)&&(w=" [Function"+(n.name?": "+n.name:"")+"]"),b(n)&&(w=" "+RegExp.prototype.toString.call(n)),x(n)&&(w=" "+Date.prototype.toUTCString.call(n)),_(n)&&(w=" "+f(n)),0!==a.length||E&&0!=n.length?r<0?b(n)?t.stylize(RegExp.prototype.toString.call(n),"regexp"):t.stylize("[Object]","special"):(t.seen.push(n),c=E?function(t,e,n,r,i){for(var o=[],a=0,s=e.length;a60?n[0]+(""===e?"":e+"\n ")+" "+t.join(",\n ")+" "+n[1]:n[0]+e+" "+t.join(", ")+" "+n[1]}(c,w,T)):T[0]+w+T[1]}function f(t){return"["+Error.prototype.toString.call(t)+"]"}function h(t,e,n,r,i,o){var a,s,u;if((u=Object.getOwnPropertyDescriptor(e,i)||{value:e[i]}).get?s=u.set?t.stylize("[Getter/Setter]","special"):t.stylize("[Getter]","special"):u.set&&(s=t.stylize("[Setter]","special")),A(r,i)||(a="["+i+"]"),s||(t.seen.indexOf(u.value)<0?(s=m(n)?l(t,u.value,null):l(t,u.value,n-1)).indexOf("\n")>-1&&(s=o?s.split("\n").map(function(t){return" "+t}).join("\n").substr(2):"\n"+s.split("\n").map(function(t){return" "+t}).join("\n")):s=t.stylize("[Circular]","special")),y(a)){if(o&&i.match(/^\d+$/))return s;(a=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(a=a.substr(1,a.length-2),a=t.stylize(a,"name")):(a=a.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),a=t.stylize(a,"string"))}return a+": "+s}function p(t){return Array.isArray(t)}function d(t){return"boolean"==typeof t}function m(t){return null===t}function g(t){return"number"==typeof t}function v(t){return"string"==typeof t}function y(t){return void 0===t}function b(t){return w(t)&&"[object RegExp]"===E(t)}function w(t){return"object"==typeof t&&null!==t}function x(t){return w(t)&&"[object Date]"===E(t)}function _(t){return w(t)&&("[object Error]"===E(t)||t instanceof Error)}function S(t){return"function"==typeof t}function E(t){return Object.prototype.toString.call(t)}function T(t){return t<10?"0"+t.toString(10):t.toString(10)}e.debuglog=function(n){if(y(o)&&(o=t.env.NODE_DEBUG||""),n=n.toUpperCase(),!a[n])if(new RegExp("\\b"+n+"\\b","i").test(o)){var r=t.pid;a[n]=function(){var t=e.format.apply(e,arguments);console.error("%s %d: %s",n,r,t)}}else a[n]=function(){};return a[n]},e.inspect=s,s.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},s.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},e.isArray=p,e.isBoolean=d,e.isNull=m,e.isNullOrUndefined=function(t){return null==t},e.isNumber=g,e.isString=v,e.isSymbol=function(t){return"symbol"==typeof t},e.isUndefined=y,e.isRegExp=b,e.isObject=w,e.isDate=x,e.isError=_,e.isFunction=S,e.isPrimitive=function(t){return null===t||"boolean"==typeof t||"number"==typeof t||"string"==typeof t||"symbol"==typeof t||void 0===t},e.isBuffer=n(169);var M=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function A(t,e){return Object.prototype.hasOwnProperty.call(t,e)}e.log=function(){var t,n;console.log("%s - %s",(n=[T((t=new Date).getHours()),T(t.getMinutes()),T(t.getSeconds())].join(":"),[t.getDate(),M[t.getMonth()],n].join(" ")),e.format.apply(e,arguments))},e.inherits=n(170),e._extend=function(t,e){if(!e||!w(e))return t;for(var n=Object.keys(e),r=n.length;r--;)t[n[r]]=e[n[r]];return t};var C="undefined"!=typeof Symbol?Symbol("util.promisify.custom"):void 0;function P(t,e){if(!t){var n=new Error("Promise was rejected with a falsy value");n.reason=t,t=n}return e(t)}e.promisify=function(t){if("function"!=typeof t)throw new TypeError('The "original" argument must be of type Function');if(C&&t[C]){var e;if("function"!=typeof(e=t[C]))throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(e,C,{value:e,enumerable:!1,writable:!1,configurable:!0}),e}function e(){for(var e,n,r=new Promise(function(t,r){e=t,n=r}),i=[],o=0;o0&&i[i.length-1])&&(6===o[0]||2===o[0])){a=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}}};Object.defineProperty(e,"__esModule",{value:!0});var a=new Map;function s(t){return r(this,void 0,void 0,function(){var e,n,r;return i(this,function(i){switch(i.label){case 0:return void 0!==(e=onnx.backend)[t]&&function(t){var e=t;return"initialize"in e&&"function"==typeof e.initialize&&"createSessionHandler"in e&&"function"==typeof e.createSessionHandler&&"dispose"in e&&"function"==typeof e.dispose}(e[t])?e[t].disabled?[3,3]:(n=e[t],"object"==typeof(r=n.initialize())&&"then"in r?[4,r]:[3,2]):[3,3];case 1:r=i.sent(),i.label=2;case 2:if(r)return a.set(t,n),[2,n];i.label=3;case 3:return[2,void 0]}})})}e.Backend=function t(e){return r(this,void 0,void 0,function(){var n,r,u,c,l,f,h,p,d;return i(this,function(i){switch(i.label){case 0:return e?[3,1]:[2,t(["webgl","wasm","cpu"])];case 1:n="string"==typeof e?[e]:e,i.label=2;case 2:i.trys.push([2,7,8,9]),r=o(n),u=r.next(),i.label=3;case 3:return u.done?[3,6]:(c=u.value,(l=a.get(c))?[2,l]:[4,s(c)]);case 4:if(f=i.sent())return[2,f];i.label=5;case 5:return u=r.next(),[3,3];case 6:return[3,9];case 7:return h=i.sent(),p={error:h},[3,9];case 8:try{u&&!u.done&&(d=r.return)&&d.call(r)}finally{if(p)throw p.error}return[7];case 9:throw new Error("no available backend to use")}})})}},function(t,e,n){"use strict";var r=this&&this.__awaiter||function(t,e,n,r){return new(n||(n=Promise))(function(i,o){function a(t){try{u(r.next(t))}catch(t){o(t)}}function s(t){try{u(r.throw(t))}catch(t){o(t)}}function u(t){t.done?i(t.value):new n(function(e){e(t.value)}).then(a,s)}u((r=r.apply(t,e||[])).next())})},i=this&&this.__generator||function(t,e){var n,r,i,o,a={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return o={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function s(o){return function(s){return function(o){if(n)throw new TypeError("Generator is already executing.");for(;a;)try{if(n=1,r&&(i=2&o[0]?r.return:o[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,o[1])).done)return i;switch(r=0,i&&(o=[2&o[0],i.value]),o[0]){case 0:case 1:i=o;break;case 4:return a.label++,{value:o[1],done:!1};case 5:a.label++,r=o[1],o=[0];continue;case 7:o=a.ops.pop(),a.trys.pop();continue;default:if(!(i=(i=a.trys).length>0&&i[i.length-1])&&(6===o[0]||2===o[0])){a=0;continue}if(3===o[0]&&(!i||o[1]>i[0]&&o[1]=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}}},a=this&&this.__read||function(t,e){var n="function"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var r,i,o=n.call(t),a=[];try{for(;(void 0===e||e-- >0)&&!(r=o.next()).done;)a.push(r.value)}catch(t){i={error:t}}finally{try{r&&!r.done&&(n=o.return)&&n.call(o)}finally{if(i)throw i.error}}return a},s=this&&this.__spread||function(){for(var t=[],e=0;e=3");this._opsets=n.opsetImport.map(function(t){return{domain:t.domain,version:o.LongUtil.longToNumber(t.version)}}),this._graph=i.Graph.from(n.graph,e)},Object.defineProperty(t.prototype,"graph",{get:function(){return this._graph},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"opsets",{get:function(){return this._opsets},enumerable:!0,configurable:!0}),t}();e.Model=a},function(t,e,n){"use strict";var r=this&&this.__values||function(t){var e="function"==typeof Symbol&&t[Symbol.iterator],n=0;return e?e.call(t):{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}}};Object.defineProperty(e,"__esModule",{value:!0});var i=n(175),o=n(1),a=n(0);e.Graph={from:function(t,e){return new c(t,e)}};var s=function(){function t(t){this._from=void 0,this._to=[],this.tensor=void 0,this.type=void 0,t&&(this.type=a.ProtoUtil.tensorValueTypeFromProto(t.type.tensorType))}return Object.defineProperty(t.prototype,"from",{get:function(){return this._from},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"to",{get:function(){return this._to},enumerable:!0,configurable:!0}),t}(),u=function(t){this.name=t.name,this.opType=t.opType,this.inputs=[],this.outputs=[],this.attributes=new i.Attribute(t.attribute),this.executeNode=!0},c=function(){function t(t,e){if(!t)throw new TypeError("graph is empty");this.buildGraph(t),this.transformGraph(e),this.checkIsAcyclic()}return t.prototype.getInputIndices=function(){return this._allInputIndices},t.prototype.getInputNames=function(){return this._allInputNames},t.prototype.getOutputIndices=function(){return this._allOutputIndices},t.prototype.getOutputNames=function(){return this._allOutputNames},t.prototype.getValues=function(){return this._allData},t.prototype.getNodes=function(){return this._nodes},t.prototype.buildGraph=function(t){var e,n,i,c,l,f,h,p,d,m,g,v,y=new Map;this._allData=[],this._allInputIndices=[],this._allInputNames=[],this._allOutputIndices=[],this._allOutputNames=[],this._nodes=[];var b=new Map;if(!t.input)throw new Error("missing information in graph: input");var w=[];try{for(var x=r(t.input),_=x.next();!_.done;_=x.next()){var S=_.value;if(y.has(S.name))throw new Error("duplicated input name: "+S.name);var E=this._allData.push(new s(S))-1;y.set(S.name,E),w.push(S.name)}}catch(t){e={error:t}}finally{try{_&&!_.done&&(n=x.return)&&n.call(x)}finally{if(e)throw e.error}}if(!t.initializer)throw new Error("missing information in graph: initializer");try{for(var T=r(t.initializer),M=T.next();!M.done;M=T.next()){S=M.value;var A=y.get(S.name);if(void 0===A){var C=new s;C.type={shape:{dims:a.ProtoUtil.tensorDimsFromProto(S.dims)},tensorType:a.ProtoUtil.tensorDataTypeFromProto(S.dataType)},A=this._allData.push(C)-1,y.set(S.name,A)}this._allData[A]._from=-1,this._allData[A].tensor=o.Tensor.fromProto(S)}}catch(t){i={error:t}}finally{try{M&&!M.done&&(c=T.return)&&c.call(T)}finally{if(i)throw i.error}}for(S=0;S0;)i()},t.prototype.transformGraph=function(t){this.removeAllIdentityNodes(),this.removeAllDropoutNodes(),t&&t.transformGraph(this),this.finalizeGraph()},t.prototype.finalizeGraph=function(){for(var t,e=this,n=0,r=function(r){if(!i._nodes[r].executeNode)return n++,i._nodes[r].outputs.forEach(function(t){e._allData[t]._from=-2}),i._nodes.splice(r,1),t=--r,"continue";n>0&&(i._nodes[r].inputs.forEach(function(t){var i=e._allData[t]._to.indexOf(r+n);-1!==i&&(e._allData[t]._to[i]=r)}),i._nodes[r].outputs.forEach(function(t){e._allData[t]._from&&e._allData[t]._from===r+n&&(e._allData[t]._from=r)})),t=r},i=this,o=0;o0){var r=-1;void 0!==u._allData[t].from&&-1!==u._allData[t].from?-1!==(r=u._nodes[u._allData[t].from].outputs.indexOf(t+n))&&(u._nodes[u._allData[t].from].outputs[r]=t):-1!==(r=u._allInputIndices.indexOf(t+n))&&(u._allInputIndices[r]=t),u._allData[t].to.forEach(function(i){-1!==(r=e._nodes[i].inputs.indexOf(t+n))&&(e._nodes[i].inputs[r]=t)}),0===u._allData[t].to.length&&-1!==(r=u._allOutputIndices.indexOf(t+n))&&(u._allOutputIndices[r]=t)}a=t},u=this;for(o=0;o1)throw new Error("Node deletion with multiple inputs is not supported. ");if(i.outputs.length>1)for(var o=1;o0)throw new Error("Node deletion with more than one output connected to other nodes is not supported. ");i.executeNode=!1;var a=i.inputs[0],s=i.outputs[0],u=this._allData[s].to,c=this._allData[a].to.indexOf(t);if(-1===c)throw new Error("The Value object doesn't have the current Node in it's 'to' property ");this._allData[a].to.splice(c,1),this._allData[s]._to=[];var l=this._allOutputIndices.indexOf(s);if(-1!==l&&(this._allOutputIndices[l]=a),u&&u.length>0)try{for(var f=r(u),h=f.next();!h.done;h=f.next()){var p=h.value,d=this._nodes[p].inputs.indexOf(s);if(-1===d)throw new Error("The Node object doesn't have the output Value in it's 'inputs' property ");this._nodes[p].inputs[d]=a,this._allData[a].to.push(p)}}catch(t){e={error:t}}finally{try{h&&!h.done&&(n=f.return)&&n.call(f)}finally{if(e)throw e.error}}},t.prototype.removeAllDropoutNodes=function(){var t,e,n=0;try{for(var i=r(this._nodes),o=i.next();!o.done;o=i.next()){var a=o.value;if("Dropout"===a.opType){if(1!==a.inputs.length)throw new Error("Dropout nodes should only contain one input. ");if(1!==a.outputs.length&&2!==a.outputs.length)throw new Error("Dropout nodes should contain either 1 or 2 output(s)");if(2===a.outputs.length&&0!==this._allData[a.outputs[1]]._to.length)throw new Error("Dropout nodes's second output should not be referenced by other nodes");this.deleteNode(n)}n++}}catch(e){t={error:e}}finally{try{o&&!o.done&&(e=i.return)&&e.call(i)}finally{if(t)throw t.error}}},t.prototype.removeAllIdentityNodes=function(){var t,e,n=0;try{for(var i=r(this._nodes),o=i.next();!o.done;o=i.next())"Identity"===o.value.opType&&this.deleteNode(n),n++}catch(e){t={error:e}}finally{try{o&&!o.done&&(e=i.return)&&e.call(i)}finally{if(t)throw t.error}}},t}()},function(t,e,n){"use strict";(function(t){var r=this&&this.__values||function(t){var e="function"==typeof Symbol&&t[Symbol.iterator],n=0;return e?e.call(t):{next:function(){return t&&n>=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}}},i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});var o=i(n(13)),a=n(9),s=n(1),u=n(0),c=function(){function e(t){var n,i;if(this._attributes=new Map,null!=t){try{for(var o=r(t),a=o.next();!a.done;a=o.next()){var s=a.value;this._attributes.set(s.name,[e.getValue(s),e.getType(s)])}}catch(t){n={error:t}}finally{try{a&&!a.done&&(i=o.return)&&i.call(o)}finally{if(n)throw n.error}}if(this._attributes.size=0&&(t._idleTimeoutId=setTimeout(function(){t._onTimeout&&t._onTimeout()},e))},n(125),e.setImmediate="undefined"!==typeof self&&self.setImmediate||"undefined"!==typeof t&&t.setImmediate||this&&this.setImmediate,e.clearImmediate="undefined"!==typeof self&&self.clearImmediate||"undefined"!==typeof t&&t.clearImmediate||this&&this.clearImmediate}).call(this,n(9))},function(t,e){var n={}.toString;t.exports=Array.isArray||function(t){return"[object Array]"==n.call(t)}},function(t,e,n){"use strict";var r=n(3).Buffer,i=n(46).Transform;function o(t){i.call(this),this._block=r.allocUnsafe(t),this._blockSize=t,this._blockOffset=0,this._length=[0,0,0,0],this._finalized=!1}n(2)(o,i),o.prototype._transform=function(t,e,n){var r=null;try{this.update(t,e)}catch(i){r=i}n(r)},o.prototype._flush=function(t){var e=null;try{this.push(this.digest())}catch(n){e=n}t(e)},o.prototype.update=function(t,e){if(function(t,e){if(!r.isBuffer(t)&&"string"!==typeof t)throw new TypeError(e+" must be a string or a buffer")}(t,"Data"),this._finalized)throw new Error("Digest already called");r.isBuffer(t)||(t=r.from(t,e));for(var n=this._block,i=0;this._blockOffset+t.length-i>=this._blockSize;){for(var o=this._blockOffset;o0;++a)this._length[a]+=s,(s=this._length[a]/4294967296|0)>0&&(this._length[a]-=4294967296*s);return this},o.prototype._update=function(){throw new Error("_update is not implemented")},o.prototype.digest=function(t){if(this._finalized)throw new Error("Digest already called");this._finalized=!0;var e=this._digest();void 0!==t&&(e=e.toString(t)),this._block.fill(0),this._blockOffset=0;for(var n=0;n<4;++n)this._length[n]=0;return e},o.prototype._digest=function(){throw new Error("_digest is not implemented")},t.exports=o},function(t,e,n){"use strict";(function(e,r){var i=n(37);t.exports=b;var o,a=n(64);b.ReadableState=y;n(47).EventEmitter;var s=function(t,e){return t.listeners(e).length},u=n(67),c=n(3).Buffer,l=e.Uint8Array||function(){};var f=n(28);f.inherits=n(2);var h=n(129),p=void 0;p=h&&h.debuglog?h.debuglog("stream"):function(){};var d,m=n(130),g=n(68);f.inherits(b,u);var v=["error","close","destroy","pause","resume"];function y(t,e){t=t||{};var r=e instanceof(o=o||n(20));this.objectMode=!!t.objectMode,r&&(this.objectMode=this.objectMode||!!t.readableObjectMode);var i=t.highWaterMark,a=t.readableHighWaterMark,s=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(a||0===a)?a:s,this.highWaterMark=Math.floor(this.highWaterMark),this.buffer=new m,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.destroyed=!1,this.defaultEncoding=t.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,t.encoding&&(d||(d=n(50).StringDecoder),this.decoder=new d(t.encoding),this.encoding=t.encoding)}function b(t){if(o=o||n(20),!(this instanceof b))return new b(t);this._readableState=new y(t,this),this.readable=!0,t&&("function"===typeof t.read&&(this._read=t.read),"function"===typeof t.destroy&&(this._destroy=t.destroy)),u.call(this)}function w(t,e,n,r,i){var o,a=t._readableState;null===e?(a.reading=!1,function(t,e){if(e.ended)return;if(e.decoder){var n=e.decoder.end();n&&n.length&&(e.buffer.push(n),e.length+=e.objectMode?1:n.length)}e.ended=!0,E(t)}(t,a)):(i||(o=function(t,e){var n;r=e,c.isBuffer(r)||r instanceof l||"string"===typeof e||void 0===e||t.objectMode||(n=new TypeError("Invalid non-string/buffer chunk"));var r;return n}(a,e)),o?t.emit("error",o):a.objectMode||e&&e.length>0?("string"===typeof e||a.objectMode||Object.getPrototypeOf(e)===c.prototype||(e=function(t){return c.from(t)}(e)),r?a.endEmitted?t.emit("error",new Error("stream.unshift() after end event")):x(t,a,e,!0):a.ended?t.emit("error",new Error("stream.push() after EOF")):(a.reading=!1,a.decoder&&!n?(e=a.decoder.write(e),a.objectMode||0!==e.length?x(t,a,e,!1):M(t,a)):x(t,a,e,!1))):r||(a.reading=!1));return function(t){return!t.ended&&(t.needReadable||t.lengthe.highWaterMark&&(e.highWaterMark=function(t){return t>=_?t=_:(t--,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,t|=t>>>16,t++),t}(t)),t<=e.length?t:e.ended?e.length:(e.needReadable=!0,0))}function E(t){var e=t._readableState;e.needReadable=!1,e.emittedReadable||(p("emitReadable",e.flowing),e.emittedReadable=!0,e.sync?i.nextTick(T,t):T(t))}function T(t){p("emit readable"),t.emit("readable"),I(t)}function M(t,e){e.readingMore||(e.readingMore=!0,i.nextTick(A,t,e))}function A(t,e){for(var n=e.length;!e.reading&&!e.flowing&&!e.ended&&e.length=e.length?(n=e.decoder?e.buffer.join(""):1===e.buffer.length?e.buffer.head.data:e.buffer.concat(e.length),e.buffer.clear()):n=function(t,e,n){var r;to.length?o.length:t;if(a===o.length?i+=o:i+=o.slice(0,t),0===(t-=a)){a===o.length?(++r,n.next?e.head=n.next:e.head=e.tail=null):(e.head=n,n.data=o.slice(a));break}++r}return e.length-=r,i}(t,e):function(t,e){var n=c.allocUnsafe(t),r=e.head,i=1;r.data.copy(n),t-=r.data.length;for(;r=r.next;){var o=r.data,a=t>o.length?o.length:t;if(o.copy(n,n.length-t,0,a),0===(t-=a)){a===o.length?(++i,r.next?e.head=r.next:e.head=e.tail=null):(e.head=r,r.data=o.slice(a));break}++i}return e.length-=i,n}(t,e);return r}(t,e.buffer,e.decoder),n);var n}function R(t){var e=t._readableState;if(e.length>0)throw new Error('"endReadable()" called on non-empty stream');e.endEmitted||(e.ended=!0,i.nextTick(k,e,t))}function k(t,e){t.endEmitted||0!==t.length||(t.endEmitted=!0,e.readable=!1,e.emit("end"))}function L(t,e){for(var n=0,r=t.length;n=e.highWaterMark||e.ended))return p("read: emitReadable",e.length,e.ended),0===e.length&&e.ended?R(this):E(this),null;if(0===(t=S(t,e))&&e.ended)return 0===e.length&&R(this),null;var r,i=e.needReadable;return p("need readable",i),(0===e.length||e.length-t0?O(t,e):null)?(e.needReadable=!0,t=0):e.length-=t,0===e.length&&(e.ended||(e.needReadable=!0),n!==t&&e.ended&&R(this)),null!==r&&this.emit("data",r),r},b.prototype._read=function(t){this.emit("error",new Error("_read() is not implemented"))},b.prototype.pipe=function(t,e){var n=this,o=this._readableState;switch(o.pipesCount){case 0:o.pipes=t;break;case 1:o.pipes=[o.pipes,t];break;default:o.pipes.push(t)}o.pipesCount+=1,p("pipe count=%d opts=%j",o.pipesCount,e);var u=(!e||!1!==e.end)&&t!==r.stdout&&t!==r.stderr?l:b;function c(e,r){p("onunpipe"),e===n&&r&&!1===r.hasUnpiped&&(r.hasUnpiped=!0,p("cleanup"),t.removeListener("close",v),t.removeListener("finish",y),t.removeListener("drain",f),t.removeListener("error",g),t.removeListener("unpipe",c),n.removeListener("end",l),n.removeListener("end",b),n.removeListener("data",m),h=!0,!o.awaitDrain||t._writableState&&!t._writableState.needDrain||f())}function l(){p("onend"),t.end()}o.endEmitted?i.nextTick(u):n.once("end",u),t.on("unpipe",c);var f=function(t){return function(){var e=t._readableState;p("pipeOnDrain",e.awaitDrain),e.awaitDrain&&e.awaitDrain--,0===e.awaitDrain&&s(t,"data")&&(e.flowing=!0,I(t))}}(n);t.on("drain",f);var h=!1;var d=!1;function m(e){p("ondata"),d=!1,!1!==t.write(e)||d||((1===o.pipesCount&&o.pipes===t||o.pipesCount>1&&-1!==L(o.pipes,t))&&!h&&(p("false write response, pause",n._readableState.awaitDrain),n._readableState.awaitDrain++,d=!0),n.pause())}function g(e){p("onerror",e),b(),t.removeListener("error",g),0===s(t,"error")&&t.emit("error",e)}function v(){t.removeListener("finish",y),b()}function y(){p("onfinish"),t.removeListener("close",v),b()}function b(){p("unpipe"),n.unpipe(t)}return n.on("data",m),function(t,e,n){if("function"===typeof t.prependListener)return t.prependListener(e,n);t._events&&t._events[e]?a(t._events[e])?t._events[e].unshift(n):t._events[e]=[n,t._events[e]]:t.on(e,n)}(t,"error",g),t.once("close",v),t.once("finish",y),t.emit("pipe",n),o.flowing||(p("pipe resume"),n.resume()),t},b.prototype.unpipe=function(t){var e=this._readableState,n={hasUnpiped:!1};if(0===e.pipesCount)return this;if(1===e.pipesCount)return t&&t!==e.pipes?this:(t||(t=e.pipes),e.pipes=null,e.pipesCount=0,e.flowing=!1,t&&t.emit("unpipe",this,n),this);if(!t){var r=e.pipes,i=e.pipesCount;e.pipes=null,e.pipesCount=0,e.flowing=!1;for(var o=0;o>>2|t<<30)^(t>>>13|t<<19)^(t>>>22|t<<10)}function h(t){return(t>>>6|t<<26)^(t>>>11|t<<21)^(t>>>25|t<<7)}function p(t){return(t>>>7|t<<25)^(t>>>18|t<<14)^t>>>3}r(u,i),u.prototype.init=function(){return this._a=1779033703,this._b=3144134277,this._c=1013904242,this._d=2773480762,this._e=1359893119,this._f=2600822924,this._g=528734635,this._h=1541459225,this},u.prototype._update=function(t){for(var e,n=this._w,r=0|this._a,i=0|this._b,o=0|this._c,s=0|this._d,u=0|this._e,d=0|this._f,m=0|this._g,g=0|this._h,v=0;v<16;++v)n[v]=t.readInt32BE(4*v);for(;v<64;++v)n[v]=0|(((e=n[v-2])>>>17|e<<15)^(e>>>19|e<<13)^e>>>10)+n[v-7]+p(n[v-15])+n[v-16];for(var y=0;y<64;++y){var b=g+h(u)+c(u,d,m)+a[y]+n[y]|0,w=f(r)+l(r,i,o)|0;g=m,m=d,d=u,u=s+b|0,s=o,o=i,i=r,r=b+w|0}this._a=r+this._a|0,this._b=i+this._b|0,this._c=o+this._c|0,this._d=s+this._d|0,this._e=u+this._e|0,this._f=d+this._f|0,this._g=m+this._g|0,this._h=g+this._h|0},u.prototype._hash=function(){var t=o.allocUnsafe(32);return t.writeInt32BE(this._a,0),t.writeInt32BE(this._b,4),t.writeInt32BE(this._c,8),t.writeInt32BE(this._d,12),t.writeInt32BE(this._e,16),t.writeInt32BE(this._f,20),t.writeInt32BE(this._g,24),t.writeInt32BE(this._h,28),t},t.exports=u},function(t,e,n){var r=n(2),i=n(23),o=n(3).Buffer,a=[1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591],s=new Array(160);function u(){this.init(),this._w=s,i.call(this,128,112)}function c(t,e,n){return n^t&(e^n)}function l(t,e,n){return t&e|n&(t|e)}function f(t,e){return(t>>>28|e<<4)^(e>>>2|t<<30)^(e>>>7|t<<25)}function h(t,e){return(t>>>14|e<<18)^(t>>>18|e<<14)^(e>>>9|t<<23)}function p(t,e){return(t>>>1|e<<31)^(t>>>8|e<<24)^t>>>7}function d(t,e){return(t>>>1|e<<31)^(t>>>8|e<<24)^(t>>>7|e<<25)}function m(t,e){return(t>>>19|e<<13)^(e>>>29|t<<3)^t>>>6}function g(t,e){return(t>>>19|e<<13)^(e>>>29|t<<3)^(t>>>6|e<<26)}function v(t,e){return t>>>0>>0?1:0}r(u,i),u.prototype.init=function(){return this._ah=1779033703,this._bh=3144134277,this._ch=1013904242,this._dh=2773480762,this._eh=1359893119,this._fh=2600822924,this._gh=528734635,this._hh=1541459225,this._al=4089235720,this._bl=2227873595,this._cl=4271175723,this._dl=1595750129,this._el=2917565137,this._fl=725511199,this._gl=4215389547,this._hl=327033209,this},u.prototype._update=function(t){for(var e=this._w,n=0|this._ah,r=0|this._bh,i=0|this._ch,o=0|this._dh,s=0|this._eh,u=0|this._fh,y=0|this._gh,b=0|this._hh,w=0|this._al,x=0|this._bl,_=0|this._cl,S=0|this._dl,E=0|this._el,T=0|this._fl,M=0|this._gl,A=0|this._hl,C=0;C<32;C+=2)e[C]=t.readInt32BE(4*C),e[C+1]=t.readInt32BE(4*C+4);for(;C<160;C+=2){var P=e[C-30],I=e[C-30+1],O=p(P,I),R=d(I,P),k=m(P=e[C-4],I=e[C-4+1]),L=g(I,P),D=e[C-14],N=e[C-14+1],B=e[C-32],F=e[C-32+1],U=R+N|0,j=O+D+v(U,R)|0;j=(j=j+k+v(U=U+L|0,L)|0)+B+v(U=U+F|0,F)|0,e[C]=j,e[C+1]=U}for(var z=0;z<160;z+=2){j=e[z],U=e[z+1];var G=l(n,r,i),V=l(w,x,_),W=f(n,w),H=f(w,n),q=h(s,E),X=h(E,s),Y=a[z],K=a[z+1],$=c(s,u,y),J=c(E,T,M),Z=A+X|0,Q=b+q+v(Z,A)|0;Q=(Q=(Q=Q+$+v(Z=Z+J|0,J)|0)+Y+v(Z=Z+K|0,K)|0)+j+v(Z=Z+U|0,U)|0;var tt=H+V|0,et=W+G+v(tt,H)|0;b=y,A=M,y=u,M=T,u=s,T=E,s=o+Q+v(E=S+Z|0,S)|0,o=i,S=_,i=r,_=x,r=n,x=w,n=Q+et+v(w=Z+tt|0,Z)|0}this._al=this._al+w|0,this._bl=this._bl+x|0,this._cl=this._cl+_|0,this._dl=this._dl+S|0,this._el=this._el+E|0,this._fl=this._fl+T|0,this._gl=this._gl+M|0,this._hl=this._hl+A|0,this._ah=this._ah+n+v(this._al,w)|0,this._bh=this._bh+r+v(this._bl,x)|0,this._ch=this._ch+i+v(this._cl,_)|0,this._dh=this._dh+o+v(this._dl,S)|0,this._eh=this._eh+s+v(this._el,E)|0,this._fh=this._fh+u+v(this._fl,T)|0,this._gh=this._gh+y+v(this._gl,M)|0,this._hh=this._hh+b+v(this._hl,A)|0},u.prototype._hash=function(){var t=o.allocUnsafe(64);function e(e,n,r){t.writeInt32BE(e,r),t.writeInt32BE(n,r+4)}return e(this._ah,this._al,0),e(this._bh,this._bl,8),e(this._ch,this._cl,16),e(this._dh,this._dl,24),e(this._eh,this._el,32),e(this._fh,this._fl,40),e(this._gh,this._gl,48),e(this._hh,this._hl,56),t},t.exports=u},function(t,e,n){"use strict";var r=n(2),i=n(142),o=n(17),a=n(3).Buffer,s=n(73),u=n(51),c=n(52),l=a.alloc(128);function f(t,e){o.call(this,"digest"),"string"===typeof e&&(e=a.from(e));var n="sha512"===t||"sha384"===t?128:64;(this._alg=t,this._key=e,e.length>n)?e=("rmd160"===t?new u:c(t)).update(e).digest():e.lengthn||o!==o)throw new TypeError("Bad key length")}}).call(this,n(7).Buffer)},function(t,e,n){(function(e){var n;e.browser?n="utf-8":n=parseInt(e.version.split(".")[0].slice(1),10)>=6?"utf-8":"binary";t.exports=n}).call(this,n(12))},function(t,e,n){var r=n(73),i=n(51),o=n(52),a=n(76),s=n(77),u=n(3).Buffer,c=u.alloc(128),l={md5:16,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64,rmd160:20,ripemd160:20};function f(t,e,n){var a=function(t){return"rmd160"===t||"ripemd160"===t?function(t){return(new i).update(t).digest()}:"md5"===t?r:function(e){return o(t).update(e).digest()}}(t),s="sha512"===t||"sha384"===t?128:64;e.length>s?e=a(e):e.lengtht;)n.ishrn(1);if(n.isEven()&&n.iadd(s),n.testn(1)||n.iadd(u),e.cmp(u)){if(!e.cmp(c))for(;n.mod(l).cmp(f);)n.iadd(p)}else for(;n.mod(o).cmp(h);)n.iadd(p);if(g(d=n.shrn(1))&&g(n)&&v(d)&&v(n)&&a.test(d)&&a.test(n))return n}}},function(t,e){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),t.webpackPolyfill=1),t}},function(t,e,n){var r=n(6),i=n(87);function o(t){this.rand=t||new i.Rand}t.exports=o,o.create=function(t){return new o(t)},o.prototype._randbelow=function(t){var e=t.bitLength(),n=Math.ceil(e/8);do{var i=new r(this.rand.generate(n))}while(i.cmp(t)>=0);return i},o.prototype._randrange=function(t,e){var n=e.sub(t);return t.add(this._randbelow(n))},o.prototype.test=function(t,e,n){var i=t.bitLength(),o=r.mont(t),a=new r(1).toRed(o);e||(e=Math.max(1,i/48|0));for(var s=t.subn(1),u=0;!s.testn(u);u++);for(var c=t.shrn(u),l=s.toRed(o);e>0;e--){var f=this._randrange(new r(2),s);n&&n(f);var h=f.toRed(o).redPow(c);if(0!==h.cmp(a)&&0!==h.cmp(l)){for(var p=1;p0;e--){var l=this._randrange(new r(2),a),f=t.gcd(l);if(0!==f.cmpn(1))return f;var h=l.toRed(i).redPow(u);if(0!==h.cmp(o)&&0!==h.cmp(c)){for(var p=1;p>8,a=255&i;o?n.push(o,a):n.push(a)}return n},r.zero2=i,r.toHex=o,r.encode=function(t,e){return"hex"===e?o(t):t}},function(t,e,n){"use strict";var r=n(15).rotr32;function i(t,e,n){return t&e^~t&n}function o(t,e,n){return t&e^t&n^e&n}function a(t,e,n){return t^e^n}e.ft_1=function(t,e,n,r){return 0===t?i(e,n,r):1===t||3===t?a(e,n,r):2===t?o(e,n,r):void 0},e.ch32=i,e.maj32=o,e.p32=a,e.s0_256=function(t){return r(t,2)^r(t,13)^r(t,22)},e.s1_256=function(t){return r(t,6)^r(t,11)^r(t,25)},e.g0_256=function(t){return r(t,7)^r(t,18)^t>>>3},e.g1_256=function(t){return r(t,17)^r(t,19)^t>>>10}},function(t,e,n){"use strict";var r=n(15),i=n(30),o=n(89),a=n(11),s=r.sum32,u=r.sum32_4,c=r.sum32_5,l=o.ch32,f=o.maj32,h=o.s0_256,p=o.s1_256,d=o.g0_256,m=o.g1_256,g=i.BlockHash,v=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];function y(){if(!(this instanceof y))return new y;g.call(this),this.h=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.k=v,this.W=new Array(64)}r.inherits(y,g),t.exports=y,y.blockSize=512,y.outSize=256,y.hmacStrength=192,y.padLength=64,y.prototype._update=function(t,e){for(var n=this.W,r=0;r<16;r++)n[r]=t[e+r];for(;r>6],i=0===(32&n);if(31===(31&n)){var o=n;for(n=0;128===(128&o);){if(o=t.readUInt8(e),t.isError(o))return o;n<<=7,n|=127&o}}else n&=31;return{cls:r,primitive:i,tag:n,tagStr:s.tag[n]}}function f(t,e,n){var r=t.readUInt8(n);if(t.isError(r))return r;if(!e&&128===r)return null;if(0===(128&r))return r;var i=127&r;if(i>4)return t.error("length octect is too long");r=0;for(var o=0;o=31)return r.error("Multi-octet tag encoding unsupported");e||(i|=32);return i|=s.tagClassByName[n||"universal"]<<6}(t,e,n,this.reporter);if(r.length<128)return(o=new i(2))[0]=a,o[1]=r.length,this._createEncoderBuffer([o,r]);for(var u=1,c=r.length;c>=256;c>>=8)u++;(o=new i(2+u))[0]=a,o[1]=128|u;c=1+u;for(var l=r.length;l>0;c--,l>>=8)o[c]=255&l;return this._createEncoderBuffer([o,r])},c.prototype._encodeStr=function(t,e){if("bitstr"===e)return this._createEncoderBuffer([0|t.unused,t.data]);if("bmpstr"===e){for(var n=new i(2*t.length),r=0;r=40)return this.reporter.error("Second objid identifier OOB");t.splice(0,2,40*t[0]+t[1])}var o=0;for(r=0;r=128;a>>=7)o++}var s=new i(o),u=s.length-1;for(r=t.length-1;r>=0;r--){a=t[r];for(s[u--]=127&a;(a>>=7)>0;)s[u--]=128|127&a}return this._createEncoderBuffer(s)},c.prototype._encodeTime=function(t,e){var n,r=new Date(t);return"gentime"===e?n=[l(r.getFullYear()),l(r.getUTCMonth()+1),l(r.getUTCDate()),l(r.getUTCHours()),l(r.getUTCMinutes()),l(r.getUTCSeconds()),"Z"].join(""):"utctime"===e?n=[l(r.getFullYear()%100),l(r.getUTCMonth()+1),l(r.getUTCDate()),l(r.getUTCHours()),l(r.getUTCMinutes()),l(r.getUTCSeconds()),"Z"].join(""):this.reporter.error("Encoding "+e+" time is not supported yet"),this._encodeStr(n,"octstr")},c.prototype._encodeNull=function(){return this._createEncoderBuffer("")},c.prototype._encodeInt=function(t,e){if("string"===typeof t){if(!e)return this.reporter.error("String int or enum given, but no values map");if(!e.hasOwnProperty(t))return this.reporter.error("Values map doesn't contain: "+JSON.stringify(t));t=e[t]}if("number"!==typeof t&&!i.isBuffer(t)){var n=t.toArray();!t.sign&&128&n[0]&&n.unshift(0),t=new i(n)}if(i.isBuffer(t)){var r=t.length;0===t.length&&r++;var o=new i(r);return t.copy(o),0===t.length&&(o[0]=0),this._createEncoderBuffer(o)}if(t<128)return this._createEncoderBuffer(t);if(t<256)return this._createEncoderBuffer([0,t]);r=1;for(var a=t;a>=256;a>>=8)r++;for(a=(o=new Array(r)).length-1;a>=0;a--)o[a]=255&t,t>>=8;return 128&o[0]&&o.unshift(0),this._createEncoderBuffer(new i(o))},c.prototype._encodeBool=function(t){return this._createEncoderBuffer(t?255:0)},c.prototype._use=function(t,e){return"function"===typeof t&&(t=t(e)),t._getEncoder("der").tree},c.prototype._skipDefault=function(t,e,n){var r,i=this._baseState;if(null===i.default)return!1;var o=t.join();if(void 0===i.defaultBuffer&&(i.defaultBuffer=this._encodeValue(i.default,e,n).join()),o.length!==i.defaultBuffer.length)return!1;for(r=0;r0)throw new Error("cwise: pre() block may not reference array args");if(o0)throw new Error("cwise: post() block may not reference array args")}else if("scalar"===a)e.scalarArgs.push(o),e.shimArgs.push("scalar"+o);else if("index"===a){if(e.indexArgs.push(o),o0)throw new Error("cwise: pre() block may not reference array index");if(o0)throw new Error("cwise: post() block may not reference array index")}else if("shape"===a){if(e.shapeArgs.push(o),on.length)throw new Error("cwise: Too many arguments in pre() block");if(e.body.args.length>n.length)throw new Error("cwise: Too many arguments in body() block");if(e.post.args.length>n.length)throw new Error("cwise: Too many arguments in post() block");return e.debug=!!t.printCode||!!t.debug,e.funcName=t.funcName||"cwise",e.blockSize=t.blockSize||64,r(e)}},function(t,e,n){"use strict";var r=n(34),i=n(33),o=n(103),a=n(218);t.exports=function(t,e,n){var s,u,c=e.shape,l=c.length,f=1,h=new Array(l),p=0;for(s=l-1;s>=0;--s)if(h[s]=f,f*=c[s],p=Math.max(p,a.scratchMemory(c[s])),e.shape[s]!==n.shape[s])throw new Error("Shape mismatch, real and imaginary arrays must have same size");var d,m=4*f+p;d="array"===e.dtype||"float64"===e.dtype||"custom"===e.dtype?o.mallocDouble(m):o.mallocFloat(m);var g,v,y,b,w=i(d,c.slice(0),h,0),x=i(d,c.slice(0),h.slice(0),f),_=i(d,c.slice(0),h.slice(0),2*f),S=i(d,c.slice(0),h.slice(0),3*f),E=4*f;for(r.assign(w,e),r.assign(x,n),s=l-1;s>=0&&(a(t,f/c[s],c[s],d,w.offset,x.offset,E),0!==s);--s){for(v=1,y=_.stride,b=S.stride,u=s-1;u=0;--u)b[u]=y[u]=v,v*=c[u];r.assign(_,w),r.assign(S,x),g=w,w=_,_=g,g=x,x=S,S=g}r.assign(e,w),r.assign(n,x),o.free(d)}},function(t,e,n){"use strict";(function(t,r){var i=n(104),o=n(217);t.__TYPEDARRAY_POOL||(t.__TYPEDARRAY_POOL={UINT8:o([32,0]),UINT16:o([32,0]),UINT32:o([32,0]),INT8:o([32,0]),INT16:o([32,0]),INT32:o([32,0]),FLOAT:o([32,0]),DOUBLE:o([32,0]),DATA:o([32,0]),UINT8C:o([32,0]),BUFFER:o([32,0])});var a="undefined"!==typeof Uint8ClampedArray,s=t.__TYPEDARRAY_POOL;s.UINT8C||(s.UINT8C=o([32,0])),s.BUFFER||(s.BUFFER=o([32,0]));var u=s.DATA,c=s.BUFFER;function l(t){if(t){var e=t.length||t.byteLength,n=i.log2(e);u[n].push(t)}}function f(t){t=i.nextPow2(t);var e=i.log2(t),n=u[e];return n.length>0?n.pop():new ArrayBuffer(t)}function h(t){return new Uint8Array(f(t),0,t)}function p(t){return new Uint16Array(f(2*t),0,t)}function d(t){return new Uint32Array(f(4*t),0,t)}function m(t){return new Int8Array(f(t),0,t)}function g(t){return new Int16Array(f(2*t),0,t)}function v(t){return new Int32Array(f(4*t),0,t)}function y(t){return new Float32Array(f(4*t),0,t)}function b(t){return new Float64Array(f(8*t),0,t)}function w(t){return a?new Uint8ClampedArray(f(t),0,t):h(t)}function x(t){return new DataView(f(t),0,t)}function _(t){t=i.nextPow2(t);var e=i.log2(t),n=c[e];return n.length>0?n.pop():new r(t)}e.free=function(t){if(r.isBuffer(t))c[i.log2(t.length)].push(t);else{if("[object ArrayBuffer]"!==Object.prototype.toString.call(t)&&(t=t.buffer),!t)return;var e=t.length||t.byteLength,n=0|i.log2(e);u[n].push(t)}},e.freeUint8=e.freeUint16=e.freeUint32=e.freeInt8=e.freeInt16=e.freeInt32=e.freeFloat32=e.freeFloat=e.freeFloat64=e.freeDouble=e.freeUint8Clamped=e.freeDataView=function(t){l(t.buffer)},e.freeArrayBuffer=l,e.freeBuffer=function(t){c[i.log2(t.length)].push(t)},e.malloc=function(t,e){if(void 0===e||"arraybuffer"===e)return f(t);switch(e){case"uint8":return h(t);case"uint16":return p(t);case"uint32":return d(t);case"int8":return m(t);case"int16":return g(t);case"int32":return v(t);case"float":case"float32":return y(t);case"double":case"float64":return b(t);case"uint8_clamped":return w(t);case"buffer":return _(t);case"data":case"dataview":return x(t);default:return null}return null},e.mallocArrayBuffer=f,e.mallocUint8=h,e.mallocUint16=p,e.mallocUint32=d,e.mallocInt8=m,e.mallocInt16=g,e.mallocInt32=v,e.mallocFloat32=e.mallocFloat=y,e.mallocFloat64=e.mallocDouble=b,e.mallocUint8Clamped=w,e.mallocDataView=x,e.mallocBuffer=_,e.clearCache=function(){for(var t=0;t<32;++t)s.UINT8[t].length=0,s.UINT16[t].length=0,s.UINT32[t].length=0,s.INT8[t].length=0,s.INT16[t].length=0,s.INT32[t].length=0,s.FLOAT[t].length=0,s.DOUBLE[t].length=0,s.UINT8C[t].length=0,u[t].length=0,c[t].length=0}}).call(this,n(9),n(7).Buffer)},function(t,e,n){"use strict";function r(t){var e=32;return(t&=-t)&&e--,65535&t&&(e-=16),16711935&t&&(e-=8),252645135&t&&(e-=4),858993459&t&&(e-=2),1431655765&t&&(e-=1),e}e.INT_BITS=32,e.INT_MAX=2147483647,e.INT_MIN=-1<<31,e.sign=function(t){return(t>0)-(t<0)},e.abs=function(t){var e=t>>31;return(t^e)-e},e.min=function(t,e){return e^(t^e)&-(t65535)<<4,e|=n=((t>>>=e)>255)<<3,e|=n=((t>>>=n)>15)<<2,(e|=n=((t>>>=n)>3)<<1)|(t>>>=n)>>1},e.log10=function(t){return t>=1e9?9:t>=1e8?8:t>=1e7?7:t>=1e6?6:t>=1e5?5:t>=1e4?4:t>=1e3?3:t>=100?2:t>=10?1:0},e.popCount=function(t){return 16843009*((t=(858993459&(t-=t>>>1&1431655765))+(t>>>2&858993459))+(t>>>4)&252645135)>>>24},e.countTrailingZeros=r,e.nextPow2=function(t){return t+=0===t,--t,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,(t|=t>>>16)+1},e.prevPow2=function(t){return t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,(t|=t>>>16)-(t>>>1)},e.parity=function(t){return t^=t>>>16,t^=t>>>8,t^=t>>>4,27030>>>(t&=15)&1};var i=new Array(256);!function(t){for(var e=0;e<256;++e){var n=e,r=e,i=7;for(n>>>=1;n;n>>>=1)r<<=1,r|=1&n,--i;t[e]=r<>>8&255]<<16|i[t>>>16&255]<<8|i[t>>>24&255]},e.interleave2=function(t,e){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t&=65535)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e&=65535)|e<<8))|e<<4))|e<<2))|e<<1))<<1},e.deinterleave2=function(t,e){return(t=65535&((t=16711935&((t=252645135&((t=858993459&((t=t>>>e&1431655765)|t>>>1))|t>>>2))|t>>>4))|t>>>16))<<16>>16},e.interleave3=function(t,e,n){return t=1227133513&((t=3272356035&((t=251719695&((t=4278190335&((t&=1023)|t<<16))|t<<8))|t<<4))|t<<2),(t|=(e=1227133513&((e=3272356035&((e=251719695&((e=4278190335&((e&=1023)|e<<16))|e<<8))|e<<4))|e<<2))<<1)|(n=1227133513&((n=3272356035&((n=251719695&((n=4278190335&((n&=1023)|n<<16))|n<<8))|n<<4))|n<<2))<<2},e.deinterleave3=function(t,e){return(t=1023&((t=4278190335&((t=251719695&((t=3272356035&((t=t>>>e&1227133513)|t>>>2))|t>>>4))|t>>>8))|t>>>16))<<22>>22},e.nextCombination=function(t){var e=t|t-1;return e+1|(~e&-~e)-1>>>r(t)+1}},function(t,e,n){"use strict";t.exports={printThreshold:7,nFloatingValues:5}},function(t,e,n){"use strict";t.exports={int8:Int8Array,int16:Int16Array,int32:Int32Array,uint8:Uint8Array,uint16:Uint16Array,uint32:Uint32Array,float32:Float32Array,float64:Float64Array,array:Array}},function(t,e,n){"use strict";var r=n(33),i=n(13),o=n(42),a=n(225);t.exports=function(t){if(t instanceof HTMLCanvasElement)return function(t){var e=t.getContext("2d").getImageData(0,0,t.width,t.height),n=[t.width,t.height,4],o=[4,4*t.width,1],s=r(new Uint8Array(e.data),n,o,0).transpose(1,0);a(s)&&(s=s.pick(null,null,0));return new i(s)}(t);if(t instanceof HTMLImageElement)return function(t){var e=document.createElement("canvas");e.width=t.width,e.height=t.height;var n=e.getContext("2d");n.drawImage(t,0,0);var o=n.getImageData(0,0,t.width,t.height),s=[t.width,t.height,4],u=[4,4*t.width,1],c=r(new Uint8Array(o.data),s,u,0).transpose(1,0);a(c)&&(c=c.pick(null,null,0));return new i(c)}(t);throw new o.ValueError("expect input to be either an HTML Canvas or a (loaded) Image")}},function(t,e,n){"use strict";var r=n(13);t.exports.getRawData=function(t){var e,n;t instanceof r&&(t=t.selection);var i=0,o=t.shape,a=o[0],s=o[1],u=o[2]||1,c=new Uint8Array(a*s*u);if(3===t.shape.length)if(3===u)for(e=0;eR.length&&R.push(t)}function D(t,e,n){return null==t?0:function t(e,n,r,i){var s=typeof e;"undefined"!==s&&"boolean"!==s||(e=null);var u=!1;if(null===e)u=!0;else switch(s){case"string":case"number":u=!0;break;case"object":switch(e.$$typeof){case o:case a:u=!0}}if(u)return r(i,e,""===n?"."+N(e,0):n),1;if(u=0,n=""===n?".":n+":",Array.isArray(e))for(var c=0;cthis.eventPool.length&&this.eventPool.push(t)}function ft(t){t.eventPool=[],t.getPooled=ct,t.release=lt}i(ut.prototype,{preventDefault:function(){this.defaultPrevented=!0;var t=this.nativeEvent;t&&(t.preventDefault?t.preventDefault():"unknown"!==typeof t.returnValue&&(t.returnValue=!1),this.isDefaultPrevented=at)},stopPropagation:function(){var t=this.nativeEvent;t&&(t.stopPropagation?t.stopPropagation():"unknown"!==typeof t.cancelBubble&&(t.cancelBubble=!0),this.isPropagationStopped=at)},persist:function(){this.isPersistent=at},isPersistent:st,destructor:function(){var t,e=this.constructor.Interface;for(t in e)this[t]=null;this.nativeEvent=this._targetInst=this.dispatchConfig=null,this.isPropagationStopped=this.isDefaultPrevented=st,this._dispatchInstances=this._dispatchListeners=null}}),ut.Interface={type:null,target:null,currentTarget:function(){return null},eventPhase:null,bubbles:null,cancelable:null,timeStamp:function(t){return t.timeStamp||Date.now()},defaultPrevented:null,isTrusted:null},ut.extend=function(t){function e(){}function n(){return r.apply(this,arguments)}var r=this;e.prototype=r.prototype;var o=new e;return i(o,n.prototype),n.prototype=o,n.prototype.constructor=n,n.Interface=i({},r.Interface,t),n.extend=r.extend,ft(n),n},ft(ut);var ht=ut.extend({data:null}),pt=ut.extend({data:null}),dt=[9,13,27,32],mt=H&&"CompositionEvent"in window,gt=null;H&&"documentMode"in document&&(gt=document.documentMode);var vt=H&&"TextEvent"in window&&!gt,yt=H&&(!mt||gt&&8=gt),bt=String.fromCharCode(32),wt={beforeInput:{phasedRegistrationNames:{bubbled:"onBeforeInput",captured:"onBeforeInputCapture"},dependencies:["compositionend","keypress","textInput","paste"]},compositionEnd:{phasedRegistrationNames:{bubbled:"onCompositionEnd",captured:"onCompositionEndCapture"},dependencies:"blur compositionend keydown keypress keyup mousedown".split(" ")},compositionStart:{phasedRegistrationNames:{bubbled:"onCompositionStart",captured:"onCompositionStartCapture"},dependencies:"blur compositionstart keydown keypress keyup mousedown".split(" ")},compositionUpdate:{phasedRegistrationNames:{bubbled:"onCompositionUpdate",captured:"onCompositionUpdateCapture"},dependencies:"blur compositionupdate keydown keypress keyup mousedown".split(" ")}},xt=!1;function _t(t,e){switch(t){case"keyup":return-1!==dt.indexOf(e.keyCode);case"keydown":return 229!==e.keyCode;case"keypress":case"mousedown":case"blur":return!0;default:return!1}}function St(t){return"object"===typeof(t=t.detail)&&"data"in t?t.data:null}var Et=!1;var Tt={eventTypes:wt,extractEvents:function(t,e,n,r){var i=void 0,o=void 0;if(mt)t:{switch(t){case"compositionstart":i=wt.compositionStart;break t;case"compositionend":i=wt.compositionEnd;break t;case"compositionupdate":i=wt.compositionUpdate;break t}i=void 0}else Et?_t(t,n)&&(i=wt.compositionEnd):"keydown"===t&&229===n.keyCode&&(i=wt.compositionStart);return i?(yt&&"ko"!==n.locale&&(Et||i!==wt.compositionStart?i===wt.compositionEnd&&Et&&(o=ot()):(rt="value"in(nt=r)?nt.value:nt.textContent,Et=!0)),i=ht.getPooled(i,e,n,r),o?i.data=o:null!==(o=St(n))&&(i.data=o),W(i),o=i):o=null,(t=vt?function(t,e){switch(t){case"compositionend":return St(e);case"keypress":return 32!==e.which?null:(xt=!0,bt);case"textInput":return(t=e.data)===bt&&xt?null:t;default:return null}}(t,n):function(t,e){if(Et)return"compositionend"===t||!mt&&_t(t,e)?(t=ot(),it=rt=nt=null,Et=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1