From 1dee991505696e0034c7e43d27ac66173c6b9cc3 Mon Sep 17 00:00:00 2001 From: Karolis Strazdas Date: Sat, 3 Oct 2026 19:20:25 +0300 Subject: [PATCH 1/4] feat: rebuild core EPUB and PDF reading --- .github/workflows/ci.yml | 26 +- .gitignore | 5 +- AGENTS.md | 33 + CHANGELOG.md | 15 + README.md | 42 +- assets/epub_worker.NOTICES | 536 + assets/epub_worker.js | 20460 ++++++++++++++++ docs/architecture.md | 70 + docs/integration.md | 47 + docs/reader-plan.md | 92 + docs/supported-formats.md | 17 + docs/validation.md | 64 + example/assets/a_tiny_pdf.pdf | Bin 640 -> 1224 bytes example/assets/reading_lab.epub | Bin 0 -> 39459 bytes example/assets/the_garden_letter.epub | Bin 2871 -> 2877 bytes example/ios/Flutter/Debug.xcconfig | 1 + example/ios/Flutter/Release.xcconfig | 1 + example/ios/Podfile | 43 + example/lib/main.dart | 78 +- .../flutter/generated_plugin_registrant.cc | 4 + example/linux/flutter/generated_plugins.cmake | 1 + example/macos/Flutter/Flutter-Debug.xcconfig | 1 + .../macos/Flutter/Flutter-Release.xcconfig | 1 + .../Flutter/GeneratedPluginRegistrant.swift | 2 + example/macos/Podfile | 48 + example/macos/Podfile.lock | 35 + .../macos/Runner.xcodeproj/project.pbxproj | 104 +- .../contents.xcworkspacedata | 3 + .../macos/Runner/DebugProfile.entitlements | 2 + example/macos/Runner/Release.entitlements | 2 + example/pubspec.lock | 92 +- example/pubspec.yaml | 2 + example/test/widget_test.dart | 28 +- .../flutter/generated_plugin_registrant.cc | 3 + .../windows/flutter/generated_plugins.cmake | 1 + lib/papyrus_reader.dart | 1 + lib/src/controller/reader_controller.dart | 35 +- lib/src/domain/reader_locator.dart | 41 +- lib/src/domain/reader_snapshot.dart | 6 + .../engine/epub/epub_content_renderer.dart | 20 +- lib/src/engine/epub/epub_reader_engine.dart | 793 +- lib/src/engine/epub/epub_rich_layout.dart | 217 + lib/src/engine/epub/epub_viewport.dart | 477 + lib/src/engine/epub/worker/epub_content.dart | 159 + .../engine/epub/worker/epub_processor.dart | 324 + lib/src/engine/epub/worker/epub_worker.dart | 17 + .../epub/worker/epub_worker_native.dart | 118 + .../engine/epub/worker/epub_worker_web.dart | 105 + lib/src/engine/pdf/pdf_facade.dart | 491 +- lib/src/engine/pdf/pdf_reader_engine.dart | 142 +- lib/src/presentation/papyrus_reader.dart | 336 +- lib/src/presentation/reader_theme_data.dart | 4 +- pubspec.lock | 626 + pubspec.yaml | 9 +- test/controller/reader_controller_test.dart | 10 +- test/engine/epub_reader_engine_test.dart | 116 +- test/engine/epub_rich_layout_test.dart | 164 + test/engine/epub_worker_test.dart | 55 + test/engine/pdf_reader_engine_test.dart | 239 +- test/presentation/epub_reading_flow_test.dart | 162 + test/presentation/papyrus_reader_test.dart | 103 +- test/support/fake_reader_engine.dart | 1 + test/support/in_process_epub_worker.dart | 42 + test/support/synthetic_epub.dart | 8 +- tool/browser/package-lock.json | 42 + tool/browser/package.json | 7 + tool/browser/smoke.mjs | 271 + tool/build_epub_worker.sh | 20 + tool/epub_worker.dart | 23 + tool/generate_example_assets.dart | 44 +- 70 files changed, 26160 insertions(+), 927 deletions(-) create mode 100644 AGENTS.md create mode 100644 assets/epub_worker.NOTICES create mode 100644 assets/epub_worker.js create mode 100644 docs/architecture.md create mode 100644 docs/integration.md create mode 100644 docs/reader-plan.md create mode 100644 docs/supported-formats.md create mode 100644 docs/validation.md create mode 100644 example/assets/reading_lab.epub create mode 100644 example/ios/Podfile create mode 100644 example/macos/Podfile create mode 100644 example/macos/Podfile.lock create mode 100644 lib/src/engine/epub/epub_rich_layout.dart create mode 100644 lib/src/engine/epub/epub_viewport.dart create mode 100644 lib/src/engine/epub/worker/epub_content.dart create mode 100644 lib/src/engine/epub/worker/epub_processor.dart create mode 100644 lib/src/engine/epub/worker/epub_worker.dart create mode 100644 lib/src/engine/epub/worker/epub_worker_native.dart create mode 100644 lib/src/engine/epub/worker/epub_worker_web.dart create mode 100644 pubspec.lock create mode 100644 test/engine/epub_rich_layout_test.dart create mode 100644 test/engine/epub_worker_test.dart create mode 100644 test/presentation/epub_reading_flow_test.dart create mode 100644 test/support/in_process_epub_worker.dart create mode 100644 tool/browser/package-lock.json create mode 100644 tool/browser/package.json create mode 100644 tool/browser/smoke.mjs create mode 100755 tool/build_epub_worker.sh create mode 100644 tool/epub_worker.dart diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b890c42..332d4da 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -11,9 +11,11 @@ jobs: - uses: actions/checkout@v4 - uses: subosito/flutter-action@v2 with: + flutter-version: '3.41.2' channel: stable cache: true - - run: flutter pub get + - run: flutter pub get --enforce-lockfile + - run: bash tool/build_epub_worker.sh --check - run: dart format --output=none --set-exit-if-changed lib test example/lib example/test tool - run: flutter analyze - run: flutter test @@ -23,6 +25,15 @@ jobs: working-directory: example - run: flutter build web working-directory: example + - uses: actions/setup-node@v4 + with: + node-version: '22' + - run: npm ci + working-directory: tool/browser + - run: npx playwright install --with-deps chromium + working-directory: tool/browser + - run: npm test + working-directory: tool/browser desktop-build: strategy: @@ -39,6 +50,7 @@ jobs: - uses: actions/checkout@v4 - uses: subosito/flutter-action@v2 with: + flutter-version: '3.41.2' channel: stable cache: true - run: sudo apt-get update && sudo apt-get install -y libgtk-3-dev @@ -46,4 +58,16 @@ jobs: - run: flutter pub get working-directory: example - run: flutter build ${{ matrix.target }} + if: matrix.target != 'macos' + working-directory: example + - run: flutter build macos --config-only --release + if: matrix.target == 'macos' + working-directory: example + # Flutter 3.41.2's universal build has an Xcode 27 architecture-check issue. + # Compile the runner architecture until flutter/flutter#188346 is fixed. + - run: >- + xcodebuild -workspace macos/Runner.xcworkspace -scheme Runner + -configuration Release -derivedDataPath build/macos -sdk macosx + ARCHS=$(uname -m) ONLY_ACTIVE_ARCH=YES CODE_SIGNING_ALLOWED=NO build + if: matrix.target == 'macos' working-directory: example diff --git a/.gitignore b/.gitignore index dd5eb98..6eec9dd 100644 --- a/.gitignore +++ b/.gitignore @@ -22,10 +22,11 @@ migrate_working_dir/ #.vscode/ # Flutter/Dart/Pub related -# Libraries should not include pubspec.lock, per https://dart.dev/guides/libraries/private-files#pubspeclock. -/pubspec.lock +# This private package commits its lockfile to reproduce the packaged worker. **/doc/api/ .dart_tool/ .flutter-plugins-dependencies /build/ +/artifacts/ +node_modules/ /coverage/ diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..8232d80 --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,33 @@ +# Papyrus reader + +This is an independent Flutter package and Git repository. The owning workspace +is one level up; use its `tools/flutter` and `tools/dart` SDK wrappers when present. +Read `docs/reader-plan.md` before changing architecture or expanding formats. + +- Domain types are host-facing and serializable. Keep version-1 locators readable. + EPUB content offsets are chapter-local normalized UTF-16 offsets, never page + numbers. Legacy CFI strings are compatibility data, not conformant anchors. +- The host owns bytes, persistence, routing and account/profile isolation. + Package engines own transient resources and must release them on cancellation. +- EPUB document processing is pure Dart in `lib/src/engine/epub/worker`. Native + isolates and browser workers use the same request/response protocol. Never + move ZIP, XML or chapter HTML parsing back onto the Flutter UI thread. +- Rebuild `assets/epub_worker.js` with `tool/build_epub_worker.sh` after modifying + worker source. The packaged JS lets dependent applications build without a + manual worker generation step. CI checks the generated asset for drift. + This private repository commits `pubspec.lock` and pins its CI SDK so the + browser worker and third-party notices are reproducible. +- UI text measurement belongs in Flutter. Preserve semantic runs, Unicode, + illustrations and content offsets when reflowing. Layout must use the space + left after panels, system insets and text scaling, not device width alone. +- Keep custom engines/renderers/builders usable. Don't silently expose settings + that the active engine cannot apply. +- Use in-process transport in widget tests with fake clocks; exercise native and + browser transports independently. Run `flutter analyze`, `flutter test`, and + example checks. Build web for conditional-import and worker changes. +- Client's Git-pinned reader is independent. Use an ignored local path override + for integration checks; update its release pin only to a committed revision. + +Native example Podfiles are intentional platform setup. Generated build/cache +folders are not source. Keep performance claims limited to measurements actually +made; synthetic tests do not certify arbitrary publisher content or every device. diff --git a/CHANGELOG.md b/CHANGELOG.md index 0e1097d..134b790 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,20 @@ # Changelog +## Unreleased + +- Process EPUB archives and chapters in cancellable native/browser workers. +- Follow OPF spine order independently of TOC hierarchy and restore TOC anchors. +- Add rich lazy pagination, adaptive spreads and page-first navigation. +- Preserve EPUB content offsets through typography and viewport changes. +- Keep reading viewports mounted during progress updates; add typeface controls, + consistent appearance and escapable loading/error screens. +- Share one pdfrx document between metadata and rendering; report PDF page offsets. +- Fit and turn bounded PDF pages/spreads in paginated mode; preserve scale on + appearance changes and refit after column, mode and viewport changes. +- Retain keyboard navigation across EPUB chapters and correct reader settings + colors under opposite host themes and in open mobile sheets. +- Add a long-chapter reading lab, architecture plan and platform integration guide. + ## 0.0.1 - Add reflowable EPUB 2/3 and PDF engines. diff --git a/README.md b/README.md index 558f692..af2b8e9 100644 --- a/README.md +++ b/README.md @@ -3,10 +3,12 @@ `papyrus_reader` is a self-contained Flutter library for reading reflowable EPUB 2/3 and PDF documents on Android, iOS, Web, Linux, macOS, and Windows. -It provides EPUB CFI locations, PDF page locations, TOC/outline navigation, +It provides versioned EPUB content locations, PDF page locations, TOC/outline navigation, scroll and paginated layouts, configurable appearance, and a responsive Material 3 reader shell. UI builders and theme data allow Papyrus to replace -the default chrome without forking the engines. +the default chrome without forking the engines. EPUB processing runs in a native +isolate or browser Worker; rich pagination preserves content across typography +changes and turns within chapters before crossing the document spine. The package deliberately has no Papyrus API, PowerSync, filesystem, routing, or state-management dependency. The host owns document bytes and persistence. @@ -20,14 +22,17 @@ dependencies: ``` ```dart +// Create once per book session and retain across host rebuilds. +final document = ReaderDocument( + id: book.id, + title: book.title, + author: book.author, + format: ReaderFormat.epub, + loadBytes: () => file.readAsBytes(), +); + PapyrusReader( - document: ReaderDocument( - id: book.id, - title: book.title, - author: book.author, - format: ReaderFormat.epub, - loadBytes: () => file.readAsBytes(), - ), + document: document, initialLocator: savedLocator, initialPreferences: savedPreferences, onLocatorChanged: saveLocator, @@ -48,8 +53,10 @@ cd example flutter run ``` -The six-platform example includes deterministic EPUB/PDF assets, light and -dark themes, and in-memory position/preference restoration. +The six-platform example includes deterministic long EPUB and three-page PDF +assets, a local EPUB/PDF file picker, light/dark themes, and in-memory +position/preference restoration. Example positions reset when the app restarts; +production persistence belongs to the host application. ## Current scope @@ -58,6 +65,7 @@ return `ReaderErrorCode.unsupportedFixedLayout`. MOBI/AZW3, TXT, comic archives, search, bookmarks, highlights, and notes are planned extensions. - [Architecture](docs/architecture.md) +- [Core release plan](docs/reader-plan.md) - [Client integration](docs/integration.md) - [Supported formats](docs/supported-formats.md) @@ -66,7 +74,17 @@ archives, search, bookmarks, highlights, and notes are planned extensions. ```bash flutter analyze flutter test -cd example && flutter analyze && flutter test && flutter build web +./tool/build_epub_worker.sh +(cd example && flutter analyze && flutter test && flutter build web) +# From the reader repository, after building the example: +(cd tool/browser && npm ci && npx playwright install chromium && npm test) ``` +Use the parent workspace's pinned SDK wrappers when available. The generated +browser worker is packaged so host applications need no extra build step; rebuild +it after changing worker source. Browser CSP must allow `worker-src blob:`. +Use `tool/build_epub_worker.sh --check` to check asset drift. Browser checks can +use an installed Chrome via `PAPYRUS_CHROME_EXECUTABLE` and save screenshots via +`PAPYRUS_SCREENSHOT_DIR`. See [Validation](docs/validation.md) for platform coverage. + Licensed under AGPL-3.0. diff --git a/assets/epub_worker.NOTICES b/assets/epub_worker.NOTICES new file mode 100644 index 0000000..eaf7fa7 --- /dev/null +++ b/assets/epub_worker.NOTICES @@ -0,0 +1,536 @@ +Third-party licenses for the packaged EPUB browser worker. + + +======================================================================== +archive 4.2.0 +======================================================================== +The MIT License + +Copyright (c) 2013-2021 Brendan Duncan. +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +======================================================================== +characters 1.4.1 +======================================================================== +Copyright 2019, the Dart project authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +======================================================================== +collection 1.19.1 +======================================================================== +Copyright 2015, the Dart project authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +======================================================================== +csslib 1.0.2 +======================================================================== +Copyright 2013, the Dart project authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +======================================================================== +epub_pro 5.6.0 +======================================================================== +MIT License + +Copyright (c) 2017 Colin Nelson +Original repository: https://github.com/orthros/dart-epub + +Copyright (c) 2025 Walter Tay Ann Lee + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +BSD 3-Clause "New" or "Revised" License + +Copyright (c) 2014 Readium Foundation and/or its licensees. All rights reserved. +Original repository: https://github.com/readium/readium-sdk + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: +1. Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation and/or +other materials provided with the distribution. +3. Neither the name of the organization nor the names of its contributors may be +used to endorse or promote products derived from this software without specific +prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE +OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. + +======================================================================== +ffi 2.2.0 +======================================================================== +Copyright 2019, the Dart project authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +======================================================================== +html 0.15.6 +======================================================================== +Copyright (c) 2006-2012 The Authors + +Contributors: +James Graham - jg307@cam.ac.uk +Anne van Kesteren - annevankesteren@gmail.com +Lachlan Hunt - lachlan.hunt@lachy.id.au +Matt McDonald - kanashii@kanashii.ca +Sam Ruby - rubys@intertwingly.net +Ian Hickson (Google) - ian@hixie.ch +Thomas Broyer - t.broyer@ltgt.net +Jacques Distler - distler@golem.ph.utexas.edu +Henri Sivonen - hsivonen@iki.fi +Adam Barth - abarth@webkit.org +Eric Seidel - eric@webkit.org +The Mozilla Foundation (contributions from Henri Sivonen since 2008) +David Flanagan (Mozilla) - dflanagan@mozilla.com +Google LLC (contributed the Dart port) - misc@dartlang.org + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + +======================================================================== +image 4.9.2 +======================================================================== +The MIT License + +Copyright (c) 2013-2022 Brendan Duncan. +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +======================================================================== +meta 1.17.0 +======================================================================== +Copyright 2016, the Dart project authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +======================================================================== +path 1.9.1 +======================================================================== +Copyright 2014, the Dart project authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +======================================================================== +petitparser 7.0.2 +======================================================================== +The MIT License + +Copyright (c) 2006-2024 Lukas Renggli. +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +======================================================================== +posix 6.5.2 +======================================================================== +MIT License + +Copyright (c) 2020 Brett Sutton + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +======================================================================== +source_span 1.10.2 +======================================================================== +Copyright 2014, the Dart project authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +======================================================================== +term_glyph 1.2.2 +======================================================================== +Copyright 2017, the Dart project authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +======================================================================== +web 1.1.1 +======================================================================== +Copyright 2023, the Dart project authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +======================================================================== +word_count 1.0.4 +======================================================================== +MIT License + +Copyright (c) 2016 baozier +Original source: https://github.com/byn9826/words-count + +Copyright (c) 2023 Abdullah Atta +Original source: https://github.com/thecodrr/alfaaz + +Copyright (c) 2025 Walter Tay Ann Lee + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + +======================================================================== +xml 6.6.1 +======================================================================== +The MIT License + +Copyright (c) 2006-2025 Lukas Renggli. +All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/assets/epub_worker.js b/assets/epub_worker.js new file mode 100644 index 0000000..e90aa7f --- /dev/null +++ b/assets/epub_worker.js @@ -0,0 +1,20460 @@ +(function dartProgram(){function copyProperties(a,b){var s=Object.keys(a) +for(var r=0;r=0)return true +if(typeof version=="function"&&version.length==0){var q=version() +if(/^\d+\.\d+\.\d+\.\d+$/.test(q))return true}}catch(p){}return false}() +function inherit(a,b){a.prototype.constructor=a +a.prototype["$i"+a.name]=a +if(b!=null){if(z){Object.setPrototypeOf(a.prototype,b.prototype) +return}var s=Object.create(b.prototype) +copyProperties(a.prototype,s) +a.prototype=s}}function inheritMany(a,b){for(var s=0;s4294967295)throw A.f(A.ad(a,0,4294967295,"length",null)) +return J.vT(new Array(a),b)}, +vS(a,b){if(a<0)throw A.f(A.U("Length must be a non-negative integer: "+a,null)) +return A.i(new Array(a),b.h("y<0>"))}, +rq(a,b){if(a<0)throw A.f(A.U("Length must be a non-negative integer: "+a,null)) +return A.i(new Array(a),b.h("y<0>"))}, +vT(a,b){var s=A.i(a,b.h("y<0>")) +s.$flags=1 +return s}, +vU(a,b){var s=t.bP +return J.r3(s.a(a),s.a(b))}, +rs(a){if(a<256)switch(a){case 9:case 10:case 11:case 12:case 13:case 32:case 133:case 160:return!0 +default:return!1}switch(a){case 5760:case 8192:case 8193:case 8194:case 8195:case 8196:case 8197:case 8198:case 8199:case 8200:case 8201:case 8202:case 8232:case 8233:case 8239:case 8287:case 12288:case 65279:return!0 +default:return!1}}, +rt(a,b){var s,r +for(s=a.length;b0;b=r){r=b-1 +if(!(r").v(c).h("hb<1,2>")) +return new A.dd(a,b.h("@<0>").v(c).h("dd<1,2>"))}, +rv(a){return new A.e8("Field '"+a+"' has been assigned during initialization.")}, +q0(a){return new A.e8("Field '"+a+"' has not been initialized.")}, +vW(a){return new A.e8("Field '"+a+"' has already been initialized.")}, +py(a){var s,r=a^48 +if(r<=9)return r +s=a|32 +if(97<=s&&s<=102)return s-87 +return-1}, +cz(a,b){a=a+b&536870911 +a=a+((a&524287)<<10)&536870911 +return a^a>>>6}, +nJ(a){a=a+((a&67108863)<<3)&536870911 +a^=a>>>11 +return a+((a&16383)<<15)&536870911}, +dO(a,b,c){return a}, +qS(a){var s,r +for(s=$.bF.length,r=0;rc)A.O(A.ad(b,0,c,"start",null))}return new A.cy(a,b,c,d.h("cy<0>"))}, +rz(a,b,c,d){if(t.gt.b(a))return new A.eU(a,b,c.h("@<0>").v(d).h("eU<1,2>")) +return new A.b8(a,b,c.h("@<0>").v(d).h("b8<1,2>"))}, +rU(a,b,c){var s="takeCount" +A.hR(b,s,t.S) +A.aE(b,s) +if(t.gt.b(a))return new A.eV(a,b,c.h("eV<0>")) +return new A.dD(a,b,c.h("dD<0>"))}, +rS(a,b,c){var s="count" +if(t.gt.b(a)){A.hR(b,s,t.S) +A.aE(b,s) +return new A.dZ(a,b,c.h("dZ<0>"))}A.hR(b,s,t.S) +A.aE(b,s) +return new A.cx(a,b,c.h("cx<0>"))}, +bi(){return new A.dC("No element")}, +rp(){return new A.dC("Too many elements")}, +ro(){return new A.dC("Too few elements")}, +jK(a,b,c,d,e){if(c-b<=32)A.wI(a,b,c,d,e) +else A.wH(a,b,c,d,e)}, +wI(a,b,c,d,e){var s,r,q,p,o,n +for(s=b+1,r=J.ab(a);s<=c;++s){q=r.n(a,s) +p=s +for(;;){if(p>b){o=d.$2(r.n(a,p-1),q) +if(typeof o!=="number")return o.b1() +o=o>0}else o=!1 +if(!o)break +n=p-1 +r.k(a,p,r.n(a,n)) +p=n}r.k(a,p,q)}}, +wH(a3,a4,a5,a6,a7){var s,r,q,p,o,n,m,l,k,j=B.f.av(a5-a4+1,6),i=a4+j,h=a5-j,g=B.f.av(a4+a5,2),f=g-j,e=g+j,d=J.ab(a3),c=d.n(a3,i),b=d.n(a3,f),a=d.n(a3,g),a0=d.n(a3,e),a1=d.n(a3,h),a2=a6.$2(c,b) +if(typeof a2!=="number")return a2.b1() +if(a2>0){s=b +b=c +c=s}a2=a6.$2(a0,a1) +if(typeof a2!=="number")return a2.b1() +if(a2>0){s=a1 +a1=a0 +a0=s}a2=a6.$2(c,a) +if(typeof a2!=="number")return a2.b1() +if(a2>0){s=a +a=c +c=s}a2=a6.$2(b,a) +if(typeof a2!=="number")return a2.b1() +if(a2>0){s=a +a=b +b=s}a2=a6.$2(c,a0) +if(typeof a2!=="number")return a2.b1() +if(a2>0){s=a0 +a0=c +c=s}a2=a6.$2(a,a0) +if(typeof a2!=="number")return a2.b1() +if(a2>0){s=a0 +a0=a +a=s}a2=a6.$2(b,a1) +if(typeof a2!=="number")return a2.b1() +if(a2>0){s=a1 +a1=b +b=s}a2=a6.$2(b,a) +if(typeof a2!=="number")return a2.b1() +if(a2>0){s=a +a=b +b=s}a2=a6.$2(a0,a1) +if(typeof a2!=="number")return a2.b1() +if(a2>0){s=a1 +a1=a0 +a0=s}d.k(a3,i,c) +d.k(a3,g,a) +d.k(a3,h,a1) +d.k(a3,f,d.n(a3,a4)) +d.k(a3,e,d.n(a3,a5)) +r=a4+1 +q=a5-1 +p=J.M(a6.$2(b,a0),0) +if(p)for(o=r;o<=q;++o){n=d.n(a3,o) +m=a6.$2(n,b) +if(m===0)continue +if(m<0){if(o!==r){d.k(a3,o,d.n(a3,r)) +d.k(a3,r,n)}++r}else for(;;){m=a6.$2(d.n(a3,q),b) +if(m>0){--q +continue}else{l=q-1 +if(m<0){d.k(a3,o,d.n(a3,r)) +k=r+1 +d.k(a3,r,d.n(a3,q)) +d.k(a3,q,n) +q=l +r=k +break}else{d.k(a3,o,d.n(a3,q)) +d.k(a3,q,n) +q=l +break}}}}else for(o=r;o<=q;++o){n=d.n(a3,o) +if(a6.$2(n,b)<0){if(o!==r){d.k(a3,o,d.n(a3,r)) +d.k(a3,r,n)}++r}else if(a6.$2(n,a0)>0)for(;;)if(a6.$2(d.n(a3,q),a0)>0){--q +if(qh){while(J.M(a6.$2(d.n(a3,r),b),0))++r +while(J.M(a6.$2(d.n(a3,q),a0),0))--q +for(o=r;o<=q;++o){n=d.n(a3,o) +if(a6.$2(n,b)===0){if(o!==r){d.k(a3,o,d.n(a3,r)) +d.k(a3,r,n)}++r}else if(a6.$2(n,a0)===0)for(;;)if(a6.$2(d.n(a3,q),a0)===0){--q +if(q=m.length)return A.c(m,3) +s=m[3] +if(b==null){if(s!=null)return parseInt(a,10) +if(m[2]!=null)return parseInt(a,16) +return n}if(b<2||b>36)throw A.f(A.ad(b,2,36,"radix",n)) +if(b===10&&s!=null)return parseInt(a,10) +if(b<10||s==null){r=b<=10?47+b:86+b +q=m[1] +for(p=q.length,o=0;or)return n}return parseInt(a,b)}, +q9(a){var s,r +if(!/^\s*[+-]?(?:Infinity|NaN|(?:\.\d+|\d+(?:\.\d*)?)(?:[eE][+-]?\d+)?)\s*$/.test(a))return null +s=parseFloat(a) +if(isNaN(s)){r=B.b.bk(a) +if(r==="NaN"||r==="+NaN"||r==="-NaN")return s +return null}return s}, +jB(a){var s,r,q,p +if(a instanceof A.p)return A.bd(A.b2(a),null) +s=J.ci(a) +if(s===B.iO||s===B.iQ||t.mK.b(a)){r=B.cM(a) +if(r!=="Object"&&r!=="")return r +q=a.constructor +if(typeof q=="function"){p=q.name +if(typeof p=="string"&&p!=="Object"&&p!=="")return p}}return A.bd(A.b2(a),null)}, +rK(a){var s,r,q +if(a==null||typeof a=="number"||A.qG(a))return J.ax(a) +if(typeof a=="string")return JSON.stringify(a) +if(a instanceof A.b6)return a.j(0) +if(a instanceof A.bn)return a.hw(!0) +s=$.v8() +for(r=0;r<1;++r){q=s[r].oh(a) +if(q!=null)return q}return"Instance of '"+A.jB(a)+"'"}, +wr(){if(!!self.location)return self.location.href +return null}, +rI(a){var s,r,q,p,o=a.length +if(o<=500)return String.fromCharCode.apply(null,a) +for(s="",r=0;r65535)return A.wA(a)}return A.rI(a)}, +wB(a,b,c){var s,r,q,p +if(c<=500&&b===0&&c===a.length)return String.fromCharCode.apply(null,a) +for(s=b,r="";s>>0,s&1023|56320)}}throw A.f(A.ad(a,0,1114111,null,null))}, +bz(a){if(a.date===void 0)a.date=new Date(a.a) +return a.date}, +wz(a){return a.c?A.bz(a).getUTCFullYear()+0:A.bz(a).getFullYear()+0}, +wx(a){return a.c?A.bz(a).getUTCMonth()+1:A.bz(a).getMonth()+1}, +wt(a){return a.c?A.bz(a).getUTCDate()+0:A.bz(a).getDate()+0}, +wu(a){return a.c?A.bz(a).getUTCHours()+0:A.bz(a).getHours()+0}, +ww(a){return a.c?A.bz(a).getUTCMinutes()+0:A.bz(a).getMinutes()+0}, +wy(a){return a.c?A.bz(a).getUTCSeconds()+0:A.bz(a).getSeconds()+0}, +wv(a){return a.c?A.bz(a).getUTCMilliseconds()+0:A.bz(a).getMilliseconds()+0}, +cZ(a,b,c){var s,r,q={} +q.a=0 +s=[] +r=[] +q.a=b.length +B.a.a1(s,b) +q.b="" +if(c!=null&&c.a!==0)c.X(0,new A.np(q,r,s)) +return J.vj(a,new A.fj(B.Mt,0,s,r,0))}, +wq(a,b,c){var s,r=c==null||c.a===0 +if(r){if(!!a.$0)return a.$0() +s=a[""+"$0"] +if(s!=null)return s.apply(a,b)}return A.wp(a,b,c)}, +wp(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=a.$R +if(0n)return A.cZ(a,b,null) +if(0f)return A.cZ(a,b,c) +l=A.aV(b,t.z) +k=Object.keys(q) +if(c==null)for(r=k.length,j=0;j=s)return A.iL(b,s,a,null,r) +return A.nq(b,r)}, +yU(a,b,c){if(a<0||a>c)return A.ad(a,0,c,"start",null) +if(b!=null)if(bc)return A.ad(b,a,c,"end",null) +return new A.bR(!0,b,"end",null)}, +dN(a){return new A.bR(!0,a,null,null)}, +f(a){return A.aq(a,new Error())}, +aq(a,b){var s +if(a==null)a=new A.cC() +b.dartException=a +s=A.zz +if("defineProperty" in Object){Object.defineProperty(b,"message",{get:s}) +b.name=""}else b.toString=s +return b}, +zz(){return J.ax(this.dartException)}, +O(a,b){throw A.aq(a,b==null?new Error():b)}, +t(a,b,c){var s +if(b==null)b=0 +if(c==null)c=0 +s=Error() +A.O(A.xT(a,b,c),s)}, +xT(a,b,c){var s,r,q,p,o,n,m,l,k +if(typeof b=="string")s=b +else{r="[]=;add;removeWhere;retainWhere;removeRange;setRange;setInt8;setInt16;setInt32;setUint8;setUint16;setUint32;setFloat32;setFloat64".split(";") +q=r.length +p=b +if(p>q){c=p/q|0 +p%=q}s=r[p]}o=typeof c=="string"?c:"modify;remove from;add to".split(";")[c] +n=t.p.b(a)?"list":"ByteData" +m=a.$flags|0 +l="a " +if((m&4)!==0)k="constant " +else if((m&2)!==0){k="unmodifiable " +l="an "}else k=(m&1)!==0?"fixed-length ":"" +return new A.fX("'"+s+"': Cannot "+o+" "+l+k+n)}, +a1(a){throw A.f(A.ag(a))}, +cD(a){var s,r,q,p,o,n +a=A.uD(a.replace(String({}),"$receiver$")) +s=a.match(/\\\$[a-zA-Z]+\\\$/g) +if(s==null)s=A.i([],t.s) +r=s.indexOf("\\$arguments\\$") +q=s.indexOf("\\$argumentsExpr\\$") +p=s.indexOf("\\$expr\\$") +o=s.indexOf("\\$method\\$") +n=s.indexOf("\\$receiver\\$") +return new A.nM(a.replace(new RegExp("\\\\\\$arguments\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$argumentsExpr\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$expr\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$method\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$receiver\\\\\\$","g"),"((?:x|[^x])*)"),r,q,p,o,n)}, +nN(a){return function($expr$){var $argumentsExpr$="$arguments$" +try{$expr$.$method$($argumentsExpr$)}catch(s){return s.message}}(a)}, +rZ(a){return function($expr$){try{$expr$.$method$}catch(s){return s.message}}(a)}, +q_(a,b){var s=b==null,r=s?null:b.method +return new A.iW(a,r,s?null:b.receiver)}, +bP(a){var s +if(a==null)return new A.jk(a) +if(a instanceof A.fc){s=a.a +return A.db(a,s==null?A.cg(s):s)}if(typeof a!=="object")return a +if("dartException" in a)return A.db(a,a.dartException) +return A.yz(a)}, +db(a,b){if(t.fz.b(b))if(b.$thrownJsError==null)b.$thrownJsError=a +return b}, +yz(a){var s,r,q,p,o,n,m,l,k,j,i,h,g +if(!("message" in a))return a +s=a.message +if("number" in a&&typeof a.number=="number"){r=a.number +q=r&65535 +if((B.f.b5(r,16)&8191)===10)switch(q){case 438:return A.db(a,A.q_(A.k(s)+" (Error "+q+")",null)) +case 445:case 5007:A.k(s) +return A.db(a,new A.fx())}}if(a instanceof TypeError){p=$.uP() +o=$.uQ() +n=$.uR() +m=$.uS() +l=$.uV() +k=$.uW() +j=$.uU() +$.uT() +i=$.uY() +h=$.uX() +g=p.bi(s) +if(g!=null)return A.db(a,A.q_(A.q(s),g)) +else{g=o.bi(s) +if(g!=null){g.method="call" +return A.db(a,A.q_(A.q(s),g))}else if(n.bi(s)!=null||m.bi(s)!=null||l.bi(s)!=null||k.bi(s)!=null||j.bi(s)!=null||m.bi(s)!=null||i.bi(s)!=null||h.bi(s)!=null){A.q(s) +return A.db(a,new A.fx())}}return A.db(a,new A.jZ(typeof s=="string"?s:""))}if(a instanceof RangeError){if(typeof s=="string"&&s.indexOf("call stack")!==-1)return new A.fQ() +s=function(b){try{return String(b)}catch(f){}return null}(a) +return A.db(a,new A.bR(!1,null,null,typeof s=="string"?s.replace(/^RangeError:\s*/,""):s))}if(typeof InternalError=="function"&&a instanceof InternalError)if(typeof s=="string"&&s==="too much recursion")return new A.fQ() +return a}, +eJ(a){var s +if(a instanceof A.fc)return a.b +if(a==null)return new A.hq(a) +s=a.$cachedTrace +if(s!=null)return s +s=new A.hq(a) +if(typeof a==="object")a.$cachedTrace=s +return s}, +ly(a){if(a==null)return J.A(a) +if(typeof a=="object")return A.dx(a) +return J.A(a)}, +yG(a){if(typeof a=="number")return B.cV.gq(a) +if(a instanceof A.kU)return A.dx(a) +if(a instanceof A.bn)return a.gq(a) +if(a instanceof A.cf)return a.gq(0) +return A.ly(a)}, +un(a,b){var s,r,q,p=a.length +for(s=0;s=0 +else if(b instanceof A.cV){s=B.b.ab(a,c) +return b.b.test(s)}else return!J.lB(b,B.b.ab(a,c)).gN(0)}, +qN(a){if(a.indexOf("$",0)>=0)return a.replace(/\$/g,"$$$$") +return a}, +zw(a,b,c,d){var s=b.h5(a,d) +if(s==null)return a +return A.qY(a,s.b.index,s.gU(),c)}, +uD(a){if(/[[\]{}()*+?.\\^$|]/.test(a))return a.replace(/[[\]{}()*+?.\\^$|]/g,"\\$&") +return a}, +cO(a,b,c){var s +if(typeof b=="string")return A.zv(a,b,c) +if(b instanceof A.cV){s=b.ghg() +s.lastIndex=0 +return a.replace(s,A.qN(c))}return A.zu(a,b,c)}, +zu(a,b,c){var s,r,q,p +for(s=J.lB(b,a),s=s.gF(s),r=0,q="";s.p();){p=s.gB() +q=q+a.substring(r,p.gS())+c +r=p.gU()}s=q+a.substring(r) +return s.charCodeAt(0)==0?s:s}, +zv(a,b,c){var s,r,q +if(b===""){if(a==="")return c +s=a.length +for(r=c,q=0;q=0)return a.split(b).join(c) +return a.replace(new RegExp(A.uD(b),"g"),A.qN(c))}, +u9(a){return a}, +pP(a,b,c,d){var s,r,q,p,o,n,m +for(s=b.dB(0,a),s=new A.et(s.a,s.b,s.c),r=t.lg,q=0,p="";s.p();){o=s.d +if(o==null)o=r.a(o) +n=o.b +m=n.index +p=p+A.k(A.u9(B.b.t(a,q,m)))+A.k(c.$1(o)) +q=m+n[0].length}s=p+A.k(A.u9(B.b.ab(a,q))) +return s.charCodeAt(0)==0?s:s}, +zx(a,b,c,d){var s,r,q,p +if(typeof b=="string"){s=a.indexOf(b,d) +if(s<0)return a +return A.qY(a,s,s+b.length,c)}if(b instanceof A.cV)return d===0?a.replace(b.b,A.qN(c)):A.zw(a,b,c,d) +r=J.vc(b,a,d) +q=r.gF(r) +if(!q.p())return a +p=q.gB() +return B.b.bR(a,p.gS(),p.gU(),c)}, +qY(a,b,c,d){return a.substring(0,b)+d+a.substring(c)}, +l:function l(a,b){this.a=a +this.b=b}, +hl:function hl(a,b,c){this.a=a +this.b=b +this.c=c}, +hm:function hm(a){this.a=a}, +hn:function hn(a){this.a=a}, +ho:function ho(a){this.a=a}, +eP:function eP(a,b){this.a=a +this.$ti=b}, +dW:function dW(){}, +r:function r(a,b,c){this.a=a +this.b=b +this.$ti=c}, +he:function he(a,b){this.a=a +this.$ti=b}, +cK:function cK(a,b,c){var _=this +_.a=a +_.b=b +_.c=0 +_.d=null +_.$ti=c}, +a:function a(a,b){this.a=a +this.$ti=b}, +dX:function dX(){}, +bf:function bf(a,b,c){this.a=a +this.b=b +this.$ti=c}, +aO:function aO(a,b){this.a=a +this.$ti=b}, +iO:function iO(){}, +e0:function e0(a,b){this.a=a +this.$ti=b}, +fj:function fj(a,b,c,d,e){var _=this +_.a=a +_.c=b +_.d=c +_.e=d +_.f=e}, +np:function np(a,b,c){this.a=a +this.b=b +this.c=c}, +fF:function fF(){}, +nM:function nM(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +fx:function fx(){}, +iW:function iW(a,b,c){this.a=a +this.b=b +this.c=c}, +jZ:function jZ(a){this.a=a}, +jk:function jk(a){this.a=a}, +fc:function fc(a,b){this.a=a +this.b=b}, +hq:function hq(a){this.a=a +this.b=null}, +b6:function b6(){}, +i4:function i4(){}, +i5:function i5(){}, +jR:function jR(){}, +jP:function jP(){}, +dT:function dT(a,b){this.a=a +this.b=b}, +jI:function jI(a){this.a=a}, +oS:function oS(){}, +bx:function bx(a){var _=this +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=0 +_.$ti=a}, +mG:function mG(a){this.a=a}, +mI:function mI(a,b){var _=this +_.a=a +_.b=b +_.d=_.c=null}, +aU:function aU(a,b){this.a=a +this.$ti=b}, +cv:function cv(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=null +_.$ti=d}, +fo:function fo(a,b){this.a=a +this.$ti=b}, +dq:function dq(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=null +_.$ti=d}, +dp:function dp(a,b){this.a=a +this.$ti=b}, +fn:function fn(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=null +_.$ti=d}, +dn:function dn(a){var _=this +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=0 +_.$ti=a}, +pz:function pz(a){this.a=a}, +pA:function pA(a){this.a=a}, +pB:function pB(a){this.a=a}, +bn:function bn(){}, +ez:function ez(){}, +eA:function eA(){}, +d7:function d7(){}, +cV:function cV(a,b){var _=this +_.a=a +_.b=b +_.e=_.d=_.c=null}, +hg:function hg(a){this.b=a}, +ku:function ku(a,b,c){this.a=a +this.b=b +this.c=c}, +et:function et(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +fS:function fS(a,b){this.a=a +this.c=b}, +kR:function kR(a,b,c){this.a=a +this.b=b +this.c=c}, +kS:function kS(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +zy(a){throw A.aq(A.rv(a),new Error())}, +o(){throw A.aq(A.q0(""),new Error())}, +c6(){throw A.aq(A.vW(""),new Error())}, +dQ(){throw A.aq(A.rv(""),new Error())}, +tm(){var s=new A.kz("") +return s.b=s}, +oy(a){var s=new A.kz(a) +return s.b=s}, +kz:function kz(a){this.a=a +this.b=null}, +p7(a,b,c){}, +hC(a){var s,r,q +if(t.iy.b(a))return a +s=J.ab(a) +r=A.aD(s.gm(a),null,!1,t.z) +for(q=0;q>>0!==a||a>=c)throw A.f(A.lw(b,a))}, +tT(a,b,c){var s +if(!(a>>>0!==a))if(b==null)s=a>c +else s=b>>>0!==b||a>b||b>c +else s=!0 +if(s)throw A.f(A.yU(a,b,c)) +if(b==null)return c +return b}, +du:function du(){}, +fu:function fu(){}, +oX:function oX(a){this.a=a}, +j6:function j6(){}, +aW:function aW(){}, +ft:function ft(){}, +by:function by(){}, +j7:function j7(){}, +j8:function j8(){}, +j9:function j9(){}, +ja:function ja(){}, +jb:function jb(){}, +jc:function jc(){}, +fv:function fv(){}, +fw:function fw(){}, +dv:function dv(){}, +hh:function hh(){}, +hi:function hi(){}, +hj:function hj(){}, +hk:function hk(){}, +qd(a,b){var s=b.c +return s==null?b.c=A.hs(a,"cr",[b.x]):s}, +rQ(a){var s=a.w +if(s===6||s===7)return A.rQ(a.x) +return s===11||s===12}, +wF(a){return a.as}, +qV(a,b){var s,r=b.length +for(s=0;s=p)return A.c(q,0) +s=A.hu(v.typeUniverse,A.qK(q[0]),"@<0>") +for(r=1;r=0)p+=" "+r[q];++q}return p+"})"}, +tZ(a3,a4,a5){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1=", ",a2=null +if(a5!=null){s=a5.length +if(a4==null)a4=A.i([],t.s) +else a2=a4.length +r=a4.length +for(q=s;q>0;--q)B.a.l(a4,"T"+(r+q)) +for(p=t.X,o="<",n="",q=0;q=0))return A.c(a4,l) +o=o+n+a4[l] +k=a5[q] +j=k.w +if(!(j===2||j===3||j===4||j===5||k===p))o+=" extends "+A.bd(k,a4)}o+=">"}else o="" +p=a3.x +i=a3.y +h=i.a +g=h.length +f=i.b +e=f.length +d=i.c +c=d.length +b=A.bd(p,a4) +for(a="",a0="",q=0;q0){a+=a0+"[" +for(a0="",q=0;q0){a+=a0+"{" +for(a0="",q=0;q "+b}, +bd(a,b){var s,r,q,p,o,n,m,l=a.w +if(l===5)return"erased" +if(l===2)return"dynamic" +if(l===3)return"void" +if(l===1)return"Never" +if(l===4)return"any" +if(l===6){s=a.x +r=A.bd(s,b) +q=s.w +return(q===11||q===12?"("+r+")":r)+"?"}if(l===7)return"FutureOr<"+A.bd(a.x,b)+">" +if(l===8){p=A.yy(a.x) +o=a.y +return o.length>0?p+("<"+A.u5(o,b)+">"):p}if(l===10)return A.yl(a,b) +if(l===11)return A.tZ(a,b,null) +if(l===12)return A.tZ(a.x,b,a.y) +if(l===13){n=a.x +m=b.length +n=m-1-n +if(!(n>=0&&n0)p+="<"+A.hr(c)+">" +s=a.eC.get(p) +if(s!=null)return s +r=new A.bU(null,null) +r.w=8 +r.x=b +r.y=c +if(c.length>0)r.c=c[0] +r.as=p +q=A.d8(a,r) +a.eC.set(p,q) +return q}, +qy(a,b,c){var s,r,q,p,o,n +if(b.w===9){s=b.x +r=b.y.concat(c)}else{r=c +s=b}q=s.as+(";<"+A.hr(r)+">") +p=a.eC.get(q) +if(p!=null)return p +o=new A.bU(null,null) +o.w=9 +o.x=s +o.y=r +o.as=q +n=A.d8(a,o) +a.eC.set(q,n) +return n}, +tA(a,b,c){var s,r,q="+"+(b+"("+A.hr(c)+")"),p=a.eC.get(q) +if(p!=null)return p +s=new A.bU(null,null) +s.w=10 +s.x=b +s.y=c +s.as=q +r=A.d8(a,s) +a.eC.set(q,r) +return r}, +tx(a,b,c){var s,r,q,p,o,n=b.as,m=c.a,l=m.length,k=c.b,j=k.length,i=c.c,h=i.length,g="("+A.hr(m) +if(j>0){s=l>0?",":"" +g+=s+"["+A.hr(k)+"]"}if(h>0){s=l>0?",":"" +g+=s+"{"+A.xn(i)+"}"}r=n+(g+")") +q=a.eC.get(r) +if(q!=null)return q +p=new A.bU(null,null) +p.w=11 +p.x=b +p.y=c +p.as=r +o=A.d8(a,p) +a.eC.set(r,o) +return o}, +qz(a,b,c,d){var s,r=b.as+("<"+A.hr(c)+">"),q=a.eC.get(r) +if(q!=null)return q +s=A.xp(a,b,c,r,d) +a.eC.set(r,s) +return s}, +xp(a,b,c,d,e){var s,r,q,p,o,n,m,l +if(e){s=c.length +r=A.p0(s) +for(q=0,p=0;p0){n=A.da(a,b,r,0) +m=A.eG(a,c,r,0) +return A.qz(a,n,m,c!==m)}}l=new A.bU(null,null) +l.w=12 +l.x=b +l.y=c +l.as=d +return A.d8(a,l)}, +ts(a,b,c,d){return{u:a,e:b,r:c,s:[],p:0,n:d}}, +tu(a){var s,r,q,p,o,n,m,l=a.r,k=a.s +for(s=l.length,r=0;r=48&&q<=57)r=A.xf(r+1,q,l,k) +else if((((q|32)>>>0)-97&65535)<26||q===95||q===36||q===124)r=A.tt(a,r,l,k,!1) +else if(q===46)r=A.tt(a,r,l,k,!0) +else{++r +switch(q){case 44:break +case 58:k.push(!1) +break +case 33:k.push(!0) +break +case 59:k.push(A.dL(a.u,a.e,k.pop())) +break +case 94:k.push(A.xr(a.u,k.pop())) +break +case 35:k.push(A.ht(a.u,5,"#")) +break +case 64:k.push(A.ht(a.u,2,"@")) +break +case 126:k.push(A.ht(a.u,3,"~")) +break +case 60:k.push(a.p) +a.p=k.length +break +case 62:A.xh(a,k) +break +case 38:A.xg(a,k) +break +case 63:p=a.u +k.push(A.tz(p,A.dL(p,a.e,k.pop()),a.n)) +break +case 47:p=a.u +k.push(A.ty(p,A.dL(p,a.e,k.pop()),a.n)) +break +case 40:k.push(-3) +k.push(a.p) +a.p=k.length +break +case 41:A.xe(a,k) +break +case 91:k.push(a.p) +a.p=k.length +break +case 93:o=k.splice(a.p) +A.tv(a.u,a.e,o) +a.p=k.pop() +k.push(o) +k.push(-1) +break +case 123:k.push(a.p) +a.p=k.length +break +case 125:o=k.splice(a.p) +A.xj(a.u,a.e,o) +a.p=k.pop() +k.push(o) +k.push(-2) +break +case 43:n=l.indexOf("(",r) +k.push(l.substring(r,n)) +k.push(-4) +k.push(a.p) +a.p=k.length +r=n+1 +break +default:throw"Bad character "+q}}}m=k.pop() +return A.dL(a.u,a.e,m)}, +xf(a,b,c,d){var s,r,q=b-48 +for(s=c.length;a=48&&r<=57))break +q=q*10+(r-48)}d.push(q) +return a}, +tt(a,b,c,d,e){var s,r,q,p,o,n,m=b+1 +for(s=c.length;m>>0)-97&65535)<26||r===95||r===36||r===124))q=r>=48&&r<=57 +else q=!0 +if(!q)break}}p=c.substring(b,m) +if(e){s=a.u +o=a.e +if(o.w===9)o=o.x +n=A.xv(s,o.x)[p] +if(n==null)A.O('No "'+p+'" in "'+A.wF(o)+'"') +d.push(A.hu(s,o,n))}else d.push(p) +return m}, +xh(a,b){var s,r=a.u,q=A.tr(a,b),p=b.pop() +if(typeof p=="string")b.push(A.hs(r,p,q)) +else{s=A.dL(r,a.e,p) +switch(s.w){case 11:b.push(A.qz(r,s,q,a.n)) +break +default:b.push(A.qy(r,s,q)) +break}}}, +xe(a,b){var s,r,q,p=a.u,o=b.pop(),n=null,m=null +if(typeof o=="number")switch(o){case-1:n=b.pop() +break +case-2:m=b.pop() +break +default:b.push(o) +break}else b.push(o) +s=A.tr(a,b) +o=b.pop() +switch(o){case-3:o=b.pop() +if(n==null)n=p.sEA +if(m==null)m=p.sEA +r=A.dL(p,a.e,o) +q=new A.kL() +q.a=s +q.b=n +q.c=m +b.push(A.tx(p,r,q)) +return +case-4:b.push(A.tA(p,b.pop(),s)) +return +default:throw A.f(A.hV("Unexpected state under `()`: "+A.k(o)))}}, +xg(a,b){var s=b.pop() +if(0===s){b.push(A.ht(a.u,1,"0&")) +return}if(1===s){b.push(A.ht(a.u,4,"1&")) +return}throw A.f(A.hV("Unexpected extended operation "+A.k(s)))}, +tr(a,b){var s=b.splice(a.p) +A.tv(a.u,a.e,s) +a.p=b.pop() +return s}, +dL(a,b,c){if(typeof c=="string")return A.hs(a,c,a.sEA) +else if(typeof c=="number"){b.toString +return A.xi(a,b,c)}else return c}, +tv(a,b,c){var s,r=c.length +for(s=0;sn)return!1 +m=n-o +l=s.b +k=r.b +j=l.length +i=k.length +if(o+j=d)return!1 +a1=f[b] +b+=3 +if(a00?new Array(q):v.typeUniverse.sEA +for(o=0;o0?new Array(a):v.typeUniverse.sEA}, +bU:function bU(a,b){var _=this +_.a=a +_.b=b +_.r=_.f=_.d=_.c=null +_.w=0 +_.as=_.Q=_.z=_.y=_.x=null}, +kL:function kL(){this.c=this.b=this.a=null}, +kU:function kU(a){this.a=a}, +kJ:function kJ(){}, +eB:function eB(a){this.a=a}, +wZ(){var s,r,q +if(self.scheduleImmediate!=null)return A.yA() +if(self.MutationObserver!=null&&self.document!=null){s={} +r=self.document.createElement("div") +q=self.document.createElement("span") +s.a=null +new self.MutationObserver(A.eI(new A.or(s),1)).observe(r,{childList:true}) +return new A.oq(s,r,q)}else if(self.setImmediate!=null)return A.yB() +return A.yC()}, +x_(a){self.scheduleImmediate(A.eI(new A.os(t.T.a(a)),0))}, +x0(a){self.setImmediate(A.eI(new A.ot(t.T.a(a)),0))}, +x1(a){t.T.a(a) +A.xl(0,a)}, +xl(a,b){var s=new A.oU() +s.jW(a,b) +return s}, +br(a){return new A.kv(new A.az($.am,a.h("az<0>")),a.h("kv<0>"))}, +bq(a,b){a.$2(0,null) +b.b=!0 +return b.a}, +c3(a,b){A.xL(a,b)}, +bp(a,b){b.eE(a)}, +bo(a,b){b.eF(A.bP(a),A.eJ(a))}, +xL(a,b){var s,r,q=new A.p5(b),p=new A.p6(b) +if(a instanceof A.az)a.hu(q,p,t.z) +else{s=t.z +if(a instanceof A.az)a.fd(q,p,s) +else{r=new A.az($.am,t.j_) +r.a=8 +r.c=a +r.hu(q,p,s)}}}, +bs(a){var s=function(b,c){return function(d,e){while(true){try{b(d,e) +break}catch(r){e=r +d=c}}}}(a,1) +return $.am.is(new A.pd(s),t.H,t.S,t.z)}, +pV(a){var s +if(t.fz.b(a)){s=a.gce() +if(s!=null)return s}return B.aV}, +y3(a,b){if($.am===B.a3)return null +return null}, +y4(a,b){if($.am!==B.a3)A.y3(a,b) +if(b==null)if(t.fz.b(a)){b=a.gce() +if(b==null){A.rM(a,B.aV) +b=B.aV}}else b=B.aV +else if(t.fz.b(a))A.rM(a,b) +return new A.bG(a,b)}, +qu(a,b,c){var s,r,q,p,o={},n=o.a=a +for(s=t.j_;r=n.a,(r&4)!==0;n=a){a=s.a(n.c) +o.a=a}if(n===b){s=A.wJ() +b.e8(new A.bG(new A.bR(!0,n,null,"Cannot complete a future with itself"),s)) +return}q=b.a&1 +s=n.a=r|q +if((s&24)===0){p=t.np.a(b.c) +b.a=b.a&1|4 +b.c=n +n.hl(p) +return}if(!c)if(b.c==null)n=(s&16)===0||q!==0 +else n=!1 +else n=!0 +if(n){p=b.dq() +b.dg(o.a) +A.ex(b,p) +return}b.a^=2 +A.lv(null,null,b.b,t.T.a(new A.oE(o,b)))}, +ex(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d={},c=d.a=a +for(s=t.A,r=t.np;;){q={} +p=c.a +o=(p&16)===0 +n=!o +if(b==null){if(n&&(p&1)===0){m=s.a(c.c) +A.qJ(m.a,m.b)}return}q.a=b +l=b.a +for(c=b;l!=null;c=l,l=k){c.a=null +A.ex(d.a,c) +q.a=l +k=l.a}p=d.a +j=p.c +q.b=n +q.c=j +if(o){i=c.c +i=(i&1)!==0||(i&15)===8}else i=!0 +if(i){h=c.b.b +if(n){p=p.b===h +p=!(p||p)}else p=!1 +if(p){s.a(j) +A.qJ(j.a,j.b) +return}g=$.am +if(g!==h)$.am=h +else g=null +c=c.c +if((c&15)===8)new A.oI(q,d,n).$0() +else if(o){if((c&1)!==0)new A.oH(q,j).$0()}else if((c&2)!==0)new A.oG(d,q).$0() +if(g!=null)$.am=g +c=q.c +if(c instanceof A.az){p=q.a.$ti +p=p.h("cr<2>").b(c)||!p.y[1].b(c)}else p=!1 +if(p){f=q.a.b +if((c.a&24)!==0){e=r.a(f.c) +f.c=null +b=f.dr(e) +f.a=c.a&30|f.a&1 +f.c=c.c +d.a=c +continue}else A.qu(c,f,!0) +return}}f=q.a.b +e=r.a(f.c) +f.c=null +b=f.dr(e) +c=q.b +p=q.c +if(!c){f.$ti.c.a(p) +f.a=8 +f.c=p}else{s.a(p) +f.a=f.a&1|16 +f.c=p}d.a=f +c=f}}, +ym(a,b){var s +if(t.ng.b(a))return b.is(a,t.z,t.K,t.E) +s=t.mq +if(s.b(a))return s.a(a) +throw A.f(A.pU(a,"onError",u.w))}, +yk(){var s,r +for(s=$.eF;s!=null;s=$.eF){$.hE=null +r=s.b +$.eF=r +if(r==null)$.hD=null +s.a.$0()}}, +yt(){$.qH=!0 +try{A.yk()}finally{$.hE=null +$.qH=!1 +if($.eF!=null)$.r0().$1(A.uc())}}, +u7(a){var s=new A.kw(a),r=$.hD +if(r==null){$.eF=$.hD=s +if(!$.qH)$.r0().$1(A.uc())}else $.hD=r.b=s}, +yp(a){var s,r,q,p=$.eF +if(p==null){A.u7(a) +$.hE=$.hD +return}s=new A.kw(a) +r=$.hE +if(r==null){s.b=p +$.eF=$.hE=s}else{q=r.b +s.b=q +$.hE=r.b=s +if(q==null)$.hD=s}}, +zL(a,b){A.dO(a,"stream",t.K) +return new A.kQ(b.h("kQ<0>"))}, +qJ(a,b){A.yp(new A.pb(a,b))}, +u4(a,b,c,d,e){var s,r=$.am +if(r===c)return d.$0() +$.am=c +s=r +try{r=d.$0() +return r}finally{$.am=s}}, +yo(a,b,c,d,e,f,g){var s,r=$.am +if(r===c)return d.$1(e) +$.am=c +s=r +try{r=d.$1(e) +return r}finally{$.am=s}}, +yn(a,b,c,d,e,f,g,h,i){var s,r=$.am +if(r===c)return d.$2(e,f) +$.am=c +s=r +try{r=d.$2(e,f) +return r}finally{$.am=s}}, +lv(a,b,c,d){t.T.a(d) +if(B.a3!==c){d=c.lN(d) +d=d}A.u7(d)}, +or:function or(a){this.a=a}, +oq:function oq(a,b,c){this.a=a +this.b=b +this.c=c}, +os:function os(a){this.a=a}, +ot:function ot(a){this.a=a}, +oU:function oU(){}, +oV:function oV(a,b){this.a=a +this.b=b}, +kv:function kv(a,b){this.a=a +this.b=!1 +this.$ti=b}, +p5:function p5(a){this.a=a}, +p6:function p6(a){this.a=a}, +pd:function pd(a){this.a=a}, +bG:function bG(a,b){this.a=a +this.b=b}, +kA:function kA(){}, +h8:function h8(a,b){this.a=a +this.$ti=b}, +dI:function dI(a,b,c,d,e){var _=this +_.a=null +_.b=a +_.c=b +_.d=c +_.e=d +_.$ti=e}, +az:function az(a,b){var _=this +_.a=0 +_.b=a +_.c=null +_.$ti=b}, +oB:function oB(a,b){this.a=a +this.b=b}, +oF:function oF(a,b){this.a=a +this.b=b}, +oE:function oE(a,b){this.a=a +this.b=b}, +oD:function oD(a,b){this.a=a +this.b=b}, +oC:function oC(a,b){this.a=a +this.b=b}, +oI:function oI(a,b,c){this.a=a +this.b=b +this.c=c}, +oJ:function oJ(a,b){this.a=a +this.b=b}, +oK:function oK(a){this.a=a}, +oH:function oH(a,b){this.a=a +this.b=b}, +oG:function oG(a,b){this.a=a +this.b=b}, +kw:function kw(a){this.a=a +this.b=null}, +kQ:function kQ(a){this.$ti=a}, +hz:function hz(){}, +kP:function kP(){}, +oT:function oT(a,b){this.a=a +this.b=b}, +pb:function pb(a,b){this.a=a +this.b=b}, +rm(a,b,c,d,e){if(c==null)if(b==null){if(a==null)return new A.cJ(d.h("@<0>").v(e).h("cJ<1,2>")) +b=A.ug()}else{if(A.yP()===b&&A.yO()===a)return new A.dJ(d.h("@<0>").v(e).h("dJ<1,2>")) +if(a==null)a=A.uf()}else{if(b==null)b=A.ug() +if(a==null)a=A.uf()}return A.x7(a,b,c,d,e)}, +to(a,b){var s=a[b] +return s===a?null:s}, +qw(a,b,c){if(c==null)a[b]=a +else a[b]=c}, +qv(){var s=Object.create(null) +A.qw(s,"",s) +delete s[""] +return s}, +x7(a,b,c,d,e){var s=c!=null?c:new A.oz(d) +return new A.ha(a,b,s,d.h("@<0>").v(e).h("ha<1,2>"))}, +ac(a,b){return new A.bx(a.h("@<0>").v(b).h("bx<1,2>"))}, +v(a,b,c){return b.h("@<0>").v(c).h("mH<1,2>").a(A.un(a,new A.bx(b.h("@<0>").v(c).h("bx<1,2>"))))}, +aC(a,b){return new A.bx(a.h("@<0>").v(b).h("bx<1,2>"))}, +vY(a){return new A.cL(a.h("cL<0>"))}, +j2(a){return new A.cL(a.h("cL<0>"))}, +vZ(a,b){return b.h("rw<0>").a(A.z0(a,new A.cL(b.h("cL<0>"))))}, +qx(){var s=Object.create(null) +s[""]=s +delete s[""] +return s}, +tq(a,b,c){var s=new A.dK(a,b,c.h("dK<0>")) +s.c=a.e +return s}, +xQ(a,b){return J.M(a,b)}, +xR(a){return J.A(a)}, +vQ(a,b){var s,r=a.$ti,q=new A.dt(J.as(a.a),a.b,r.h("dt<1,2>")) +if(q.p()){s=q.a +return s==null?r.y[1].a(s):s}return null}, +j1(a,b,c){var s=A.ac(b,c) +a.X(0,new A.mJ(s,b,c)) +return s}, +vX(a,b,c){var s=A.ac(b,c) +s.a1(0,a) +return s}, +w_(a,b){var s=t.bP +return J.r3(s.a(a),s.a(b))}, +q3(a){var s,r +if(A.qS(a))return"{...}" +s=new A.W("") +try{r={} +B.a.l($.bF,a) +s.a+="{" +r.a=!0 +a.X(0,new A.mK(r,s)) +s.a+="}"}finally{if(0>=$.bF.length)return A.c($.bF,-1) +$.bF.pop()}r=s.a +return r.charCodeAt(0)==0?r:r}, +q1(a){return new A.fp(A.aD(A.w0(null),null,!1,a.h("0?")),a.h("fp<0>"))}, +w0(a){return 8}, +cJ:function cJ(a){var _=this +_.a=0 +_.e=_.d=_.c=_.b=null +_.$ti=a}, +dJ:function dJ(a){var _=this +_.a=0 +_.e=_.d=_.c=_.b=null +_.$ti=a}, +ha:function ha(a,b,c,d){var _=this +_.f=a +_.r=b +_.w=c +_.a=0 +_.e=_.d=_.c=_.b=null +_.$ti=d}, +oz:function oz(a){this.a=a}, +hc:function hc(a,b){this.a=a +this.$ti=b}, +hd:function hd(a,b,c){var _=this +_.a=a +_.b=b +_.c=0 +_.d=null +_.$ti=c}, +cL:function cL(a){var _=this +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=0 +_.$ti=a}, +kM:function kM(a){this.a=a +this.b=null}, +dK:function dK(a,b,c){var _=this +_.a=a +_.b=b +_.d=_.c=null +_.$ti=c}, +cE:function cE(a,b){this.a=a +this.$ti=b}, +mJ:function mJ(a,b,c){this.a=a +this.b=b +this.c=c}, +D:function D(){}, +a8:function a8(){}, +mK:function mK(a,b){this.a=a +this.b=b}, +hv:function hv(){}, +ea:function ea(){}, +dF:function dF(a,b){this.a=a +this.$ti=b}, +fp:function fp(a,b){var _=this +_.a=a +_.d=_.c=_.b=0 +_.$ti=b}, +hf:function hf(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=null +_.$ti=e}, +aY:function aY(){}, +hp:function hp(){}, +eC:function eC(){}, +xE(a,b,c){var s,r,q,p,o=c-b +if(o<=4096)s=$.v4() +else s=new Uint8Array(o) +for(r=J.ab(a),q=0;q>>2,h=3-(a0&3) +for(s=J.ab(b),r=a.length,q=f.$flags|0,p=c,o=0;p>>0 +i=(i<<8|n)&16777215;--h +if(h===0){m=g+1 +l=i>>>18&63 +if(!(l>>12&63 +if(!(l>>6&63 +if(!(l=0&&o<=255){if(h<3){m=g+1 +j=m+1 +if(3-h===1){s=i>>>2&63 +if(!(s>>10&63 +if(!(s>>4&63 +if(!(s>>0}for(p=c;p255)break;++p}throw A.f(A.pU(b,"Not a byte value at index "+p+": 0x"+B.f.d6(s.n(b,p),16),null))}, +ru(a,b,c){return new A.fl(a,b)}, +xS(a){return a.oD()}, +xc(a,b){return new A.oN(a,[],A.yM())}, +xd(a,b,c){var s,r=new A.W(""),q=A.xc(r,b) +q.dX(a) +s=r.a +return s.charCodeAt(0)==0?s:s}, +xF(a){switch(a){case 65:return"Missing extension byte" +case 67:return"Unexpected extension byte" +case 69:return"Invalid UTF-8 byte" +case 71:return"Overlong encoding" +case 73:return"Out of unicode range" +case 75:return"Encoded surrogate" +case 77:return"Unfinished UTF-8 octet sequence" +default:return""}}, +p_:function p_(){}, +oZ:function oZ(){}, +hS:function hS(){}, +kV:function kV(){}, +hT:function hT(a,b){this.a=a +this.b=b}, +eL:function eL(){}, +hX:function hX(){}, +ou:function ou(a){this.a=0 +this.b=a}, +bt:function bt(){}, +cl:function cl(){}, +ic:function ic(){}, +fl:function fl(a,b){this.a=a +this.b=b}, +iY:function iY(a,b){this.a=a +this.b=b}, +iX:function iX(){}, +iZ:function iZ(a){this.b=a}, +oO:function oO(){}, +oP:function oP(a,b){this.a=a +this.b=b}, +oN:function oN(a,b,c){this.c=a +this.a=b +this.b=c}, +k2:function k2(){}, +k3:function k3(a){this.a=a}, +kW:function kW(a){this.a=a +this.b=16 +this.c=0}, +b0(a,b){var s,r=b.length +for(;;){if(a>0){s=a-1 +if(!(s=0&&q>>0)+(s[6]>>>4)-1075 +o=new Uint16Array(4) +o[0]=(s[1]<<8>>>0)+s[0] +o[1]=(s[3]<<8>>>0)+s[2] +o[2]=(s[5]<<8>>>0)+s[4] +o[3]=s[6]&15|16 +n=new A.ap(!1,o,4) +if(p<0)m=n.e4(0,-p) +else m=p>0?n.aW(0,p):n +return m}, +qr(a,b,c,d){var s,r,q,p,o +if(b===0)return 0 +if(c===0&&d===a)return b +for(s=b-1,r=a.length,q=d.$flags|0;s>=0;--s){p=s+c +if(!(s=0&&p=0;--s){q&2&&A.t(d) +if(!(s=0;--s){if(!(s=0&&n>>0 +p=B.f.aW(o&i,k)}q&2&&A.t(d) +if(!(l>=0&&l=0;){r&2&&A.t(d) +if(!(q=0&&r=0&&m>>0 +s=B.f.cI(n,l)}q&2&&A.t(d) +if(!(r>=0&&r=0;--s){if(!(s>>16}for(o=d;o=0&&o>>16}q&2&&A.t(e) +if(!(b>=0&&b=0&&o=0;e=l,c=o){o=c+1 +if(!(c=0&&e=0&&e=0&&c=0&&r>>0,a) +if(q>65535)return 65535 +return q}, +z6(a){return A.ly(a)}, +lx(a,b){var s=A.qa(a,b) +if(s!=null)return s +throw A.f(A.aB(a,null,null))}, +yV(a){var s=A.q9(a) +if(s!=null)return s +throw A.f(A.aB("Invalid double",a,null))}, +vF(a,b){a=A.aq(a,new Error()) +if(a==null)a=A.cg(a) +a.stack=b.j(0) +throw a}, +aD(a,b,c,d){var s,r=c?J.vS(a,d):J.pX(a,d) +if(a!==0&&b!=null)for(s=0;s")) +for(s=J.as(a);s.p();)B.a.l(r,c.a(s.gB())) +if(b)return r +r.$flags=1 +return r}, +aV(a,b){var s,r +if(Array.isArray(a))return A.i(a.slice(0),b.h("y<0>")) +s=A.i([],b.h("y<0>")) +for(r=J.as(a);r.p();)B.a.l(s,r.gB()) +return s}, +rx(a,b){var s=A.q2(a,!1,b) +s.$flags=3 +return s}, +ay(a,b,c){var s,r,q,p,o +A.aE(b,"start") +s=c==null +r=!s +if(r){q=c-b +if(q<0)throw A.f(A.ad(c,b,null,"end",null)) +if(q===0)return""}if(Array.isArray(a)){p=a +o=p.length +if(s)c=o +return A.rL(b>0||c0)a=J.lC(a,b) +s=A.aV(a,t.S) +return A.rL(s)}, +wL(a,b,c){var s=a.length +if(b>=s)return"" +return A.wB(a,b,c==null||c>s?s:c)}, +a4(a,b){return new A.cV(a,A.pY(a,!1,b,!1,!1,""))}, +z5(a,b){return a==null?b==null:a===b}, +qe(a,b,c){var s=J.as(b) +if(!s.p())return a +if(c.length===0){do a+=A.k(s.gB()) +while(s.p())}else{a+=A.k(s.gB()) +while(s.p())a=a+c+A.k(s.gB())}return a}, +n2(a,b){return new A.jg(a,b.gns(),b.gnI(),b.gny())}, +qk(){var s,r,q=A.wr() +if(q==null)throw A.f(A.aj("'Uri.base' is not supported")) +s=$.t2 +if(s!=null&&q===$.t1)return s +r=A.nP(q,0,null) +$.t2=r +$.t1=q +return r}, +wJ(){return A.eJ(new Error())}, +vC(a){var s=Math.abs(a),r=a<0?"-":"" +if(s>=1000)return""+a +if(s>=100)return r+"0"+s +if(s>=10)return r+"00"+s +return r+"000"+s}, +ri(a){if(a>=100)return""+a +if(a>=10)return"0"+a +return"00"+a}, +i8(a){if(a>=10)return""+a +return"0"+a}, +dl(a){if(typeof a=="number"||A.qG(a)||a==null)return J.ax(a) +if(typeof a=="string")return JSON.stringify(a) +return A.rK(a)}, +vG(a,b){A.dO(a,"error",t.K) +A.dO(b,"stackTrace",t.E) +A.vF(a,b)}, +hV(a){return new A.hU(a)}, +U(a,b){return new A.bR(!1,null,b,a)}, +pU(a,b,c){return new A.bR(!0,a,b,c)}, +hR(a,b,c){return a}, +aP(a){var s=null +return new A.ef(s,s,!1,s,s,a)}, +nq(a,b){return new A.ef(null,null,!0,a,b,"Value not in range")}, +ad(a,b,c,d,e){return new A.ef(b,c,!0,a,d,"Invalid value")}, +rN(a,b,c,d){if(ac)throw A.f(A.ad(a,b,c,d,null)) +return a}, +cw(a,b,c){if(0>a||a>c)throw A.f(A.ad(a,0,c,"start",null)) +if(b!=null){if(a>b||b>c)throw A.f(A.ad(b,a,c,"end",null)) +return b}return c}, +aE(a,b){if(a<0)throw A.f(A.ad(a,0,null,b,null)) +return a}, +vM(a,b,c,d,e){var s=e==null?b.gm(b):e +return new A.fh(s,!0,a,c,"Index out of range")}, +iL(a,b,c,d,e){return new A.fh(b,!0,a,e,"Index out of range")}, +vN(a,b,c,d,e){if(0>a||a>=b)throw A.f(A.iL(a,b,c,d,"index")) +return a}, +aj(a){return new A.fX(a)}, +jY(a){return new A.fW(a)}, +ce(a){return new A.dC(a)}, +ag(a){return new A.i7(a)}, +P(a){return new A.kK(a)}, +aB(a,b,c){return new A.aA(a,b,c)}, +vR(a,b,c){var s,r +if(A.qS(a)){if(b==="("&&c===")")return"(...)" +return b+"..."+c}s=A.i([],t.s) +B.a.l($.bF,a) +try{A.yi(a,s)}finally{if(0>=$.bF.length)return A.c($.bF,-1) +$.bF.pop()}r=A.qe(b,t.e7.a(s),", ")+c +return r.charCodeAt(0)==0?r:r}, +iS(a,b,c){var s,r +if(A.qS(a))return b+"..."+c +s=new A.W(b) +B.a.l($.bF,a) +try{r=s +r.a=A.qe(r.a,a,", ")}finally{if(0>=$.bF.length)return A.c($.bF,-1) +$.bF.pop()}s.a+=c +r=s.a +return r.charCodeAt(0)==0?r:r}, +yi(a,b){var s,r,q,p,o,n,m,l=a.gF(a),k=0,j=0 +for(;;){if(!(k<80||j<3))break +if(!l.p())return +s=A.k(l.gB()) +B.a.l(b,s) +k+=s.length+2;++j}if(!l.p()){if(j<=5)return +if(0>=b.length)return A.c(b,-1) +r=b.pop() +if(0>=b.length)return A.c(b,-1) +q=b.pop()}else{p=l.gB();++j +if(!l.p()){if(j<=4){B.a.l(b,A.k(p)) +return}r=A.k(p) +if(0>=b.length)return A.c(b,-1) +q=b.pop() +k+=r.length+2}else{o=l.gB();++j +for(;l.p();p=o,o=n){n=l.gB();++j +if(j>100){for(;;){if(!(k>75&&j>3))break +if(0>=b.length)return A.c(b,-1) +k-=b.pop().length+2;--j}B.a.l(b,"...") +return}}q=A.k(p) +r=A.k(o) +k+=r.length+q.length+4}}if(j>b.length+2){k+=5 +m="..."}else m=null +for(;;){if(!(k>80&&b.length>3))break +if(0>=b.length)return A.c(b,-1) +k-=b.pop().length+2 +if(m==null){k+=5 +m="..."}}if(m!=null)B.a.l(b,m) +B.a.l(b,q) +B.a.l(b,r)}, +ry(a,b,c,d,e){return new A.de(a,b.h("@<0>").v(c).v(d).v(e).h("de<1,2,3,4>"))}, +aX(a,b,c,d){var s +if(B.u===c){s=J.A(a) +b=J.A(b) +return A.nJ(A.cz(A.cz($.lA(),s),b))}if(B.u===d){s=J.A(a) +b=J.A(b) +c=J.A(c) +return A.nJ(A.cz(A.cz(A.cz($.lA(),s),b),c))}s=J.A(a) +b=J.A(b) +c=J.A(c) +d=J.A(d) +d=A.nJ(A.cz(A.cz(A.cz(A.cz($.lA(),s),b),c),d)) +return d}, +wf(a){var s,r,q=$.lA() +for(s=a.length,r=0;r=s){r=a7+4 +if(!(r>>0 +if(n===0)return A.t0(a7>0||a8=14)B.a.k(m,7,a8) +l=m[1] +if(l>=a7)if(A.u6(a6,a7,l,20,m)===20)m[7]=l +k=m[2]+1 +j=m[3] +i=m[4] +h=m[5] +g=m[6] +if(gl+3)){r=j>a7 +d=0 +if(!(r&&j+1===i)){if(!B.b.aa(a6,"\\",i))if(k>a7)q=B.b.aa(a6,"\\",k-1)||B.b.aa(a6,"\\",k-2) +else q=!1 +else q=!0 +if(!q){if(!(hi+2&&B.b.aa(a6,"/..",h-3) +else q=!0 +if(!q)if(l===a7+4){if(B.b.aa(a6,"file",a7)){if(k<=a7){if(!B.b.aa(a6,"/",i)){c="file:///" +n=3}else{c="file://" +n=2}a6=c+B.b.t(a6,i,a8) +l-=a7 +s=n-a7 +h+=s +g+=s +a8=a6.length +a7=d +k=7 +j=7 +i=7}else if(i===h){s=a7===0 +s +if(s){a6=B.b.bR(a6,i,h,"/");++h;++g;++a8}else{a6=B.b.t(a6,a7,i)+"/"+B.b.t(a6,h,a8) +l-=a7 +k-=a7 +j-=a7 +i-=a7 +s=1-a7 +h+=s +g+=s +a8=a6.length +a7=d}}e="file"}else if(B.b.aa(a6,"http",a7)){if(r&&j+3===i&&B.b.aa(a6,"80",j+1)){s=a7===0 +s +if(s){a6=B.b.bR(a6,j,i,"") +i-=3 +h-=3 +g-=3 +a8-=3}else{a6=B.b.t(a6,a7,j)+B.b.t(a6,i,a8) +l-=a7 +k-=a7 +j-=a7 +s=3+a7 +i-=s +h-=s +g-=s +a8=a6.length +a7=d}}e="http"}}else if(l===s&&B.b.aa(a6,"https",a7)){if(r&&j+4===i&&B.b.aa(a6,"443",j+1)){s=a7===0 +s +if(s){a6=B.b.bR(a6,j,i,"") +i-=4 +h-=4 +g-=4 +a8-=3}else{a6=B.b.t(a6,a7,j)+B.b.t(a6,i,a8) +l-=a7 +k-=a7 +j-=a7 +s=4+a7 +i-=s +h-=s +g-=s +a8=a6.length +a7=d}}e="https"}f=!q}}}}if(f){if(a7>0||a8a7)e=A.qB(a6,a7,l) +else{if(l===a7)A.eD(a6,a7,"Invalid empty scheme") +e=""}b=a5 +if(k>a7){a=l+3 +a0=a=c)n=0 +else{if(!(q>=0&&q=0&&b=0&&r=97&&o<=102)continue +if(p===46){if(q-1===b)return new A.aA(n,a,q) +r=q +break}return new A.aA("Unexpected character",a,q-1)}if(r-1===b)return new A.aA(n,a,r) +return new A.aA("Missing '.' in IPvFuture address",a,r)}if(r===c)return new A.aA("Missing address in IPvFuture address, host, cursor",null,null) +for(;;){if(!(r>=0&&r=0&&a4=a5)j=0 +else{if(!(n=97&&f<=102)g=f-87 +else break A +k=h}if(nm){if(j===46){if(k){if(p<=6){A.wP(a3,m,a5,s,p*2) +p+=2 +n=a5 +break}a2.$2(a1,m)}break}o=p*2 +e=B.f.b5(l,8) +if(!(o<16))return A.c(s,o) +s[o]=e;++o +if(!(o<16))return A.c(s,o) +s[o]=l&255;++p +if(j===58){if(p<8){++n +m=n +l=0 +k=!0 +continue}a2.$2(a1,n)}break}if(j===58){if(q<0){d=p+1;++n +q=p +p=d +m=n +continue}a2.$2("only one wildcard `::` is allowed",n)}if(q!==p-1)a2.$2("missing part",n) +break}if(n0){a=c*2 +a0=16-b*2 +B.k.ba(s,a0,16,s,a) +B.k.c4(s,a,a0,0)}}return s}, +hx(a,b,c,d,e,f,g){return new A.hw(a,b,c,d,e,f,g)}, +tC(a){if(a==="http")return 80 +if(a==="https")return 443 +return 0}, +eD(a,b,c){throw A.f(A.aB(c,a,b))}, +xx(a,b){var s,r,q +for(s=a.length,r=0;r=0&&b=0&&r=b&&o=b&&s=0&&r=o){if(h==null)h=new A.W("") +if(q=0&&r=n){if(p==null)p=new A.W("") +if(q=k)return"%" +s=b+1 +if(!(s>=0&&s=0))return A.c(a,l) +q=a.charCodeAt(l) +p=A.py(r) +o=A.py(q) +if(p<0||o<0)return"%" +n=p*16+o +if(n<127){if(!(n>=0))return A.c(m,n) +l=(m.charCodeAt(n)&1)!==0}else l=!1 +if(l)return A.a3(c&&65<=n&&90>=n?(n|32)>>>0:n) +if(r>=97||q>=97)return B.b.t(a,b,b+3).toUpperCase() +return null}, +qA(a){var s,r,q,p,o,n,m,l,k="0123456789ABCDEF" +if(a<=127){s=new Uint8Array(3) +s[0]=37 +r=a>>>4 +if(!(r<16))return A.c(k,r) +s[1]=k.charCodeAt(r) +s[2]=k.charCodeAt(a&15)}else{if(a>2047)if(a>65535){q=240 +p=4}else{q=224 +p=3}else{q=192 +p=2}r=3*p +s=new Uint8Array(r) +for(o=0;--p,p>=0;q=128){n=B.f.cI(a,6*p)&63|q +if(!(o>>4 +if(!(l<16))return A.c(k,l) +if(!(m=0&&q=m)return A.c(s,-1) +s.pop() +if(s.length===0)B.a.l(s,"")}p=!0}else{p="."===n +if(!p)B.a.l(s,n)}}if(p)B.a.l(s,"") +return B.a.aq(s,"/")}, +qD(a,b){var s,r,q,p,o,n +if(!A.tK(a))return!b?A.tD(a):a +s=A.i([],t.s) +for(r=a.split("/"),q=r.length,p=!1,o=0;o=s.length)return A.c(s,-1) +s.pop()}else B.a.l(s,"..") +p=!0}else{p="."===n +if(!p)B.a.l(s,n.length===0&&s.length===0?"./":n)}}if(s.length===0)return"./" +if(p)B.a.l(s,"") +if(!b){if(0>=s.length)return A.c(s,0) +B.a.k(s,0,A.tD(s[0]))}return B.a.aq(s,"/")}, +tD(a){var s,r,q,p=u.S,o=a.length +if(o>=2&&A.tE(a.charCodeAt(0)))for(s=1;s127)throw A.f(A.U("Illegal percent encoding in URI",null)) +if(r===37){if(n+3>o)throw A.f(A.U("Truncated URI",null)) +B.a.l(p,A.xz(a,n+1)) +n+=2}else B.a.l(p,r)}}return d.b0(p)}, +tE(a){var s=a|32 +return 97<=s&&s<=122}, +t0(a,b,c){var s,r,q,p,o,n,m,l,k="Invalid MIME type",j=A.i([b-1],t.Z) +for(s=a.length,r=b,q=-1,p=null;rb)throw A.f(A.aB(k,a,r)) +while(p!==44){B.a.l(j,r);++r +for(o=-1;r=0))return A.c(a,r) +p=a.charCodeAt(r) +if(p===61){if(o<0)o=r}else if(p===59||p===44)break}if(o>=0)B.a.l(j,o) +else{n=B.a.gA(j) +if(p!==44||r!==n+7||!B.b.aa(a,"base64",n+1))throw A.f(A.aB("Expecting '='",a,r)) +break}}B.a.l(j,r) +m=r+1 +if((j.length&1)===1)a=B.cJ.nz(a,m,s) +else{l=A.tL(a,m,s,256,!0,!1) +if(l!=null)a=B.b.bR(a,m,s,l)}return new A.nO(a,j,c)}, +u6(a,b,c,d,e){var s,r,q,p,o,n='\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe1\xe1\x01\xe1\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe3\xe1\xe1\x01\xe1\x01\xe1\xcd\x01\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x0e\x03\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01"\x01\xe1\x01\xe1\xac\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe1\xe1\x01\xe1\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xea\xe1\xe1\x01\xe1\x01\xe1\xcd\x01\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\n\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01"\x01\xe1\x01\xe1\xac\xeb\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\xeb\xeb\xeb\x8b\xeb\xeb\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\xeb\x83\xeb\xeb\x8b\xeb\x8b\xeb\xcd\x8b\xeb\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x92\x83\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\xeb\x8b\xeb\x8b\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xebD\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\x12D\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xe5\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\xe5\xe5\xe5\x05\xe5D\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe8\x8a\xe5\xe5\x05\xe5\x05\xe5\xcd\x05\xe5\x05\x05\x05\x05\x05\x05\x05\x05\x05\x8a\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05f\x05\xe5\x05\xe5\xac\xe5\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\xe5\xe5\xe5\x05\xe5D\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\x8a\xe5\xe5\x05\xe5\x05\xe5\xcd\x05\xe5\x05\x05\x05\x05\x05\x05\x05\x05\x05\x8a\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05f\x05\xe5\x05\xe5\xac\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7D\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\x8a\xe7\xe7\xe7\xe7\xe7\xe7\xcd\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\x8a\xe7\x07\x07\x07\x07\x07\x07\x07\x07\x07\xe7\xe7\xe7\xe7\xe7\xac\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7D\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\x8a\xe7\xe7\xe7\xe7\xe7\xe7\xcd\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\x8a\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\xe7\xe7\xe7\xe7\xe7\xac\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\x05\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\x10\xea\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\x12\n\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\v\n\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xec\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\xec\xec\xec\f\xec\xec\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\xec\xec\xec\xec\f\xec\f\xec\xcd\f\xec\f\f\f\f\f\f\f\f\f\xec\f\f\f\f\f\f\f\f\f\f\xec\f\xec\f\xec\f\xed\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\xed\xed\xed\r\xed\xed\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\xed\xed\xed\xed\r\xed\r\xed\xed\r\xed\r\r\r\r\r\r\r\r\r\xed\r\r\r\r\r\r\r\r\r\r\xed\r\xed\r\xed\r\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe1\xe1\x01\xe1\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xea\xe1\xe1\x01\xe1\x01\xe1\xcd\x01\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x0f\xea\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01"\x01\xe1\x01\xe1\xac\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe1\xe1\x01\xe1\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe9\xe1\xe1\x01\xe1\x01\xe1\xcd\x01\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\t\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01"\x01\xe1\x01\xe1\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\x11\xea\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xe9\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\v\t\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\x13\xea\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\v\xea\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xf5\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\x15\xf5\x15\x15\xf5\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\xf5\xf5\xf5\xf5\xf5\xf5' +for(s=a.length,r=b;r95)q=31 +p=d*96+q +if(!(p<2112))return A.c(n,p) +o=n.charCodeAt(p) +d=o&31 +B.a.k(e,o>>>5,r)}return d}, +tw(a){if(a.b===7&&B.b.T(a.a,"package")&&a.c<=0)return A.u8(a.a,a.e,a.f) +return-1}, +u8(a,b,c){var s,r,q,p +for(s=a.length,r=b,q=0;r=0&&r=1)return a.$1(b) +return a.$0()}, +zl(a,b){var s=new A.az($.am,b.h("az<0>")),r=new A.h8(s,b.h("h8<0>")) +a.then(A.eI(new A.pM(r,b),1),A.eI(new A.pN(r),1)) +return s}, +u2(a){return a==null||typeof a==="boolean"||typeof a==="number"||typeof a==="string"||a instanceof Int8Array||a instanceof Uint8Array||a instanceof Uint8ClampedArray||a instanceof Int16Array||a instanceof Uint16Array||a instanceof Int32Array||a instanceof Uint32Array||a instanceof Float32Array||a instanceof Float64Array||a instanceof ArrayBuffer||a instanceof DataView}, +uk(a){if(A.u2(a))return a +return new A.pr(new A.dJ(t.mp)).$1(a)}, +pM:function pM(a,b){this.a=a +this.b=b}, +pN:function pN(a){this.a=a}, +pr:function pr(a){this.a=a}, +ie:function ie(){}, +hQ:function hQ(a,b){this.a=a +this.b=b}, +r8(a,b,c){var s=new A.bQ(a,B.f.av(Date.now(),1000)) +s.Q=c +return s}, +bQ:function bQ(a,b){var _=this +_.a=a +_.b=420 +_.e=b +_.as=_.Q=null}, +dV:function dV(a,b){this.a=a +this.b=b}, +lG:function lG(a){this.a=a +this.c=this.b=0}, +vp(){return new A.lE()}, +lE:function lE(){var _=this +_.ax=_.at=_.as=_.Q=_.z=_.y=_.x=_.w=_.r=_.f=_.e=_.d=_.c=_.b=_.a=$ +_.ay=0 +_.ch=-1 +_.cx=_.CW=0 +_.fr=_.dy=_.dx=_.db=_.cy=$ +_.fx=0}, +op:function op(a){var _=this +_.a=-1 +_.r=_.f=0 +_.x=a}, +wX(a,b,c){var s,r,q,p,o +if(a.gN(a))return new Uint8Array(0) +s=new Uint8Array(A.hC(a.goC(a))) +r=c*2+2 +q=A.rE(A.rH(),64) +p=new A.nj(q) +q=q.b +q===$&&A.o() +p.c=new Uint8Array(q) +p.a=new A.nk(b,1000,r) +o=new Uint8Array(r) +return B.k.am(o,0,p.ml(s,0,o,0))}, +on:function on(a,b){this.c=a +this.d=b}, +h7:function h7(a,b){this.a=a +this.b=b}, +ks:function ks(a,b,c,d){var _=this +_.b=0 +_.c=a +_.w=_.r=_.f=_.e=_.d=0 +_.x="" +_.y=null +_.z=b +_.Q=null +_.at=c +_.ay=_.ax=null +_.ch=d}, +kt:function kt(){var _=this +_.as=_.Q=_.y=_.x=_.w=_.a=0 +_.at="" +_.ch=_.ax=null}, +oo:function oo(){this.a=$}, +iw(a){var s=new A.mz() +s.jT(a) +return s}, +mz:function mz(){this.a=$ +this.b=0 +this.c=2147483647}, +om:function om(){}, +p2:function p2(){}, +mD:function mD(a,b){var _=this +_.a=a +_.b=null +_.c=b +_.e=_.d=0}, +t_(a,b){var s,r,q,p=a.length,o=b.length +if(p!==o)return!1 +for(s=0,r=0;r>>8&255 +a[2]=b>>>16&255 +a[3]=b>>>24&255 +for(s=a.$flags|0,r=4;r<=15;++r){s&2&&A.t(a) +if(!(r<16))return A.c(a,r) +a[r]=0}}, +lD:function lD(a,b,c){var _=this +_.a=1 +_.b=a +_.c=b +_.d=c +_.r=null +_.x=_.w=$}, +i0:function i0(a,b){this.a=a +this.b=b}, +qW(a,b){b&=31 +return(a&$.aL[b])<>>0}, +ar(a,b){b&=31 +return(a>>>b|A.qW(a,32-b))>>>0}, +rG(a){var s,r=new A.fA() +if(A.lu(a))r.fu(a,null) +else{t.dl.a(a) +s=a.a +s===$&&A.o() +r.a=s +s=a.b +s===$&&A.o() +r.b=s}return r}, +rH(){var s=A.rG(0),r=new Uint8Array(4),q=t.S +q=new A.jx(s,r,B.cL,5,A.aD(5,0,!1,q),A.aD(80,0,!1,q)) +q.aL() +return q}, +rE(a,b){var s=new A.jv(a,b) +s.b=20 +s.d=new Uint8Array(b) +s.e=new Uint8Array(b+20) +return s}, +ni:function ni(){}, +nk:function nk(a,b,c){this.a=a +this.b=b +this.c=c}, +nh:function nh(){}, +fz:function fz(a){this.a=a}, +nj:function nj(a){this.a=$ +this.b=a +this.c=$}, +ju:function ju(){}, +jt:function jt(){}, +fA:function fA(){this.b=this.a=$}, +jw:function jw(){}, +jx:function jx(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=$ +_.d=c +_.e=d +_.f=e +_.r=f +_.w=$}, +jv:function jv(a,b){var _=this +_.a=a +_.b=$ +_.c=b +_.e=_.d=$}, +ng:function ng(){}, +nf:function nf(a){var _=this +_.a=0 +_.b=$ +_.c=!1 +_.d=a}, +fe:function fe(){}, +it:function it(a){this.a=a}, +bv(a,b,c,d){var s,r,q=new A.e_(b) +if(d==null)d=0 +if(c==null)c=J.b5(a)-d +s=J.ab(a) +if(d+c>s.gm(a))c=s.gm(a)-d +r=t.ev.b(a)?a:new Uint8Array(A.hC(a)) +s=J.dS(B.k.ga9(r),r.byteOffset+d,c) +q.b=s +q.d=s.length +return q}, +e_:function e_(a){var _=this +_.b=null +_.c=0 +_.d=$ +_.a=a}, +iN:function iN(){}, +mE:function mE(a){this.a=a}, +q6(a){var s=a==null?32768:a +return new A.fy(new Uint8Array(s))}, +fy:function fy(a){this.b=0 +this.c=a}, +jp:function jp(){}, +y_(a,b,c,d){var s,r,q,p=b.length +if(p===0)return c +s=d-p +if(s=0}else q=!1 +if(!q)break +if(r>s)return-1 +if(A.qR(a,c,d,r)&&A.qR(a,c,d,r+p))return r +c=r+1}return-1}return A.xV(a,b,c,d)}, +xV(a,b,c,d){var s,r,q,p=new A.cP(a,d,c,260) +for(s=b.length;r=p.cX(),r>=0;){q=r+s +if(q>d)break +if(B.b.aa(a,b,r)&&A.qR(a,c,d,q))return r}return-1}, +d3:function d3(a){this.a=a}, +fR:function fR(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +qR(a,b,c,d){var s,r,q,p +if(b=0&&m=65&&h<=90&&h+32===j +l=g}else l=!0 +else l=!1 +if(!l)break}if(l)return A.aw(p.n(0,b))}}return-1}, +wN(a){var s,r +if(a===24)return"%" +else for(s=0;s<28;++s){r=B.d1[s] +if(A.aw(r.n(0,"unit"))===a)return A.hB(r.n(0,"value"))}return""}, +rW(a){var s +A:{if(0===a){s="ERROR" +break A}if(1===a){s="end of file" +break A}if(2===a){s="(" +break A}if(3===a){s=")" +break A}if(4===a){s="[" +break A}if(5===a){s="]" +break A}if(6===a){s="{" +break A}if(7===a){s="}" +break A}if(8===a){s="." +break A}if(9===a){s=";" +break A}if(10===a){s="@" +break A}if(11===a){s="#" +break A}if(12===a){s="+" +break A}if(13===a){s=">" +break A}if(14===a){s="~" +break A}if(15===a){s="*" +break A}if(16===a){s="|" +break A}if(17===a){s=":" +break A}if(18===a){s="_" +break A}if(19===a){s="," +break A}if(20===a){s=" " +break A}if(21===a){s="\t" +break A}if(22===a){s="\n" +break A}if(23===a){s="\r" +break A}if(24===a){s="%" +break A}if(25===a){s="'" +break A}if(26===a){s='"' +break A}if(27===a){s="/" +break A}if(28===a){s="=" +break A}if(30===a){s="^" +break A}if(31===a){s="$" +break A}if(32===a){s="<" +break A}if(33===a){s="!" +break A}if(34===a){s="-" +break A}if(35===a){s="\\" +break A}s=A.O(A.ce("Unknown TOKEN"))}return s}, +rV(a){switch(a){case 641:case 642:case 643:case 644:case 645:case 646:case 647:case 648:case 649:case 650:case 651:case 652:case 653:case 654:case 655:case 656:case 600:case 601:case 602:case 603:case 604:case 605:case 606:case 607:case 608:case 609:case 610:case 612:case 613:case 614:case 615:case 617:case 627:case 628:return!0 +default:return!1}}, +jW(a){var s +if(!(a>=97&&a<=122))s=a>=65&&a<=90||a===95||a>=160||a===92 +else s=!0 +return s}, +kO:function kO(a){this.a=a +this.c=null +this.d=$}, +I:function I(a,b){this.a=a +this.b=b}, +iy:function iy(a,b,c){this.c=a +this.a=b +this.b=c}, +jV:function jV(a,b,c,d,e,f,g,h,i){var _=this +_.w=a +_.x=b +_.y=c +_.z=d +_.Q=e +_.a=f +_.b=g +_.c=h +_.e=_.d=!1 +_.f=i +_.r=0}, +nK:function nK(){}, +ec:function ec(a,b){this.a=a +this.b=b}, +eb:function eb(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +j4:function j4(a,b,c){this.a=a +this.b=b +this.c=c}, +no:function no(a){this.w=a}, +cs:function cs(a,b){this.b=a +this.a=b}, +d4:function d4(a){this.a=a}, +jT:function jT(a){this.a=a}, +jd:function jd(a){this.a=a}, +jJ:function jJ(a,b){this.b=a +this.a=b}, +d_:function d_(a,b){this.b=a +this.a=b}, +fL:function fL(a,b,c){this.b=a +this.c=b +this.a=c}, +ba:function ba(){}, +dh:function dh(a,b){this.b=a +this.a=b}, +j5:function j5(a,b,c){this.d=a +this.b=b +this.a=c}, +hW:function hW(a,b,c,d){var _=this +_.d=a +_.e=b +_.b=c +_.a=d}, +ix:function ix(a,b){this.b=a +this.a=b}, +i3:function i3(a,b){this.b=a +this.a=b}, +ed:function ed(a,b){this.b=a +this.a=b}, +ee:function ee(a,b,c){this.d=a +this.b=b +this.a=c}, +fD:function fD(a,b,c){this.f=a +this.b=b +this.a=c}, +jC:function jC(a,b,c){this.d=a +this.b=b +this.a=c}, +eh:function eh(a,b){this.b=a +this.a=b}, +je:function je(a,b,c){this.d=a +this.b=b +this.a=c}, +jn:function jn(a){this.a=a}, +jm:function jm(a){this.a=a}, +ak:function ak(a,b,c){this.c=a +this.d=b +this.a=c}, +jl:function jl(a,b,c){this.c=a +this.d=b +this.a=c}, +bA:function bA(){}, +j_:function j_(a,b,c,d){var _=this +_.f=a +_.c=b +_.d=c +_.a=d}, +jy:function jy(a,b,c){this.c=a +this.d=b +this.a=c}, +ib:function ib(a,b,c){this.c=a +this.d=b +this.a=c}, +is:function is(a,b,c){this.c=a +this.d=b +this.a=c}, +hN:function hN(a,b,c,d){var _=this +_.f=a +_.c=b +_.d=c +_.a=d}, +jU:function jU(a,b,c,d){var _=this +_.f=a +_.c=b +_.d=c +_.a=d}, +iv:function iv(a,b,c,d){var _=this +_.f=a +_.c=b +_.d=c +_.a=d}, +iu:function iu(a,b,c){this.c=a +this.d=b +this.a=c}, +jG:function jG(a,b,c,d){var _=this +_.f=a +_.c=b +_.d=c +_.a=d}, +i1:function i1(a,b,c,d){var _=this +_.f=a +_.c=b +_.d=c +_.a=d}, +jE:function jE(a,b,c,d){var _=this +_.f=a +_.c=b +_.d=c +_.a=d}, +j0:function j0(a,b,c,d){var _=this +_.f=a +_.c=b +_.d=c +_.a=d}, +k4:function k4(a,b,c,d){var _=this +_.f=a +_.c=b +_.d=c +_.a=d}, +N:function N(){}, +an:function an(){}, +k5:function k5(){}, +vE(a){var s,r=a.toLowerCase() +A:{if("application/xhtml+xml"===r||"text/html"===r){s=B.it +break A}if("application/x-dtbook+xml"===r){s=B.iu +break A}if("application/x-dtbncx+xml"===r){s=B.iA +break A}if("text/x-oeb1-document"===r){s=B.iB +break A}if("application/xml"===r){s=B.iC +break A}if("text/css"===r){s=B.iD +break A}if("text/x-oeb1-css"===r){s=B.iE +break A}if("image/gif"===r){s=B.iF +break A}if("image/jpeg"===r){s=B.iG +break A}if("image/png"===r){s=B.iH +break A}if("image/svg+xml"===r){s=B.iv +break A}if("image/bmp"===r){s=B.iw +break A}if("font/truetype"===r){s=B.ix +break A}if("font/opentype"===r||"application/vnd.ms-opentype"===r){s=B.iy +break A}s=B.iz +break A}return s}, +aS:function aS(a,b){this.a=a +this.b=b}, +ip:function ip(a,b,c){this.a=a +this.b=b +this.c=c}, +m6(a){var s=0,r=A.br(t.gw),q,p,o,n,m,l,k,j,i +var $async$m6=A.bs(function(b,c){if(b===1)return A.bo(c,r) +for(;;)switch(s){case 0:l=new A.oo().mk(A.bv(t.L.a(a),B.F,null,null),null,null,!1) +s=3 +return A.c3(A.fG(l),$async$m6) +case 3:k=c +j=k.a.b +i=B.a.cp(j.a,new A.m7(),new A.m8()) +j=j.b +p=A.x(j) +o=t.lS +n=A.aV(new A.a_(new A.R(j,p.h("e?(1)").a(new A.m9()),p.h("R<1,e?>")),o),o.h("h.E")) +m=B.a.aq(n,", ") +q=new A.eY(l,i,m,n,k,A.vB(new A.eY(l,i,m,n,k,null))) +s=1 +break +case 1:return A.bp(q,r)}}) +return A.bq($async$m6,r)}, +m7:function m7(){}, +m8:function m8(){}, +m9:function m9(){}, +vu(a){return A.vt(a)}, +vt(a){var s,r,q=A.aC(t.N,t.S),p=a.e.a,o=p.d.b,n=p.c.a +for(p=t.w,s=0;s=0)c.k(0,a,l)}for(a0=k.length,m=0;m=0)b.k(0,a,l)}for(i=0;i]*>(.*?)",!1),A.a4("]*>(.*?)

",!1),A.a4("]*>(.*?)",!1),A.a4("]*>(.*?)",!1)],t.im) +for(k=q,j=k.length,i=t.lg,h=0;h=e.length)return A.c(e,1) +e=e[1] +if(e==null)d=null +else{c=A.a4("<[^>]*>",!0) +d=B.b.bk(A.cO(e,c,""))}m=d +if(m!=null&&m.length!==0){l=B.b.d9(m,A.a4("\\s+",!0)) +if(J.b5(l)<=10)return m +else{k=l +j=A.x(k) +i=new A.cy(k,0,10,j.h("cy<1>")) +i.fN(k,0,10,j.c) +i=i.aq(0," ") +return i+"..."}}}}}catch(b){}k=A.a4("\\.[^.]+$",!0) +return A.cO(a0,k,"")}, +lJ:function lJ(a,b){this.a=a +this.b=b}, +lI:function lI(a,b){this.a=a +this.b=b}, +q4(a7,a8,a9){var s=0,r=A.br(t.kZ),q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6 +var $async$q4=A.bs(function(b0,b1){if(b0===1)return A.bo(b1,r) +for(;;)switch(s){case 0:if(a9.a===B.bG){p=a9.d.a +if(p==null||p.length===0)throw A.f(A.P("EPUB parsing error: TOC ID is empty.")) +o=A.bI(a9.c.a,new A.mX(p),t.w) +if(o==null)throw A.f(A.P("EPUB parsing error: TOC item "+p+" not found in EPUB manifest.")) +$.cY=A.qm(a8,o.b) +n=A.bI(new A.cE(a7.a,t.bW),new A.mY(),t.u) +if(n==null)throw A.f(A.P("EPUB parsing error: TOC file "+A.k($.cY)+" not found in archive.")) +m=n.bQ() +l=B.E.b0(m==null?$.dc():m) +m=t.P +k=A.e3(A.b1(new A.c1(A.nW(l)),"ncx","http://www.daisy.org/z3986/2005/ncx/"),m) +if(k==null)throw A.f(A.P("EPUB parsing error: TOC file does not contain ncx element.")) +j=A.e3(A.b1(new A.c1(k),"head","http://www.daisy.org/z3986/2005/ncx/"),m) +if(j==null)throw A.f(A.P(u.C)) +i=A.w8(j) +h=k.w$ +g=A.e3(A.b1(h,"docTitle","http://www.daisy.org/z3986/2005/ncx/"),m) +if(g==null)throw A.f(A.P("EPUB parsing error: TOC file does not contain docTitle element.")) +f=A.w7(g) +e=A.b1(h,"docAuthor","http://www.daisy.org/z3986/2005/ncx/") +d=e.$ti +c=d.h("b8<1,cm>") +b=A.aV(new A.b8(e,d.h("cm(1)").a(new A.mZ()),c),c.h("h.E")) +a=A.e3(A.b1(h,"navMap","http://www.daisy.org/z3986/2005/ncx/"),m) +if(a==null)throw A.f(A.P("EPUB parsing error: TOC file does not contain navMap element.")) +a0=A.wa(a) +a1=A.e3(A.b1(h,"pageList","http://www.daisy.org/z3986/2005/ncx/"),m) +A:{if(a1 instanceof A.aF){m=A.wb(a1) +break A}if(a1==null){m=null +break A}throw A.f(new A.jD("None of the patterns in the switch expression the matched input value. See https://github.com/dart-lang/language/issues/3488 for details."))}h=A.b1(h,"navList","http://www.daisy.org/z3986/2005/ncx/") +e=h.$ti +d=e.h("b8<1,cn>") +a2=A.aV(new A.b8(h,e.h("cn(1)").a(new A.n_()),d),d.h("h.E")) +q=new A.f2(i,f,b,a0,m,a2) +s=1 +break}else{o=A.bI(a9.c.a,new A.n0(),t.w) +if(o==null)throw A.f(A.P("EPUB parsing error: TOC item, not found in EPUB manifest.")) +$.cY=A.qm(a8,o.b) +n=A.bI(new A.cE(a7.a,t.bW),new A.n1(),t.u) +if(n==null)throw A.f(A.P("EPUB parsing error: TOC file "+A.k($.cY)+" not found in archive.")) +a3=A.i($.cY.split("/"),t.s) +m=a3.length +if(m!==0){if(0>=m){q=A.c(a3,-1) +s=1 +break}a3.pop()}if(a3.length!==0)B.a.d2(a3,0) +$.cY=a3.length===0?"":B.a.aq(a3,"/")+"/" +m=n.bQ() +a4=B.E.b0(m==null?$.dc():m) +a5=A.nW(a4) +m=t.P +if(A.e3(A.b1(new A.c1(a5),"head",null),m)==null)throw A.f(A.P(u.C)) +a6=A.e3(A.b1(new A.c1(a5),"nav",null),m) +if(a6==null)throw A.f(A.P(u.C)) +q=new A.f2(null,new A.f4(a9.b.a),B.j7,A.rB(A.b1(a6.w$,"ol",null).gbU(0)),null,B.j8) +s=1 +break}case 1:return A.bp(q,r)}}) +return A.bq($async$q4,r)}, +q5(a){var s,r,q,p,o,n +for(s=a.y$.a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=null,p=null;s.p();){o=s.d +if(o==null)o=r.a(o) +n=o.b +switch(o.a.ga_().toLowerCase()){case"id":q=n +break +case"src":p=n +break}}if(p==null||p.length===0)throw A.f(A.P("Incorrect EPUB navigation content: content source is missing.")) +return new A.f3(q,p)}, +w5(a){var s,r,q,p,o,n +for(s=a.y$.a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=null,p=null;s.p();){o=s.d +if(o==null)o=r.a(o) +n=o.b +switch(o.a.ga_().toLowerCase()){case"id":q=n +break +case"href":o=$.cY +p=o.length<2||B.b.T(n,o)?n:$.pT().dP(o+n) +break}}return new A.f3(q,p)}, +w6(a){var s=A.i([],t.s) +new A.a_(a.w$.a,t.C).X(0,new A.mM(s)) +return new A.cm(s)}, +w7(a){var s=A.i([],t.s) +new A.a_(a.w$.a,t.C).X(0,new A.mN(s)) +return new A.f4(s)}, +w8(a){var s=A.i([],t.hJ) +new A.a_(a.w$.a,t.C).X(0,new A.mO(s)) +return new A.il(s)}, +mP(a){var s=A.bI(A.b1(a.w$,"text",a.b.gcV()),new A.mQ(),t.P) +if(s==null)throw A.f(A.P("Incorrect EPUB navigation label: label text element is missing.")) +return new A.cS(A.cH(s))}, +w9(a){var s,r,q,p,o,n,m,l,k +for(s=a.y$.a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=null,p=null;s.p();){o=s.d +if(o==null)o=r.a(o) +n=o.b +switch(o.a.ga_().toLowerCase()){case"id":q=n +break +case"class":p=n +break}}m=A.i([],t.lu) +l=A.i([],t.cJ) +for(s=B.a.gF(a.w$.a),r=new A.bZ(s,t.k7),o=t.P;r.p();){k=o.a(s.gB()) +switch(k.b.ga_().toLowerCase()){case"navlabel":B.a.l(m,A.mP(k)) +break +case"navtarget":B.a.l(l,A.we(k)) +break}}return new A.cn(q,p,m,l)}, +wa(a){var s=A.i([],t.nS) +new A.a_(a.w$.a,t.C).X(0,new A.mS(s)) +return new A.f6(s)}, +rB(a){var s=A.i([],t.nS) +new A.a_(a.w$.a,t.C).X(0,new A.mR(s)) +return new A.f6(s)}, +wb(a){var s,r,q,p,o=A.i([],t.mt) +for(s=B.a.gF(a.w$.a),r=new A.bZ(s,t.k7),q=t.P;r.p();){p=q.a(s.gB()) +if(p.b.ga_().toLowerCase()==="pagetarget")B.a.l(o,A.wc(p))}return new A.im(o)}, +wc(a){var s,r,q,p,o,n,m,l,k,j,i=null +for(s=a.y$.a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=t.m9,p=i,o=p,n=o,m=n;s.p();){l=s.d +if(l==null)l=r.a(l) +k=l.b +switch(l.a.ga_().toLowerCase()){case"id":m=k +break +case"value":n=k +break +case"type":new A.ig(B.jb,q).iN(k) +break +case"class":o=k +break +case"playorder":p=k +break}}j=A.i([],t.lu) +new A.a_(a.w$.a,t.C).X(0,new A.mT(j)) +if(j.length===0)throw A.f(A.P("Incorrect EPUB navigation page target: at least one navLabel element is required.")) +return new A.f7(m,n,i,o,p,j,i)}, +rC(a){var s,r,q,p,o,n,m,l,k,j="EPUB parsing error: navigation point ",i={} +for(s=a.y$.a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=null,p=null,o=null;s.p();){n=s.d +if(n==null)n=r.a(n) +m=n.b +switch(n.a.ga_().toLowerCase()){case"id":q=m +break +case"class":p=m +break +case"playorder":o=m +break}}if(q==null||q.length===0)throw A.f(A.P("Incorrect EPUB navigation point: point ID is missing.")) +i.a=null +l=A.i([],t.lu) +k=A.i([],t.nS) +new A.a_(a.w$.a,t.C).X(0,new A.mV(i,l,k)) +if(l.length===0)throw A.f(A.P(j+q+" should contain at least one navigation label.")) +s=i.a +if(s==null)throw A.f(A.P(j+q+" should contain content.")) +return new A.co(q,p,o,l,s,k)}, +wd(a){var s,r,q={} +q.a=null +s=A.i([],t.lu) +r=A.i([],t.nS) +new A.a_(a.w$.a,t.C).X(0,new A.mU(q,s,r)) +if(s.length===0)throw A.f(A.P("EPUB parsing error: navigation point null should contain at least one navigation label.")) +q=q.a +if(q==null)throw A.f(A.P("EPUB parsing error: navigation point null should contain content.")) +return new A.co(null,null,null,s,q,r)}, +we(a){var s,r,q,p,o,n,m,l,k,j=null,i={} +for(s=a.y$.a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=j,p=q,o=p,n=o;s.p();){m=s.d +if(m==null)m=r.a(m) +l=m.b +switch(m.a.ga_().toLowerCase()){case"id":n=l +break +case"value":p=l +break +case"class":o=l +break +case"playorder":q=l +break}}if(n==null||n.length===0)throw A.f(A.P("Incorrect EPUB navigation target: navigation target ID is missing.")) +k=A.i([],t.lu) +i.a=null +new A.a_(a.w$.a,t.C).X(0,new A.mW(i,k)) +if(k.length===0)throw A.f(A.P("Incorrect EPUB navigation target: at least one navLabel element is required.")) +return new A.f8(n,o,p,q,k,i.a)}, +mX:function mX(a){this.a=a}, +mY:function mY(){}, +mZ:function mZ(){}, +n_:function n_(){}, +n0:function n0(){}, +n1:function n1(){}, +mM:function mM(a){this.a=a}, +mN:function mN(a){this.a=a}, +mO:function mO(a){this.a=a}, +mQ:function mQ(){}, +mS:function mS(a){this.a=a}, +mR:function mR(a){this.a=a}, +mT:function mT(a){this.a=a}, +mV:function mV(a,b,c){this.a=a +this.b=b +this.c=c}, +mU:function mU(a,b,c){this.a=a +this.b=b +this.c=c}, +mW:function mW(a,b){this.a=a +this.b=b}, +wg(a){var s=A.i([],t.mE) +new A.a_(a.w$.a,t.C).X(0,new A.n4(s)) +return new A.ii(s)}, +wh(a){var s=A.i([],t.bz) +new A.a_(a.w$.a,t.C).X(0,new A.n5(s)) +return new A.ij(s)}, +wi(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c={} +c.a=null +s=t.s +r=A.i([],s) +q=A.i([],t.bS) +p=A.i([],s) +o=A.i([],s) +n=A.i([],t.l6) +m=A.i([],t.oc) +l=A.i([],s) +k=A.i([],s) +j=A.i([],t.oj) +i=A.i([],s) +h=A.i([],s) +g=A.i([],s) +f=A.i([],s) +e=A.i([],s) +d=A.i([],t.ik) +new A.a_(a.w$.a,t.C).X(0,new A.n6(c,r,q,p,o,n,m,l,k,j,i,h,g,f,e,b,d)) +return new A.ik(r,q,p,c.a,o,n,m,l,k,j,i,h,g,f,e,d)}, +wj(a){var s,r,q,p,o,n +for(s=a.y$.a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=null,p=null;s.p();){o=s.d +if(o==null)o=r.a(o) +n=o.b +switch(o.a.ga_().toLowerCase()){case"role":q=n +break +case"file-as":p=n +break}}return new A.f_(A.cH(a),p,q)}, +wk(a){var s,r,q,p,o,n +for(s=a.y$.a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=null,p=null;s.p();){o=s.d +if(o==null)o=r.a(o) +n=o.b +switch(o.a.ga_().toLowerCase()){case"role":q=n +break +case"file-as":p=n +break}}return new A.dk(A.cH(a),p,q)}, +wl(a){var s,r,q,p,o,n +for(s=a.y$.a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=null,p=null;s.p();){o=s.d +if(o==null)o=r.a(o) +n=o.b +switch(o.a.ga_().toLowerCase()){case"id":q=n +break +case"scheme":p=n +break}}return new A.f1(q,p,A.cH(a))}, +wm(a){var s,r,q,p,o,n,m=null +for(s=a.y$.a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=m,p=q;s.p();){o=s.d +if(o==null)o=r.a(o) +n=o.b +switch(o.a.ga_().toLowerCase()){case"name":p=n +break +case"content":q=n +break}}return new A.cR(p,q,m,m,m,m,B.Ac)}, +wn(a){var s,r,q,p,o,n,m,l,k=null,j=t.N,i=A.aC(j,j) +for(j=a.y$.a,s=A.x(j),j=new J.J(j,j.length,s.h("J<1>")),s=s.c,r=k,q=r,p=q,o=p;j.p();){n=j.d +if(n==null)n=s.a(n) +m=n.b +l=n.a.ga_().toLowerCase() +i.k(0,l,m) +switch(l){case"id":o=m +break +case"refines":p=m +break +case"property":q=m +break +case"scheme":r=m +break}}return new A.cR(k,A.cH(a),o,p,q,r,i)}, +q7(a,a0){var s=0,r=A.br(t.hl),q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b +var $async$q7=A.bs(function(a1,a2){if(a1===1)return A.bo(a2,r) +for(;;)switch(s){case 0:b=A.bI(new A.cE(a.a,t.bW),new A.n7(a0),t.u) +if(b==null)throw A.f(A.P("EPUB parsing error: root file not found in archive.")) +p=b.bQ() +o=B.E.b0(p==null?$.dc():p) +n=A.b1(A.nW(o).w$,"package","http://www.idpf.org/2007/opf").co(0,new A.n8()) +m=n.cb("version") +if(m==="2.0")l=B.bG +else{if(m!=="3.0")throw A.f(A.P("Unsupported EPUB version: "+A.k(m)+".")) +l=B.cT}p=n.w$ +k=A.b1(p,"metadata","http://www.idpf.org/2007/opf") +j=t.q +i=A.eM(k,k.$ti.h("h.E"),j).co(0,new A.n9()) +if(i==null)throw A.f(A.P("EPUB parsing error: metadata not found in the package.")) +h=A.wi(i,l) +k=A.b1(p,"manifest","http://www.idpf.org/2007/opf") +g=A.eM(k,k.$ti.h("h.E"),j).co(0,new A.na()) +if(g==null)throw A.f(A.P("EPUB parsing error: manifest not found in the package.")) +f=A.wh(g) +k=A.b1(p,"spine","http://www.idpf.org/2007/opf") +e=A.eM(k,k.$ti.h("h.E"),j).co(0,new A.nb()) +if(e==null)throw A.f(A.P("EPUB parsing error: spine not found in the package.")) +d=A.wo(e) +c=A.bI(A.b1(p,"guide","http://www.idpf.org/2007/opf"),new A.nc(),t.P) +q=new A.io(l,h,f,d,c!=null?A.wg(c):null) +s=1 +break +case 1:return A.bp(q,r)}}) +return A.bq($async$q7,r)}, +wo(a){var s=A.i([],t.jA),r=a.cb("toc"),q=a.cb("page-progression-direction"),p=q==null||q.toLowerCase()==="ltr" +new A.a_(a.w$.a,t.C).X(0,new A.nd(s)) +return new A.iq(r,s,p)}, +n4:function n4(a){this.a=a}, +n5:function n5(a){this.a=a}, +n6:function n6(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i +_.y=j +_.z=k +_.Q=l +_.as=m +_.at=n +_.ax=o +_.ay=p +_.ch=q}, +n7:function n7(a){this.a=a}, +n8:function n8(){}, +n9:function n9(){}, +na:function na(){}, +nb:function nb(){}, +nc:function nc(){}, +nd:function nd(a){this.a=a}, +qc(a){var s=0,r=A.br(t.jv),q,p,o,n,m +var $async$qc=A.bs(function(b,c){if(b===1)return A.bo(c,r) +for(;;)switch(s){case 0:m=A.bI(new A.cE(a.a,t.bW),new A.nz(),t.u) +if(m==null)throw A.f(A.P("EPUB parsing error: META-INF/container.xml file not found in archive.")) +p=m.bQ() +o=B.E.b0(p==null?$.dc():p) +p=t.P +n=A.bI(A.b1(new A.c1(A.nW(o)),"container","urn:oasis:names:tc:opendocument:xmlns:container"),new A.nA(),p) +if(n==null)throw A.f(A.P("EPUB parsing error: Invalid epub container")) +q=p.a(A.bI(new A.c1(n),new A.nB(),t.I)).cb("full-path") +s=1 +break +case 1:return A.bp(q,r)}}) +return A.bq($async$qc,r)}, +nz:function nz(){}, +nA:function nA(){}, +nB:function nB(){}, +eY:function eY(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +bg:function bg(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bu:function bu(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +di:function di(){}, +lR:function lR(a){this.a=a}, +ih:function ih(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +fb:function fb(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +f3:function f3(a,b){this.a=a +this.b=b}, +f2:function f2(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +cm:function cm(a){this.a=a}, +f4:function f4(a){this.a=a}, +il:function il(a){this.a=a}, +f5:function f5(a,b,c){this.a=a +this.b=b +this.c=c}, +cS:function cS(a){this.a=a}, +cn:function cn(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +f6:function f6(a){this.a=a}, +im:function im(a){this.a=a}, +f7:function f7(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +cT:function cT(a,b){this.a=a +this.b=b}, +co:function co(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +f8:function f8(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +ii:function ii(a){this.a=a}, +eZ:function eZ(a,b,c){this.a=a +this.b=b +this.c=c}, +ij:function ij(a){this.a=a}, +dj:function dj(a,b,c,d,e,f,g,h,i){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i}, +ik:function ik(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i +_.y=j +_.z=k +_.Q=l +_.as=m +_.at=n +_.ax=o +_.ay=p}, +f_:function f_(a,b,c){this.a=a +this.b=b +this.c=c}, +dk:function dk(a,b,c){this.a=a +this.b=b +this.c=c}, +f0:function f0(a,b){this.a=a +this.b=b}, +f1:function f1(a,b,c){this.a=a +this.b=b +this.c=c}, +cR:function cR(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +io:function io(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +iq:function iq(a,b,c){this.a=a +this.b=b +this.c=c}, +fa:function fa(a,b){this.a=a +this.b=b}, +ir:function ir(a,b){this.a=a +this.b=b}, +ig:function ig(a,b){this.a=a +this.$ti=b}, +lQ:function lQ(a,b){this.a=a +this.b=b}, +rj(){return new A.eT(A.ac(t.K,t.N))}, +rk(a,b,c){return new A.i9(a,b,c,A.ac(t.K,t.N))}, +qf(a){return new A.bY(a,A.ac(t.K,t.N))}, +pW(a,b){return new A.a6(b,a,A.ac(t.K,t.N))}, +vD(a){var s +if(a==null||a==="http://www.w3.org/1999/xhtml"||a==="http://www.w3.org/1998/Math/MathML"||a==="http://www.w3.org/2000/svg")return"" +s=A.rA(a) +return s==null?"":s+":"}, +rh(a){return new A.i6(a,A.ac(t.K,t.N))}, +aN:function aN(a,b,c){this.a=a +this.b=b +this.c=c}, +kN:function kN(){}, +oQ:function oQ(){}, +kG:function kG(){}, +al:function al(){}, +eT:function eT(a){var _=this +_.a=null +_.b=a +_.d=_.c=$ +_.e=null}, +i9:function i9(a,b,c,d){var _=this +_.w=a +_.x=b +_.y=c +_.a=null +_.b=d +_.d=_.c=$ +_.e=null}, +bY:function bY(a,b){var _=this +_.w=a +_.a=null +_.b=b +_.d=_.c=$ +_.e=null}, +a6:function a6(a,b,c){var _=this +_.w=a +_.x=b +_.a=null +_.b=c +_.d=_.c=$ +_.e=null}, +lO:function lO(a){this.a=a}, +i6:function i6(a,b){var _=this +_.w=a +_.a=null +_.b=b +_.d=_.c=$ +_.e=null}, +jh:function jh(a,b){this.b=a +this.a=b}, +kD:function kD(){}, +kE:function kE(){}, +kF:function kF(){}, +kH:function kH(){}, +kI:function kI(){}, +uz(a){var s,r,q=A.i([],t.bD),p=A.i([],t.il),o=A.i([],t.lB) +p=new A.nL("http://www.w3.org/1999/xhtml",p,new A.hH(o)) +p.aL() +o=A.q1(t.N) +s=A.i([],t.Z) +s=new A.mw(A.yD(null),!1,null,o,s) +s.f=new A.af(a) +s.a="utf-8" +s.aL() +o=new A.ff(s,!0,!0,!1,A.q1(t.nU),new A.W(""),new A.W(""),new A.W("")) +o.aL() +r=new A.mx(!1,o,p,q) +o.f=r +r.kD() +p=p.b +p===$&&A.o() +return p}, +mx:function mx(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=!1 +_.r="no quirks" +_.w=null +_.x=$ +_.y=null +_.z=!0 +_.ok=_.k4=_.k3=_.k2=_.k1=_.id=_.go=_.fy=_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=$}, +a9:function a9(){}, +nm:function nm(a){this.a=a}, +nl:function nl(a){this.a=a}, +iM:function iM(a,b){this.a=a +this.b=b}, +hZ:function hZ(a,b){this.a=a +this.b=b}, +hY:function hY(a,b){this.a=a +this.b=b}, +iF:function iF(a,b){this.a=a +this.b=b}, +hM:function hM(a,b){this.a=a +this.b=b}, +iz:function iz(a,b){this.c=!1 +this.a=a +this.b=b}, +mB:function mB(a){this.a=a}, +mA:function mA(a){this.a=a}, +jS:function jS(a,b){this.a=a +this.b=b}, +iK:function iK(a,b){this.a=a +this.b=b}, +fg:function fg(a,b,c){var _=this +_.c=null +_.d=a +_.a=b +_.b=c}, +mC:function mC(){}, +iA:function iA(a,b){this.a=a +this.b=b}, +iC:function iC(a,b){this.a=a +this.b=b}, +iJ:function iJ(a,b){this.a=a +this.b=b}, +iG:function iG(a,b){this.a=a +this.b=b}, +iB:function iB(a,b){this.a=a +this.b=b}, +iI:function iI(a,b){this.a=a +this.b=b}, +iH:function iH(a,b){this.a=a +this.b=b}, +iD:function iD(a,b){this.a=a +this.b=b}, +hK:function hK(a,b){this.a=a +this.b=b}, +iE:function iE(a,b){this.a=a +this.b=b}, +hL:function hL(a,b){this.a=a +this.b=b}, +hI:function hI(a,b){this.a=a +this.b=b}, +hJ:function hJ(a,b){this.a=a +this.b=b}, +b9:function b9(a,b,c){this.a=a +this.b=b +this.c=c}, +rA(a){var s +A:{if("http://www.w3.org/1999/xhtml"===a){s="html" +break A}if("http://www.w3.org/1998/Math/MathML"===a){s="math" +break A}if("http://www.w3.org/2000/svg"===a){s="svg" +break A}if("http://www.w3.org/1999/xlink"===a){s="xlink" +break A}if("http://www.w3.org/XML/1998/namespace"===a){s="xml" +break A}if("http://www.w3.org/2000/xmlns/"===a){s="xmlns" +break A}s=null +break A}return s}, +a7(a){A.hB(a) +if(a==null)return!1 +if(0>=a.length)return A.c(a,0) +return A.qT(a.charCodeAt(0))}, +qT(a){switch(a){case 9:case 10:case 12:case 13:case 32:return!0}return!1}, +b3(a){var s,r +if(a==null)return!1 +if(0>=a.length)return A.c(a,0) +s=a.charCodeAt(0) +if(!(s>=97&&s<=122))r=s>=65&&s<=90 +else r=!0 +return r}, +pD(a){var s +if(a==null)return!1 +if(0>=a.length)return A.c(a,0) +s=a.charCodeAt(0) +return s>=48&&s<58}, +ut(a){if(a==null)return!1 +if(0>=a.length)return A.c(a,0) +switch(a.charCodeAt(0)){case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:case 65:case 66:case 67:case 68:case 69:case 70:case 97:case 98:case 99:case 100:case 101:case 102:return!0}return!1}, +c9(a){var s=new A.af(a) +if(s.aH(s,A.yI())){s=t.G +return A.ay(new A.R(new A.af(a),s.h("b(D.E)").a(A.yH()),s.h("R")),0,null)}return a}, +vo(a){A.aw(a) +return a>=65&&a<=90}, +vn(a){A.aw(a) +return a>=65&&a<=90?a+97-65:a}, +nx:function nx(){}, +ia:function ia(a){this.a=a}, +kB:function kB(){}, +qs(a){return new A.ew()}, +lP:function lP(a){this.a=a +this.b=-1}, +lK:function lK(a){this.a=a}, +ew:function ew(){}, +y6(a){if(32<=a&&a<=126)return!1 +if(1<=a&&a<=8)return!0 +if(14<=a&&a<=31)return!0 +if(127<=a&&a<=159)return!0 +if(55296<=a&&a<=57343)return!0 +if(64976<=a&&a<=65007)return!0 +switch(a){case 11:case 65534:case 65535:case 131070:case 131071:case 196606:case 196607:case 262142:case 262143:case 327678:case 327679:case 393214:case 393215:case 458750:case 458751:case 524286:case 524287:case 589822:case 589823:case 655358:case 655359:case 720894:case 720895:case 786430:case 786431:case 851966:case 851967:case 917502:case 917503:case 983038:case 983039:case 1048574:case 1048575:case 1114110:case 1114111:return!0}return!1}, +yD(a){var s=A.a4("[\t-\r -/:-@[-`{-~]",!0) +if(a==null)return null +return B.vX.n(0,A.cO(a,s,"").toLowerCase())}, +xP(a,b){var s +A:{if("ascii"===a){s=new A.af(B.id.b0(b)) +break A}if("utf-8"===a){s=new A.af(B.E.b0(b)) +break A}s=A.O(A.U("Encoding "+a+" not supported",null))}return s}, +mw:function mw(a,b,c,d,e){var _=this +_.a=a +_.b=!0 +_.c=b +_.d=c +_.f=_.e=null +_.r=d +_.w=null +_.x=e +_.y=0}, +b7:function b7(){}, +zm(a,b){var s=A.i([],t.il) +new A.d0().f8(a,A.qI(b),s) +return s}, +qI(a){var s,r,q,p=null,o=t.kU,n=A.i([],o),m=t.m3.a(B.a.ghE(n)) +o=A.i([],o) +$.eE.b=new A.j4(m,B.hx,o) +o=new A.af(a) +m=A.i([0],t.Z) +s=o.gm(0) +r=new A.jL(p,m,new Uint32Array(s)) +r.fM(o,p) +o=new A.jV(85,117,43,63,new A.af("CDATA"),r,a,!0,0) +m=new A.kO(o) +m.d=o.c7() +o=o.e=!0 +q=m.io() +if(q!=null?n.length!==0:o)throw A.f(A.aB("'"+a+"' is not a valid selector: "+A.k(n),p,p)) +return q}, +rR(a){switch(a){case"before":case"after":case"first-line":case"first-letter":return!0 +default:return!1}}, +wG(a){var s,r +while(a!=null){s=a.b.n(0,"lang") +if(s!=null)return s +r=a.a +a=r instanceof A.a6?r:null}return null}, +d0:function d0(){this.a=null}, +nE:function nE(){}, +nF:function nF(){}, +nD:function nD(){}, +nC:function nC(a){this.a=a}, +aZ(a,b,c,d){return new A.d2(b==null?A.ac(t.K,t.N):b,c,a,d)}, +bl:function bl(){}, +cA:function cA(){}, +d2:function d2(a,b,c,d){var _=this +_.e=a +_.r=!1 +_.w=b +_.b=c +_.c=d +_.a=null}, +H:function H(a,b){this.b=a +this.c=b +this.a=null}, +bK:function bK(){}, +j:function j(a,b,c){var _=this +_.e=a +_.b=b +_.c=c +_.a=null}, +B:function B(a,b){this.b=a +this.c=b +this.a=null}, +dB:function dB(a,b){this.b=a +this.c=b +this.a=null}, +dU:function dU(a,b){this.b=a +this.c=b +this.a=null}, +eS:function eS(a){var _=this +_.c=_.b=null +_.d="" +_.e=a +_.a=null}, +jQ:function jQ(){this.a=null +this.b=$}, +ff:function ff(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.f=null +_.r=e +_.w=null +_.x=$ +_.y=f +_.z=$ +_.at=_.as=_.Q=null +_.ax=g +_.ay=h}, +my:function my(a){this.a=a}, +yj(a,b){var s,r,q=a.a +if(q!==b.a)return!1 +if(q===0)return!0 +for(q=new A.cv(a,a.r,a.e,A.w(a).h("cv<1>"));q.p();){s=q.d +r=b.n(0,s) +if(r==null&&!b.a8(s))return!1 +if(a.n(0,s)!=r)return!1}return!0}, +rY(a,b,c,d){var s,r,q,p,o=a.gO() +if(d==null)if(!o.gN(o)&&o.gA(o) instanceof A.bY){s=t.oI.a(o.gA(o)) +s.hL(b) +if(c!=null){r=c.a +q=s.e +s.e=r.K(A.cU(q.a,q.b).b,A.cU(r,c.c).b)}}else{r=A.qf(b) +r.e=c +o.l(0,r)}else{p=o.al(o,d) +if(p>0){r=p-1 +q=o.a +if(!(r=0&&rs?s:c)}, +qL(a){var s,r +for(s=a.length,r=0;r")),m=m.c;j.p();){l=j.d +n.$2(l==null?m.a(l):l,B.bi)}o.$0() +return A.v(["blocks",s,"anchors",q,"length",k.a],r,t.X)}, +pf:function pf(a,b,c){this.a=a +this.b=b +this.c=c}, +pg:function pg(){}, +ph:function ph(){}, +pi:function pi(){}, +pj:function pj(a,b){this.a=a +this.b=b}, +pk:function pk(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +pl:function pl(){}, +pL(a,b){return A.zk(a,b)}, +zk(a,b){var s=0,r=A.br(t.f),q,p=2,o=[],n,m,l,k,j,i +var $async$pL=A.bs(function(c,d){if(c===1){o.push(d) +s=p}for(;;)switch(s){case 0:p=4 +j=A +i=b.n(0,"id") +s=7 +return A.c3(a.eI(A.q(b.n(0,"command")),b.n(0,"argument")),$async$pL) +case 7:m=j.v(["id",i,"result",d],t.N,t.X) +q=m +s=1 +break +p=2 +s=6 +break +case 4:p=3 +k=o.pop() +m=A.bP(k) +if(m instanceof A.f9){n=m +m=b.n(0,"id") +n.toString +n.toString +q=A.v(["id",m,"error","unsupportedFixedLayout","message","Fixed-layout EPUB documents are not supported."],t.N,t.X) +s=1 +break}else{m=A.v(["id",b.n(0,"id"),"error","invalidDocument","message","The EPUB document or chapter is invalid or malformed."],t.N,t.X) +q=m +s=1 +break}s=6 +break +case 3:s=2 +break +case 6:case 1:return A.bp(q,r) +case 2:return A.bo(o.at(-1),r)}}) +return A.bq($async$pL,r)}, +lS:function lS(a,b){this.a=null +this.b=a +this.c=b}, +lU:function lU(){}, +m1:function m1(a,b){this.a=a +this.b=b}, +m_:function m_(a){this.a=a}, +m0:function m0(a){this.a=a}, +lV:function lV(a){this.a=a}, +lW:function lW(a){this.a=a}, +lX:function lX(){}, +lY:function lY(){}, +lZ:function lZ(){}, +lT:function lT(){}, +m4:function m4(a,b){this.a=a +this.b=b}, +m5:function m5(){}, +m2:function m2(){}, +m3:function m3(){}, +f9:function f9(){}, +u3(a){return a}, +ua(a,b){var s,r,q,p,o,n,m,l +for(s=b.length,r=1;r=1;s=q){q=s-1 +if(b[q]!=null)break}p=new A.W("") +o=a+"(" +p.a=o +n=A.x(b) +m=n.h("cy<1>") +l=new A.cy(b,0,s,m) +l.fN(b,0,s,n.c) +m=o+new A.R(l,m.h("e(G.E)").a(new A.pc()),m.h("R")).aq(0,", ") +p.a=m +p.a=m+("): part "+(r-1)+" was null, but part "+r+" was not.") +throw A.f(A.U(p.j(0),null))}}, +lL:function lL(a){this.a=a}, +lM:function lM(){}, +lN:function lN(){}, +pc:function pc(){}, +e1:function e1(){}, +jq(a,b){var s,r,q,p,o,n,m=b.iP(a) +b.bO(a) +if(m!=null)a=B.b.ab(a,m.length) +s=t.s +r=A.i([],s) +q=A.i([],s) +s=a.length +if(s!==0){if(0>=s)return A.c(a,0) +p=b.by(a.charCodeAt(0))}else p=!1 +if(p){if(0>=s)return A.c(a,0) +B.a.l(q,a[0]) +o=1}else{B.a.l(q,"") +o=0}for(n=o;n").v(e).h("fq<1,2>"))}, +fq:function fq(a,b,c,d){var _=this +_.b=a +_.c=b +_.a=c +_.$ti=d}, +fU:function fU(a,b){this.a=a +this.$ti=b}, +uB(a,b,c,d){var s,r,q=B.b.T(a,"^"),p=q?B.b.ab(a,1):a,o=t.s,n=b?A.i([p.toLowerCase(),p.toUpperCase()],o):A.i([p],o),m=d?$.v7():$.v6() +o=A.x(n) +s=A.ux(new A.dm(n,o.h("h(1)").a(new A.pK(m)),o.h("dm<1,aa>")),d) +if(q)s=s instanceof A.ck?new A.ck(!s.a):new A.ji(s) +o=A.uH(a,d) +r=b?" (case-insensitive)":"" +c="["+o+"]"+r+" expected" +return A.bH(s,c,d)}, +tU(a){var s=A.bH(B.W,"input expected",a),r=t.N,q=t.eN,p=A.ds(s,new A.p8(a),!1,r,q) +return A.rT(A.nn(A.cj(A.i([A.dy(new A.dA(s,A.ud("-",!1,null,!1),s,t.bT),new A.p9(a),r,r,r,q),p],t.fa),null,q),0,9007199254740991,q),new A.id("end of input expected"),null,t.aI)}, +pK:function pK(a){this.a=a}, +p8:function p8(a){this.a=a}, +p9:function p9(a){this.a=a}, +ca:function ca(){}, +fM:function fM(a){this.a=a}, +ck:function ck(a){this.a=a}, +j3:function j3(a,b,c){this.a=a +this.b=b +this.c=c}, +ji:function ji(a){this.a=a}, +aa:function aa(a,b){this.a=a +this.b=b}, +k6:function k6(){}, +uH(a,b){var s=b?new A.bV(a):new A.af(a) +return s.cr(s,new A.pS(),t.N).aQ(0)}, +pS:function pS(){}, +zi(a,b,c){var s=new A.af(b?a.toLowerCase()+a.toUpperCase():a) +return A.ux(s.cr(s,new A.pJ(),t.eN),!1)}, +ux(a,b){var s,r,q,p,o,n,m,l,k=A.aV(a,t.eN) +k.$flags=1 +s=k +B.a.cd(s,new A.pH()) +r=A.i([],t.lU) +for(k=s.length,q=0;q=p.a)B.a.k(r,r.length-1,new A.aa(o.a,p.b)) +else B.a.l(r,p)}}n=B.a.cQ(r,0,new A.pI(),t.S) +if(n===0)return B.is +else{if(!(b&&n-1===1114111))k=!b&&n-1===65535 +else k=!0 +if(k)return B.W +else{k=r.length +if(k===1){if(0>=k)return A.c(r,0) +k=r[0] +m=k.a +return m===k.b?new A.fM(m):k}else{k=B.a.gbv(r) +m=B.a.gA(r) +l=B.f.b5(B.a.gA(r).b-B.a.gbv(r).a+31+1,5) +k=new A.j3(k.a,m.b,new Uint32Array(l)) +k.jU(r) +return k}}}}, +pJ:function pJ(){}, +pH:function pH(){}, +pI:function pI(){}, +cj(a,b,c){var s=b==null?A.z_():b,r=A.aV(a,c.h("n<0>")) +r.$flags=1 +return new A.eO(s,r,c.h("eO<0>"))}, +eO:function eO(a,b,c){this.b=a +this.a=b +this.$ti=c}, +at:function at(){}, +uF(a,b,c,d){return new A.fH(a,b,c.h("@<0>").v(d).h("fH<1,2>"))}, +wD(a,b,c,d,e){return A.ds(a,new A.nr(b,c,d,e),!1,c.h("@<0>").v(d).h("+(1,2)"),e)}, +fH:function fH(a,b,c){this.a=a +this.b=b +this.$ti=c}, +nr:function nr(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +c5(a,b,c,d,e,f){return new A.dA(a,b,c,d.h("@<0>").v(e).v(f).h("dA<1,2,3>"))}, +dy(a,b,c,d,e,f){return A.ds(a,new A.ns(b,c,d,e,f),!1,c.h("@<0>").v(d).v(e).h("+(1,2,3)"),f)}, +dA:function dA(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +ns:function ns(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +pO(a,b,c,d,e,f,g,h){return new A.fI(a,b,c,d,e.h("@<0>").v(f).v(g).v(h).h("fI<1,2,3,4>"))}, +nt(a,b,c,d,e,f,g){return A.ds(a,new A.nu(b,c,d,e,f,g),!1,c.h("@<0>").v(d).v(e).v(f).h("+(1,2,3,4)"),g)}, +fI:function fI(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.$ti=e}, +nu:function nu(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +uG(a,b,c,d,e,f,g,h,i,j){return new A.fJ(a,b,c,d,e,f.h("@<0>").v(g).v(h).v(i).v(j).h("fJ<1,2,3,4,5>"))}, +rO(a,b,c,d,e,f,g,h){return A.ds(a,new A.nv(b,c,d,e,f,g,h),!1,c.h("@<0>").v(d).v(e).v(f).v(g).h("+(1,2,3,4,5)"),h)}, +fJ:function fJ(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.$ti=f}, +nv:function nv(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +wE(a,b,c,d,e,f,g,h,i,j,k){return A.ds(a,new A.nw(b,c,d,e,f,g,h,i,j,k),!1,c.h("@<0>").v(d).v(e).v(f).v(g).v(h).v(i).v(j).h("+(1,2,3,4,5,6,7,8)"),k)}, +fK:function fK(a,b,c,d,e,f,g,h,i){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.$ti=i}, +nw:function nw(a,b,c,d,e,f,g,h,i,j){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i +_.y=j}, +dr:function dr(){}, +bT:function bT(a,b,c){this.b=a +this.a=b +this.$ti=c}, +rT(a,b,c,d){var s=c==null?new A.cQ(null,t.cC):c,r=b==null?new A.cQ(null,t.cC):b +return new A.fP(s,r,a,d.h("fP<0>"))}, +fP:function fP(a,b,c,d){var _=this +_.b=a +_.c=b +_.a=c +_.$ti=d}, +id:function id(a){this.a=a}, +cQ:function cQ(a,b){this.a=a +this.$ti=b}, +jf:function jf(a){this.a=a}, +bH(a,b,c){var s +switch(c){case!1:s=a instanceof A.ck&&a.a?new A.hO(a,b):new A.ej(a,b) +break +case!0:s=a instanceof A.ck&&a.a?new A.hP(a,b):new A.fV(a,b) +break +default:s=null}return s}, +i2:function i2(){}, +fC:function fC(a,b,c){this.a=a +this.b=b +this.c=c}, +ej:function ej(a,b){this.a=a +this.b=b}, +hO:function hO(a,b){this.a=a +this.b=b}, +zs(a,b,c){var s=a.length +if(b)s=new A.fC(s,new A.pQ(a),'"'+a+'" (case-insensitive) expected') +else s=new A.fC(s,new A.pR(a),'"'+a+'" expected') +return s}, +pQ:function pQ(a){this.a=a}, +pR:function pR(a){this.a=a}, +fV:function fV(a,b){this.a=a +this.b=b}, +hP:function hP(a,b){this.a=a +this.b=b}, +rP(a,b,c,d){if(a instanceof A.ej)return new A.jF(a.a,d,b,c) +else return new A.cp(d,A.nn(a,b,c,t.N))}, +jF:function jF(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bj:function bj(a,b,c,d,e){var _=this +_.e=a +_.b=b +_.c=c +_.a=d +_.$ti=e}, +fm:function fm(){}, +nn(a,b,c,d){return new A.fB(b,c,a,d.h("fB<0>"))}, +fB:function fB(a,b,c,d){var _=this +_.b=a +_.c=b +_.a=c +_.$ti=d}, +dz:function dz(){}, +cU(a,b){if(b<0)A.O(A.aP("Offset may not be negative, was "+b+".")) +else if(b>a.c.length)A.O(A.aP("Offset "+b+u.D+a.gm(0)+".")) +return new A.bh(a,b)}, +qt(a,b,c){if(ca.c.length)A.O(A.aP("End "+c+u.D+a.gm(0)+".")) +else if(b<0)A.O(A.aP("Start may not be negative, was "+b+".")) +return new A.av(a,b,c)}, +jL:function jL(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +bh:function bh(a,b){this.a=a +this.b=b}, +av:function av(a,b,c){this.a=a +this.b=b +this.c=c}, +vJ(a,b){var s=A.vK(A.i([A.x8(a,!0)],t.g7)),r=new A.mu(b).$0(),q=B.f.j(B.a.gA(s).b+1),p=A.vL(s)?0:3,o=A.x(s) +return new A.ma(s,r,null,1+Math.max(q.length,p),new A.R(s,o.h("b(1)").a(new A.mc()),o.h("R<1,b>")).o5(0,B.ic),!A.zc(new A.R(s,o.h("p?(1)").a(new A.md()),o.h("R<1,p?>"))),new A.W(""))}, +vL(a){var s,r,q +for(s=0;s"));r.p();)J.vk(r.d,new A.mg()) +s=s.h("dp<1,2>") +r=s.h("dm") +s=A.aV(new A.dm(new A.dp(q,s),s.h("h(h.E)").a(new A.mh()),r),r.h("h.E")) +return s}, +x8(a,b){var s=new A.oL(a).$0() +return new A.aK(s,!0,null)}, +xa(a){var s,r,q,p,o,n,m=a.gZ() +if(!B.b.D(m,"\r\n"))return a +s=a.gU().gaw() +for(r=m.length-1,q=0;q=0))return A.c(a,s) +if(a.charCodeAt(s)===10)return r===1?0:r-B.b.dO(a,"\n",r-2)-1 +else return r-B.b.cU(a,"\n")-1}}, +ma:function ma(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +mu:function mu(a){this.a=a}, +mc:function mc(){}, +mb:function mb(){}, +md:function md(){}, +mf:function mf(){}, +mg:function mg(){}, +mh:function mh(){}, +me:function me(a){this.a=a}, +mv:function mv(){}, +mi:function mi(a){this.a=a}, +mp:function mp(a,b,c){this.a=a +this.b=b +this.c=c}, +mq:function mq(a,b){this.a=a +this.b=b}, +mr:function mr(a){this.a=a}, +ms:function ms(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +mn:function mn(a,b){this.a=a +this.b=b}, +mo:function mo(a,b){this.a=a +this.b=b}, +mj:function mj(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +mk:function mk(a,b,c){this.a=a +this.b=b +this.c=c}, +ml:function ml(a,b,c){this.a=a +this.b=b +this.c=c}, +mm:function mm(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +mt:function mt(a,b,c){this.a=a +this.b=b +this.c=c}, +aK:function aK(a,b,c){this.a=a +this.b=b +this.c=c}, +oL:function oL(a){this.a=a}, +bD:function bD(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +jM(a,b,c,d){if(a<0)A.O(A.aP("Offset may not be negative, was "+a+".")) +else if(c<0)A.O(A.aP("Line may not be negative, was "+c+".")) +else if(b<0)A.O(A.aP("Column may not be negative, was "+b+".")) +return new A.bW(d,a,c,b)}, +bW:function bW(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +jN:function jN(){}, +jO:function jO(){}, +ek:function ek(){}, +nH(a,b,c,d){var s=new A.cd(d,a,b,c) +s.jV(a,b,c) +if(!B.b.D(d,c))A.O(A.U('The context line "'+d+'" must contain "'+c+'".',null)) +if(A.pu(d,c,a.gao())==null)A.O(A.U('The span text "'+c+'" must start at column '+(a.gao()+1)+' in a line within "'+d+'".',null)) +return s}, +cd:function cd(a,b,c,d){var _=this +_.d=a +_.a=b +_.b=c +_.c=d}, +aI:function aI(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +yw(a){var s=a.d8(0) +s.toString +switch(s){case"<":return"<" +case"&":return"&" +case"]]>":return"]]>" +default:return A.qE(s)}}, +yr(a){var s=a.d8(0) +s.toString +switch(s){case"'":return"'" +case"&":return"&" +case"<":return"<" +default:return A.qE(s)}}, +xU(a){var s=a.d8(0) +s.toString +switch(s){case'"':return""" +case"&":return"&" +case"<":return"<" +default:return A.qE(s)}}, +qE(a){var s=t.mO +return A.rz(new A.bV(a),s.h("e(h.E)").a(new A.p4()),s.h("h.E"),t.N).aQ(0)}, +kb:function kb(){}, +p4:function p4(){}, +d5:function d5(){}, +ae:function ae(a,b,c){this.c=a +this.a=b +this.b=c}, +bm:function bm(a,b){this.a=a +this.b=b}, +ki:function ki(){}, +kj:function kj(){}, +tb(a,b,c){return new A.km(a)}, +kn(a){if(a.gc8()!=null)throw A.f(A.tb(u.d,a,a.gc8()))}, +km:function km(a){this.a=a}, +er(a,b,c){return new A.ko(b,c,$,$,$,a)}, +ko:function ko(a,b,c,d,e,f){var _=this +_.b=a +_.c=b +_.ax$=c +_.ay$=d +_.ch$=e +_.a=f}, +lo:function lo(){}, +ql(a,b,c,d,e){return new A.kp(c,e,$,$,$,a)}, +tc(a,b,c,d){return A.ql("Expected , but found ",b,c,a,d)}, +td(a,b,c){return A.ql("Unexpected ",a,b,null,c)}, +wW(a,b,c){return A.ql("Missing ",null,b,a,c)}, +kp:function kp(a,b,c,d,e,f){var _=this +_.d=a +_.e=b +_.ax$=c +_.ay$=d +_.ch$=e +_.a=f}, +lq:function lq(){}, +wU(a,b,c){return new A.h2(a)}, +ta(a,b){if(!b.D(0,a.gaS()))throw A.f(new A.h2("Got "+a.gaS().j(0)+", but expected one of "+b.aq(0,", ")))}, +h2:function h2(a){this.a=a}, +c1:function c1(a){this.a=a}, +kc:function kc(a){this.a=a +this.b=$}, +cH(a){var s=t.n8 +return new A.b8(new A.bb(new A.c1(a),s.h("C(h.E)").a(new A.oj()),s.h("bb")),s.h("e?(h.E)").a(new A.ok()),s.h("b8")).aQ(0)}, +oj:function oj(){}, +ok:function ok(){}, +nT:function nT(){}, +ep:function ep(){}, +nU:function nU(){}, +d6:function d6(){}, +cG:function cG(){}, +aR:function aR(){}, +X:function X(){}, +ol:function ol(){}, +aG:function aG(){}, +kl:function kl(){}, +nS(a,b,c){var s=new A.aQ(a,b,c,null) +A.w(a).h("X.T").a(s) +A.kn(a) +a.x$=s +return s}, +aQ:function aQ(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.x$=d}, +kX:function kX(){}, +kY:function kY(){}, +en:function en(a,b){this.a=a +this.x$=b}, +fY:function fY(a,b){this.a=a +this.x$=b}, +k9:function k9(){}, +kZ:function kZ(){}, +t6(a){var s=A.h1(t.F),r=new A.ka(s,null) +t.i2.a(B.aB) +s.b!==$&&A.c6() +s.b=r +s.c!==$&&A.c6() +s.c=B.aB +s.a1(0,a) +return r}, +ka:function ka(a,b){this.y$=a +this.x$=b}, +nV:function nV(){}, +l_:function l_(){}, +l0:function l0(){}, +fZ:function fZ(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.x$=d}, +l1:function l1(){}, +nW(a){var s=t.bO.a(new A.kf(a,B.bF,!0,!0,!1,!1,!1)),r=A.i([],t.eB) +s.X(0,new A.lh(new A.df(t.f0.a(B.a.glb(r)),t.k0)).giD()) +return A.t7(r)}, +t7(a){var s=A.h1(t.I),r=new A.kd(s) +t.i2.a(B.hO) +s.b!==$&&A.c6() +s.b=r +s.c!==$&&A.c6() +s.c=B.hO +s.a1(0,a) +return r}, +kd:function kd(a){this.w$=a}, +nX:function nX(){}, +l2:function l2(){}, +wT(a,b,c,d){var s,r=A.h1(t.I),q=A.h1(t.F),p=new A.aF(d,a,r,q,null) +A.w(a).h("X.T").a(p) +A.kn(a) +a.x$=p +s=t.i2 +s.a(B.aB) +q.b!==$&&A.c6() +q.b=p +q.c!==$&&A.c6() +q.c=B.aB +q.a1(0,b) +s.a(B.bz) +r.b!==$&&A.c6() +r.b=p +r.c!==$&&A.c6() +r.c=B.bz +r.a1(0,c) +return p}, +t8(a,b,c,d){var s=A.t9(a),r=A.h1(t.I),q=A.h1(t.F),p=new A.aF(d,s,r,q,null) +A.w(s).h("X.T").a(p) +A.kn(s) +s.x$=p +s=t.i2 +s.a(B.aB) +q.b!==$&&A.c6() +q.b=p +q.c!==$&&A.c6() +q.c=B.aB +q.a1(0,b) +s.a(B.bz) +r.b!==$&&A.c6() +r.b=p +r.c!==$&&A.c6() +r.c=B.bz +r.a1(0,c) +return p}, +aF:function aF(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.w$=c +_.y$=d +_.x$=e}, +nY:function nY(){}, +nZ:function nZ(){}, +l3:function l3(){}, +l4:function l4(){}, +l5:function l5(){}, +l6:function l6(){}, +E:function E(){}, +li:function li(){}, +lj:function lj(){}, +lk:function lk(){}, +ll:function ll(){}, +lm:function lm(){}, +ln:function ln(){}, +h4:function h4(a,b,c){this.c=a +this.a=b +this.x$=c}, +es:function es(a,b){this.a=a +this.x$=b}, +k8:function k8(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +eo:function eo(a,b){this.a=a +this.b=b}, +t9(a){var s=B.b.al(a,":") +if(s>0)return new A.h3(B.b.t(a,0,s),B.b.ab(a,s+1),a,null) +else return new A.h5(a,null)}, +eq:function eq(){}, +le:function le(){}, +lf:function lf(){}, +lg:function lg(){}, +ui(a,b){if(a==="*")if(b==null||b==="*")return new A.pm() +else return new A.pn(b) +else if(b==null)return new A.po(a) +else if(b==="*")return new A.pp(a) +else return new A.pq(a,b)}, +pm:function pm(){}, +pn:function pn(a){this.a=a}, +po:function po(a){this.a=a}, +pp:function pp(a){this.a=a}, +pq:function pq(a,b){this.a=a +this.b=b}, +h1(a){return new A.h0(A.i([],a.h("y<0>")),a.h("h0<0>"))}, +h0:function h0(a,b){var _=this +_.c=_.b=$ +_.a=a +_.$ti=b}, +oi:function oi(a){this.a=a}, +h3:function h3(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.x$=d}, +h5:function h5(a,b){this.b=a +this.x$=b}, +kq:function kq(){}, +kr:function kr(a,b){this.a=a +this.b=b}, +lr:function lr(){}, +nR:function nR(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +og:function og(){}, +oh:function oh(){}, +kk:function kk(){}, +ke:function ke(a){this.a=a}, +la:function la(a,b){this.a=a +this.b=b}, +ls:function ls(){}, +lh:function lh(a){this.a=a +this.b=null}, +p1:function p1(){}, +lt:function lt(){}, +a0:function a0(){}, +lb:function lb(){}, +lc:function lc(){}, +ld:function ld(){}, +c_:function c_(a,b,c,d,e){var _=this +_.e=a +_.at$=b +_.Q$=c +_.as$=d +_.z$=e}, +c0:function c0(a,b,c,d,e){var _=this +_.e=a +_.at$=b +_.Q$=c +_.as$=d +_.z$=e}, +bB:function bB(a,b,c,d,e){var _=this +_.e=a +_.at$=b +_.Q$=c +_.as$=d +_.z$=e}, +bC:function bC(a,b,c,d,e,f,g){var _=this +_.e=a +_.f=b +_.r=c +_.at$=d +_.Q$=e +_.as$=f +_.z$=g}, +bM:function bM(a,b,c,d,e){var _=this +_.e=a +_.at$=b +_.Q$=c +_.as$=d +_.z$=e}, +l7:function l7(){}, +c2:function c2(a,b,c,d,e,f){var _=this +_.e=a +_.f=b +_.at$=c +_.Q$=d +_.as$=e +_.z$=f}, +bc:function bc(a,b,c,d,e,f,g){var _=this +_.e=a +_.f=b +_.r=c +_.at$=d +_.Q$=e +_.as$=f +_.z$=g}, +lp:function lp(){}, +dH:function dH(a,b,c,d,e,f){var _=this +_.e=a +_.f=b +_.r=$ +_.at$=c +_.Q$=d +_.as$=e +_.z$=f}, +kf:function kf(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +kg:function kg(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +kh:function kh(a){this.a=a}, +o5:function o5(a){this.a=a}, +of:function of(){}, +o3:function o3(a){this.a=a}, +o_:function o_(){}, +o0:function o0(){}, +o2:function o2(){}, +o1:function o1(){}, +oc:function oc(){}, +o6:function o6(){}, +o4:function o4(){}, +o7:function o7(){}, +od:function od(){}, +oe:function oe(){}, +ob:function ob(){}, +o9:function o9(){}, +o8:function o8(){}, +oa:function oa(){}, +pt:function pt(){}, +df:function df(a,b){this.a=a +this.$ti=b}, +au:function au(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.z$=d}, +l8:function l8(){}, +l9:function l9(){}, +h_:function h_(){}, +dG:function dG(){}, +zf(){var s,r,q={},p=new A.az($.am,t.cU) +p.e7(null) +q.a=p +s=A.p3(v.G.self) +q=new A.pF(q,new A.lS(B.bI,A.aC(t.S,t.f))) +if(typeof q=="function")A.O(A.U("Attempting to rewrap a JS function.",null)) +r=function(a,b){return function(c){return a(b,c,arguments.length)}}(A.xM,q) +r[$.qZ()]=q +s.onmessage=r}, +pF:function pF(a,b){this.a=a +this.b=b}, +pE:function pE(a,b){this.a=a +this.b=b}, +uw(a,b,c){A.ue(c,t.cZ,"T","max") +return Math.max(c.a(a),c.a(b))}, +up(a,b){return(B.jc[(a^b)&255]^B.f.b5(a,8))>>>0}, +yW(a,b){var s,r,q,p,o=a.length,n=b.length +if(o!==n)return!1 +for(s=0;s")) +for(s=c.h("y<0>"),r=0;r<1;++r){q=a[r] +p=b.$1(q) +o=n.n(0,p) +if(o==null){o=A.i([],s) +n.k(0,p,o) +p=o}else p=o +J.vb(p,q)}return n}, +bI(a,b,c){var s,r +for(s=J.as(a);s.p();){r=s.gB() +if(b.$1(r))return r}return null}, +e3(a,b){var s=J.as(a.a) +if(new A.cF(s,a.b,a.$ti.h("cF<1>")).p())return s.gB() +return null}, +vB(a){var s,r,q,p,o,n,m,l,k,j,i,h=t.N,g=t.am,f=A.aC(h,g),e=A.aC(h,g) +g=t.ht +s=A.aC(h,g) +r=A.aC(h,g) +q=A.aC(h,t.mg) +for(h=a.e.a.c.a,g=h.length,p=0;p":n=r?">":m +break +default:n=m}if(n!=null){if(q==null)q=new A.W(B.b.t(a,0,p)) +q.a+=n}else if(q!=null)q.a+=o}if(q!=null){s=q.a +s=s.charCodeAt(0)==0?s:s}else s=a +return s}, +uj(){var s,r,q,p,o=null +try{o=A.qk()}catch(s){if(t.mA.b(A.bP(s))){r=$.pa +if(r!=null)return r +throw s}else throw s}if(J.M(o,$.tV)){r=$.pa +r.toString +return r}$.tV=o +if($.r_()===$.hF())r=$.pa=o.ix(".").j(0) +else{q=o.fe() +p=q.length-1 +r=$.pa=p===0?q:B.b.t(q,0,p)}return r}, +us(a){var s +if(!(a>=65&&a<=90))s=a>=97&&a<=122 +else s=!0 +return s}, +um(a,b){var s,r,q=null,p=a.length,o=b+2 +if(p=0&&b=0&&s=q)return A.c(s,-1) +p=s.pop() +for(q=p.gaN(),o=q.length,n=0;n")) +while(a instanceof A.u){if(b.a8(a))return c.h("n<0>").a(b.n(0,a)) +else if(!p.l(0,a))throw A.f(A.ce("Recursive references detected: "+p.j(0))) +a=a.$ti.h("n<1>").a(A.wq(a.a,a.b,null))}for(s=A.tq(p,p.r,p.$ti.c),r=s.$ti.c;s.p();){q=s.d +b.k(0,q==null?r.a(q):q,a)}return a}, +ud(a,b,c,d){var s=new A.af(a),r=s.gbU(s),q=b?A.zi(a,!0,!1):new A.fM(r),p=A.uH(a,!1),o=b?" (case-insensitive)":"" +c='"'+p+'"'+o+" expected" +return A.bH(q,c,!1)}, +S(a){var s,r=a.length +A:{if(0===r){s=new A.cQ(a,t.pf) +break A}if(1===r){s=A.ud(a,!1,null,!1) +break A}s=A.zs(a,!1,null) +break A}return s}, +zq(a,b){var s=t.nq +s.a(a) +s.a(b) +return a}, +zr(a,b){var s=t.nq +s.a(a) +return s.a(b)}, +zp(a,b){var s=t.nq +s.a(a) +s.a(b) +return a.b<=b.b?b:a}, +zc(a){var s,r,q,p +if(a.gm(0)===0)return!0 +s=a.gbv(0) +for(r=A.bX(a,1,null,a.$ti.h("G.E")),q=r.$ti,r=new A.L(r,r.gm(0),q.h("L")),q=q.h("G.E");r.p();){p=r.d +if(!J.M(p==null?q.a(p):p,s))return!1}return!0}, +zn(a,b,c){var s=B.a.al(a,null) +if(s<0)throw A.f(A.U(A.k(a)+" contains no null elements.",null)) +B.a.k(a,s,b)}, +uE(a,b,c){var s=B.a.al(a,b) +if(s<0)throw A.f(A.U(A.k(a)+" contains no elements matching "+b.j(0)+".",null)) +B.a.k(a,s,null)}, +yQ(a,b){var s,r,q,p +for(s=new A.af(a),r=t.G,s=new A.L(s,s.gm(0),r.h("L")),r=r.h("D.E"),q=0;s.p();){p=s.d +if((p==null?r.a(p):p)===b)++q}return q}, +pu(a,b,c){var s,r,q +if(b.length===0)for(s=0;;){r=B.b.ap(a,"\n",s) +if(r===-1)return a.length-s>=c?s:null +if(r-s>=c)return s +s=r+1}r=B.b.al(a,b) +while(r!==-1){q=r===0?0:B.b.dO(a,"\n",r-1)+1 +if(c===r-q)return q +r=B.b.ap(a,b,r+1)}return null}, +b1(a,b,c){var s=A.ui(b,c),r=a.iF(0,t.P),q=r.$ti +return new A.bb(r,q.h("C(h.E)").a(s),q.h("bb"))}, +wV(a){var s +for(s=a.x$;s!=null;s=s.gc8())if(s instanceof A.aF)return s +return null}, +uv(a,b,c){var s,r,q,p,o +for(s=a;s!=null;s=s.gc8())for(r=J.as(s.gaZ()),q=r.$ti.c;r.p();){p=r.d +if(p==null)p=q.a(p) +o=p.a +if(o.gij()==b&&o.ga_()===c)return p}return null}},B={} +var w=[A,J,B] +var $={} +A.pZ.prototype={} +J.iR.prototype={ +u(a,b){return a===b}, +gq(a){return A.dx(a)}, +j(a){return"Instance of '"+A.jB(a)+"'"}, +ii(a,b){throw A.f(A.n2(a,t.bg.a(b)))}, +gaz(a){return A.ch(A.qF(this))}} +J.iU.prototype={ +j(a){return String(a)}, +gq(a){return a?519018:218159}, +gaz(a){return A.ch(t.k4)}, +$ia2:1, +$iC:1} +J.e4.prototype={ +u(a,b){return null==b}, +j(a){return"null"}, +gq(a){return 0}, +$ia2:1, +$iaJ:1} +J.fk.prototype={$iao:1} +J.cW.prototype={ +gq(a){return 0}, +j(a){return String(a)}} +J.jz.prototype={} +J.dE.prototype={} +J.cu.prototype={ +j(a){var s=a[$.qZ()] +if(s==null)return this.jH(a) +return"JavaScript function for "+J.ax(s)}, +$icq:1} +J.e6.prototype={ +gq(a){return 0}, +j(a){return String(a)}} +J.e7.prototype={ +gq(a){return 0}, +j(a){return String(a)}} +J.y.prototype={ +l(a,b){A.x(a).c.a(b) +a.$flags&1&&A.t(a,29) +a.push(b)}, +d2(a,b){a.$flags&1&&A.t(a,"removeAt",1) +if(b<0||b>=a.length)throw A.f(A.nq(b,null)) +return a.splice(b,1)[0]}, +bx(a,b,c){A.x(a).c.a(c) +a.$flags&1&&A.t(a,"insert",2) +if(b<0||b>a.length)throw A.f(A.nq(b,null)) +a.splice(b,0,c)}, +eX(a,b,c){var s,r +A.x(a).h("h<1>").a(c) +a.$flags&1&&A.t(a,"insertAll",2) +A.rN(b,0,a.length,"index") +if(!t.gt.b(c))c=J.vl(c) +s=J.b5(c) +a.length=a.length+s +r=b+s +this.ba(a,r,a.length,a,b) +this.bD(a,b,r,c)}, +d3(a){a.$flags&1&&A.t(a,"removeLast",1) +if(a.length===0)throw A.f(A.lw(a,-1)) +return a.pop()}, +V(a,b){var s +a.$flags&1&&A.t(a,"remove",1) +for(s=0;s").a(b) +a.$flags&1&&A.t(a,"addAll",2) +if(Array.isArray(b)){this.k_(a,b) +return}for(s=J.as(b);s.p();)a.push(s.gB())}, +k_(a,b){var s,r +t.dG.a(b) +s=b.length +if(s===0)return +if(a===b)throw A.f(A.ag(a)) +for(r=0;r").v(c).h("R<1,2>"))}, +aq(a,b){var s,r=A.aD(a.length,"",!1,t.N) +for(s=0;s=0&&ba.length)throw A.f(A.ad(b,0,a.length,"start",null)) +if(ca.length)throw A.f(A.ad(c,b,a.length,"end",null)) +if(b===c)return A.i([],A.x(a)) +return A.i(a.slice(b,c),A.x(a))}, +gbv(a){if(a.length>0)return a[0] +throw A.f(A.bi())}, +gA(a){var s=a.length +if(s>0)return a[s-1] +throw A.f(A.bi())}, +o8(a,b,c){a.$flags&1&&A.t(a,18) +A.cw(b,c,a.length) +a.splice(b,c-b)}, +ba(a,b,c,d,e){var s,r,q,p,o +A.x(a).h("h<1>").a(d) +a.$flags&2&&A.t(a,5) +A.cw(b,c,a.length) +s=c-b +if(s===0)return +A.aE(e,"skipCount") +if(t.p.b(d)){r=d +q=e}else{r=J.lC(d,e).cz(0,!1) +q=0}p=J.ab(r) +if(q+s>p.gm(r))throw A.f(A.ro()) +if(q=0;--o)a[b+o]=p.n(r,q+o) +else for(o=0;o"))}, +cd(a,b){var s,r,q,p,o,n=A.x(a) +n.h("b(1,1)?").a(b) +a.$flags&2&&A.t(a,"sort") +s=a.length +if(s<2)return +if(b==null)b=J.y5() +if(s===2){r=a[0] +q=a[1] +n=b.$2(r,q) +if(typeof n!=="number")return n.b1() +if(n>0){a[0]=q +a[1]=r}return}p=0 +if(n.c.b(null))for(o=0;o0)this.kR(a,p)}, +kR(a,b){var s,r=a.length +for(;s=r-1,r>0;r=s)if(a[s]===null){a[s]=void 0;--b +if(b===0)break}}, +ap(a,b,c){var s,r=a.length +if(c>=r)return-1 +for(s=c;s"))}, +gq(a){return A.dx(a)}, +gm(a){return a.length}, +sm(a,b){a.$flags&1&&A.t(a,"set length","change the length of") +if(b<0)throw A.f(A.ad(b,0,null,"newLength",null)) +if(b>a.length)A.x(a).c.a(null) +a.length=b}, +n(a,b){if(!(b>=0&&b=0&&b=a.length)return-1 +for(s=c;s=p){r.d=null +return!1}r.d=q[s] +r.c=s+1 +return!0}, +$iK:1} +J.e5.prototype={ +ah(a,b){var s +A.tR(b) +if(ab)return 1 +else if(a===b){if(a===0){s=this.geZ(b) +if(this.geZ(a)===s)return 0 +if(this.geZ(a))return-1 +return 1}return 0}else if(isNaN(a)){if(isNaN(b))return 0 +return 1}else return-1}, +geZ(a){return a===0?1/a<0:a<0}, +cw(a){var s +if(a>=-2147483648&&a<=2147483647)return a|0 +if(isFinite(a)){s=a<0?Math.ceil(a):Math.floor(a) +return s+0}throw A.f(A.aj(""+a+".toInt()"))}, +m_(a,b,c){if(B.f.ah(b,c)>0)throw A.f(A.dN(b)) +if(this.ah(a,b)<0)return b +if(this.ah(a,c)>0)return c +return a}, +d6(a,b){var s,r,q,p,o +if(b<2||b>36)throw A.f(A.ad(b,2,36,"radix",null)) +s=a.toString(b) +r=s.length +q=r-1 +if(!(q>=0))return A.c(s,q) +if(s.charCodeAt(q)!==41)return s +p=/^([\da-z]+)(?:\.([\da-z]+))?\(e\+(\d+)\)$/.exec(s) +if(p==null)A.O(A.aj("Unexpected toString result: "+s)) +r=p.length +if(1>=r)return A.c(p,1) +s=p[1] +if(3>=r)return A.c(p,3) +o=+p[3] +r=p[2] +if(r!=null){s+=r +o-=r.length}return s+B.b.b2("0",o)}, +j(a){if(a===0&&1/a<0)return"-0.0" +else return""+a}, +gq(a){var s,r,q,p,o=a|0 +if(a===o)return o&536870911 +s=Math.abs(a) +r=Math.log(s)/0.6931471805599453|0 +q=Math.pow(2,r) +p=s<1?s/q:q/s +return((p*9007199254740992|0)+(p*3542243181176521|0))*599197+r*1259&536870911}, +cB(a,b){return a+b}, +bl(a,b){var s=a%b +if(s===0)return 0 +if(s>0)return s +return s+b}, +fK(a,b){if((a|0)===a)if(b>=1)return a/b|0 +return this.hr(a,b)}, +av(a,b){return(a|0)===a?a/b|0:this.hr(a,b)}, +hr(a,b){var s=a/b +if(s>=-2147483648&&s<=2147483647)return s|0 +if(s>0){if(s!==1/0)return Math.floor(s)}else if(s>-1/0)return Math.ceil(s) +throw A.f(A.aj("Result of truncating division is "+A.k(s)+": "+A.k(a)+" ~/ "+b))}, +aW(a,b){if(b<0)throw A.f(A.dN(b)) +return b>31?0:a<>>0}, +bp(a,b){return b>31?0:a<>>0}, +b5(a,b){var s +if(a>0)s=this.dt(a,b) +else{s=b>31?31:b +s=a>>s>>>0}return s}, +cI(a,b){if(0>b)throw A.f(A.dN(b)) +return this.dt(a,b)}, +dt(a,b){return b>31?0:a>>>b}, +b1(a,b){return a>b}, +gaz(a){return A.ch(t.cZ)}, +$ia5:1, +$iT:1, +$ib4:1} +J.fi.prototype={ +ghQ(a){var s,r=a<0?-a-1:a,q=r +for(s=32;q>=4294967296;){q=this.av(q,4294967296) +s+=32}return s-Math.clz32(q)}, +gaz(a){return A.ch(t.S)}, +$ia2:1, +$ib:1} +J.iV.prototype={ +gaz(a){return A.ch(t.dx)}, +$ia2:1} +J.ct.prototype={ +dC(a,b,c){var s=b.length +if(c>s)throw A.f(A.ad(c,0,s,null,null)) +return new A.kR(b,a,c)}, +dB(a,b){return this.dC(a,b,0)}, +f_(a,b,c){var s,r,q,p,o=null +if(c<0||c>b.length)throw A.f(A.ad(c,0,b.length,o,o)) +s=a.length +r=b.length +if(c+s>r)return o +for(q=0;q=0&&pr)return!1 +return b===this.ab(a,r-s)}, +d4(a,b,c){A.rN(0,0,a.length,"startIndex") +return A.zx(a,b,c,0)}, +d9(a,b){var s +if(typeof b=="string")return A.i(a.split(b),t.s) +else{if(b instanceof A.cV){s=b.e +s=!(s==null?b.e=b.k8():s)}else s=!1 +if(s)return A.i(a.split(b.b),t.s) +else return this.kg(a,b)}}, +bR(a,b,c,d){var s=A.cw(b,c,a.length) +return A.qY(a,b,s,d)}, +kg(a,b){var s,r,q,p,o,n,m=A.i([],t.s) +for(s=J.lB(b,a),s=s.gF(s),r=0,q=1;s.p();){p=s.gB() +o=p.gS() +n=p.gU() +q=n-o +if(q===0&&r===o)continue +B.a.l(m,this.t(a,r,o)) +r=n}if(r0)B.a.l(m,this.ab(a,r)) +return m}, +aa(a,b,c){var s +t.m4.a(b) +if(c<0||c>a.length)throw A.f(A.ad(c,0,a.length,null,null)) +if(typeof b=="string"){s=c+b.length +if(s>a.length)return!1 +return b===a.substring(c,s)}return J.vi(b,a,c)!=null}, +T(a,b){return this.aa(a,b,0)}, +t(a,b,c){return a.substring(b,A.cw(b,c,a.length))}, +ab(a,b){return this.t(a,b,null)}, +bk(a){var s,r,q,p=a.trim(),o=p.length +if(o===0)return p +if(0>=o)return A.c(p,0) +if(p.charCodeAt(0)===133){s=J.rt(p,1) +if(s===o)return""}else s=0 +r=o-1 +if(!(r>=0))return A.c(p,r) +q=p.charCodeAt(r)===133?J.vV(p,r):o +if(s===0&&q===o)return p +return p.substring(s,q)}, +og(a){var s=a.trimStart(),r=s.length +if(r===0)return s +if(0>=r)return A.c(s,0) +if(s.charCodeAt(0)!==133)return s +return s.substring(J.rt(s,1))}, +b2(a,b){var s,r +if(0>=b)return"" +if(b===1||a.length===0)return a +if(b!==b>>>0)throw A.f(B.ir) +for(s=a,r="";;){if((b&1)===1)r=s+r +b=b>>>1 +if(b===0)break +s+=s}return r}, +nB(a,b,c){var s=b-a.length +if(s<=0)return a +return this.b2(c,s)+a}, +nC(a,b){var s=b-a.length +if(s<=0)return a +return a+this.b2(" ",s)}, +ap(a,b,c){var s +if(c<0||c>a.length)throw A.f(A.ad(c,0,a.length,null,null)) +s=a.indexOf(b,c) +return s}, +al(a,b){return this.ap(a,b,0)}, +dO(a,b,c){var s,r,q +if(c==null)c=a.length +else if(c<0||c>a.length)throw A.f(A.ad(c,0,a.length,null,null)) +if(typeof b=="string"){s=b.length +r=a.length +if(c+s>r)c=r-s +return a.lastIndexOf(b,c)}for(s=J.pw(b),q=c;q>=0;--q)if(s.f_(b,a,q)!=null)return q +return-1}, +cU(a,b){return this.dO(a,b,null)}, +D(a,b){return A.zt(a,b,0)}, +ah(a,b){var s +A.q(b) +if(a===b)s=0 +else s=a>6}r=r+((r&67108863)<<3)&536870911 +r^=r>>11 +return r+((r&16383)<<15)&536870911}, +gaz(a){return A.ch(t.N)}, +gm(a){return a.length}, +$iaT:1, +$ia2:1, +$ia5:1, +$idw:1, +$ie:1} +A.eu.prototype={ +gF(a){return new A.eN(J.as(this.gbq()),A.w(this).h("eN<1,2>"))}, +gm(a){return J.b5(this.gbq())}, +gN(a){return J.r4(this.gbq())}, +gaP(a){return J.vg(this.gbq())}, +aX(a,b){var s=A.w(this) +return A.eM(J.lC(this.gbq(),b),s.c,s.y[1])}, +bj(a,b){var s=A.w(this) +return A.eM(J.r7(this.gbq(),b),s.c,s.y[1])}, +ai(a,b){return A.w(this).y[1].a(J.hG(this.gbq(),b))}, +D(a,b){return J.ve(this.gbq(),b)}, +j(a){return J.ax(this.gbq())}} +A.eN.prototype={ +p(){return this.a.p()}, +gB(){return this.$ti.y[1].a(this.a.gB())}, +$iK:1} +A.dd.prototype={ +gbq(){return this.a}} +A.hb.prototype={$iz:1} +A.de.prototype={ +c2(a,b,c){return new A.de(this.a,this.$ti.h("@<1,2>").v(b).v(c).h("de<1,2,3,4>"))}, +a8(a){return this.a.a8(a)}, +n(a,b){return this.$ti.h("4?").a(this.a.n(0,b))}, +k(a,b,c){var s=this.$ti +s.y[2].a(b) +s.y[3].a(c) +this.a.k(0,s.c.a(b),s.y[1].a(c))}, +X(a,b){this.a.X(0,new A.lH(this,this.$ti.h("~(3,4)").a(b)))}, +gaR(){var s=this.$ti +return A.eM(this.a.gaR(),s.c,s.y[2])}, +gm(a){var s=this.a +return s.gm(s)}, +gN(a){var s=this.a +return s.gN(s)}} +A.lH.prototype={ +$2(a,b){var s=this.a.$ti +s.c.a(a) +s.y[1].a(b) +this.b.$2(s.y[2].a(a),s.y[3].a(b))}, +$S(){return this.a.$ti.h("~(1,2)")}} +A.e8.prototype={ +j(a){return"LateInitializationError: "+this.a}} +A.jD.prototype={ +j(a){return"ReachabilityError: "+this.a}} +A.af.prototype={ +gm(a){return this.a.length}, +n(a,b){var s=this.a +if(!(b>=0&&b"))}, +gN(a){return this.gm(this)===0}, +gbv(a){if(this.gm(this)===0)throw A.f(A.bi()) +return this.ai(0,0)}, +D(a,b){var s,r=this,q=r.gm(r) +for(s=0;ss)throw A.f(A.ad(r,0,s,"start",null))}}, +gkl(){var s=J.b5(this.a),r=this.c +if(r==null||r>s)return s +return r}, +gl0(){var s=J.b5(this.a),r=this.b +if(r>s)return s +return r}, +gm(a){var s,r=J.b5(this.a),q=this.b +if(q>=r)return 0 +s=this.c +if(s==null||s>=r)return r-q +return s-q}, +ai(a,b){var s=this,r=s.gl0()+b +if(b<0||r>=s.gkl())throw A.f(A.iL(b,s.gm(0),s,null,"index")) +return J.hG(s.a,r)}, +aX(a,b){var s,r,q=this +A.aE(b,"count") +s=q.b+b +r=q.c +if(r!=null&&s>=r)return new A.eW(q.$ti.h("eW<1>")) +return A.bX(q.a,s,r,q.$ti.c)}, +bj(a,b){var s,r,q,p=this +A.aE(b,"count") +s=p.c +r=p.b +if(s==null)return A.bX(p.a,r,B.f.cB(r,b),p.$ti.c) +else{q=B.f.cB(r,b) +if(s=o){r.d=null +return!1}r.d=p.ai(q,s);++r.c +return!0}, +$iK:1} +A.b8.prototype={ +gF(a){return new A.dt(J.as(this.a),this.b,A.w(this).h("dt<1,2>"))}, +gm(a){return J.b5(this.a)}, +gN(a){return J.r4(this.a)}, +ai(a,b){return this.b.$1(J.hG(this.a,b))}} +A.eU.prototype={$iz:1} +A.dt.prototype={ +p(){var s=this,r=s.b +if(r.p()){s.a=s.c.$1(r.gB()) +return!0}s.a=null +return!1}, +gB(){var s=this.a +return s==null?this.$ti.y[1].a(s):s}, +$iK:1} +A.R.prototype={ +gm(a){return J.b5(this.a)}, +ai(a,b){return this.b.$1(J.hG(this.a,b))}} +A.bb.prototype={ +gF(a){return new A.cF(J.as(this.a),this.b,this.$ti.h("cF<1>"))}} +A.cF.prototype={ +p(){var s,r +for(s=this.a,r=this.b;s.p();)if(r.$1(s.gB()))return!0 +return!1}, +gB(){return this.a.gB()}, +$iK:1} +A.dm.prototype={ +gF(a){return new A.fd(J.as(this.a),this.b,B.cK,this.$ti.h("fd<1,2>"))}} +A.fd.prototype={ +gB(){var s=this.d +return s==null?this.$ti.y[1].a(s):s}, +p(){var s,r,q=this,p=q.c +if(p==null)return!1 +for(s=q.a,r=q.b;!p.p();){q.d=null +if(s.p()){q.c=null +p=J.as(r.$1(s.gB())) +q.c=p}else return!1}q.d=q.c.gB() +return!0}, +$iK:1} +A.dD.prototype={ +gF(a){var s=this.a +return new A.fT(s.gF(s),this.b,A.w(this).h("fT<1>"))}} +A.eV.prototype={ +gm(a){var s=this.a,r=s.gm(s) +s=this.b +if(B.f.b1(r,s))return s +return r}, +$iz:1} +A.fT.prototype={ +p(){if(--this.b>=0)return this.a.p() +this.b=-1 +return!1}, +gB(){if(this.b<0){this.$ti.c.a(null) +return null}return this.a.gB()}, +$iK:1} +A.cx.prototype={ +aX(a,b){A.hR(b,"count",t.S) +A.aE(b,"count") +return new A.cx(this.a,this.b+b,A.w(this).h("cx<1>"))}, +gF(a){var s=this.a +return new A.fO(s.gF(s),this.b,A.w(this).h("fO<1>"))}} +A.dZ.prototype={ +gm(a){var s=this.a,r=s.gm(s)-this.b +if(r>=0)return r +return 0}, +aX(a,b){A.hR(b,"count",t.S) +A.aE(b,"count") +return new A.dZ(this.a,this.b+b,this.$ti)}, +$iz:1} +A.fO.prototype={ +p(){var s,r +for(s=this.a,r=0;r"))}} +A.bZ.prototype={ +p(){var s,r +for(s=this.a,r=this.$ti.c;s.p();)if(r.b(s.gB()))return!0 +return!1}, +gB(){return this.$ti.c.a(this.a.gB())}, +$iK:1} +A.ai.prototype={ +sm(a,b){throw A.f(A.aj("Cannot change the length of a fixed-length list"))}, +l(a,b){A.b2(a).h("ai.E").a(b) +throw A.f(A.aj("Cannot add to a fixed-length list"))}} +A.bL.prototype={ +k(a,b,c){A.w(this).h("bL.E").a(c) +throw A.f(A.aj("Cannot modify an unmodifiable list"))}, +sm(a,b){throw A.f(A.aj("Cannot change the length of an unmodifiable list"))}, +l(a,b){A.w(this).h("bL.E").a(b) +throw A.f(A.aj("Cannot add to an unmodifiable list"))}, +cd(a,b){A.w(this).h("b(bL.E,bL.E)?").a(b) +throw A.f(A.aj("Cannot modify an unmodifiable list"))}} +A.em.prototype={} +A.V.prototype={ +gm(a){return J.b5(this.a)}, +ai(a,b){var s=this.a,r=J.ab(s) +return r.ai(s,r.gm(s)-1-b)}} +A.cf.prototype={ +gq(a){var s=this._hashCode +if(s!=null)return s +s=664597*B.b.gq(this.a)&536870911 +this._hashCode=s +return s}, +j(a){return'Symbol("'+this.a+'")'}, +u(a,b){if(b==null)return!1 +return b instanceof A.cf&&this.a===b.a}, +$iel:1} +A.l.prototype={$r:"+(1,2)",$s:1} +A.hl.prototype={$r:"+(1,2,3)",$s:2} +A.hm.prototype={$r:"+(1,2,3,4)",$s:3} +A.hn.prototype={$r:"+(1,2,3,4,5)",$s:4} +A.ho.prototype={$r:"+(1,2,3,4,5,6,7,8)",$s:5} +A.eP.prototype={} +A.dW.prototype={ +c2(a,b,c){var s=A.w(this) +return A.ry(this,s.c,s.y[1],b,c)}, +gN(a){return this.gm(this)===0}, +j(a){return A.q3(this)}, +k(a,b,c){var s=A.w(this) +s.c.a(b) +s.y[1].a(c) +A.vA()}, +$id:1} +A.r.prototype={ +gm(a){return this.b.length}, +ghb(){var s=this.$keys +if(s==null){s=Object.keys(this.a) +this.$keys=s}return s}, +a8(a){if(typeof a!="string")return!1 +if("__proto__"===a)return!1 +return this.a.hasOwnProperty(a)}, +n(a,b){if(!this.a8(b))return null +return this.b[this.a[b]]}, +X(a,b){var s,r,q,p +this.$ti.h("~(1,2)").a(b) +s=this.ghb() +r=this.b +for(q=s.length,p=0;p"))}} +A.he.prototype={ +gm(a){return this.a.length}, +gN(a){return 0===this.a.length}, +gaP(a){return 0!==this.a.length}, +gF(a){var s=this.a +return new A.cK(s,s.length,this.$ti.h("cK<1>"))}} +A.cK.prototype={ +gB(){var s=this.d +return s==null?this.$ti.c.a(s):s}, +p(){var s=this,r=s.c +if(r>=s.b){s.d=null +return!1}s.d=s.a[r] +s.c=r+1 +return!0}, +$iK:1} +A.a.prototype={ +bZ(){var s=this,r=s.$map +if(r==null){r=new A.dn(s.$ti.h("dn<1,2>")) +A.un(s.a,r) +s.$map=r}return r}, +a8(a){return this.bZ().a8(a)}, +n(a,b){return this.bZ().n(0,b)}, +X(a,b){this.$ti.h("~(1,2)").a(b) +this.bZ().X(0,b)}, +gaR(){var s=this.bZ() +return new A.aU(s,A.w(s).h("aU<1>"))}, +gm(a){return this.bZ().a}} +A.dX.prototype={} +A.bf.prototype={ +gm(a){return this.b}, +gN(a){return this.b===0}, +gaP(a){return this.b!==0}, +gF(a){var s,r=this,q=r.$keys +if(q==null){q=Object.keys(r.a) +r.$keys=q}s=q +return new A.cK(s,s.length,r.$ti.h("cK<1>"))}, +D(a,b){if(typeof b!="string")return!1 +if("__proto__"===b)return!1 +return this.a.hasOwnProperty(b)}} +A.aO.prototype={ +gm(a){return this.a.length}, +gN(a){return this.a.length===0}, +gaP(a){return this.a.length!==0}, +gF(a){var s=this.a +return new A.cK(s,s.length,this.$ti.h("cK<1>"))}, +bZ(){var s,r,q,p,o=this,n=o.$map +if(n==null){n=new A.dn(o.$ti.h("dn<1,1>")) +for(s=o.a,r=s.length,q=0;q")}} +A.e0.prototype={ +$2(a,b){return this.a.$1$2(a,b,this.$ti.y[0])}, +$S(){return A.zb(A.pe(this.a),this.$ti)}} +A.fj.prototype={ +gns(){var s=this.a +if(s instanceof A.cf)return s +return this.a=new A.cf(A.q(s))}, +gnI(){var s,r,q,p,o,n=this +if(n.c===1)return B.h +s=n.d +r=J.ab(s) +q=r.gm(s)-J.b5(n.e)-n.f +if(q===0)return B.h +p=[] +for(o=0;o>>0}, +j(a){return"Closure '"+this.$_name+"' of "+("Instance of '"+A.jB(this.a)+"'")}} +A.jI.prototype={ +j(a){return"RuntimeError: "+this.a}} +A.oS.prototype={} +A.bx.prototype={ +gm(a){return this.a}, +gN(a){return this.a===0}, +gaR(){return new A.aU(this,A.w(this).h("aU<1>"))}, +a8(a){var s,r +if(typeof a=="string"){s=this.b +if(s==null)return!1 +return s[a]!=null}else if(typeof a=="number"&&(a&0x3fffffff)===a){r=this.c +if(r==null)return!1 +return r[a]!=null}else return this.nc(a)}, +nc(a){var s=this.d +if(s==null)return!1 +return this.cT(s[this.cS(a)],a)>=0}, +a1(a,b){A.w(this).h("d<1,2>").a(b).X(0,new A.mG(this))}, +n(a,b){var s,r,q,p,o=null +if(typeof b=="string"){s=this.b +if(s==null)return o +r=s[b] +q=r==null?o:r.b +return q}else if(typeof b=="number"&&(b&0x3fffffff)===b){p=this.c +if(p==null)return o +r=p[b] +q=r==null?o:r.b +return q}else return this.nd(b)}, +nd(a){var s,r,q=this.d +if(q==null)return null +s=q[this.cS(a)] +r=this.cT(s,a) +if(r<0)return null +return s[r].b}, +k(a,b,c){var s,r,q=this,p=A.w(q) +p.c.a(b) +p.y[1].a(c) +if(typeof b=="string"){s=q.b +q.fO(s==null?q.b=q.eo():s,b,c)}else if(typeof b=="number"&&(b&0x3fffffff)===b){r=q.c +q.fO(r==null?q.c=q.eo():r,b,c)}else q.nf(b,c)}, +nf(a,b){var s,r,q,p,o=this,n=A.w(o) +n.c.a(a) +n.y[1].a(b) +s=o.d +if(s==null)s=o.d=o.eo() +r=o.cS(a) +q=s[r] +if(q==null)s[r]=[o.ep(a,b)] +else{p=o.cT(q,a) +if(p>=0)q[p].b=b +else q.push(o.ep(a,b))}}, +f6(a,b){var s,r,q=this,p=A.w(q) +p.c.a(a) +p.h("2()").a(b) +if(q.a8(a)){s=q.n(0,a) +return s==null?p.y[1].a(s):s}r=b.$0() +q.k(0,a,r) +return r}, +V(a,b){var s=this +if(typeof b=="string")return s.hn(s.b,b) +else if(typeof b=="number"&&(b&0x3fffffff)===b)return s.hn(s.c,b) +else return s.ne(b)}, +ne(a){var s,r,q,p,o=this,n=o.d +if(n==null)return null +s=o.cS(a) +r=n[s] +q=o.cT(r,a) +if(q<0)return null +p=r.splice(q,1)[0] +o.hx(p) +if(r.length===0)delete n[s] +return p.b}, +bb(a){var s=this +if(s.a>0){s.b=s.c=s.d=s.e=s.f=null +s.a=0 +s.en()}}, +X(a,b){var s,r,q=this +A.w(q).h("~(1,2)").a(b) +s=q.e +r=q.r +while(s!=null){b.$2(s.a,s.b) +if(r!==q.r)throw A.f(A.ag(q)) +s=s.c}}, +fO(a,b,c){var s,r=A.w(this) +r.c.a(b) +r.y[1].a(c) +s=a[b] +if(s==null)a[b]=this.ep(b,c) +else s.b=c}, +hn(a,b){var s +if(a==null)return null +s=a[b] +if(s==null)return null +this.hx(s) +delete a[b] +return s.b}, +en(){this.r=this.r+1&1073741823}, +ep(a,b){var s=this,r=A.w(s),q=new A.mI(r.c.a(a),r.y[1].a(b)) +if(s.e==null)s.e=s.f=q +else{r=s.f +r.toString +q.d=r +s.f=r.c=q}++s.a +s.en() +return q}, +hx(a){var s=this,r=a.d,q=a.c +if(r==null)s.e=q +else r.c=q +if(q==null)s.f=r +else q.d=r;--s.a +s.en()}, +cS(a){return J.A(a)&1073741823}, +cT(a,b){var s,r +if(a==null)return-1 +s=a.length +for(r=0;r"]=s +delete s[""] +return s}, +$imH:1} +A.mG.prototype={ +$2(a,b){var s=this.a,r=A.w(s) +s.k(0,r.c.a(a),r.y[1].a(b))}, +$S(){return A.w(this.a).h("~(1,2)")}} +A.mI.prototype={} +A.aU.prototype={ +gm(a){return this.a.a}, +gN(a){return this.a.a===0}, +gF(a){var s=this.a +return new A.cv(s,s.r,s.e,this.$ti.h("cv<1>"))}, +D(a,b){return this.a.a8(b)}} +A.cv.prototype={ +gB(){return this.d}, +p(){var s,r=this,q=r.a +if(r.b!==q.r)throw A.f(A.ag(q)) +s=r.c +if(s==null){r.d=null +return!1}else{r.d=s.a +r.c=s.c +return!0}}, +$iK:1} +A.fo.prototype={ +gm(a){return this.a.a}, +gN(a){return this.a.a===0}, +gF(a){var s=this.a +return new A.dq(s,s.r,s.e,this.$ti.h("dq<1>"))}} +A.dq.prototype={ +gB(){return this.d}, +p(){var s,r=this,q=r.a +if(r.b!==q.r)throw A.f(A.ag(q)) +s=r.c +if(s==null){r.d=null +return!1}else{r.d=s.b +r.c=s.c +return!0}}, +$iK:1} +A.dp.prototype={ +gm(a){return this.a.a}, +gN(a){return this.a.a===0}, +gF(a){var s=this.a +return new A.fn(s,s.r,s.e,this.$ti.h("fn<1,2>"))}} +A.fn.prototype={ +gB(){var s=this.d +s.toString +return s}, +p(){var s,r=this,q=r.a +if(r.b!==q.r)throw A.f(A.ag(q)) +s=r.c +if(s==null){r.d=null +return!1}else{r.d=new A.b_(s.a,s.b,r.$ti.h("b_<1,2>")) +r.c=s.c +return!0}}, +$iK:1} +A.dn.prototype={ +cS(a){return A.yG(a)&1073741823}, +cT(a,b){var s,r +if(a==null)return-1 +s=a.length +for(r=0;r0;){--q;--s +B.a.k(j,q,r[s])}}return A.rx(j,k)}} +A.ez.prototype={ +di(){return[this.a,this.b]}, +u(a,b){if(b==null)return!1 +return b instanceof A.ez&&this.$s===b.$s&&J.M(this.a,b.a)&&J.M(this.b,b.b)}, +gq(a){return A.aX(this.$s,this.a,this.b,B.u)}} +A.eA.prototype={ +di(){return[this.a,this.b,this.c]}, +u(a,b){var s=this +if(b==null)return!1 +return b instanceof A.eA&&s.$s===b.$s&&J.M(s.a,b.a)&&J.M(s.b,b.b)&&J.M(s.c,b.c)}, +gq(a){var s=this +return A.aX(s.$s,s.a,s.b,s.c)}} +A.d7.prototype={ +di(){return this.a}, +u(a,b){if(b==null)return!1 +return b instanceof A.d7&&this.$s===b.$s&&A.xk(this.a,b.a)}, +gq(a){return A.aX(this.$s,A.wf(this.a),B.u,B.u)}} +A.cV.prototype={ +j(a){return"RegExp/"+this.a+"/"+this.b.flags}, +ghg(){var s=this,r=s.c +if(r!=null)return r +r=s.b +return s.c=A.pY(s.a,r.multiline,!r.ignoreCase,r.unicode,r.dotAll,"g")}, +gkA(){var s=this,r=s.d +if(r!=null)return r +r=s.b +return s.d=A.pY(s.a,r.multiline,!r.ignoreCase,r.unicode,r.dotAll,"y")}, +k8(){var s,r=this.a +if(!B.b.D(r,"("))return!1 +s=this.b.unicode?"u":"" +return new RegExp("(?:)|"+r,s).exec("").length>1}, +dC(a,b,c){var s=b.length +if(c>s)throw A.f(A.ad(c,0,s,null,null)) +return new A.ku(this,b,c)}, +dB(a,b){return this.dC(0,b,0)}, +h5(a,b){var s,r=this.ghg() +if(r==null)r=A.cg(r) +r.lastIndex=b +s=r.exec(a) +if(s==null)return null +return new A.hg(s)}, +km(a,b){var s,r=this.gkA() +if(r==null)r=A.cg(r) +r.lastIndex=b +s=r.exec(a) +if(s==null)return null +return new A.hg(s)}, +f_(a,b,c){if(c<0||c>b.length)throw A.f(A.ad(c,0,b.length,null,null)) +return this.km(b,c)}, +$idw:1, +$iqb:1} +A.hg.prototype={ +gS(){return this.b.index}, +gU(){var s=this.b +return s.index+s[0].length}, +d8(a){var s=this.b +if(!(a=0&&q=55296&&q<=56319){if(!(n>=0))return A.c(l,n) +s=l.charCodeAt(n) +s=s>=56320&&s<=57343}}}o=(s?o+1:o)+1}m.c=o +return!0}}m.b=m.d=null +return!1}, +$iK:1} +A.fS.prototype={ +gU(){return this.a+this.c.length}, +d8(a){if(a!==0)throw A.f(A.nq(a,null)) +return this.c}, +$icc:1, +gS(){return this.a}} +A.kR.prototype={ +gF(a){return new A.kS(this.a,this.b,this.c)}} +A.kS.prototype={ +p(){var s,r,q=this,p=q.c,o=q.b,n=o.length,m=q.a,l=m.length +if(p+n>l){q.d=null +return!1}s=m.indexOf(o,p) +if(s<0){q.c=l+1 +q.d=null +return!1}r=s+n +q.d=new A.fS(s,o) +q.c=r===q.c?r+1:r +return!0}, +gB(){var s=this.d +s.toString +return s}, +$iK:1} +A.kz.prototype={ +aY(){var s=this.b +if(s===this)throw A.f(A.q0(this.a)) +return s}} +A.du.prototype={ +gaz(a){return B.Mu}, +hN(a,b,c){var s +A.p7(a,b,c) +s=new Uint8Array(a,b,c) +return s}, +dD(a,b,c){A.p7(a,b,c) +return c==null?new DataView(a,b):new DataView(a,b,c)}, +hM(a){return this.dD(a,0,null)}, +$ia2:1, +$idu:1} +A.fu.prototype={ +ga9(a){if(((a.$flags|0)&2)!==0)return new A.oX(a.buffer) +else return a.buffer}, +kv(a,b,c,d){var s=A.ad(b,0,c,d,null) +throw A.f(s)}, +fV(a,b,c,d){if(b>>>0!==b||b>c)this.kv(a,b,c,d)}} +A.oX.prototype={ +hN(a,b,c){var s=A.w4(this.a,b,c) +s.$flags=3 +return s}, +dD(a,b,c){var s=A.w1(this.a,b,c) +s.$flags=3 +return s}, +hM(a){return this.dD(0,0,null)}} +A.j6.prototype={ +gaz(a){return B.Mv}, +$ia2:1} +A.aW.prototype={ +gm(a){return a.length}, +kV(a,b,c,d,e){var s,r,q=a.length +this.fV(a,b,q,"start") +this.fV(a,c,q,"end") +if(b>c)throw A.f(A.ad(b,0,c,null,null)) +s=c-b +if(e<0)throw A.f(A.U(e,null)) +r=d.length +if(r-e").b(a))s.fU(a) +else s.fY(a)}}, +eF(a,b){var s=this.a +if(this.b)s.eb(new A.bG(a,b)) +else s.e8(new A.bG(a,b))}} +A.p5.prototype={ +$1(a){return this.a.$2(0,a)}, +$S:16} +A.p6.prototype={ +$2(a,b){this.a.$2(1,new A.fc(a,t.E.a(b)))}, +$S:43} +A.pd.prototype={ +$2(a,b){this.a(A.aw(a),b)}, +$S:51} +A.bG.prototype={ +j(a){return A.k(this.a)}, +$iZ:1, +gce(){return this.b}} +A.kA.prototype={ +eF(a,b){var s=this.a +if((s.a&30)!==0)throw A.f(A.ce("Future already completed")) +s.e8(A.y4(a,b))}, +hZ(a){return this.eF(a,null)}} +A.h8.prototype={ +eE(a){var s,r=this.$ti +r.h("1/?").a(a) +s=this.a +if((s.a&30)!==0)throw A.f(A.ce("Future already completed")) +s.e7(r.h("1/").a(a))}} +A.dI.prototype={ +nq(a){if((this.c&15)!==6)return!0 +return this.b.b.fc(t.iW.a(this.d),a.a,t.k4,t.K)}, +n5(a){var s,r=this,q=r.e,p=null,o=t.z,n=t.K,m=a.a,l=r.b.b +if(t.ng.b(q))p=l.oa(q,m,a.b,o,n,t.E) +else p=l.fc(t.mq.a(q),m,o,n) +try{o=r.$ti.h("2/").a(p) +return o}catch(s){if(t.do.b(A.bP(s))){if((r.c&1)!==0)throw A.f(A.U("The error handler of Future.then must return a value of the returned future's type","onError")) +throw A.f(A.U("The error handler of Future.catchError must return a value of the future's type","onError"))}else throw s}}} +A.az.prototype={ +fd(a,b,c){var s,r,q,p=this.$ti +p.v(c).h("1/(2)").a(a) +s=$.am +if(s===B.a3){if(b!=null&&!t.ng.b(b)&&!t.mq.b(b))throw A.f(A.pU(b,"onError",u.w))}else{c.h("@<0/>").v(p.c).h("1(2)").a(a) +if(b!=null)b=A.ym(b,s)}r=new A.az(s,c.h("az<0>")) +q=b==null?1:3 +this.e6(new A.dI(r,q,a,b,p.h("@<1>").v(c).h("dI<1,2>"))) +return r}, +of(a,b){return this.fd(a,null,b)}, +hu(a,b,c){var s,r=this.$ti +r.v(c).h("1/(2)").a(a) +s=new A.az($.am,c.h("az<0>")) +this.e6(new A.dI(s,19,a,b,r.h("@<1>").v(c).h("dI<1,2>"))) +return s}, +kU(a){this.a=this.a&1|16 +this.c=a}, +dg(a){this.a=a.a&30|this.a&1 +this.c=a.c}, +e6(a){var s,r=this,q=r.a +if(q<=3){a.a=t.np.a(r.c) +r.c=a}else{if((q&4)!==0){s=t.j_.a(r.c) +if((s.a&24)===0){s.e6(a) +return}r.dg(s)}A.lv(null,null,r.b,t.T.a(new A.oB(r,a)))}}, +hl(a){var s,r,q,p,o,n,m=this,l={} +l.a=a +if(a==null)return +s=m.a +if(s<=3){r=t.np.a(m.c) +m.c=a +if(r!=null){q=a.a +for(p=a;q!=null;p=q,q=o)o=q.a +p.a=r}}else{if((s&4)!==0){n=t.j_.a(m.c) +if((n.a&24)===0){n.hl(a) +return}m.dg(n)}l.a=m.dr(a) +A.lv(null,null,m.b,t.T.a(new A.oF(l,m)))}}, +dq(){var s=t.np.a(this.c) +this.c=null +return this.dr(s)}, +dr(a){var s,r,q +for(s=a,r=null;s!=null;r=s,s=q){q=s.a +s.a=r}return r}, +fY(a){var s,r=this +r.$ti.c.a(a) +s=r.dq() +r.a=8 +r.c=a +A.ex(r,s)}, +k6(a){var s,r,q=this +if((a.a&16)!==0){s=q.b===a.b +s=!(s||s)}else s=!1 +if(s)return +r=q.dq() +q.dg(a) +A.ex(q,r)}, +eb(a){var s=this.dq() +this.kU(a) +A.ex(this,s)}, +e7(a){var s=this.$ti +s.h("1/").a(a) +if(s.h("cr<1>").b(a)){this.fU(a) +return}this.k0(a)}, +k0(a){var s=this +s.$ti.c.a(a) +s.a^=2 +A.lv(null,null,s.b,t.T.a(new A.oD(s,a)))}, +fU(a){A.qu(this.$ti.h("cr<1>").a(a),this,!1) +return}, +e8(a){this.a^=2 +A.lv(null,null,this.b,t.T.a(new A.oC(this,a)))}, +$icr:1} +A.oB.prototype={ +$0(){A.ex(this.a,this.b)}, +$S:1} +A.oF.prototype={ +$0(){A.ex(this.b,this.a.a)}, +$S:1} +A.oE.prototype={ +$0(){A.qu(this.a.a,this.b,!0)}, +$S:1} +A.oD.prototype={ +$0(){this.a.fY(this.b)}, +$S:1} +A.oC.prototype={ +$0(){this.a.eb(this.b)}, +$S:1} +A.oI.prototype={ +$0(){var s,r,q,p,o,n,m,l,k=this,j=null +try{q=k.a.a +j=q.b.b.o9(t.mY.a(q.d),t.z)}catch(p){s=A.bP(p) +r=A.eJ(p) +if(k.c&&t.A.a(k.b.a.c).a===s){q=k.a +q.c=t.A.a(k.b.a.c)}else{q=s +o=r +if(o==null)o=A.pV(q) +n=k.a +n.c=new A.bG(q,o) +q=n}q.b=!0 +return}if(j instanceof A.az&&(j.a&24)!==0){if((j.a&16)!==0){q=k.a +q.c=t.A.a(j.c) +q.b=!0}return}if(j instanceof A.az){m=k.b.a +l=new A.az(m.b,m.$ti) +j.fd(new A.oJ(l,m),new A.oK(l),t.H) +q=k.a +q.c=l +q.b=!1}}, +$S:1} +A.oJ.prototype={ +$1(a){this.a.k6(this.b)}, +$S:28} +A.oK.prototype={ +$2(a,b){A.cg(a) +t.E.a(b) +this.a.eb(new A.bG(a,b))}, +$S:56} +A.oH.prototype={ +$0(){var s,r,q,p,o,n,m,l +try{q=this.a +p=q.a +o=p.$ti +n=o.c +m=n.a(this.b) +q.c=p.b.b.fc(o.h("2/(1)").a(p.d),m,o.h("2/"),n)}catch(l){s=A.bP(l) +r=A.eJ(l) +q=s +p=r +if(p==null)p=A.pV(q) +o=this.a +o.c=new A.bG(q,p) +o.b=!0}}, +$S:1} +A.oG.prototype={ +$0(){var s,r,q,p,o,n,m,l=this +try{s=t.A.a(l.a.a.c) +p=l.b +if(p.a.nq(s)&&p.a.e!=null){p.c=p.a.n5(s) +p.b=!1}}catch(o){r=A.bP(o) +q=A.eJ(o) +p=t.A.a(l.a.a.c) +if(p.a===r){n=l.b +n.c=p +p=n}else{p=r +n=q +if(n==null)n=A.pV(p) +m=l.b +m.c=new A.bG(p,n) +p=m}p.b=!0}}, +$S:1} +A.kw.prototype={} +A.kQ.prototype={} +A.hz.prototype={$ite:1} +A.kP.prototype={ +ob(a){var s,r,q +t.T.a(a) +try{if(B.a3===$.am){a.$0() +return}A.u4(null,null,this,a,t.H)}catch(q){s=A.bP(q) +r=A.eJ(q) +A.qJ(A.cg(s),t.E.a(r))}}, +lN(a){return new A.oT(this,t.T.a(a))}, +o9(a,b){b.h("0()").a(a) +if($.am===B.a3)return a.$0() +return A.u4(null,null,this,a,b)}, +fc(a,b,c,d){c.h("@<0>").v(d).h("1(2)").a(a) +d.a(b) +if($.am===B.a3)return a.$1(b) +return A.yo(null,null,this,a,b,c,d)}, +oa(a,b,c,d,e,f){d.h("@<0>").v(e).v(f).h("1(2,3)").a(a) +e.a(b) +f.a(c) +if($.am===B.a3)return a.$2(b,c) +return A.yn(null,null,this,a,b,c,d,e,f)}, +is(a,b,c,d){return b.h("@<0>").v(c).v(d).h("1(2,3)").a(a)}} +A.oT.prototype={ +$0(){return this.a.ob(this.b)}, +$S:1} +A.pb.prototype={ +$0(){A.vG(this.a,this.b)}, +$S:1} +A.cJ.prototype={ +gm(a){return this.a}, +gN(a){return this.a===0}, +gaR(){return new A.hc(this,A.w(this).h("hc<1>"))}, +a8(a){var s,r +if(typeof a=="string"&&a!=="__proto__"){s=this.b +return s==null?!1:s[a]!=null}else if(typeof a=="number"&&(a&1073741823)===a){r=this.c +return r==null?!1:r[a]!=null}else return this.h_(a)}, +h_(a){var s=this.d +if(s==null)return!1 +return this.bG(this.h8(s,a),a)>=0}, +n(a,b){var s,r,q +if(typeof b=="string"&&b!=="__proto__"){s=this.b +r=s==null?null:A.to(s,b) +return r}else if(typeof b=="number"&&(b&1073741823)===b){q=this.c +r=q==null?null:A.to(q,b) +return r}else return this.h7(b)}, +h7(a){var s,r,q=this.d +if(q==null)return null +s=this.h8(q,a) +r=this.bG(s,a) +return r<0?null:s[r+1]}, +k(a,b,c){var s,r,q=this,p=A.w(q) +p.c.a(b) +p.y[1].a(c) +if(typeof b=="string"&&b!=="__proto__"){s=q.b +q.fX(s==null?q.b=A.qv():s,b,c)}else if(typeof b=="number"&&(b&1073741823)===b){r=q.c +q.fX(r==null?q.c=A.qv():r,b,c)}else q.ho(b,c)}, +ho(a,b){var s,r,q,p,o=this,n=A.w(o) +n.c.a(a) +n.y[1].a(b) +s=o.d +if(s==null)s=o.d=A.qv() +r=o.bY(a) +q=s[r] +if(q==null){A.qw(s,r,[a,b]);++o.a +o.e=null}else{p=o.bG(q,a) +if(p>=0)q[p+1]=b +else{q.push(a,b);++o.a +o.e=null}}}, +X(a,b){var s,r,q,p,o,n,m=this,l=A.w(m) +l.h("~(1,2)").a(b) +s=m.fZ() +for(r=s.length,q=l.c,l=l.y[1],p=0;p"))}, +D(a,b){return this.a.a8(b)}} +A.hd.prototype={ +gB(){var s=this.d +return s==null?this.$ti.c.a(s):s}, +p(){var s=this,r=s.b,q=s.c,p=s.a +if(r!==p.e)throw A.f(A.ag(p)) +else if(q>=r.length){s.d=null +return!1}else{s.d=r[q] +s.c=q+1 +return!0}}, +$iK:1} +A.cL.prototype={ +gF(a){var s=this,r=new A.dK(s,s.r,A.w(s).h("dK<1>")) +r.c=s.e +return r}, +gm(a){return this.a}, +gN(a){return this.a===0}, +gaP(a){return this.a!==0}, +D(a,b){var s,r +if(typeof b=="string"&&b!=="__proto__"){s=this.b +if(s==null)return!1 +return t.nF.a(s[b])!=null}else if(typeof b=="number"&&(b&1073741823)===b){r=this.c +if(r==null)return!1 +return t.nF.a(r[b])!=null}else return this.ka(b)}, +ka(a){var s=this.d +if(s==null)return!1 +return this.bG(s[this.bY(a)],a)>=0}, +l(a,b){var s,r,q=this +A.w(q).c.a(b) +if(typeof b=="string"&&b!=="__proto__"){s=q.b +return q.fW(s==null?q.b=A.qx():s,b)}else if(typeof b=="number"&&(b&1073741823)===b){r=q.c +return q.fW(r==null?q.c=A.qx():r,b)}else return q.de(b)}, +de(a){var s,r,q,p=this +A.w(p).c.a(a) +s=p.d +if(s==null)s=p.d=A.qx() +r=p.bY(a) +q=s[r] +if(q==null)s[r]=[p.ea(a)] +else{if(p.bG(q,a)>=0)return!1 +q.push(p.ea(a))}return!0}, +fW(a,b){A.w(this).c.a(b) +if(t.nF.a(a[b])!=null)return!1 +a[b]=this.ea(b) +return!0}, +ea(a){var s=this,r=new A.kM(A.w(s).c.a(a)) +if(s.e==null)s.e=s.f=r +else s.f=s.f.b=r;++s.a +s.r=s.r+1&1073741823 +return r}, +bY(a){return J.A(a)&1073741823}, +bG(a,b){var s,r +if(a==null)return-1 +s=a.length +for(r=0;r"))}, +ai(a,b){return this.n(a,b)}, +X(a,b){var s,r +A.b2(a).h("~(D.E)").a(b) +s=this.gm(a) +for(r=0;r1)throw A.f(A.rp()) +return this.n(a,0)}, +D(a,b){var s,r=this.gm(a) +for(s=0;s").v(c).h("R<1,2>"))}, +aX(a,b){return A.bX(a,b,null,A.b2(a).h("D.E"))}, +bj(a,b){return A.bX(a,0,A.dO(b,"count",t.S),A.b2(a).h("D.E"))}, +l(a,b){var s +A.b2(a).h("D.E").a(b) +s=this.gm(a) +this.sm(a,s+1) +this.k(a,s,b)}, +bb(a){this.sm(a,0)}, +d3(a){var s,r=this +if(r.gm(a)===0)throw A.f(A.bi()) +s=r.n(a,r.gm(a)-1) +r.sm(a,r.gm(a)-1) +return s}, +cd(a,b){var s,r=A.b2(a) +r.h("b(D.E,D.E)?").a(b) +s=b==null?A.yF():b +A.jK(a,0,this.gm(a)-1,s,r.h("D.E"))}, +c4(a,b,c,d){var s +A.b2(a).h("D.E?").a(d) +A.cw(b,c,this.gm(a)) +for(s=b;s").a(d) +A.cw(b,c,this.gm(a)) +s=c-b +if(s===0)return +A.aE(e,"skipCount") +if(t.p.b(d)){r=e +q=d}else{q=J.lC(d,e).cz(0,!1) +r=0}p=J.ab(q) +if(r+s>p.gm(q))throw A.f(A.ro()) +if(r=0;--o)this.k(a,b+o,p.n(q,r+o)) +else for(o=0;o").v(c).h("dF<1,2>"))}} +A.fp.prototype={ +gF(a){var s=this +return new A.hf(s,s.c,s.d,s.b,s.$ti.h("hf<1>"))}, +gN(a){return this.b===this.c}, +gm(a){return(this.c-this.b&this.a.length-1)>>>0}, +ai(a,b){var s,r,q,p=this +A.vN(b,p.gm(0),p,null,null) +s=p.a +r=s.length +q=(p.b+b&r-1)>>>0 +if(!(q>=0&&q>>0)B.a.k(s.a,r,null) +s.b=s.c=0;++s.d}}, +j(a){return A.iS(this,"{","}")}, +it(){var s,r,q=this,p=q.b +if(p===q.c)throw A.f(A.bi());++q.d +s=q.a +if(!(p>>0 +return r}, +de(a){var s,r,q,p,o=this,n=o.$ti +n.c.a(a) +B.a.k(o.a,o.c,a) +s=o.c +r=o.a.length +s=(s+1&r-1)>>>0 +o.c=s +if(o.b===s){q=A.aD(r*2,null,!1,n.h("1?")) +n=o.a +s=o.b +p=n.length-s +B.a.ba(q,0,p,n,s) +B.a.ba(q,p,p+o.b,o.a,0) +o.b=0 +o.c=o.a.length +o.a=q}++o.d}, +$iwC:1} +A.hf.prototype={ +gB(){var s=this.e +return s==null?this.$ti.c.a(s):s}, +p(){var s,r,q=this,p=q.a +if(q.c!==p.d)A.O(A.ag(p)) +s=q.d +if(s===q.b){q.e=null +return!1}p=p.a +r=p.length +if(!(s>>0 +return!0}, +$iK:1} +A.aY.prototype={ +gN(a){return this.gm(this)===0}, +gaP(a){return this.gm(this)!==0}, +j(a){return A.iS(this,"{","}")}, +aq(a,b){var s,r,q=this.gF(this) +if(!q.p())return"" +s=J.ax(q.gB()) +if(!q.p())return s +if(b.length===0){r=s +do r+=A.k(q.gB()) +while(q.p())}else{r=s +do r=r+b+A.k(q.gB()) +while(q.p())}return r.charCodeAt(0)==0?r:r}, +bj(a,b){return A.rU(this,b,A.w(this).h("aY.E"))}, +aX(a,b){return A.rS(this,b,A.w(this).h("aY.E"))}, +ai(a,b){var s,r +A.aE(b,"index") +s=this.gF(this) +for(r=b;s.p();){if(r===0)return s.gB();--r}throw A.f(A.iL(b,b-r,this,null,"index"))}, +$iz:1, +$ih:1, +$ibk:1} +A.hp.prototype={} +A.eC.prototype={} +A.p_.prototype={ +$0(){var s,r +try{s=new TextDecoder("utf-8",{fatal:true}) +return s}catch(r){}return null}, +$S:25} +A.oZ.prototype={ +$0(){var s,r +try{s=new TextDecoder("utf-8",{fatal:false}) +return s}catch(r){}return null}, +$S:25} +A.hS.prototype={ +b0(a){var s +t.L.a(a) +s=B.i_.bL(a) +return s}} +A.kV.prototype={ +bL(a){var s,r,q,p,o +t.L.a(a) +s=J.ab(a) +r=A.cw(0,null,s.gm(a)) +for(q=~this.b,p=0;p>>0!==0){if(!this.a)throw A.f(A.aB("Invalid value in input: "+o,null,null)) +return this.kb(a,0,r)}}return A.ay(a,0,r)}, +kb(a,b,c){var s,r,q,p,o +t.L.a(a) +for(s=~this.b,r=J.ab(a),q=b,p="";q>>0!==0?65533:o)}return p.charCodeAt(0)==0?p:p}} +A.hT.prototype={} +A.eL.prototype={ +geN(){return B.ie}, +nz(a3,a4,a5){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=u.A,a1="Invalid base64 encoding length ",a2=a3.length +a5=A.cw(a4,a5,a2) +s=$.uZ() +for(r=s.length,q=a4,p=q,o=null,n=-1,m=-1,l=0;q=0&&e=0){if(!(d<64))return A.c(a0,d) +e=a0.charCodeAt(d) +if(e===j)continue +j=e}else{if(d===-1){if(n<0){g=o==null?null:o.a.length +if(g==null)g=0 +n=g+(q-p) +m=q}++l +if(j===61)continue}j=e}if(d!==-2){if(o==null){o=new A.W("") +g=o}else g=o +g.a+=B.b.t(a3,p,q) +c=A.a3(j) +g.a+=c +p=k +continue}}throw A.f(A.aB("Invalid base64 data",a3,q))}if(o!=null){a2=B.b.t(a3,p,a5) +a2=o.a+=a2 +r=a2.length +if(n>=0)A.r9(a3,m,a5,n,l,r) +else{b=B.f.bl(r-1,4)+1 +if(b===1)throw A.f(A.aB(a1,a3,a5)) +while(b<4){a2+="=" +o.a=a2;++b}}a2=o.a +return B.b.bR(a3,a4,a5,a2.charCodeAt(0)==0?a2:a2)}a=a5-a4 +if(n>=0)A.r9(a3,m,a5,n,l,a) +else{b=B.f.bl(a,4) +if(b===1)throw A.f(A.aB(a1,a3,a5)) +if(b>1)a3=B.b.bR(a3,a5,a5,b===2?"==":"=")}return a3}} +A.hX.prototype={ +bL(a){var s +t.L.a(a) +s=J.ab(a) +if(s.gN(a))return"" +s=new A.ou(u.A).mR(a,0,s.gm(a),!0) +s.toString +return A.ay(s,0,null)}} +A.ou.prototype={ +mR(a,b,c,d){var s,r,q,p,o +t.L.a(a) +s=this.a +r=(s&3)+(c-b) +q=B.f.av(r,3) +p=q*4 +if(r-q*3>0)p+=4 +o=new Uint8Array(p) +this.a=A.x2(this.b,a,b,c,!0,o,0,s) +if(p>0)return o +return null}} +A.bt.prototype={} +A.cl.prototype={} +A.ic.prototype={} +A.fl.prototype={ +j(a){var s=A.dl(this.a) +return(this.b!=null?"Converting object to an encodable object failed:":"Converting object did not return an encodable object:")+" "+s}} +A.iY.prototype={ +j(a){return"Cyclic error in JSON stringify"}} +A.iX.prototype={ +mQ(a,b){var s=A.xd(a,this.geN().b,null) +return s}, +geN(){return B.iR}} +A.iZ.prototype={} +A.oO.prototype={ +iL(a){var s,r,q,p,o,n,m=a.length +for(s=this.c,r=0,q=0;q92){if(p>=55296){o=p&64512 +if(o===55296){n=q+1 +n=!(n=0&&(a.charCodeAt(o)&64512)===55296)}else o=!1 +else o=!0 +if(o){if(q>r)s.a+=B.b.t(a,r,q) +r=q+1 +o=A.a3(92) +s.a+=o +o=A.a3(117) +s.a+=o +o=A.a3(100) +s.a+=o +o=p>>>8&15 +o=A.a3(o<10?48+o:87+o) +s.a+=o +o=p>>>4&15 +o=A.a3(o<10?48+o:87+o) +s.a+=o +o=p&15 +o=A.a3(o<10?48+o:87+o) +s.a+=o}}continue}if(p<32){if(q>r)s.a+=B.b.t(a,r,q) +r=q+1 +o=A.a3(92) +s.a+=o +switch(p){case 8:o=A.a3(98) +s.a+=o +break +case 9:o=A.a3(116) +s.a+=o +break +case 10:o=A.a3(110) +s.a+=o +break +case 12:o=A.a3(102) +s.a+=o +break +case 13:o=A.a3(114) +s.a+=o +break +default:o=A.a3(117) +s.a+=o +o=A.a3(48) +s.a=(s.a+=o)+o +o=p>>>4&15 +o=A.a3(o<10?48+o:87+o) +s.a+=o +o=p&15 +o=A.a3(o<10?48+o:87+o) +s.a+=o +break}}else if(p===34||p===92){if(q>r)s.a+=B.b.t(a,r,q) +r=q+1 +o=A.a3(92) +s.a+=o +o=A.a3(p) +s.a+=o}}if(r===0)s.a+=a +else if(r=q.length)return A.c(q,-1) +q.pop()}catch(p){r=A.bP(p) +q=A.ru(a,r,o.ghj()) +throw A.f(q)}}, +iK(a){var s,r,q=this +if(typeof a=="number"){if(!isFinite(a))return!1 +q.c.a+=B.cV.j(a) +return!0}else if(a===!0){q.c.a+="true" +return!0}else if(a===!1){q.c.a+="false" +return!0}else if(a==null){q.c.a+="null" +return!0}else if(typeof a=="string"){s=q.c +s.a+='"' +q.iL(a) +s.a+='"' +return!0}else if(t.p.b(a)){q.e9(a) +q.ow(a) +s=q.a +if(0>=s.length)return A.c(s,-1) +s.pop() +return!0}else if(t.av.b(a)){q.e9(a) +r=q.ox(a) +s=q.a +if(0>=s.length)return A.c(s,-1) +s.pop() +return r}else return!1}, +ow(a){var s,r,q=this.c +q.a+="[" +s=J.ab(a) +if(s.gaP(a)){this.dX(s.n(a,0)) +for(r=1;r=15){o=l.a +n=A.xD(o,q,b,s) +if(n!=null){if(!o)return n +if(n.indexOf("\ufffd")<0)return n}}n=l.ed(q,b,s,!0) +o=l.b +if((o&1)!==0){m=A.xF(o) +l.b=0 +throw A.f(A.aB(m,a,p+l.c))}return n}, +ed(a,b,c,d){var s,r,q=this +if(c-b>1000){s=B.f.av(b+c,2) +r=q.ed(a,b,s,!1) +if((q.b&1)!==0)return r +return r+q.ed(a,s,c,d)}return q.mi(a,b,c,d)}, +mi(a,b,a0,a1){var s,r,q,p,o,n,m,l,k=this,j="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFFFFFFFFFFFFFFFFGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHHHHHHHHIHHHJEEBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBKCCCCCCCCCCCCDCLONNNMEEEEEEEEEEE",i=" \x000:XECCCCCN:lDb \x000:XECCCCCNvlDb \x000:XECCCCCN:lDb AAAAA\x00\x00\x00\x00\x00AAAAA00000AAAAA:::::AAAAAGG000AAAAA00KKKAAAAAG::::AAAAA:IIIIAAAAA000\x800AAAAA\x00\x00\x00\x00 AAAAA",h=65533,g=k.b,f=k.c,e=new A.W(""),d=b+1,c=a.length +if(!(b>=0&&b=0&&s<256))return A.c(j,s) +q=j.charCodeAt(s)&31 +f=g<=32?s&61694>>>q:(s&63|f<<6)>>>0 +p=g+q +if(!(p>=0&&p<144))return A.c(i,p) +g=i.charCodeAt(p) +if(g===0){p=A.a3(f) +e.a+=p +if(d===a0)break A +break}else if((g&1)!==0){if(r)switch(g){case 69:case 67:p=A.a3(h) +e.a+=p +break +case 65:p=A.a3(h) +e.a+=p;--d +break +default:p=A.a3(h) +e.a=(e.a+=p)+p +break}else{k.b=g +k.c=d-1 +return""}g=0}if(d===a0)break A +o=d+1 +if(!(d>=0&&d=0&&d=0&&o=128){n=m-1 +o=m +break}o=m}if(n-d<20)for(l=d;l32)if(r){c=A.a3(h) +e.a+=c}else{k.b=77 +k.c=a0 +return""}k.b=g +k.c=f +c=e.a +return c.charCodeAt(0)==0?c:c}} +A.ap.prototype={ +bT(a){var s,r,q=this,p=q.c +if(p===0)return q +s=!q.a +r=q.b +p=A.b0(p,r) +return new A.ap(p===0?!1:s,r,p)}, +ki(a){var s,r,q,p,o,n,m,l=this.c +if(l===0)return $.c8() +s=l+a +r=this.b +q=new Uint16Array(s) +for(p=l-1,o=r.length;p>=0;--p){n=p+a +if(!(p=0&&n=0&&o=0&&r=0&&qj?k:j,h=this.b,g=a.b,f=new Uint16Array(i) +if(k=0&&o=0)return q.bX(b,r) +return b.bX(q,!r)}, +e5(a,b){var s,r,q=this,p=q.c +if(p===0)return b.bT(0) +s=b.c +if(s===0)return q +r=q.a +if(r!==b.a)return q.dd(b,r) +if(A.ov(q.b,p,b.b,s)>=0)return q.bX(b,r) +return b.bX(q,!r)}, +b2(a,b){var s,r,q,p,o,n,m,l=this.c,k=b.c +if(l===0||k===0)return $.c8() +s=l+k +r=this.b +q=b.b +p=new Uint16Array(s) +for(o=q.length,n=0;n0?p.bT(0):p}, +kP(a){var s,r,q,p=this +if(p.c0)q=q.e4(0,$.qp.aY()) +return p.a&&q.c>0?q.bT(0):q}, +h4(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=this,b=c.c +if(b===$.th&&a.c===$.tj&&c.b===$.tg&&a.b===$.ti)return +s=a.b +r=a.c +q=r-1 +if(!(q>=0&&q0){o=new Uint16Array(r+5) +n=A.tf(s,r,p,o) +m=new Uint16Array(b+5) +l=A.tf(c.b,b,p,m)}else{m=A.qq(c.b,0,b,b+2) +n=r +o=s +l=b}q=n-1 +if(!(q>=0&&q=0){q&2&&A.t(m) +if(!(l>=0&&l=0&&l=0&&n0;){d=A.x5(k,m,e);--j +A.tl(d,f,0,m,j,n) +if(!(e>=0&&e=0;--s){if(!(s=m.length)return A.c(m,0) +return B.f.j(-m[0])}m=n.b +if(0>=m.length)return A.c(m,0) +return B.f.j(m[0])}s=A.i([],t.s) +m=n.a +r=m?n.bT(0):n +while(r.c>1){q=$.v_() +if(q.c===0)A.O(B.ii) +p=r.kP(q).j(0) +B.a.l(s,p) +o=p.length +if(o===1)B.a.l(s,"000") +if(o===2)B.a.l(s,"00") +if(o===3)B.a.l(s,"0") +r=r.kh(q)}q=r.b +if(0>=q.length)return A.c(q,0) +B.a.l(s,B.f.j(q[0])) +if(m)B.a.l(s,"-") +return new A.V(s,t.hF).aQ(0)}, +$ii_:1, +$ia5:1} +A.ow.prototype={ +$2(a,b){a=a+b&536870911 +a=a+((a&524287)<<10)&536870911 +return a^a>>>6}, +$S:84} +A.ox.prototype={ +$1(a){a=a+((a&67108863)<<3)&536870911 +a^=a>>>11 +return a+((a&16383)<<15)&536870911}, +$S:26} +A.n3.prototype={ +$2(a,b){var s,r,q +t.bR.a(a) +s=this.b +r=this.a +q=(s.a+=r.a)+a.a +s.a=q +s.a=q+": " +q=A.dl(b) +s.a+=q +r.a=", "}, +$S:42} +A.dg.prototype={ +u(a,b){if(b==null)return!1 +return b instanceof A.dg&&this.a===b.a&&this.b===b.b&&this.c===b.c}, +gq(a){return A.aX(this.a,this.b,B.u,B.u)}, +ah(a,b){var s +t.cs.a(b) +s=B.f.ah(this.a,b.a) +if(s!==0)return s +return B.f.ah(this.b,b.b)}, +j(a){var s=this,r=A.vC(A.wz(s)),q=A.i8(A.wx(s)),p=A.i8(A.wt(s)),o=A.i8(A.wu(s)),n=A.i8(A.ww(s)),m=A.i8(A.wy(s)),l=A.ri(A.wv(s)),k=s.b,j=k===0?"":A.ri(k) +k=r+"-"+q +if(s.c)return k+"-"+p+" "+o+":"+n+":"+m+"."+l+j+"Z" +else return k+"-"+p+" "+o+":"+n+":"+m+"."+l+j}, +$ia5:1} +A.oA.prototype={ +j(a){return this.bn()}} +A.Z.prototype={ +gce(){return A.ws(this)}} +A.hU.prototype={ +j(a){var s=this.a +if(s!=null)return"Assertion failed: "+A.dl(s) +return"Assertion failed"}} +A.cC.prototype={} +A.bR.prototype={ +geh(){return"Invalid argument"+(!this.a?"(s)":"")}, +geg(){return""}, +j(a){var s=this,r=s.c,q=r==null?"":" ("+r+")",p=s.d,o=p==null?"":": "+A.k(p),n=s.geh()+q+o +if(!s.a)return n +return n+s.geg()+": "+A.dl(s.geY())}, +geY(){return this.b}} +A.ef.prototype={ +geY(){return A.tS(this.b)}, +geh(){return"RangeError"}, +geg(){var s,r=this.e,q=this.f +if(r==null)s=q!=null?": Not less than or equal to "+A.k(q):"" +else if(q==null)s=": Not greater than or equal to "+A.k(r) +else if(q>r)s=": Not in inclusive range "+A.k(r)+".."+A.k(q) +else s=qe.length +else s=!1 +if(s)f=null +if(f==null){if(e.length>78)e=B.b.t(e,0,75)+"..." +return g+"\n"+e}for(r=e.length,q=1,p=0,o=!1,n=0;n1?g+(" (at line "+q+", character "+(f-p+1)+")\n"):g+(" (at character "+(f+1)+")\n") +for(n=f;n=0))return A.c(e,n) +m=e.charCodeAt(n) +if(m===10||m===13){r=n +break}}l="" +if(r-p>78){k="..." +if(f-p<75){j=p+75 +i=p}else{if(r-f<75){i=r-75 +j=r +k=""}else{i=f-36 +j=f+36}l="..."}}else{j=r +i=p +k=""}return g+l+B.b.t(e,i,j)+k+"\n"+B.b.b2(" ",f-i+l.length)+"^\n"}else return f!=null?g+(" (at offset "+A.k(f)+")"):g}, +$iah:1} +A.iQ.prototype={ +gce(){return null}, +j(a){return"IntegerDivisionByZeroException"}, +$iZ:1, +$iah:1} +A.h.prototype={ +cr(a,b,c){var s=A.w(this) +return A.rz(this,s.v(c).h("1(h.E)").a(b),s.h("h.E"),c)}, +os(a,b){var s=A.w(this) +return new A.bb(this,s.h("C(h.E)").a(b),s.h("bb"))}, +iF(a,b){return new A.a_(this,b.h("a_<0>"))}, +D(a,b){var s +for(s=this.gF(this);s.p();)if(J.M(s.gB(),b))return!0 +return!1}, +X(a,b){var s +A.w(this).h("~(h.E)").a(b) +for(s=this.gF(this);s.p();)b.$1(s.gB())}, +cQ(a,b,c,d){var s,r +d.a(b) +A.w(this).v(d).h("1(1,h.E)").a(c) +for(s=this.gF(this),r=b;s.p();)r=c.$2(r,s.gB()) +return r}, +aq(a,b){var s,r,q=this.gF(this) +if(!q.p())return"" +s=J.ax(q.gB()) +if(!q.p())return s +if(b.length===0){r=s +do r+=J.ax(q.gB()) +while(q.p())}else{r=s +do r=r+b+J.ax(q.gB()) +while(q.p())}return r.charCodeAt(0)==0?r:r}, +aQ(a){return this.aq(0,"")}, +aH(a,b){var s +A.w(this).h("C(h.E)").a(b) +for(s=this.gF(this);s.p();)if(b.$1(s.gB()))return!0 +return!1}, +cz(a,b){var s=A.w(this).h("h.E") +if(b)s=A.aV(this,s) +else{s=A.aV(this,s) +s.$flags=1 +s=s}return s}, +iA(a){return this.cz(0,!0)}, +gm(a){var s,r=this.gF(this) +for(s=0;r.p();)++s +return s}, +gN(a){return!this.gF(this).p()}, +gaP(a){return!this.gN(this)}, +bj(a,b){return A.rU(this,b,A.w(this).h("h.E"))}, +aX(a,b){return A.rS(this,b,A.w(this).h("h.E"))}, +gbU(a){var s,r=this.gF(this) +if(!r.p())throw A.f(A.bi()) +s=r.gB() +if(r.p())throw A.f(A.rp()) +return s}, +cp(a,b,c){var s,r +A.w(this).h("C(h.E)").a(b) +for(s=this.gF(this);s.p();){r=s.gB() +if(b.$1(r))return r}throw A.f(A.bi())}, +co(a,b){return this.cp(0,b,null)}, +ai(a,b){var s,r +A.aE(b,"index") +s=this.gF(this) +for(r=b;s.p();){if(r===0)return s.gB();--r}throw A.f(A.iL(b,b-r,this,null,"index"))}, +j(a){return A.vR(this,"(",")")}} +A.b_.prototype={ +j(a){return"MapEntry("+A.k(this.a)+": "+A.k(this.b)+")"}} +A.aJ.prototype={ +gq(a){return A.p.prototype.gq.call(this,0)}, +j(a){return"null"}} +A.p.prototype={$ip:1, +u(a,b){return this===b}, +gq(a){return A.dx(this)}, +j(a){return"Instance of '"+A.jB(this)+"'"}, +ii(a,b){throw A.f(A.n2(this,t.bg.a(b)))}, +gaz(a){return A.cN(this)}, +toString(){return this.j(this)}} +A.kT.prototype={ +j(a){return""}, +$id1:1} +A.bV.prototype={ +gF(a){return new A.jH(this.a)}} +A.jH.prototype={ +gB(){return this.d}, +p(){var s,r,q,p=this,o=p.b=p.c,n=p.a,m=n.length +if(o===m){p.d=-1 +return!1}if(!(o=r)return A.c(s,0) +r=s.charCodeAt(0)===47}else r=!1 +if(r)s=B.b.ab(s,1) +q=s.length===0?B.j6:A.rx(new A.R(A.i(s.split("/"),t.s),t.f6.a(A.yN()),t.iZ),t.N) +p.x!==$&&A.dQ() +o=p.x=q}return o}, +gq(a){var s,r=this,q=r.y +if(q===$){s=B.b.gq(r.ghs()) +r.y!==$&&A.dQ() +r.y=s +q=s}return q}, +gff(){return this.b}, +gc5(){var s=this.c +if(s==null)return"" +if(B.b.T(s,"[")&&!B.b.aa(s,"v",1))return B.b.t(s,1,s.length-1) +return s}, +gcZ(){var s=this.d +return s==null?A.tC(this.a):s}, +gd_(){var s=this.f +return s==null?"":s}, +gcR(){var s=this.r +return s==null?"":s}, +nh(a){var s=this.a +if(a.length!==s.length)return!1 +return A.xN(a,s,0)>=0}, +iv(a){var s,r,q,p,o,n,m,l=this +a=A.qB(a,0,a.length) +s=a==="file" +r=l.b +q=l.d +if(a!==l.a)q=A.oY(q,a) +p=l.c +if(!(p!=null))p=r.length!==0||q!=null||s?"":null +o=l.e +if(!s)n=p!=null&&o.length!==0 +else n=!0 +if(n&&!B.b.T(o,"/"))o="/"+o +m=o +return A.hx(a,r,p,q,m,l.f,l.r)}, +hf(a,b){var s,r,q,p,o,n,m,l,k +for(s=0,r=0;B.b.aa(b,"../",r);){r+=3;++s}q=B.b.cU(a,"/") +p=a.length +for(;;){if(!(q>0&&s>0))break +o=B.b.dO(a,"/",q-1) +if(o<0)break +n=q-o +m=n!==2 +l=!1 +if(!m||n===3){k=o+1 +if(!(k0){k=B.b.t(n,0,l) +n=a.geR()?k+A.dM(a.gaT()):k+A.dM(h.hf(B.b.ab(n,k.length),a.gaT()))}else if(a.geR())n=A.dM(a.gaT()) +else if(n.length===0)if(p==null)n=s.length===0?a.gaT():A.dM(a.gaT()) +else n=A.dM("/"+a.gaT()) +else{j=h.hf(n,a.gaT()) +r=s.length===0 +if(!r||p!=null||B.b.T(n,"/"))n=A.dM(j) +else n=A.qD(j,!r||p!=null)}m=a.gdL()?a.gd_():null}}}i=a.gdK()?a.gcR():null +return A.hx(s,q,p,o,n,m,i)}, +geU(){return this.a.length!==0}, +geS(){return this.c!=null}, +gdL(){return this.f!=null}, +gdK(){return this.r!=null}, +gi8(){return this.e.length===0}, +geR(){return B.b.T(this.e,"/")}, +fe(){var s,r=this,q=r.a +if(q!==""&&q!=="file")throw A.f(A.aj("Cannot extract a file path from a "+q+" URI")) +q=r.f +if((q==null?"":q)!=="")throw A.f(A.aj(u.z)) +q=r.r +if((q==null?"":q)!=="")throw A.f(A.aj(u.E)) +if(r.c!=null&&r.gc5()!=="")A.O(A.aj(u.Q)) +s=r.gnF() +A.xx(s,!1) +q=A.qe(B.b.T(r.e,"/")?"/":"",s,"/") +q=q.charCodeAt(0)==0?q:q +return q}, +j(a){return this.ghs()}, +u(a,b){var s,r,q,p=this +if(b==null)return!1 +if(p===b)return!0 +s=!1 +if(t.jJ.b(b))if(p.a===b.gaV())if(p.c!=null===b.geS())if(p.b===b.gff())if(p.gc5()===b.gc5())if(p.gcZ()===b.gcZ())if(p.e===b.gaT()){r=p.f +q=r==null +if(!q===b.gdL()){if(q)r="" +if(r===b.gd_()){r=p.r +q=r==null +if(!q===b.gdK()){s=q?"":r +s=s===b.gcR()}}}}return s}, +$ik_:1, +gaV(){return this.a}, +gaT(){return this.e}} +A.nO.prototype={ +giC(){var s,r,q,p,o=this,n=null,m=o.c +if(m==null){m=o.b +if(0>=m.length)return A.c(m,0) +s=o.a +m=m[0]+1 +r=B.b.ap(s,"?",m) +q=s.length +if(r>=0){p=A.hy(s,r+1,q,256,!1,!1) +q=r}else p=n +m=o.c=new A.kC("data","",n,n,A.hy(s,m,q,128,!1,!1),p,n)}return m}, +j(a){var s,r=this.b +if(0>=r.length)return A.c(r,0) +s=this.a +return r[0]===-1?"data:"+s:s}} +A.bN.prototype={ +geU(){return this.b>0}, +geS(){return this.c>0}, +geT(){return this.c>0&&this.d+1r?B.b.t(this.a,r,s-1):""}, +gc5(){var s=this.c +return s>0?B.b.t(this.a,s,this.d):""}, +gcZ(){var s,r=this +if(r.geT())return A.lx(B.b.t(r.a,r.d+1,r.e),null) +s=r.b +if(s===4&&B.b.T(r.a,"http"))return 80 +if(s===5&&B.b.T(r.a,"https"))return 443 +return 0}, +gaT(){return B.b.t(this.a,this.e,this.f)}, +gd_(){var s=this.f,r=this.r +return s=q.length)return s +return new A.bN(B.b.t(q,0,r),s.b,s.c,s.d,s.e,s.f,r,s.w)}, +iv(a){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null +a=A.qB(a,0,a.length) +s=!(h.b===a.length&&B.b.T(h.a,a)) +r=a==="file" +q=h.c +p=q>0?B.b.t(h.a,h.b+3,q):"" +o=h.geT()?h.gcZ():g +if(s)o=A.oY(o,a) +q=h.c +if(q>0)n=B.b.t(h.a,q,h.d) +else n=p.length!==0||o!=null||r?"":g +q=h.a +m=h.f +l=B.b.t(q,h.e,m) +if(!r)k=n!=null&&l.length!==0 +else k=!0 +if(k&&!B.b.T(l,"/"))l="/"+l +k=h.r +j=m0)return b +s=b.c +if(s>0){r=a.b +if(r<=0)return b +q=r===4 +if(q&&B.b.T(a.a,"file"))p=b.e!==b.f +else if(q&&B.b.T(a.a,"http"))p=!b.h9("80") +else p=!(r===5&&B.b.T(a.a,"https"))||!b.h9("443") +if(p){o=r+1 +return new A.bN(B.b.t(a.a,0,o)+B.b.ab(b.a,c+1),r,s+o,b.d+o,b.e+o,b.f+o,b.r+o,a.w)}else return this.hv().d5(b)}n=b.e +c=b.f +if(n===c){s=b.r +if(c0?l:m +o=k-n +return new A.bN(B.b.t(a.a,0,k)+B.b.ab(s,n),a.b,a.c,a.d,m,c+o,b.r+o,a.w)}j=a.e +i=a.f +if(j===i&&a.c>0){while(B.b.aa(s,"../",n))n+=3 +o=j-n+1 +return new A.bN(B.b.t(a.a,0,j)+"/"+B.b.ab(s,n),a.b,a.c,a.d,j,c+o,b.r+o,a.w)}h=a.a +l=A.tw(this) +if(l>=0)g=l +else for(g=j;B.b.aa(h,"../",g);)g+=3 +f=0 +for(;;){e=n+3 +if(!(e<=c&&B.b.aa(s,"../",n)))break;++f +n=e}for(r=h.length,d="";i>g;){--i +if(!(i>=0&&i=0){s=!(q===4&&B.b.T(r.a,"file")) +q=s}else q=!1 +if(q)throw A.f(A.aj("Cannot extract a file path from a "+r.gaV()+" URI")) +q=r.f +s=r.a +if(q0?s.gc5():r,n=s.geT()?s.gcZ():r,m=s.a,l=s.f,k=B.b.t(m,s.e,l),j=s.r +l=l864e13)A.O(A.ad(r,-864e13,864e13,"millisecondsSinceEpoch",null)) +A.dO(!0,"isUtc",t.k4) +return new A.dg(r,0,!0)}if(a instanceof RegExp)throw A.f(A.U("structured clone of RegExp",null)) +if(a instanceof Promise)return A.zl(a,t.X) +q=Object.getPrototypeOf(a) +if(q===Object.prototype||q===null){p=t.X +o=A.aC(p,p) +s.k(0,a,o) +n=Object.keys(a) +m=[] +for(s=J.c4(n),p=s.gF(n);p.p();)m.push(A.uk(p.gB())) +for(l=0;l"))}} +A.bQ.prototype={ +bQ(){var s,r +if(this.as==null)this.i2() +s=this.as +r=s==null?null:s.e0() +return r==null?null:r.aF()}, +i2(){var s,r +if(this.as!=null)return +s=this.Q +if(s!=null){r=s.e0().aF() +this.as=new A.it(r)}}} +A.dV.prototype={ +bn(){return"CompressionType."+this.b}} +A.lG.prototype={ +ad(a){var s,r,q,p,o,n=this +if(a===0)return 0 +if(n.c===0){n.c=8 +n.b=n.a.aK()}for(s=n.a,r=0;q=n.c,a>q;){p=B.f.aW(r,q) +o=n.b +if(!(q>=0&&q<9))return A.c(B.aY,q) +r=p+(o&B.aY[q]) +a-=q +n.c=8 +q=s.b +q.toString +o=s.c++ +if(!(o>=0&&o0){if(q===0){n.c=8 +n.b=s.aK()}s=B.f.aW(r,a) +q=n.b +p=n.c-a +q=B.f.cI(q,p) +if(!(a<9))return A.c(B.aY,a) +r=s+(q&B.aY[a]) +n.c=p}return r}} +A.lE.prototype={ +mj(a,b){var s,r,q,p,o,n=this,m=new A.lG(a) +n.cx=n.CW=n.ch=n.ay=0 +if(m.ad(8)!==66||m.ad(8)!==90||m.ad(8)!==104)return!1 +s=n.a=m.ad(8)-48 +if(s<0||s>9)return!1 +n.b=new Uint32Array(s*1e5) +r=0 +for(;;){s=a.c +q=a.d +q===$&&A.o() +if(!(s>>31)^o^4294967295}else if(p===2){m.ad(8) +m.ad(8) +m.ad(8) +m.ad(8) +return!0}}return!0}, +kM(a){var s,r,q,p +for(s=!0,r=!0,q=0;q<6;++q){p=a.ad(8) +if(p!==B.jo[q])r=!1 +if(p!==B.j_[q])s=!1 +if(!s&&!r)return-1}return r?0:2}, +kN(d4,d5){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3,b4,b5,b6,b7,b8,b9,c0,c1,c2,c3,c4,c5,c6,c7,c8,c9,d0=this,d1=4294967295,d2=d4.ad(1),d3=((d4.ad(8)<<8|d4.ad(8))<<8|d4.ad(8))>>>0 +d0.c=new Uint8Array(16) +for(s=0;s<16;++s){r=d0.c +q=d4.ad(1) +r.$flags&2&&A.t(r) +r[s]=q}d0.d=new Uint8Array(256) +for(s=0,p=0;s<16;++s,p+=16)if(d0.c[s]!==0)for(o=0;o<16;++o){r=d0.d +q=p+o +n=d4.ad(1) +r.$flags&2&&A.t(r) +if(!(q<256))return A.c(r,q) +r[q]=n}d0.kz() +r=d0.fx +if(r===0)return-1 +m=r+2 +l=d4.ad(3) +if(l<2||l>6)return-1 +r=d4.ad(15) +d0.ax=r +if(r<1)return-1 +d0.w=new Uint8Array(18002) +d0.x=new Uint8Array(18002) +for(s=0;r=d0.ax,s=l)return-1}r=d0.w +r.$flags&2&&A.t(r) +if(!(s<18002))return A.c(r,s) +r[s]=o}k=new Uint8Array(6) +for(s=0;s0;i=g){g=i-1 +k[i]=k[g]}k[0]=h +j&2&&A.t(q) +q[s]=h}d0.fr=t.aE.a(A.aD(6,$.uK(),!1,t.ev)) +for(f=0;f20)return-1 +if(d4.ad(1)===0)break +e=d4.ad(1)===0?e+1:e-1}r=d0.fr +if(!(f<6))return A.c(r,f) +r=r[f] +r.$flags&2&&A.t(r) +if(!(sc)c=b +if(b=0;--a2){for(n=a2*16,a3=15;a3>=0;--a3){if(!(a1>=0&&a1<4096))return A.c(r,a1) +r[a1]=n+a3;--a1}q[a2]=a1+1}d0.ay=0 +d0.ch=-1 +a4=d0.ei(d4) +if(a4<0)return-1 +for(a5=0;;){if(a4===a)break +if(a4===0||a4===1){a6=-1 +a7=1 +do{if(a7>=2097152)return-1 +if(a4===0)a6+=a7 +else if(a4===1)a6+=2*a7 +a7*=2 +a4=d0.ei(d4)}while(a4===0||a4===1);++a6 +r=d0.e +r===$&&A.o() +q=d0.f +n=d0.r[0] +if(!(n>=0&&n<4096))return A.c(q,n) +n=q[n] +if(!(n>=0&&n<256))return A.c(r,n) +a8=r[n] +n=d0.at +if(!(a8<256))return A.c(n,a8) +r=n[a8] +n.$flags&2&&A.t(n) +n[a8]=r+a6 +for(r=d0.b;a6>0;){if(a5>=a0)return-1 +r===$&&A.o() +r.$flags&2&&A.t(r) +if(!(a5>=0&&a5=a0)return-1 +a9=a4-1 +r=d0.r +q=d0.f +if(a9<16){b0=r[0] +r=b0+a9 +if(!(r>=0&&r<4096))return A.c(q,r) +a8=q[r] +for(r=q.$flags|0;a9>3;){b1=b0+a9 +n=b1-1 +if(!(n>=0&&n<4096))return A.c(q,n) +j=q[n] +r&2&&A.t(q) +if(!(b1>=0&&b1<4096))return A.c(q,b1) +q[b1]=j +j=b1-2 +if(!(j>=0))return A.c(q,j) +q[n]=q[j] +n=b1-3 +if(!(n>=0))return A.c(q,n) +q[j]=q[n] +j=b1-4 +if(!(j>=0))return A.c(q,j) +q[n]=q[j] +a9-=4}while(a9>0){n=b0+a9 +j=n-1 +if(!(j>=0&&j<4096))return A.c(q,j) +j=q[j] +r&2&&A.t(q) +if(!(n>=0&&n<4096))return A.c(q,n) +q[n]=j;--a9}r&2&&A.t(q) +if(!(b0>=0&&b0<4096))return A.c(q,b0) +q[b0]=a8}else{b2=B.f.av(a9,16) +b3=B.f.bl(a9,16) +if(!(b2>=0&&b2<16))return A.c(r,b2) +b0=r[b2]+b3 +if(!(b0>=0&&b0<4096))return A.c(q,b0) +a8=q[b0] +for(n=q.$flags|0;j=r[b2],b0>j;b0=b4){b4=b0-1 +if(!(b4>=0))return A.c(q,b4) +j=q[b4] +n&2&&A.t(q) +if(!(b0>=0))return A.c(q,b0) +q[b0]=j}r.$flags&2&&A.t(r) +r[b2]=j+1 +while(b2>0){r[b2]=r[b2]-1 +j=r[b2];--b2 +b5=r[b2]+16-1 +if(!(b5>=0&&b5<4096))return A.c(q,b5) +b5=q[b5] +n&2&&A.t(q) +if(!(j>=0&&j<4096))return A.c(q,j) +q[j]=b5}r[0]=r[0]-1 +j=r[0] +n&2&&A.t(q) +if(!(j>=0&&j<4096))return A.c(q,j) +q[j]=a8 +if(r[0]===0)for(a1=4095,a2=15;a2>=0;--a2){for(a3=15;a3>=0;--a3){n=r[a2]+a3 +if(!(n>=0&&n<4096))return A.c(q,n) +n=q[n] +if(!(a1>=0&&a1<4096))return A.c(q,a1) +q[a1]=n;--a1}r[a2]=a1+1}}r=d0.at +q=d0.e +q===$&&A.o() +if(!(a8>=0&&a8<256))return A.c(q,a8) +n=q[a8] +if(!(n<256))return A.c(r,n) +j=r[n] +r.$flags&2&&A.t(r) +r[n]=j+1 +j=d0.b +j===$&&A.o() +q=q[a8] +j.$flags&2&&A.t(j) +if(!(a5>=0&&a5=a5)return-1 +for(r=d0.at,s=0;s<=255;++s){q=r[s] +if(q<0||q>a5)return-1}r=d0.dy=new Int32Array(257) +r[0]=0 +for(q=d0.at,s=1;s<=256;++s)r[s]=q[s-1] +for(s=1;s<=256;++s)r[s]=r[s]+r[s-1] +for(s=0;s<=256;++s){q=r[s] +if(q<0||q>a5)return-1}for(s=1;s<=256;++s)if(r[s-1]>r[s])return-1 +for(q=d0.b,s=0;s=0&&j>>0 +r[a8]=r[a8]+1}q===$&&A.o() +r=q.length +if(!(d3>>8 +n=d2!==0 +if(n){if(b6>=1e5*d0.a)return-1 +if(!(b6>>8 +b8=b6&255^0 +b6=b7 +b9=618 +c0=1}else{if(b6>=1e5*d0.a)return d1 +if(!(b6>>8 +b9=0 +c0=0}c1=a5+1 +c2=d1 +if(n)for(c3=0,c4=0,c5=1;;c4=b8,b8=c7){for(r=c4&255;;){if(c3===0)break +d5.cA(c4) +q=c2>>>24&255^r +if(!(q<256))return A.c(B.X,q) +c2=(c2<<8^B.X[q])>>>0;--c3}if(c5===c1)return c2 +if(c5>c1)return-1 +r=d0.b +q=r.length +if(!(b6>=0&&b6>>8 +if(b9===0){if(!(c0<512))return A.c(B.Y,c0) +b9=B.Y[c0];++c0 +if(c0===512)c0=0}--b9 +n=b9===1?1:0 +c6=b6&255^n;++c5 +c3=1 +if(c5===c1){c7=b8 +b6=b7 +continue}if(c6!==b8){c7=c6 +b6=b7 +continue}if(!(b7>>8 +if(b9===0){if(!(c0<512))return A.c(B.Y,c0) +b9=B.Y[c0];++c0 +if(c0===512)c0=0}n=b9===1?1:0 +c6=b6&255^n;++c5 +if(c5===c1){c7=b8 +b6=b7 +c3=2 +continue}if(c6!==b8){c7=c6 +b6=b7 +c3=2 +continue}if(!(b7>>8 +if(b9===0){if(!(c0<512))return A.c(B.Y,c0) +b9=B.Y[c0];++c0 +if(c0===512)c0=0}n=b9===1?1:0 +c6=b6&255^n;++c5 +if(c5===c1){c7=b8 +b6=b7 +c3=3 +continue}if(c6!==b8){c7=c6 +b6=b7 +c3=3 +continue}if(!(b7>>8 +if(b9===0){if(!(c0<512))return A.c(B.Y,c0) +b9=B.Y[c0];++c0 +if(c0===512)c0=0}n=b9===1?1:0 +c3=(b6&255^n)+4 +if(!(b7>>8 +if(b9===0){if(!(c0<512))return A.c(B.Y,c0) +b9=B.Y[c0];++c0 +if(c0===512)c0=0}r=b9===1?1:0 +c7=b6&255^r +c5=c5+1+1 +b6=b7}else for(c8=b8,c3=0,c4=0,c5=1;;c4=c8,c8=c9){if(c3>0){for(r=c4&255;;){if(c3===1)break +d5.cA(c4) +q=c2>>>24&255^r +if(!(q<256))return A.c(B.X,q) +c2=c2<<8^B.X[q];--c3}d5.cA(c4) +r=c2>>>24&255^r +if(!(r<256))return A.c(B.X,r) +c2=(c2<<8^B.X[r])>>>0}if(c5>c1)return-1 +if(c5===c1)return c2 +r=1e5*d0.a +if(b6>=r)return-1 +q=d0.b +n=q.length +if(!(b6>=0&&b6>>8;++c5 +c3=0 +if(c6!==c8){d5.cA(c8) +r=c2>>>24&255^c8&255 +if(!(r<256))return A.c(B.X,r) +c2=(c2<<8^B.X[r])>>>0 +c9=c6 +continue}if(c5===c1){d5.cA(c8) +r=c2>>>24&255^c8&255 +if(!(r<256))return A.c(B.X,r) +c2=(c2<<8^B.X[r])>>>0 +c9=c8 +continue}if(b6>=r)return-1 +if(!(b6>>8;++c5 +if(c5===c1){c9=c8 +c3=2 +continue}if(c6!==c8){c9=c6 +c3=2 +continue}if(b6>=r)return-1 +if(!(b6>>8;++c5 +if(c5===c1){c9=c8 +c3=3 +continue}if(c6!==c8){c9=c6 +c3=3 +continue}if(b6>=r)return-1 +if(!(b6>>8 +c3=(b6&255)+4 +if(b7>=r)return-1 +if(!(b7>>8 +c5=c5+1+1}return c2}, +ei(a){var s,r,q,p,o=this,n=o.ay +if(n===0){n=++o.ch +s=o.ax +s===$&&A.o() +if(n>=s)return-1 +s=o.ay=50 +r=o.x +r===$&&A.o() +if(!(n>=0&&n<18002))return A.c(r,n) +n=r[n] +o.CW=n +r=o.as +r===$&&A.o() +if(!(n<6))return A.c(r,n) +o.cx=r[n] +r=o.y +r===$&&A.o() +o.cy=r[n] +r=o.Q +r===$&&A.o() +o.db=r[n] +r=o.z +r===$&&A.o() +o.dx=r[n] +n=s}o.ay=n-1 +q=o.cx +p=a.ad(q) +for(;;){if(q>20)return-1 +n=o.cy +n===$&&A.o() +if(!(q>=0&&q>>0}n=o.dx +n===$&&A.o() +if(!(q>=0&&q=258)return-1 +s=o.db +s===$&&A.o() +if(!(n>=0&&n=0&&p=0&&m=0&&j=0&&q>>0}for(q=e+1,s=a.length;q<=f;++q){m=q-1 +if(!(m>=0&&m=0&&q>>0)-l}}, +kz(){var s,r,q,p=this +p.fx=0 +p.e=new Uint8Array(256) +for(s=0;s<256;++s){r=p.d +r===$&&A.o() +if(r[s]!==0){r=p.e +q=p.fx++ +r.$flags&2&&A.t(r) +if(!(q<256))return A.c(r,q) +r[q]=s}}}} +A.op.prototype={ +f9(a,b){var s,r,q,p,o,n=this,m=n.a=n.kr(a) +if(m<0)return +a.c=m +if(a.ak()!==101010256)return +a.a5() +a.a5() +a.a5() +a.a5() +n.f=a.ak() +n.r=a.ak() +s=a.a5() +if(s>0)a.ir(s,!1) +n.kO(a) +m=n.r +r=n.f +q=a.fF(Math.min(r,1024),r,m) +m=n.x +for(;;){r=q.c +p=q.d +p===$&&A.o() +if(!(r=0;){a.c=p +n=a.dc(q,p) +m=a.c +l=n.b +a.c=m+(l==null?0:l.length-n.c) +k=new A.e_(B.F) +k.fL(n.aF(),B.F,null,null) +for(j=o;j>=0;--j){k.c=j +if(k.ak()===101010256){a.c=s +return p+j}}p=p>0&&p2){s=k.y +s.toString +o=A.bv(s,B.F,null,null) +for(;;){s=o.c +p=o.d +p===$&&A.o() +if(!(s=0&&p>>0 +return s*((s^1)>>>0)>>>8&255}, +ke(a){var s,r,q,p,o,n=this,m=null +if(n.Q==null)return A.bv(new Uint8Array(0),B.F,m,m) +for(s=0;s<12;++s){r=n.Q +q=r.b +q.toString +r=r.c++ +if(!(r>=0&&r0)j.at=a.dV(s) +if(r>0){p=a.bd(r).aF() +j.ax=p +if(r>=4){o=A.bv(p,B.F,null,null) +for(;;){p=o.b +if(!((p==null?0:p.length-o.c)>=4))break +n=o.a5() +m=o.a5() +l=o.dc(m,o.c) +p=o.c +k=l.b +o.c=p+(k==null?0:k.length-l.c) +if(n===1){if(m>=8&&j.x===4294967295){j.x=l.bz() +m-=8}if(m>=8&&j.w===4294967295){j.w=l.bz() +m-=8}if(m>=8&&j.as===4294967295){j.as=l.bz() +m-=8}if(m>=4&&j.y===65535)j.y=l.ak()}}}}if(q>0)a.dV(q) +b.c=j.as +p=new A.ks(B.aW,j,B.aC,A.i([A.cI(0),A.cI(0),A.cI(0)],t.aa)) +j.ch=p +p.f9(b,c)}, +j(a){return this.at}} +A.oo.prototype={ +mk(a,a0,a1,a2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=null,b=new A.op(A.i([],t.iJ)) +this.a=b +b.f9(a,a1) +b=A.i([],t.c_) +s=A.aC(t.N,t.S) +r=new A.hQ(b,s) +for(q=this.a.x,p=q.length,o=t.L,n=0;n>>16 +j=l.x +i=B.b.bu(j,"/")||B.b.bu(j,"\\") +h=s.n(0,j) +if(h!=null){if(h>>>0!==h||h>=b.length)return A.c(b,h) +g=b[h]}else g=c +if(g==null){g=i?new A.bQ(j,B.f.av(Date.now(),1000)):A.r8(j,l.w,l) +r.l(0,g)}g.b=k +if(m.a>>>8===3)if((k&61440)===40960){f=A.r8(j,l.w,l) +if(f.as==null)f.i2() +j=f.as +if(j==null)e=c +else{j=j.a +e=new A.e_(B.F) +e.fL(j,B.F,c,c)}d=e==null?c:e.aF() +if(d!=null){o.a(d) +new A.kW(!1).h0(d,0,c,!0)}}}return r}} +A.mz.prototype={ +jT(a){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=a.length +for(s=0;sg.b)g.b=r +if(r>>0 +k=k>>>1}for(h=(l|s)>>>0,i=j;i=0))return A.c(p,i) +p[i]=h}++n}++o +n=n<<1>>>0 +m=m<<1>>>0}}} +A.om.prototype={} +A.p2.prototype={ +i1(a,b,c,d){var s,r,q=null +for(;;){s=a.c +r=a.d +r===$&&A.o() +if(!(s=r +s=r}else s=!0 +if(s)return!1 +q=p.b4(3) +switch(B.f.b5(q,1)){case 0:if(p.kG()===-1)return!1 +break +case 1:if(p.h1($.uM(),$.uL())===-1)return!1 +break +case 2:if(p.kF()===-1)return!1 +break +default:return!1}return(q&1)===0}, +b4(a){var s,r,q,p,o=this +if(a===0)return 0 +while(s=o.e,s=s)return-1 +s=o.gbh() +r=s.b +r.toString +s=s.c++ +if(!(s>=0&&s>>0 +o.e=r+8}r=o.d +p=B.f.bp(1,a) +o.d=B.f.dt(r,a) +o.e=s-a +return(r&p-1)>>>0}, +eq(a){var s,r,q,p,o,n,m,l=this,k=a.a +k===$&&A.o() +s=a.b +while(r=l.e,r=r)return-1 +r=l.gbh() +q=r.b +q.toString +r=r.c++ +if(!(r>=0&&r>>0 +l.e=q+8}q=l.d +o=(q&B.f.aW(1,s)-1)>>>0 +if(!(o>>16 +l.d=B.f.dt(q,m) +l.e=r-m +return n&65535}, +kG(){var s,r,q=this +q.e=q.d=0 +s=q.b4(16) +r=q.b4(16) +if(s!==0&&s!==(r^65535)>>>0)return-1 +if(s>q.gbh().gm(0))return-1 +q.c.oy(q.gbh().bd(s)) +return 0}, +kF(){var s,r,q,p,o,n,m,l,k,j,i=this,h=i.b4(5) +if(h===-1)return-1 +h+=257 +if(h>288)return-1 +s=i.b4(5) +if(s===-1)return-1;++s +if(s>32)return-1 +r=i.b4(4) +if(r===-1)return-1 +r+=4 +if(r>19)return-1 +q=new Uint8Array(19) +for(p=0;p285)return-1 +if(r===256)break +if(r<256){s.cA(r&255) +continue}q=r-257 +if(!(q>=0&&q<29))return A.c(B.d_,q) +p=B.d_[q] +o=m.b4(B.jn[q]) +n=m.eq(b) +if(n<0||n>29)return-1 +if(!(n>=0&&n<30))return A.c(B.d0,n) +s.ov(B.d0[n]+m.b4(B.iX[n]),p+o)}while(s=m.e,s>=8){m.e=s-8 +s=m.gbh() +p=--s.c +o=s.d +o===$&&A.o() +s.c=B.f.m_(p,0,o)}return 0}, +kc(a,b,c){var s,r,q,p,o,n,m,l,k=this +for(s=0,r=0;r0;o=m,r=l){l=r+1 +n&2&&A.t(c) +if(!(r>=0&&r0;o=m,r=l){l=r+1 +n&2&&A.t(c) +if(!(r>=0&&r0;o=m,r=l){l=r+1 +n&2&&A.t(c) +if(!(r>=0&&r15)return-1 +l=r+1 +c.$flags&2&&A.t(c) +if(!(r>=0&&rq.byteLength)A.O(A.U("Input buffer too short",null)) +if(16>r.byteLength)A.O(A.U("Output buffer too short",null)) +k=l.c +j=l.b +if(k){j===$&&A.o() +l.kk(q,0,r,0,j)}else{j===$&&A.o() +l.kf(q,0,r,0,j)}for(i=0;i=0))return A.c(p,l) +j=p[l] +if(!(l<4))return A.c(p,l) +p[l]=j+1 +if(p[l]!==0)break}j=k.a +k.kp(j.a,j.b,p,o,n) +n+=r}B.k.bD(c,d,d+s,o) +return k.a.c}, +kp(a,b,c,d,e){var s,r,q,p,o,n,m,l,k,j,i,h=this +if(b<=0)throw A.f(A.U("Iteration count must be at least 1.",null)) +s=h.b +r=s.a +r.bA(a,0,a.length) +r.bA(c,0,4) +q=h.c +q===$&&A.o() +s.c3(q,0) +q=h.c +B.k.bD(d,e,e+q.length,q) +for(q=d.length,p=1;p>>0 +r.b=q +if(s!==q){q=r.a +q===$&&A.o();++q +r.a=q +r.a=q>>>0}}, +j(a){var s=this,r=new A.W(""),q=s.a +q===$&&A.o() +s.hi(r,q) +q=s.b +q===$&&A.o() +s.hi(r,q) +q=r.a +return q.charCodeAt(0)==0?q:q}, +hi(a,b){var s,r=B.f.d6(b,16) +for(s=8-r.length;s>0;--s)a.a+="0" +a.a+=r}, +gq(a){var s,r=this.a +r===$&&A.o() +s=this.b +s===$&&A.o() +return A.aX(r,s,B.u,B.u)}} +A.jw.prototype={ +aL(){var s,r=this +r.a.jk(0) +r.c=0 +B.k.c4(r.b,0,4,0) +r.w=0 +s=r.r +B.a.c4(s,0,s.length,0) +s=r.f +B.a.k(s,0,1732584193) +B.a.k(s,1,4023233417) +B.a.k(s,2,2562383102) +B.a.k(s,3,271733878) +B.a.k(s,4,3285377520)}, +dW(a){var s,r=this,q=r.b,p=r.c +p===$&&A.o() +s=p+1 +r.c=s +q.$flags&2&&A.t(q) +if(!(p<4))return A.c(q,p) +q[p]=a&255 +if(s===4){r.hm(q,0) +r.c=0}r.a.fG(1)}, +bA(a,b,c){var s=this.kK(a,b,c) +b+=s +c-=s +s=this.kL(a,b,c) +this.kH(a,b+s,c-s)}, +c3(a,b){var s,r=this,q=A.rG(r.a),p=q.a +p===$&&A.o() +p=A.qW(p,3) +q.a=p +s=q.b +s===$&&A.o() +q.a=(p|s>>>29)>>>0 +q.b=A.qW(s,3) +r.kJ() +r.kI(q) +r.ee() +r.kC(a,b) +r.aL() +return 20}, +hm(a,b){var s=this,r=s.w +r===$&&A.o() +s.w=r+1 +B.a.k(s.r,r,J.be(B.k.ga9(a),a.byteOffset,a.length).getUint32(b,B.bE===s.d)) +if(s.w===16)s.ee()}, +ee(){this.nK() +this.w=0 +B.a.c4(this.r,0,16,0)}, +kH(a,b,c){var s +for(s=a.length;c>0;){if(!(b4;){this.hm(a,b) +b+=4 +c-=4 +s.fG(4) +r+=4}return r}, +kK(a,b,c){var s,r=a.length,q=0 +for(;;){s=this.c +s===$&&A.o() +if(!(s!==0&&c>0))break +if(!(b14)r.ee() +q=r.d +switch(q){case B.bE:q=r.r +s=a.b +s===$&&A.o() +B.a.k(q,14,s) +s=a.a +s===$&&A.o() +B.a.k(q,15,s) +break +case B.cL:q=r.r +s=a.a +s===$&&A.o() +B.a.k(q,14,s) +s=a.b +s===$&&A.o() +B.a.k(q,15,s) +break +default:throw A.f(A.ce("Invalid endianness: "+q.j(0)))}}, +kC(a,b){var s,r,q,p,o,n,m,l +for(s=this.e,r=this.f,q=r.length,p=a.length,o=B.bE===this.d,n=0;n>>31)>>>0)}p=this.f +o=p.length +if(0>=o)return A.c(p,0) +k=p[0] +if(1>=o)return A.c(p,1) +j=p[1] +if(2>=o)return A.c(p,2) +i=p[2] +if(3>=o)return A.c(p,3) +h=p[3] +if(4>=o)return A.c(p,4) +g=p[4] +for(f=k,e=0,d=0;d<4;++d,e=c){o=$.aL[5] +c=e+1 +if(!(e>>27)>>>0)+((j&i|~j&h)>>>0)+s[e]+1518500249>>>0 +n=$.aL[30] +j=((j&n)<<30|j>>>2)>>>0 +e=c+1 +if(!(c>>27)>>>0)+((f&j|~f&i)>>>0)+s[c]+1518500249>>>0 +f=((f&n)<<30|f>>>2)>>>0 +c=e+1 +if(!(e>>27)>>>0)+((g&f|~g&j)>>>0)+s[e]+1518500249>>>0 +g=((g&n)<<30|g>>>2)>>>0 +e=c+1 +if(!(c>>27)>>>0)+((h&g|~h&f)>>>0)+s[c]+1518500249>>>0 +h=((h&n)<<30|h>>>2)>>>0 +c=e+1 +if(!(e>>27)>>>0)+((i&h|~i&g)>>>0)+s[e]+1518500249>>>0 +i=((i&n)<<30|i>>>2)>>>0}for(d=0;d<4;++d,e=c){o=$.aL[5] +c=e+1 +if(!(e>>27)>>>0)+((j^i^h)>>>0)+s[e]+1859775393>>>0 +n=$.aL[30] +j=((j&n)<<30|j>>>2)>>>0 +e=c+1 +if(!(c>>27)>>>0)+((f^j^i)>>>0)+s[c]+1859775393>>>0 +f=((f&n)<<30|f>>>2)>>>0 +c=e+1 +if(!(e>>27)>>>0)+((g^f^j)>>>0)+s[e]+1859775393>>>0 +g=((g&n)<<30|g>>>2)>>>0 +e=c+1 +if(!(c>>27)>>>0)+((h^g^f)>>>0)+s[c]+1859775393>>>0 +h=((h&n)<<30|h>>>2)>>>0 +c=e+1 +if(!(e>>27)>>>0)+((i^h^g)>>>0)+s[e]+1859775393>>>0 +i=((i&n)<<30|i>>>2)>>>0}for(d=0;d<4;++d,e=c){o=$.aL[5] +c=e+1 +if(!(e>>27)>>>0)+((j&i|j&h|i&h)>>>0)+s[e]+2400959708>>>0 +n=$.aL[30] +j=((j&n)<<30|j>>>2)>>>0 +e=c+1 +if(!(c>>27)>>>0)+((f&j|f&i|j&i)>>>0)+s[c]+2400959708>>>0 +f=((f&n)<<30|f>>>2)>>>0 +c=e+1 +if(!(e>>27)>>>0)+((g&f|g&j|f&j)>>>0)+s[e]+2400959708>>>0 +g=((g&n)<<30|g>>>2)>>>0 +e=c+1 +if(!(c>>27)>>>0)+((h&g|h&f|g&f)>>>0)+s[c]+2400959708>>>0 +h=((h&n)<<30|h>>>2)>>>0 +c=e+1 +if(!(e>>27)>>>0)+((i&h|i&g|h&g)>>>0)+s[e]+2400959708>>>0 +i=((i&n)<<30|i>>>2)>>>0}for(d=0;d<4;++d,e=c){o=$.aL[5] +c=e+1 +if(!(e>>27)>>>0)+((j^i^h)>>>0)+s[e]+3395469782>>>0 +n=$.aL[30] +j=((j&n)<<30|j>>>2)>>>0 +e=c+1 +if(!(c>>27)>>>0)+((f^j^i)>>>0)+s[c]+3395469782>>>0 +f=((f&n)<<30|f>>>2)>>>0 +c=e+1 +if(!(e>>27)>>>0)+((g^f^j)>>>0)+s[e]+3395469782>>>0 +g=((g&n)<<30|g>>>2)>>>0 +e=c+1 +if(!(c>>27)>>>0)+((h^g^f)>>>0)+s[c]+3395469782>>>0 +h=((h&n)<<30|h>>>2)>>>0 +c=e+1 +if(!(e>>27)>>>0)+((i^h^g)>>>0)+s[e]+3395469782>>>0 +i=((i&n)<<30|i>>>2)>>>0}B.a.k(p,0,k+f>>>0) +B.a.k(p,1,p[1]+j>>>0) +B.a.k(p,2,p[2]+i>>>0) +B.a.k(p,3,p[3]+h>>>0) +B.a.k(p,4,p[4]+g>>>0)}} +A.jv.prototype={ +i9(a){var s,r,q,p,o=this,n=o.a +n.aL() +s=a.a +s===$&&A.o() +r=s.length +q=o.c +q===$&&A.o() +if(r>q){n.bA(s,0,r) +s=o.d +s===$&&A.o() +n.c3(s,0) +s=o.b +s===$&&A.o() +r=s}else{p=o.d +p===$&&A.o() +B.k.bD(p,0,r,s)}s=o.d +s===$&&A.o() +B.k.c4(s,r,s.length,0) +s=o.e +s===$&&A.o() +B.k.bD(s,0,q,o.d) +o.hD(o.d,q,54) +o.hD(o.e,q,92) +q=o.d +n.bA(q,0,q.length)}, +c3(a,b){var s,r,q=this,p=q.a,o=q.e +o===$&&A.o() +s=q.c +s===$&&A.o() +p.c3(o,s) +o=q.e +p.bA(o,0,o.length) +r=p.c3(a,b) +o=q.e +B.k.c4(o,s,o.length,0) +o=q.d +o===$&&A.o() +p.bA(o,0,o.length) +return r}, +hD(a,b,c){var s,r,q,p +for(s=a.length,r=a.$flags|0,q=0;q>>8&255]&255)<<8|(B.L[a>>>16&255]&255)<<16|B.L[a>>>24&255]<<24)>>>0}, +iM(a0,a1){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b=this,a=a1.a +a===$&&A.o() +s=a.length +if(s<16||s>32||(s&7)!==0)throw A.f(A.U("Key length not 128/192/256 bits.",null)) +r=s>>>2 +q=r+6 +b.a=q +p=q+1 +o=J.rq(p,t.L) +for(q=t.S,n=0;n=a)return A.c(o,0) +q=o[0] +B.a.k(q,0,l) +k=m.getUint32(4,!0) +B.a.k(q,1,k) +j=m.getUint32(8,!0) +B.a.k(q,2,j) +i=m.getUint32(12,!0) +B.a.k(q,3,i) +for(n=1;n<=10;++n){l=(l^b.cJ((i>>>8|(i&$.aL[24])<<24)>>>0)^B.iU[n-1])>>>0 +if(!(n>>0 +B.a.k(q,1,k) +j=(j^k)>>>0 +B.a.k(q,2,j) +i=(i^j)>>>0 +B.a.k(q,3,i)}break +case 6:m=J.be(B.k.ga9(a),a.byteOffset,s) +l=m.getUint32(0,!0) +a=o.length +if(0>=a)return A.c(o,0) +q=o[0] +B.a.k(q,0,l) +k=m.getUint32(4,!0) +B.a.k(q,1,k) +j=m.getUint32(8,!0) +B.a.k(q,2,j) +i=m.getUint32(12,!0) +B.a.k(q,3,i) +h=m.getUint32(16,!0) +g=m.getUint32(20,!0) +for(n=1,f=1;;){if(!(n>>8|(g&$.aL[24])<<24)>>>0)^f)>>>0 +B.a.k(q,2,l) +k=(k^l)>>>0 +B.a.k(q,3,k) +j=(j^k)>>>0 +q=n+1 +if(!(q>>0 +B.a.k(q,1,i) +h=(h^i)>>>0 +B.a.k(q,2,h) +g=(g^h)>>>0 +B.a.k(q,3,g) +f=e<<1 +l=(l^b.cJ((g>>>8|(g&$.aL[24])<<24)>>>0)^e)>>>0 +q=n+2 +if(!(q>>0 +B.a.k(q,1,k) +j=(j^k)>>>0 +B.a.k(q,2,j) +i=(i^j)>>>0 +B.a.k(q,3,i) +n+=3 +if(n>=13)break +h=(h^i)>>>0 +g=(g^h)>>>0}break +case 8:m=J.be(B.k.ga9(a),a.byteOffset,s) +l=m.getUint32(0,!0) +a=o.length +if(0>=a)return A.c(o,0) +q=o[0] +B.a.k(q,0,l) +k=m.getUint32(4,!0) +B.a.k(q,1,k) +j=m.getUint32(8,!0) +B.a.k(q,2,j) +i=m.getUint32(12,!0) +B.a.k(q,3,i) +h=m.getUint32(16,!0) +if(1>=a)return A.c(o,1) +q=o[1] +B.a.k(q,0,h) +g=m.getUint32(20,!0) +B.a.k(q,1,g) +d=m.getUint32(24,!0) +B.a.k(q,2,d) +c=m.getUint32(28,!0) +B.a.k(q,3,c) +for(n=2,f=1;;f=e){e=f<<1 +l=(l^b.cJ((c>>>8|(c&$.aL[24])<<24)>>>0)^f)>>>0 +if(!(n>>0 +B.a.k(q,1,k) +j=(j^k)>>>0 +B.a.k(q,2,j) +i=(i^j)>>>0 +B.a.k(q,3,i);++n +if(n>=15)break +h=(h^b.cJ(i))>>>0 +if(!(n>>0 +B.a.k(q,1,g) +d=(d^g)>>>0 +B.a.k(q,2,d) +c=(c^d)>>>0 +B.a.k(q,3,c);++n}break +default:throw A.f(A.ce("Should never get here"))}return o}, +kk(b3,b4,b5,b6,b7){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2 +t.eP.a(b7) +s=J.be(B.k.ga9(b3),b3.byteOffset,16) +r=s.getUint32(b4,!0) +q=s.getUint32(b4+4,!0) +p=s.getUint32(b4+8,!0) +o=s.getUint32(b4+12,!0) +n=b7.length +if(0>=n)return A.c(b7,0) +m=b7[0] +l=r^m[0] +k=q^m[1] +j=p^m[2] +i=o^m[3] +for(m=this.a-1,h=1;h>>8&255] +e=$.aL[8] +d=B.j[j>>>16&255] +c=$.aL[16] +b=B.j[i>>>24&255] +a=$.aL[24] +if(!(h>>24|(f&e)<<8)^(d>>>16|(d&c)<<16)^(b>>>8|(b&a)<<24)^a0[0] +b=B.j[k&255] +d=B.j[j>>>8&255] +f=B.j[i>>>16&255] +g=B.j[l>>>24&255] +a2=b^(d>>>24|(d&e)<<8)^(f>>>16|(f&c)<<16)^(g>>>8|(g&a)<<24)^a0[1] +g=B.j[j&255] +f=B.j[i>>>8&255] +d=B.j[l>>>16&255] +b=B.j[k>>>24&255] +a3=g^(f>>>24|(f&e)<<8)^(d>>>16|(d&c)<<16)^(b>>>8|(b&a)<<24)^a0[2] +b=B.j[i&255] +l=B.j[l>>>8&255] +k=B.j[k>>>16&255] +j=B.j[j>>>24&255];++h +i=b^(l>>>24|(l&e)<<8)^(k>>>16|(k&c)<<16)^(j>>>8|(j&a)<<24)^a0[3] +a0=B.j[a1&255] +j=B.j[a2>>>8&255] +k=B.j[a3>>>16&255] +l=B.j[i>>>24&255] +if(!(h>>24|(j&e)<<8)^(k>>>16|(k&c)<<16)^(l>>>8|(l&a)<<24)^b[0] +k=B.j[a2&255] +j=B.j[a3>>>8&255] +a0=B.j[i>>>16&255] +d=B.j[a1>>>24&255] +k=k^(j>>>24|(j&e)<<8)^(a0>>>16|(a0&c)<<16)^(d>>>8|(d&a)<<24)^b[1] +d=B.j[a3&255] +a0=B.j[i>>>8&255] +j=B.j[a1>>>16&255] +f=B.j[a2>>>24&255] +j=d^(a0>>>24|(a0&e)<<8)^(j>>>16|(j&c)<<16)^(f>>>8|(f&a)<<24)^b[2] +f=B.j[i&255] +a0=B.j[a1>>>8&255] +d=B.j[a2>>>16&255] +g=B.j[a3>>>24&255];++h +i=f^(a0>>>24|(a0&e)<<8)^(d>>>16|(d&c)<<16)^(g>>>8|(g&a)<<24)^b[3]}n=B.j[l&255] +m=A.ar(B.j[k>>>8&255],24) +g=A.ar(B.j[j>>>16&255],16) +f=A.ar(B.j[i>>>24&255],8) +if(!(h>>8&255],24) +m=A.ar(B.j[i>>>16&255],16) +n=A.ar(B.j[l>>>24&255],8) +if(!(h>>8&255],24) +g=A.ar(B.j[l>>>16&255],16) +f=A.ar(B.j[k>>>24&255],8) +if(!(h>>8&255],24) +k=A.ar(B.j[k>>>16&255],16) +j=A.ar(B.j[j>>>24&255],8) +i=h+1 +g=b7.length +if(!(h>>8&255] +l=this.d +f=a3>>>16&255 +m=l.length +if(!(f>>24&255 +if(!(n>>8&255] +b=B.L[a4>>>16&255] +a=a1>>>24&255 +if(!(a>>8&255] +a7=B.L[a1>>>16&255] +a8=B.L[a2>>>24&255] +a9=g[2] +b0=a4&255 +if(!(b0>>8&255 +if(!(b1>>16&255 +if(!(b2>>24&255] +g=g[3] +m=J.be(B.k.ga9(b5),b5.byteOffset,16) +m.$flags&2&&A.t(m,11) +m.setUint32(b6,(j&255^(k&255)<<8^(f&255)<<16^n<<24^e)>>>0,!0) +e=J.be(B.k.ga9(b5),b5.byteOffset,16) +e.$flags&2&&A.t(e,11) +e.setUint32(b6+4,(d&255^(c&255)<<8^(b&255)<<16^a<<24^a0)>>>0,!0) +a0=J.be(B.k.ga9(b5),b5.byteOffset,16) +a0.$flags&2&&A.t(a0,11) +a0.setUint32(b6+8,(a5&255^(a6&255)<<8^(a7&255)<<16^a8<<24^a9)>>>0,!0) +a9=J.be(B.k.ga9(b5),b5.byteOffset,16) +a9.$flags&2&&A.t(a9,11) +a9.setUint32(b6+12,(b0&255^(b1&255)<<8^(b2&255)<<16^l<<24^g)>>>0,!0)}, +kf(b3,b4,b5,b6,b7){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2 +t.eP.a(b7) +s=J.be(B.k.ga9(b3),b3.byteOffset,16).getUint32(b4,!0) +r=J.be(B.k.ga9(b3),b3.byteOffset,16).getUint32(b4+4,!0) +q=J.be(B.k.ga9(b3),b3.byteOffset,16).getUint32(b4+8,!0) +p=J.be(B.k.ga9(b3),b3.byteOffset,16).getUint32(b4+12,!0) +o=this.a +n=b7.length +if(!(o1;){m=B.i[l&255] +g=B.i[h>>>8&255] +f=$.aL[8] +e=B.i[j>>>16&255] +d=$.aL[16] +c=B.i[o>>>24&255] +b=$.aL[24] +if(!(i>>24|(g&f)<<8)^(e>>>16|(e&d)<<16)^(c>>>8|(c&b)<<24)^k[0] +c=B.i[o&255] +e=B.i[l>>>8&255] +g=B.i[h>>>16&255] +m=B.i[j>>>24&255] +a0=c^(e>>>24|(e&f)<<8)^(g>>>16|(g&d)<<16)^(m>>>8|(m&b)<<24)^k[1] +m=B.i[j&255] +g=B.i[o>>>8&255] +e=B.i[l>>>16&255] +c=B.i[h>>>24&255] +a1=m^(g>>>24|(g&f)<<8)^(e>>>16|(e&d)<<16)^(c>>>8|(c&b)<<24)^k[2] +c=B.i[h&255] +j=B.i[j>>>8&255] +o=B.i[o>>>16&255] +l=B.i[l>>>24&255];--i +h=c^(j>>>24|(j&f)<<8)^(o>>>16|(o&d)<<16)^(l>>>8|(l&b)<<24)^k[3] +k=B.i[a&255] +l=B.i[h>>>8&255] +o=B.i[a1>>>16&255] +j=B.i[a0>>>24&255] +if(!(i>>24|(l&f)<<8)^(o>>>16|(o&d)<<16)^(j>>>8|(j&b)<<24)^c[0] +j=B.i[a0&255] +o=B.i[a>>>8&255] +k=B.i[h>>>16&255] +e=B.i[a1>>>24&255] +o=j^(o>>>24|(o&f)<<8)^(k>>>16|(k&d)<<16)^(e>>>8|(e&b)<<24)^c[1] +e=B.i[a1&255] +k=B.i[a0>>>8&255] +j=B.i[a>>>16&255] +g=B.i[h>>>24&255] +j=e^(k>>>24|(k&f)<<8)^(j>>>16|(j&d)<<16)^(g>>>8|(g&b)<<24)^c[2] +g=B.i[h&255] +k=B.i[a1>>>8&255] +e=B.i[a0>>>16&255] +m=B.i[a>>>24&255];--i +h=g^(k>>>24|(k&f)<<8)^(e>>>16|(e&d)<<16)^(m>>>8|(m&b)<<24)^c[3]}n=B.i[l&255] +m=A.ar(B.i[h>>>8&255],24) +g=A.ar(B.i[j>>>16&255],16) +f=A.ar(B.i[o>>>24&255],8) +if(!(i>=0&&i>>8&255],24) +m=A.ar(B.i[h>>>16&255],16) +n=A.ar(B.i[j>>>24&255],8) +if(!(i>>8&255],24) +g=A.ar(B.i[l>>>16&255],16) +f=A.ar(B.i[h>>>24&255],8) +if(!(i>>8&255],24) +o=A.ar(B.i[o>>>16&255],16) +l=A.ar(B.i[l>>>24&255],8) +g=b7.length +if(!(i>>8&255 +f=o.length +if(!(j>>16&255 +if(!(m>>24&255] +if(0>=g)return A.c(b7,0) +g=b7[0] +e=g[0] +d=a0&255 +if(!(d>>8&255 +if(!(c>>16&255] +k=a1>>>24&255 +if(!(k>>8&255] +a5=B.af[a>>>16&255] +a6=h>>>24&255 +if(!(a6>>8&255 +if(!(a9>>16&255 +if(!(b0>>24&255 +if(!(b1>>0,!0) +b2.setUint32(b6+4,(d&255^(c&255)<<8^(b&255)<<16^k<<24^a2)>>>0,!0) +b2.setUint32(b6+8,(a3&255^(a4&255)<<8^(a5&255)<<16^a6<<24^a7)>>>0,!0) +b2.setUint32(b6+12,(a8&255^(a9&255)<<8^(b0&255)<<16^b1<<24^g)>>>0,!0)}} +A.fe.prototype={} +A.it.prototype={ +gm(a){var s=this.a.length +return s}, +e0(){return A.bv(this.a,B.F,null,null)}} +A.e_.prototype={ +fL(a,b,c,d){var s,r +if(d==null)d=0 +if(c==null)c=J.b5(a)-d +s=J.ab(a) +if(d+c>s.gm(a))c=s.gm(a)-d +r=t.ev.b(a)?a:new Uint8Array(A.hC(a)) +s=J.dS(B.k.ga9(r),r.byteOffset+d,c) +this.b=s +this.d=s.length}, +gm(a){var s=this.b +return s==null?0:s.length-this.c}, +fF(a,b,c){var s=this.b +if(s==null)return A.bv(A.i([],t.Z),B.F,null,null) +return A.bv(s,this.a,b,c)}, +dc(a,b){return this.fF(null,a,b)}, +aK(){var s,r=this.b +r.toString +s=this.c++ +if(!(s>=0&&sq)s=q-r +return J.dS(B.k.ga9(o),p.b.byteOffset+p.c,s)}} +A.iN.prototype={ +a5(){var s=this.aK(),r=this.aK() +if(this.a===B.aU)return(s<<8|r)>>>0 +return(r<<8|s)>>>0}, +ak(){var s=this,r=s.aK(),q=s.aK(),p=s.aK(),o=s.aK() +if(s.a===B.aU)return(r<<24|q<<16|p<<8|o)>>>0 +return(o<<24|p<<16|q<<8|r)>>>0}, +bz(){var s=this,r=s.aK(),q=s.aK(),p=s.aK(),o=s.aK(),n=s.aK(),m=s.aK(),l=s.aK(),k=s.aK() +if(s.a===B.aU)return(B.f.bp(r,56)|B.f.bp(q,48)|B.f.bp(p,40)|B.f.bp(o,32)|n<<24|m<<16|l<<8|k)>>>0 +return(B.f.bp(k,56)|B.f.bp(l,48)|B.f.bp(m,40)|B.f.bp(n,32)|o<<24|p<<16|q<<8|r)>>>0}, +bd(a){var s=this,r=s.dc(a,s.c) +s.c=s.c+r.gm(0) +return r}, +ir(a,b){return new A.mE(b).$1(this.bd(a).aF())}, +dV(a){return this.ir(a,!0)}} +A.mE.prototype={ +$1(a){var s,r,q +t.L.a(a) +try{s=this.a?B.hV.bL(a):A.ay(a,0,null) +return s}catch(r){q=A.ay(a,0,null) +return q}}, +$S:116} +A.fy.prototype={ +dZ(){return J.dS(B.k.ga9(this.c),this.c.byteOffset,this.b)}, +cA(a){var s,r,q=this +if(q.b===q.c.length)q.kn() +s=q.c +r=q.b++ +s.$flags&2&&A.t(s) +if(!(r>=0&&ro)n.dh(q-o) +B.k.bD(p,r,q,a) +n.b+=s}, +oy(a){var s,r,q,p,o,n,m=this +for(;;){s=m.b +r=a.b +q=r==null +p=q?0:r.length-a.c +o=m.c +n=o.length +if(!(s+p>n))break +m.dh(s+(q?0:r.length-a.c)-n)}if(!q)B.k.ba(o,s,s+a.gm(0),r,a.c) +m.b=m.b+a.gm(0)}, +ov(a,b){var s,r,q,p,o,n,m,l,k,j,i=this +while(s=i.b,r=s+b,q=i.c,p=q.length,r>p)i.dh(r-p) +o=s-a +if(a>=b)B.k.ba(q,s,r,q,o) +else for(n=q.$flags|0,m=o;s=0&&m=0))return A.c(q,s) +q[s]=j}i.b+=b}, +dh(a){var s,r=this.c,q=r.length,p=q+(a==null?1:a),o=q===0?32768:q*2 +if(o=0;)++r +return r}, +ai(a,b){var s,r,q,p,o,n +A.aE(b,"index") +s=this.a +r=s.length +q=0 +if(r!==0){p=new A.cP(s,r,0,240) +for(o=0;n=p.cX(),n>=0;o=n){if(q===b)return B.b.t(s,o,n);++q}}throw A.f(A.vM(b,this,"index",null,q))}, +D(a,b){var s +if(typeof b!="string")return!1 +s=b.length +if(s===0)return!1 +if(new A.cP(b,s,0,240).cX()!==s)return!1 +s=this.a +return A.y_(s,b,0,s.length)>=0}, +hq(a,b,c){var s,r +if(a===0||b===this.a.length)return b +s=this.a +c=new A.cP(s,s.length,b,240) +do{r=c.cX() +if(r<0)break +if(--a,a>0){b=r +continue}else{b=r +break}}while(!0) +return b}, +aX(a,b){A.aE(b,"count") +return this.kX(b)}, +kX(a){var s=this.hq(a,0,null),r=this.a +if(s===r.length)return B.hT +return new A.d3(B.b.ab(r,s))}, +bj(a,b){A.aE(b,"count") +return this.l1(b)}, +l1(a){var s=this.hq(a,0,null),r=this.a +if(s===r.length)return this +return new A.d3(B.b.t(r,0,s))}, +u(a,b){if(b==null)return!1 +return b instanceof A.d3&&this.a===b.a}, +gq(a){return B.b.gq(this.a)}, +j(a){return this.a}} +A.fR.prototype={ +gB(){var s=this,r=s.d +return r==null?s.d=B.b.t(s.a,s.b,s.c):r}, +p(){return this.fQ(1,this.c)}, +fQ(a,b){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=u.j,f=u.e,e=u.U +if(a>0){s=h.c +for(r=h.a,q=r.length,p=240;s=0))return A.c(r,s) +o=r.charCodeAt(s) +n=o^55296 +m=s+1 +if(n>1023){l=o>>>5 +if(!(l<6144))return A.c(g,l) +k=g.charCodeAt(l)+(o&31) +if(!(k<10964))return A.c(f,k) +j=f.charCodeAt(k)}else{j=1 +if(m>>8)+(n<<2>>>0)) +if(!(l<6144))return A.c(g,l) +l=g.charCodeAt(l)+(i&255) +if(!(l<10964))return A.c(f,l) +j=f.charCodeAt(l)}}}l=(p&-4)+j +if(!(l>=0&&l<500))return A.c(e,l) +p=e.charCodeAt(l) +if((p&1)!==0){--a +l=a===0}else l=!1 +if(l){h.b=b +h.c=s +h.d=null +return!0}}h.b=b +h.c=q +h.d=null +return a===1&&p!==240}else{h.b=b +h.d=null +return!0}}, +$iK:1} +A.cP.prototype={ +cX(){var s,r,q=this,p=u.U +for(s=q.b;r=q.c,r=0&&i1023){j=n.d +i=s>>>5 +if(!(i<6144))return A.c(m,i) +q=m.charCodeAt(i)+(s&31) +if(!(q<10964))return A.c(l,q) +j=(j&-4)+l.charCodeAt(q) +if(!(j<500))return A.c(k,j) +n.d=k.charCodeAt(j) +return}if(h=0&&h>>8)+(r<<2>>>0)) +if(!(j<6144))return A.c(m,j) +j=m.charCodeAt(j)+(p&255) +if(!(j<10964))return A.c(l,j) +o=l.charCodeAt(j) +n.c=h+1}else o=1 +j=(n.d&-4)+o +if(!(j<500))return A.c(k,j) +n.d=k.charCodeAt(j)}, +l2(a){var s,r,q,p,o,n,m,l,k,j,i=this,h=u.j,g=u.e,f=u.U,e=i.c +if(e===a){i.d=240 +return e}s=e-1 +r=i.a +q=r.length +if(!(s>=0&&s2047){e=p>>>5 +if(!(e<6144))return A.c(h,e) +n=h.charCodeAt(e)+(p&31) +if(!(n<10964))return A.c(g,n) +e=280+g.charCodeAt(n) +if(!(e<500))return A.c(f,e) +i.d=f.charCodeAt(e) +return s}m=1 +if(o>1023){l=s-1 +o&=1023 +if(l>=a){if(!(l>=0&&l>>8)+(k<<2>>>0)) +if(!(e<6144))return A.c(h,e) +e=h.charCodeAt(e)+(o&255) +if(!(e<10964))return A.c(g,e) +m=g.charCodeAt(e) +s=l}}else{if(e=0&&e>>8)+(o<<2>>>0)) +if(!(e<6144))return A.c(h,e) +e=h.charCodeAt(e)+(j&255) +if(!(e<10964))return A.c(g,e) +m=g.charCodeAt(e)}}e=280+m +if(!(e<500))return A.c(f,e) +i.d=f.charCodeAt(e) +return s}} +A.lF.prototype={ +da(){var s,r,q,p,o,n=this,m=u.j,l=u.e,k=u.t,j=n.a,i=--n.c,h=j.length +if(!(i>=0&&i1023){j=s>>>5 +if(!(j<6144))return A.c(m,j) +q=m.charCodeAt(j)+(s&31) +if(!(q<10964))return A.c(l,q) +j=(n.d&-4)+l.charCodeAt(q) +if(!(j<380))return A.c(k,j) +n.d=k.charCodeAt(j) +return}if(i>=n.b){i=n.c=i-1 +if(!(i>=0&&i>>8)+(p<<2>>>0)) +if(!(j<6144))return A.c(m,j) +j=m.charCodeAt(j)+(r&255) +if(!(j<10964))return A.c(l,j) +o=l.charCodeAt(j)}else{n.c=i+1 +o=1}j=(n.d&-4)+o +if(!(j<380))return A.c(k,j) +n.d=k.charCodeAt(j)}, +ky(){var s,r,q=this,p=u.t +for(s=q.b;r=q.c,r>s;){q.da() +if(q.d<280)return r}r=(q.d&-4)+18 +if(!(r<380))return A.c(p,r) +q.d=p.charCodeAt(r) +return s}} +A.eR.prototype={ +aI(a,b){return J.M(a,b)}, +Y(a){return J.A(a)}, +$ibS:1} +A.e2.prototype={ +aI(a,b){var s,r,q,p=this.$ti.h("h<1>?") +p.a(a) +p.a(b) +if(a===b)return!0 +s=J.as(a) +r=J.as(b) +for(p=this.a;;){q=s.p() +if(q!==r.p())return!1 +if(!q)return!0 +if(!p.aI(s.gB(),r.gB()))return!1}}, +Y(a){var s,r,q +this.$ti.h("h<1>?").a(a) +for(s=J.as(a),r=this.a,q=0;s.p();){q=q+r.Y(s.gB())&2147483647 +q=q+(q<<10>>>0)&2147483647 +q^=q>>>6}q=q+(q<<3>>>0)&2147483647 +q^=q>>>11 +return q+(q<<15>>>0)&2147483647}, +$ibS:1} +A.cX.prototype={ +aI(a,b){var s,r,q,p,o=this.$ti.h("m<1>?") +o.a(a) +o.a(b) +if(a===b)return!0 +o=J.ab(a) +s=o.gm(a) +r=J.ab(b) +if(s!==r.gm(b))return!1 +for(q=this.a,p=0;p?").a(a) +for(s=J.ab(a),r=this.a,q=0,p=0;p>>0)&2147483647 +q^=q>>>6}q=q+(q<<3>>>0)&2147483647 +q^=q>>>11 +return q+(q<<15>>>0)&2147483647}, +$ibS:1} +A.bE.prototype={ +aI(a,b){var s,r,q,p,o=A.w(this),n=o.h("bE.T?") +n.a(a) +n.a(b) +if(a===b)return!0 +n=this.a +s=A.rm(o.h("C(bE.E,bE.E)").a(n.gar()),o.h("b(bE.E)").a(n.gdM()),n.gni(),o.h("bE.E"),t.S) +for(o=J.as(a),r=0;o.p();){q=o.gB() +p=s.n(0,q) +s.k(0,q,(p==null?0:p)+1);++r}for(o=J.as(b);o.p();){q=o.gB() +p=s.n(0,q) +if(p==null||p===0)return!1 +s.k(0,q,p-1);--r}return r===0}, +Y(a){var s,r,q +A.w(this).h("bE.T?").a(a) +for(s=J.as(a),r=this.a,q=0;s.p();)q=q+r.Y(s.gB())&2147483647 +q=q+(q<<3>>>0)&2147483647 +q^=q>>>11 +return q+(q<<15>>>0)&2147483647}, +$ibS:1} +A.ei.prototype={} +A.ey.prototype={ +gq(a){var s=this.a +return 3*s.a.Y(this.b)+7*s.b.Y(this.c)&2147483647}, +u(a,b){var s +if(b==null)return!1 +if(b instanceof A.ey){s=this.a +s=s.a.aI(this.b,b.b)&&s.b.aI(this.c,b.c)}else s=!1 +return s}} +A.e9.prototype={ +aI(a,b){var s,r,q,p,o=this.$ti.h("d<1,2>?") +o.a(a) +o.a(b) +if(a===b)return!0 +if(a.gm(a)!==b.gm(b))return!1 +s=A.rm(null,null,null,t.fA,t.S) +for(o=a.gaR(),o=o.gF(o);o.p();){r=o.gB() +q=new A.ey(this,r,a.n(0,r)) +p=s.n(0,q) +s.k(0,q,(p==null?0:p)+1)}for(o=b.gaR(),o=o.gF(o);o.p();){r=o.gB() +q=new A.ey(this,r,b.n(0,r)) +p=s.n(0,q) +if(p==null||p===0)return!1 +s.k(0,q,p-1)}return!0}, +Y(a){var s,r,q,p,o,n,m,l=this.$ti +l.h("d<1,2>?").a(a) +for(s=a.gaR(),s=s.gF(s),r=this.a,q=this.b,l=l.y[1],p=0;s.p();){o=s.gB() +n=r.Y(o) +m=a.n(0,o) +p=p+3*n+7*q.Y(m==null?l.a(m):m)&2147483647}p=p+(p<<3>>>0)&2147483647 +p^=p>>>11 +return p+(p<<15>>>0)&2147483647}, +$ibS:1} +A.eQ.prototype={ +aI(a,b){var s=this,r=t.hj +if(r.b(a))return r.b(b)&&new A.ei(s,t.cu).aI(a,b) +r=t.av +if(r.b(a))return r.b(b)&&new A.e9(s,s,t.a3).aI(a,b) +r=t.p +if(r.b(a))return r.b(b)&&new A.cX(s,t.hI).aI(a,b) +r=t.e7 +if(r.b(a))return r.b(b)&&new A.e2(s,t.nZ).aI(a,b) +return J.M(a,b)}, +Y(a){var s=this +if(t.hj.b(a))return new A.ei(s,t.cu).Y(a) +if(t.av.b(a))return new A.e9(s,s,t.a3).Y(a) +if(t.p.b(a))return new A.cX(s,t.hI).Y(a) +if(t.e7.b(a))return new A.e2(s,t.nZ).Y(a) +return J.A(a)}, +nj(a){return!0}, +$ibS:1} +A.ev.prototype={ +D(a,b){return B.a.D(this.a,b)}, +ai(a,b){var s=this.a +if(!(b>=0&&b"))}, +gm(a){return this.a.length}, +cr(a,b,c){var s=this.a,r=A.x(s) +return new A.R(s,r.v(c).h("1(2)").a(this.$ti.v(c).h("1(2)").a(b)),r.h("@<1>").v(c).h("R<1,2>"))}, +aX(a,b){var s=this.a +return A.bX(s,b,null,A.x(s).c)}, +bj(a,b){var s=this.a +return A.bX(s,0,A.dO(b,"count",t.S),A.x(s).c)}, +iF(a,b){return new A.a_(this.a,b.h("a_<0>"))}, +j(a){return A.iS(this.a,"[","]")}, +$ih:1} +A.dY.prototype={ +n(a,b){var s=this.a +if(!(b>=0&&b").a(b))}, +giy(a){var s=this.a +return new A.V(s,A.x(s).h("V<1>"))}, +cd(a,b){B.a.cd(this.a,this.$ti.h("b(1,1)?").a(b))}, +$iz:1, +$im:1} +A.kO.prototype={ +an(){var s=this,r=s.d +r===$&&A.o() +s.c=r +s.d=s.a.bP(!1) +return r}, +he(a,b){var s=this,r=s.d +r===$&&A.o() +if(r.a===a){s.c=r +s.d=s.a.bP(!1) +return!0}else return!1}, +dm(a){return this.he(a,!1)}, +aM(a){if(!this.he(a,!1))this.ef(A.rW(a))}, +ef(a){var s,r=this.an(),q=null +try{q="expected "+a+", but found "+A.k(r)}catch(s){q="parsing error expected "+a}this.cg(q,r.b)}, +cg(a,b){$.eE.aY().n_(a,b)}, +ae(a){var s=this.c +if(s==null||s.b.ah(0,a)<0)return a +return a.aO(0,this.c.b)}, +io(){var s,r,q=this,p=A.i([],t.fG),o=q.d +o===$&&A.o() +s=q.a +s.e=!0 +do{r=q.im() +if(r!=null)B.a.l(p,r)}while(q.dm(19)) +s.e=!1 +if(p.length!==0)return new A.jJ(p,q.ae(o.b)) +return null}, +im(){var s,r=A.i([],t.iM),q=this.d +q===$&&A.o() +for(;;){s=this.jl(r.length===0) +if(s!=null)B.a.l(r,s) +else break}if(r.length===0)return null +return new A.d_(r,this.ae(q.b))}, +nL(){var s,r,q,p,o,n,m,l=this.im() +if(l!=null)for(s=l.b,r=s.length,q=$.eE.a,p=0;p10)r=B.b.t(r,0,8)+"..." +return s+"("+r+")"}else return s}} +A.iy.prototype={ +gZ(){return this.c}} +A.jV.prototype={ +bP(a){var s,r,q,p,o,n,m,l,k,j=this +j.r=j.f +s=j.ck() +switch(s){case 10:case 13:case 32:case 9:return j.n4() +case 0:return new A.I(1,j.a.K(j.r,j.f)) +case 64:r=j.cl() +if(A.jW(r)||r===45){q=j.f +p=j.r +j.r=q +j.ck() +j.dI() +o=j.b +n=j.r +m=A.qg(B.j2,"type",o,n,j.f-n) +if(m===-1){n=j.r +m=A.qg(B.iY,"type",o,n,j.f-n)}if(m!==-1)return new A.I(m,j.a.K(j.r,j.f)) +else{j.r=p +j.f=q}}return new A.I(10,j.a.K(j.r,j.f)) +case 46:l=j.r +if(j.nr()){o=j.a +if(j.dJ().a===60){j.r=l +return new A.I(62,o.K(l,j.f))}else return new A.I(65,o.K(j.r,j.f))}return new A.I(8,j.a.K(j.r,j.f)) +case 40:return new A.I(2,j.a.K(j.r,j.f)) +case 41:return new A.I(3,j.a.K(j.r,j.f)) +case 123:return new A.I(6,j.a.K(j.r,j.f)) +case 125:return new A.I(7,j.a.K(j.r,j.f)) +case 91:return new A.I(4,j.a.K(j.r,j.f)) +case 93:if(j.af(93)&&j.af(62))return j.c7() +return new A.I(5,j.a.K(j.r,j.f)) +case 35:return new A.I(11,j.a.K(j.r,j.f)) +case 43:if(j.hh(s))return j.dJ() +return new A.I(12,j.a.K(j.r,j.f)) +case 45:o=j.d +if(o)return new A.I(34,j.a.K(j.r,j.f)) +else if(j.hh(s))return j.dJ() +else if(A.jW(s)||s===45)return j.dI() +return new A.I(34,j.a.K(j.r,j.f)) +case 62:return new A.I(13,j.a.K(j.r,j.f)) +case 126:if(j.af(61))return new A.I(530,j.a.K(j.r,j.f)) +return new A.I(14,j.a.K(j.r,j.f)) +case 42:if(j.af(61))return new A.I(534,j.a.K(j.r,j.f)) +return new A.I(15,j.a.K(j.r,j.f)) +case 38:return new A.I(36,j.a.K(j.r,j.f)) +case 124:if(j.af(61))return new A.I(531,j.a.K(j.r,j.f)) +return new A.I(16,j.a.K(j.r,j.f)) +case 58:return new A.I(17,j.a.K(j.r,j.f)) +case 44:return new A.I(19,j.a.K(j.r,j.f)) +case 59:return new A.I(9,j.a.K(j.r,j.f)) +case 37:return new A.I(24,j.a.K(j.r,j.f)) +case 39:return new A.I(25,j.a.K(j.r,j.f)) +case 34:return new A.I(26,j.a.K(j.r,j.f)) +case 47:if(j.af(42))return j.n3() +return new A.I(27,j.a.K(j.r,j.f)) +case 60:if(j.af(33))if(j.af(45)&&j.af(45))return j.n2() +else{o=!1 +if(j.af(91)){n=j.Q.a +k=n.length +if(0>=k)return A.c(n,0) +if(j.af(n.charCodeAt(0))){if(1>=k)return A.c(n,1) +if(j.af(n.charCodeAt(1))){if(2>=k)return A.c(n,2) +if(j.af(n.charCodeAt(2))){if(3>=k)return A.c(n,3) +if(j.af(n.charCodeAt(3))){if(4>=k)return A.c(n,4) +o=j.af(n.charCodeAt(4))&&j.af(91)}}}}}if(o)return j.c7()}return new A.I(32,j.a.K(j.r,j.f)) +case 61:return new A.I(28,j.a.K(j.r,j.f)) +case 94:if(j.af(61))return new A.I(532,j.a.K(j.r,j.f)) +return new A.I(30,j.a.K(j.r,j.f)) +case 36:if(j.af(61))return new A.I(533,j.a.K(j.r,j.f)) +return new A.I(31,j.a.K(j.r,j.f)) +case 33:return j.dI() +default:if(!j.e&&s===92)return new A.I(35,j.a.K(j.r,j.f)) +if(j.c)o=(s===j.w||s===j.x)&&j.cl()===j.y +else o=!1 +if(o){j.ck() +o=j.r=j.f +return new A.I(508,j.a.K(o,o))}else{o=s===118 +if(o&&j.af(97)&&j.af(114)&&j.af(45))return new A.I(400,j.a.K(j.r,j.f)) +else if(o&&j.af(97)&&j.af(114)&&j.cl()===45)return new A.I(401,j.a.K(j.r,j.f)) +else if(A.jW(s)||s===45)return j.dI() +else if(s>=48&&s<=57)return j.dJ()}return new A.I(65,j.a.K(j.r,j.f))}}, +c7(){return this.bP(!1)}, +dI(){var s,r,q,p,o,n,m,l,k,j=this,i=A.i([],t.Z),h=j.f +j.f=j.r +r=j.b +s=r.length +for(;;){q=j.f +if(!(q=0))return A.c(r,q) +p=r.charCodeAt(q) +if(p===92&&j.c){o=j.f=q+1 +j.mP(o+6) +q=j.f +if(q!==o){B.a.l(i,A.lx("0x"+B.b.t(r,o,q),null)) +q=j.f +if(q===s){s=q +break}if(!(q>=0&&q=0&&q=h)if(j.d){if(!A.jW(p))n=p>=48&&p<=57}else{if(!A.jW(p))n=p>=48&&p<=57 +else n=!0 +n=n||p===45}if(n){B.a.l(i,p);++j.f}else{s=q +break}}}m=j.a.K(j.r,s) +l=A.ay(i,0,null) +if(!j.d&&!j.e){s=j.r +k=A.qg(B.d1,"unit",r,s,j.f-s)}else k=-1 +if(k===-1)k=B.b.t(r,j.r,j.f)==="!important"?505:-1 +return new A.iy(l,k>=0?k:511,m)}, +dJ(){var s,r=this +r.i3() +if(r.cl()===46){r.ck() +s=r.cl() +if(s>=48&&s<=57){r.i3() +return new A.I(62,r.a.K(r.r,r.f))}else --r.f}return new A.I(60,r.a.K(r.r,r.f))}, +nr(){var s=this.f,r=this.b,q=r.length +if(s=0))return A.c(r,s) +r=r.charCodeAt(s) +r=r>=48&&r<=57}else r=!1 +if(r){this.f=s+1 +return!0}return!1}, +mP(a){var s,r,q,p=this.b,o=p.length +a=Math.min(a,o) +while(s=this.f,s=0&&s=48&&r<=57))if(!(r>=97&&r<=102))r=r>=65&&r<=70 +else r=q +else r=q +if(r)this.f=s+1 +else return}}, +n2(){var s,r,q,p,o,n=this +for(;;){s=n.ck() +if(s===0){r=n.a +q=n.r +p=n.f +o=new A.av(r,q,p) +o.aG(r,q,p) +return new A.I(67,o)}else if(s===45)if(n.af(45))if(n.af(62))if(n.c)return n.c7() +else{r=n.a +q=n.r +p=n.f +o=new A.av(r,q,p) +o.aG(r,q,p) +return new A.I(504,o)}}}, +n3(){var s,r,q,p,o,n=this +for(;;){s=n.ck() +if(s===0){r=n.a +q=n.r +p=n.f +o=new A.av(r,q,p) +o.aG(r,q,p) +return new A.I(67,o)}else if(s===42)if(n.af(47))if(n.c)return n.c7() +else{r=n.a +q=n.r +p=n.f +o=new A.av(r,q,p) +o.aG(r,q,p) +return new A.I(64,o)}}}} +A.nK.prototype={ +ck(){var s=this.f,r=this.b,q=r.length +if(s=0))return A.c(r,s) +return r.charCodeAt(s)}else return 0}, +hk(a){var s=this.f+a,r=this.b,q=r.length +if(s=0))return A.c(r,s) +return r.charCodeAt(s)}else return 0}, +cl(){return this.hk(0)}, +af(a){var s=this.f,r=this.b,q=r.length +if(s=0))return A.c(r,s) +if(r.charCodeAt(s)===a){this.f=s+1 +return!0}else return!1}else return!1}, +hh(a){var s,r +if(a>=48&&a<=57)return!0 +s=this.cl() +if(a===46)return s>=48&&s<=57 +if(a===43||a===45){if(!(s>=48&&s<=57))if(s===46){r=this.hk(1) +r=r>=48&&r<=57}else r=!1 +else r=!0 +return r}return!1}, +n4(){var s,r,q,p,o=this,n=--o.f +for(s=o.b,r=s.length;n=0))return A.c(s,n) +p=s.charCodeAt(n) +if(!(p===32||p===9||p===13))if(p===10){if(!o.c){n=o.a +s=o.r +r=new A.av(n,s,q) +r.aG(n,s,q) +return new A.I(63,r)}}else{n=o.f=q-1 +if(o.c)return o.c7() +else{s=o.a +r=o.r +q=new A.av(s,r,n) +q.aG(s,r,n) +return new A.I(63,q)}}}return new A.I(1,o.a.K(o.r,n))}, +i3(){var s,r,q,p +for(s=this.b,r=s.length;q=this.f,q=0))return A.c(s,q) +p=s.charCodeAt(q) +if(p>=48&&p<=57)this.f=q+1 +else return}}} +A.ec.prototype={ +bn(){return"MessageLevel."+this.b}} +A.eb.prototype={ +j(a){var s=this,r=s.d&&B.dZ.a8(s.a),q=r?B.dZ.n(0,s.a):null,p=r?A.k(q):"" +p=p+A.k(B.pd.n(0,s.a))+" " +if(r)p+="\x1b[0m" +p=p+"on "+s.c.ie(s.b,q) +return p.charCodeAt(0)==0?p:p}} +A.j4.prototype={ +n_(a,b){var s=new A.eb(B.by,a,b,this.b.w) +B.a.l(this.c,s) +this.a.$1(s)}} +A.no.prototype={} +A.cs.prototype={ +L(a){return null}, +j(a){var s=this.a +s=A.ay(B.aA.am(s.a.c,s.b,s.c),0,null) +return s}, +ga7(){return this.b}} +A.d4.prototype={ +L(a){return null}, +ga7(){return"*"}} +A.jT.prototype={ +L(a){return null}, +ga7(){return"&"}} +A.jd.prototype={ +L(a){return null}, +ga7(){return"not"}} +A.jJ.prototype={ +L(a){return B.a.aH(this.b,a.gfm())}} +A.d_.prototype={ +gm(a){return this.b.length}, +L(a){return a.iE(this)}} +A.fL.prototype={ +L(a){this.c.L(a) +return null}, +j(a){return this.c.b.ga7()}} +A.ba.prototype={ +ga7(){return this.b.ga7()}, +L(a){return t.in.a(this.b).L(a)}} +A.dh.prototype={ +L(a){var s=this.b +return s instanceof A.d4||a.a.x===s.ga7().toLowerCase()}, +j(a){return this.b.ga7()}} +A.j5.prototype={ +gig(){var s=this.d +if(s instanceof A.d4)s="*" +else s=s==null?"":t.gx.a(s).b +return s}, +L(a){return a.on(this)}, +j(a){return this.gig()+"|"+t.g9.a(this.b).b.ga7()}} +A.hW.prototype={ +np(){var s,r=this.d +A:{if(28===r){s="=" +break A}if(530===r){s="~=" +break A}if(531===r){s="|=" +break A}if(532===r){s="^=" +break A}if(533===r){s="$=" +break A}if(534===r){s="*=" +break A}if(535===r){s="" +break A}s=null +break A}return s}, +oi(){var s=this.e +if(s!=null)if(s instanceof A.cs)return s.j(0) +else return'"'+A.k(s)+'"' +else return""}, +L(a){return a.oj(this)}, +j(a){return"["+this.b.ga7()+A.k(this.np())+this.oi()+"]"}} +A.ix.prototype={ +L(a){return a.a.geV()===this.b.ga7()}, +j(a){return"#"+A.k(this.b)}} +A.i3.prototype={ +L(a){var s,r=a.a +r.toString +s=this.b.ga7() +return new A.ia(r).d0().D(0,s)}, +j(a){return"."+A.k(this.b)}} +A.ed.prototype={ +L(a){return a.op(this)}, +j(a){return":"+this.b.ga7()}} +A.ee.prototype={ +L(a){a.or(this) +return!1}, +j(a){var s=this.d?":":"::" +return s+this.b.ga7()}} +A.fD.prototype={ +L(a){return a.oo(this)}} +A.jC.prototype={ +L(a){return a.oq(this)}} +A.eh.prototype={ +L(a){a.l3(this.b) +return null}} +A.je.prototype={ +L(a){return!A.hA(this.d.L(a))}} +A.jn.prototype={ +L(a){return null}} +A.jm.prototype={ +L(a){return null}} +A.ak.prototype={ +L(a){return null}} +A.jl.prototype={ +L(a){return null}} +A.bA.prototype={ +L(a){return null}, +j(a){return this.d+A.k(A.wN(this.f))}} +A.j_.prototype={ +L(a){return null}} +A.jy.prototype={ +L(a){return null}} +A.ib.prototype={ +L(a){return null}} +A.is.prototype={ +L(a){return null}} +A.hN.prototype={ +L(a){return null}} +A.jU.prototype={ +L(a){return null}} +A.iv.prototype={ +L(a){return null}} +A.iu.prototype={ +L(a){return null}} +A.jG.prototype={ +L(a){return null}} +A.i1.prototype={ +L(a){return null}} +A.jE.prototype={ +L(a){return null}} +A.j0.prototype={ +L(a){return null}} +A.k4.prototype={ +L(a){return null}} +A.N.prototype={} +A.an.prototype={} +A.k5.prototype={ +l3(a){var s +t.lR.a(a) +for(s=0;s>>0}, +u(a,b){var s=this +if(b==null)return!1 +t.gF.a(b) +if(s===b)return!0 +return b.a.u(0,s.a)&&b.b.u(0,s.b)&&b.c===s.c}} +A.m7.prototype={ +$1(a){A.q(a) +return!0}, +$S:4} +A.m8.prototype={ +$0(){return""}, +$S:8} +A.m9.prototype={ +$1(a){return t.fj.a(a).a}, +$S:67} +A.lJ.prototype={ +$1(a){var s,r +t.w.a(a) +s=this.a +r=this.b +if(!(r")),r=r.c,q=null,p=null,o=null;s.p();){n=s.d +if(n==null)n=r.a(n) +m=n.b +switch(n.a.ga_().toLowerCase()){case"name":q=m +break +case"content":p=m +break +case"scheme":o=m +break}}if(q==null||q.length===0)throw A.f(A.P("Incorrect EPUB navigation meta: meta name is missing.")) +if(p==null)throw A.f(A.P("Incorrect EPUB navigation meta: meta content is missing.")) +B.a.l(this.a,new A.f5(q,p,o))}}, +$S:2} +A.mQ.prototype={ +$1(a){return t.q.a(a)!=null}, +$S:5} +A.mS.prototype={ +$1(a){t.P.a(a) +if(a.b.ga_().toLowerCase()==="navpoint")B.a.l(this.a,A.rC(a))}, +$S:2} +A.mR.prototype={ +$1(a){t.P.a(a) +if(a.b.ga_().toLowerCase()==="li")B.a.l(this.a,A.wd(a))}, +$S:2} +A.mT.prototype={ +$1(a){t.P.a(a) +switch(a.b.ga_().toLowerCase()){case"navlabel":B.a.l(this.a,A.mP(a)) +break +case"content":A.q5(a) +break}}, +$S:2} +A.mV.prototype={ +$1(a){t.P.a(a) +switch(a.b.ga_().toLowerCase()){case"navlabel":B.a.l(this.b,A.mP(a)) +break +case"content":this.a.a=A.q5(a) +break +case"navpoint":B.a.l(this.c,A.rC(a)) +break}}, +$S:2} +A.mU.prototype={ +$1(a){var s,r,q,p +t.P.a(a) +switch(a.b.ga_().toLowerCase()){case"a":case"span":B.a.l(this.b,new A.cS(B.b.bk(A.cH(a)))) +this.a.a=A.w5(a) +break +case"ol":for(s=A.rB(a).a,r=s.length,q=this.c,p=0;p")),r=r.c,q=null,p=null,o=null;s.p();){n=s.d +if(n==null)n=r.a(n) +m=n.b +switch(n.a.ga_().toLowerCase()){case"type":q=m +break +case"title":p=m +break +case"href":o=m +break}}if(q==null||q.length===0)throw A.f(A.P("Incorrect EPUB guide: item type is missing")) +if(o==null||o.length===0)throw A.f(A.P("Incorrect EPUB guide: item href is missing")) +B.a.l(this.a,new A.eZ(q,p,o))}}, +$S:2} +A.n5.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=null +t.P.a(a) +if(a.b.ga_().toLowerCase()==="item"){for(s=a.y$.a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=f,p=q,o=p,n=o,m=n,l=m,k=l,j=k,i=j;s.p();){h=s.d +if(h==null)h=r.a(h) +g=h.b +switch(h.a.ga_().toLowerCase()){case"id":i=g +break +case"href":j=g +break +case"media-type":k=g +break +case"media-overlay":l=g +break +case"required-namespace":m=g +break +case"required-modules":n=g +break +case"fallback":o=g +break +case"fallback-style":p=g +break +case"properties":q=g +break}}if(i==null||i.length===0)throw A.f(A.P("Incorrect EPUB manifest: item ID is missing")) +if(j==null||j.length===0)throw A.f(A.P("Incorrect EPUB manifest: item href is missing")) +if(k==null||k.length===0)throw A.f(A.P("Incorrect EPUB manifest: item media type is missing")) +B.a.l(this.a,new A.dj(i,j,k,l,m,n,o,p,q))}}, +$S:2} +A.n6.prototype={ +$1(a){var s,r,q,p,o,n,m=this +t.P.a(a) +s=A.cH(a) +r=a.b +q=r.ga_().toLowerCase() +A:{if("title"===q){r=B.a.l(m.b,s) +break A}if("creator"===q){r=B.a.l(m.c,A.wk(a)) +break A}if("subject"===q){r=B.a.l(m.d,s) +break A}if("description"===q){m.a.a=s +r=s +break A}if("publisher"===q){r=B.a.l(m.e,s) +break A}if("contributor"===q){r=B.a.l(m.f,A.wj(a)) +break A}if("date"===q){p=a.fp("event",r.gcV()) +o=p!=null&&p.length!==0?p:null +r=B.a.l(m.r,new A.f0(A.cH(a),o)) +break A}if("type"===q){r=B.a.l(m.w,s) +break A}if("format"===q){r=B.a.l(m.x,s) +break A}if("identifier"===q){r=B.a.l(m.y,A.wl(a)) +break A}if("source"===q){r=B.a.l(m.z,s) +break A}if("language"===q){r=B.a.l(m.Q,s) +break A}if("relation"===q){r=B.a.l(m.as,s) +break A}if("coverage"===q){r=B.a.l(m.at,s) +break A}if("rights"===q){r=B.a.l(m.ax,s) +break A}n="meta"===q +if(n&&m.ay===B.bG){r=B.a.l(m.ch,A.wm(a)) +break A}if(n&&m.ay===B.cT){r=B.a.l(m.ch,A.wn(a)) +break A}r=null +break A}return r}, +$S:2} +A.n7.prototype={ +$1(a){return t.u.a(a).a===this.a}, +$S:9} +A.n8.prototype={ +$1(a){return t.q.a(a)!=null}, +$S:5} +A.n9.prototype={ +$1(a){return t.q.a(a)!=null}, +$S:5} +A.na.prototype={ +$1(a){return t.q.a(a)!=null}, +$S:5} +A.nb.prototype={ +$1(a){return t.q.a(a)!=null}, +$S:5} +A.nc.prototype={ +$1(a){return t.q.a(a)!=null}, +$S:5} +A.nd.prototype={ +$1(a){var s,r,q +t.P.a(a) +if(a.b.ga_().toLowerCase()==="itemref"){s=a.cb("idref") +if(s==null||s.length===0)throw A.f(A.P("Incorrect EPUB spine: item ID ref is missing")) +r=a.cb("linear") +q=r==null||r.toLowerCase()==="no" +B.a.l(this.a,new A.fa(s,q))}}, +$S:2} +A.nz.prototype={ +$1(a){return t.u.a(a).a==="META-INF/container.xml"}, +$S:9} +A.nA.prototype={ +$1(a){return t.q.a(a)!=null}, +$S:5} +A.nB.prototype={ +$1(a){t.I.a(a) +return a instanceof A.aF&&"rootfile"===a.b.ga_()}, +$S:29} +A.eY.prototype={ +gq(a){var s=this +return(B.b.gq(s.b)^B.b.gq(s.c)^A.dx(s.d)^s.e.gq(0)^J.A(s.f))>>>0}, +u(a,b){var s=this +if(b==null)return!1 +t.gw.a(b) +if(s===b)return!0 +return b.b===s.b&&b.c===s.c&&B.l.gar().$2(b.d,s.d)&&b.e.u(0,s.e)&&J.M(b.f,s.f)}} +A.bg.prototype={} +A.bu.prototype={ +gq(a){var s=this,r=J.A(s.a),q=B.b.gq(s.b),p=B.b.gq(s.c),o=J.A(s.d),n=B.l.gdM().$1(s.e) +if(typeof n!=="number")return A.aM(n) +return(r^q^p^o^n)>>>0}, +u(a,b){var s=this +if(b==null)return!1 +t.k5.a(b) +if(s===b)return!0 +return J.M(b.a,s.a)&&b.b===s.b&&b.c===s.c&&b.d==s.d&&B.l.gar().$2(b.e,s.e)}, +fa(){var s=0,r=A.br(t.N),q,p=this +var $async$fa=A.bs(function(a,b){if(a===1)return A.bo(b,r) +for(;;)switch(s){case 0:q=p.a.dU() +s=1 +break +case 1:return A.bp(q,r)}}) +return A.bq($async$fa,r)}, +j(a){return"Title: "+this.b+", Subchapter count: "+this.e.length}} +A.di.prototype={ +gq(a){var s=this +return(s.a.gq(0)^B.b.gq(s.b)^J.A(s.c)^B.b.gq(s.d))>>>0}, +u(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +return b instanceof A.di&&b.b===s.b&&b.c==s.c&&b.d===s.d}, +fs(){var s=this.a,r=A.qm(s.e.c,this.b),q=A.bI(new A.cE(s.a.a,t.bW),new A.lR(r),t.u) +if(q==null)throw A.f(A.P("EPUB parsing error: file "+r+" not found in archive.")) +return q}, +f2(a){var s=0,r=A.br(t.L),q,p=this,o,n +var $async$f2=A.bs(function(b,c){if(b===1)return A.bo(c,r) +for(;;)switch(s){case 0:o=A.i([],t.Z) +n=a.bQ() +if((n==null?$.dc():n).length===0)throw A.f(A.P('Incorrect EPUB file: content file "'+p.b+'" specified in manifest is not found.')) +n=a.bQ() +B.a.a1(o,n==null?$.dc():n) +q=o +s=1 +break +case 1:return A.bp(q,r)}}) +return A.bq($async$f2,r)}, +nA(a){var s=A.i([],t.Z),r=a.bQ() +if((r==null?$.dc():r).length===0)throw A.f(A.P('Incorrect EPUB file: content file "'+this.b+'" specified in manifest is not found.')) +r=a.bQ() +B.a.a1(s,r==null?$.dc():r) +return s}, +d1(){var s=0,r=A.br(t.L),q,p=this +var $async$d1=A.bs(function(a,b){if(a===1)return A.bo(b,r) +for(;;)switch(s){case 0:s=3 +return A.c3(p.f2(p.fs()),$async$d1) +case 3:q=b +s=1 +break +case 1:return A.bp(q,r)}}) +return A.bq($async$d1,r)}, +dU(){var s=0,r=A.br(t.N),q,p=this,o +var $async$dU=A.bs(function(a,b){if(a===1)return A.bo(b,r) +for(;;)switch(s){case 0:o=B.E +s=3 +return A.c3(p.d1(),$async$dU) +case 3:q=o.b0(b) +s=1 +break +case 1:return A.bp(q,r)}}) +return A.bq($async$dU,r)}} +A.lR.prototype={ +$1(a){return t.u.a(a).a===this.a}, +$S:9} +A.ih.prototype={ +gq(a){var s,r,q,p=this,o=B.l.gdM(),n=o.$1(p.a),m=o.$1(p.b) +if(typeof n!=="number")return n.jS() +if(typeof m!=="number")return A.aM(m) +s=o.$1(p.c) +if(typeof s!=="number")return A.aM(s) +r=o.$1(p.d) +if(typeof r!=="number")return A.aM(r) +q=o.$1(p.e) +if(typeof q!=="number")return A.aM(q) +return(n^m^s^r^q)>>>0}, +u(a,b){var s,r=this +if(b==null)return!1 +t.aN.a(b) +if(r===b)return!0 +s=B.l.gar() +return s.$2(b.a,r.a)&&s.$2(b.b,r.b)&&s.$2(b.c,r.c)&&s.$2(b.d,r.d)&&s.$2(b.e,r.e)}} +A.fb.prototype={ +gq(a){var s=this +return(s.a.gq(0)^B.b.gq(s.b)^B.b.gq(s.d)^J.A(s.c))>>>0}, +u(a,b){var s=this +if(b==null)return!1 +t.am.a(b) +if(s===b)return!0 +return b.a.u(0,s.a)&&b.b===s.b&&b.d===s.d&&b.c==s.c}} +A.f3.prototype={ +gq(a){return J.A(this.a)^J.A(this.b)}, +u(a,b){if(b==null)return!1 +t.j1.a(b) +if(this===b)return!0 +return b.a==this.a&&b.b==this.b}, +j(a){return"Source: "+A.k(this.b)}} +A.f2.prototype={ +gq(a){var s=this +return(J.A(s.a)^B.l.Y(s.b.a)^B.l.Y(s.c)^B.l.Y(s.d.a)^J.A(s.e)^B.l.Y(s.f))>>>0}, +u(a,b){var s,r=this +if(b==null)return!1 +t.kZ.a(b) +if(r===b)return!0 +s=B.l.gar() +return J.M(b.a,r.a)&&b.b.u(0,r.b)&&s.$2(b.c,r.c)&&b.d.u(0,r.d)&&J.M(b.e,r.e)&&s.$2(b.f,r.f)}} +A.cm.prototype={ +gq(a){return B.l.Y(this.a)}, +u(a,b){if(b==null)return!1 +t.ck.a(b) +if(this===b)return!0 +return B.l.gar().$2(b.a,this.a)}} +A.f4.prototype={ +gq(a){return B.l.Y(this.a)}, +u(a,b){if(b==null)return!1 +t.f5.a(b) +if(this===b)return!0 +return B.l.gar().$2(b.a,this.a)}} +A.il.prototype={ +gq(a){return B.l.Y(this.a)}, +u(a,b){if(b==null)return!1 +t.aw.a(b) +if(this===b)return!0 +return B.l.gar().$2(b.a,this.a)}} +A.f5.prototype={ +gq(a){return B.b.gq(this.a)^B.b.gq(this.b)^J.A(this.c)}, +u(a,b){var s=this +if(b==null)return!1 +t.eo.a(b) +if(s===b)return!0 +return b.a===s.a&&b.b===s.b&&b.c==s.c}} +A.cS.prototype={ +gq(a){return B.b.gq(this.a)}, +u(a,b){if(b==null)return!1 +t.gK.a(b) +if(this===b)return!0 +return b.a===this.a}, +j(a){return this.a}} +A.cn.prototype={ +gq(a){var s=this +return(J.A(s.a)^J.A(s.b)^B.l.Y(s.c)^B.l.Y(s.d))>>>0}, +u(a,b){var s,r=this +if(b==null)return!1 +t.c9.a(b) +if(r===b)return!0 +s=B.l.gar() +return b.a==r.a&&b.b==r.b&&s.$2(b.c,r.c)&&s.$2(b.d,r.d)}} +A.f6.prototype={ +gq(a){return B.l.Y(this.a)}, +u(a,b){if(b==null)return!1 +t.ni.a(b) +if(this===b)return!0 +return B.l.gar().$2(b.a,this.a)}} +A.im.prototype={ +gq(a){return B.l.Y(this.a)}, +u(a,b){if(b==null)return!1 +t.eH.a(b) +if(this===b)return!0 +return B.l.gar().$2(b.a,this.a)}} +A.f7.prototype={ +gq(a){var s=this +return(J.A(s.a)^J.A(s.b)^B.cU.gq(s.c)^J.A(s.d)^J.A(s.e)^B.l.Y(s.f)^B.cU.gq(s.r))>>>0}, +u(a,b){var s=this +if(b==null)return!1 +t.on.a(b) +if(s===b)return!0 +return b.a==s.a&&b.b==s.b&&b.d==s.d&&b.e==s.e&&B.l.gar().$2(b.f,s.f)&&!0}} +A.cT.prototype={ +bn(){return"EpubNavigationPageTargetType."+this.b}} +A.co.prototype={ +gq(a){var s=this +return(J.A(s.a)^J.A(s.b)^J.A(s.c)^B.l.Y(s.d)^J.A(s.e)^B.l.Y(s.f))>>>0}, +u(a,b){var s,r=this +if(b==null)return!1 +t.iV.a(b) +if(r===b)return!0 +s=B.l.gar() +return b.a==r.a&&b.b==r.b&&b.c==r.c&&s.$2(b.d,r.d)&&J.M(b.e,r.e)&&s.$2(b.f,r.f)}, +j(a){var s=this.e +s=s==null?null:s.b +return"Id: "+A.k(this.a)+", Content.Source: "+A.k(s)}} +A.f8.prototype={ +gq(a){var s=this +return(B.b.gq(s.a)^J.A(s.b)^J.A(s.c)^J.A(s.d)^B.l.Y(s.e)^J.A(s.f))>>>0}, +u(a,b){var s=this +if(b==null)return!1 +t.p7.a(b) +if(s===b)return!0 +return b.a===s.a&&b.b==s.b&&b.c==s.c&&b.d==s.d&&B.l.gar().$2(b.e,s.e)&&J.M(b.f,s.f)}} +A.ii.prototype={ +gq(a){return B.l.Y(this.a)}, +u(a,b){if(b==null)return!1 +t.fc.a(b) +if(this===b)return!0 +return B.l.gar().$2(b.a,this.a)}} +A.eZ.prototype={ +gq(a){return B.b.gq(this.a)^J.A(this.b)^B.b.gq(this.c)}, +u(a,b){var s=this +if(b==null)return!1 +t.iA.a(b) +if(s===b)return!0 +return b.a===s.a&&b.b==s.b&&b.c===s.c}, +j(a){return"Type: "+this.a+", Href: "+this.c}} +A.ij.prototype={ +gq(a){return B.l.Y(this.a)}, +u(a,b){if(b==null)return!1 +t.pd.a(b) +if(this===b)return!0 +return B.l.gar().$2(b.a,this.a)}} +A.dj.prototype={ +gq(a){var s=this +return B.b.gq(s.a)^B.b.gq(s.b)^B.b.gq(s.c)^J.A(s.d)^J.A(s.e)^J.A(s.f)^J.A(s.r)^J.A(s.w)^J.A(s.x)}, +u(a,b){var s=this +if(b==null)return!1 +t.w.a(b) +if(s===b)return!0 +return b.a===s.a&&b.b===s.b&&b.c===s.c&&b.d==s.d&&b.e==s.e&&b.f==s.f&&b.r==s.r&&b.w==s.w&&b.x==s.x}, +j(a){var s=this +return"Id: "+s.a+", Href = "+s.b+", MediaType = "+s.c+", Properties = "+A.k(s.x)+", MediaOverlay = "+A.k(s.d)}} +A.ik.prototype={ +gq(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this,d=B.l.gdM(),c=d.$1(e.a),b=d.$1(e.b) +if(typeof c!=="number")return c.jS() +if(typeof b!=="number")return A.aM(b) +s=d.$1(e.c) +if(typeof s!=="number")return A.aM(s) +r=J.A(e.d) +q=d.$1(e.e) +if(typeof q!=="number")return A.aM(q) +p=d.$1(e.f) +if(typeof p!=="number")return A.aM(p) +o=d.$1(e.r) +if(typeof o!=="number")return A.aM(o) +n=d.$1(e.w) +if(typeof n!=="number")return A.aM(n) +m=d.$1(e.x) +if(typeof m!=="number")return A.aM(m) +l=d.$1(e.y) +if(typeof l!=="number")return A.aM(l) +k=d.$1(e.z) +if(typeof k!=="number")return A.aM(k) +j=d.$1(e.Q) +if(typeof j!=="number")return A.aM(j) +i=d.$1(e.as) +if(typeof i!=="number")return A.aM(i) +h=d.$1(e.at) +if(typeof h!=="number")return A.aM(h) +g=d.$1(e.ax) +if(typeof g!=="number")return A.aM(g) +f=d.$1(e.ay) +if(typeof f!=="number")return A.aM(f) +return(c^b^s^r^q^p^o^n^m^l^k^j^i^h^g^f)>>>0}, +u(a,b){var s,r=this +if(b==null)return!1 +t.mz.a(b) +if(r===b)return!0 +s=B.l.gar() +return s.$2(b.a,r.a)&&s.$2(b.b,r.b)&&s.$2(b.c,r.c)&&b.d==r.d&&s.$2(b.e,r.e)&&s.$2(b.f,r.f)&&s.$2(b.r,r.r)&&s.$2(b.w,r.w)&&s.$2(b.x,r.x)&&s.$2(b.y,r.y)&&s.$2(b.z,r.z)&&s.$2(b.Q,r.Q)&&s.$2(b.as,r.as)&&s.$2(b.at,r.at)&&s.$2(b.ax,r.ax)&&s.$2(b.ay,r.ay)}} +A.f_.prototype={ +gq(a){return B.b.gq(this.a)^J.A(this.b)^J.A(this.c)}, +u(a,b){var s=this +if(b==null)return!1 +t.ib.a(b) +if(s===b)return!0 +return b.a===s.a&&b.b==s.b&&b.c==s.c}} +A.dk.prototype={ +gq(a){return B.b.gq(this.a)^J.A(this.b)^J.A(this.c)}, +u(a,b){var s=this +if(b==null)return!1 +t.fj.a(b) +if(s===b)return!0 +return b.a===s.a&&b.b==s.b&&b.c==s.c}} +A.f0.prototype={ +gq(a){return B.b.gq(this.a)^J.A(this.b)}, +u(a,b){if(b==null)return!1 +t.fW.a(b) +if(this===b)return!0 +return b.a===this.a&&b.b==this.b}} +A.f1.prototype={ +gq(a){return J.A(this.a)^J.A(this.b)^B.b.gq(this.c)}, +u(a,b){var s=this +if(b==null)return!1 +t.mv.a(b) +if(s===b)return!0 +return b.a==s.a&&b.b==s.b&&b.c===s.c}} +A.cR.prototype={ +gq(a){var s=this +return(J.A(s.a)^J.A(s.b)^J.A(s.c)^J.A(s.d)^J.A(s.e)^J.A(s.f)^B.l.Y(s.r))>>>0}, +u(a,b){var s=this +if(b==null)return!1 +t.az.a(b) +if(s===b)return!0 +return b.a==s.a&&b.b==s.b&&b.c==s.c&&b.d==s.d&&b.e==s.e&&b.f==s.f&&B.l.gar().$2(b.r,s.r)}} +A.io.prototype={ +gq(a){var s=this +return(A.dx(s.a)^s.b.gq(0)^B.l.Y(s.c.a)^s.d.gq(0)^J.A(s.e))>>>0}, +u(a,b){var s=this +if(b==null)return!1 +t.hl.a(b) +if(s===b)return!0 +return b.a===s.a&&b.b.u(0,s.b)&&b.c.u(0,s.c)&&b.d.u(0,s.d)&&J.M(b.e,s.e)}} +A.iq.prototype={ +gq(a){var s=J.A(this.a),r=B.l.Y(this.b),q=this.c?519018:218159 +return(s^r^q)>>>0}, +u(a,b){var s=this +if(b==null)return!1 +t.oe.a(b) +if(s===b)return!0 +return b.a==s.a&&B.l.gar().$2(b.b,s.b)&&b.c===s.c}} +A.fa.prototype={ +gq(a){var s=B.b.gq(this.a) +return s^(this.b?519018:218159)}, +u(a,b){if(b==null)return!1 +t.ad.a(b) +if(this===b)return!0 +return b.a===this.a&&b.b===this.b}, +j(a){return"IdRef: "+this.a}} +A.ir.prototype={ +bn(){return"EpubVersion."+this.b}} +A.ig.prototype={ +iN(a){var s,r,q={} +q.a=a +q.a=A.ch(this.$ti.c).j(0)+"."+a +try{s=B.a.co(this.a,new A.lQ(q,this)) +return s}catch(r){return null}}} +A.lQ.prototype={ +$1(a){return J.ax(this.b.$ti.c.a(a)).toUpperCase()===this.a.a.toUpperCase()}, +$S(){return this.b.$ti.h("C(1)")}} +A.aN.prototype={ +j(a){var s=this.a,r=this.b +return s!=null?s+":"+r:r}, +gq(a){return 37*(37*(J.A(this.a)&2097151)+B.b.gq(this.b)&2097151)+B.b.gq(this.c)&1073741823}, +ah(a,b){var s,r,q +if(!(b instanceof A.aN))return 1 +s=this.a +if(s==null)s="" +r=b.a +q=B.b.ah(s,r==null?"":r) +if(q!==0)return q +q=B.b.ah(this.b,b.b) +if(q!==0)return q +return B.b.ah(this.c,b.c)}, +u(a,b){if(b==null)return!1 +return b instanceof A.aN&&this.a==b.a&&this.b===b.b&&this.c===b.c}, +$ia5:1} +A.kN.prototype={} +A.oQ.prototype={} +A.kG.prototype={} +A.al.prototype={ +gO(){var s,r=this,q=r.c +if(q===$){s=A.i([],t.cx) +r.c!==$&&A.dQ() +q=r.c=new A.jh(r,s)}return q}, +fP(a){var s,r,q +for(s=this.gO().a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c;s.p();){q=s.d;(q==null?r.a(q):q).cf(a)}}, +fb(a){var s=this.a +if(s!=null)B.a.V(s.gO().a,this) +return this}, +na(a,b){var s +if(b==null)this.gO().l(0,a) +else{s=this.gO() +s.bx(0,s.al(s,b),a)}}, +df(a,b,c){var s,r,q,p,o +A.ue(c,t.fh,"T","_clone") +c.a(a) +if(b)for(s=this.gO().a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c;s.p();){q=s.d +q=(q==null?r.a(q):q).cM(!0) +p=a.gO() +o=q.a +if(o!=null)B.a.V(o.gO().a,q) +q.a=p.b +p.bV(0,q)}return a}, +saZ(a){this.b=t.oP.a(a)}} +A.eT.prototype={ +j(a){return"#document"}, +cf(a){return this.fP(a)}, +cM(a){return this.df(A.rj(),!0,t.dA)}} +A.i9.prototype={ +j(a){var s,r=this,q=r.x,p=q==null +if(!p||r.y!=null){if(p)q="" +s=r.y +if(s==null)s="" +return"'}else return""}, +cf(a){var s=this.j(0) +a.a+=s}, +cM(a){return A.rk(this.w,this.x,this.y)}} +A.bY.prototype={ +j(a){var s=J.ax(this.w) +this.w=s +return'"'+s+'"'}, +cf(a){return A.zA(a,this)}, +cM(a){var s=J.ax(this.w) +this.w=s +return A.qf(s)}, +hL(a){var s=this.w;(!(s instanceof A.W)?this.w=new A.W(A.k(s)):s).a+=a}} +A.a6.prototype={ +gdR(){var s,r,q,p,o=this.a +if(o==null)return null +s=o.gO() +for(r=s.al(s,this)-1,o=s.a,q=o.length;r>=0;--r){if(!(r=0))return A.c(q,r) +o=q[r] +if(o instanceof A.a6)return o}return null}, +j(a){var s=A.rA(this.w) +return"<"+(s==null?"":s+" ")+A.k(this.x)+">"}, +cf(a){var s,r,q,p,o=this +a.a+="<" +s=A.vD(o.w) +r=o.x +q=A.k(r) +a.a=(a.a+=s)+q +s=o.b +if(s.a!==0)s.X(0,new A.lO(a)) +a.a+=">" +s=o.gO() +if(!s.gN(s)){if(r==="pre"||r==="textarea"||r==="listing"){s=s.a +if(0>=s.length)return A.c(s,0) +p=s[0] +if(p instanceof A.bY){s=J.ax(p.w) +p.w=s +s=B.b.T(s,"\n")}else s=!1 +if(s)a.a+="\n"}o.fP(a)}if(!A.zd(r))a.a+=""}, +cM(a){var s=this,r=A.pW(s.x,s.w) +r.saZ(A.j1(s.b,t.K,t.N)) +return s.df(r,a,t.g)}, +geV(){var s=this.b.n(0,"id") +return s==null?"":s}} +A.lO.prototype={ +$2(a,b){var s,r +A.cg(a) +A.q(b) +s=this.a +s.a+=" " +r=A.k(a) +s.a=(s.a+=r)+'="' +r=A.ur(b,!0) +s.a=(s.a+=r)+'"'}, +$S:17} +A.i6.prototype={ +j(a){return""}, +cf(a){a.a+=""}, +cM(a){return A.rh(this.w)}} +A.jh.prototype={ +l(a,b){t.fh.a(b) +b.fb(0) +b.a=this.b +this.bV(0,b)}, +a1(a,b){var s,r,q,p,o,n=this.ks(t.fY.a(b)) +for(s=A.x(n).h("V<1>"),r=new A.V(n,s),r=new A.L(r,r.gm(0),s.h("L")),q=this.b,s=s.h("G.E");r.p();){p=r.d +if(p==null)p=s.a(p) +o=p.a +if(o!=null)B.a.V(o.gO().a,p) +p.a=q}this.jL(0,n)}, +bx(a,b,c){c.fb(0) +c.a=this.b +this.fJ(0,b,c)}, +bb(a){var s,r,q +for(s=this.a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c;s.p();){q=s.d;(q==null?r.a(q):q).a=null}this.jI(this)}, +k(a,b,c){var s +t.fh.a(c) +s=this.a +if(!(b>=0&&b") +o=A.aV(new A.aU(o,n),n.h("h.E")) +o.$flags=1 +o=o +n=o.length +s=0 +for(;s") +o=A.aV(new A.aU(o,n),n.h("h.E")) +o.$flags=1 +o=o +n=o.length +s=0 +for(;s"),p=new A.V(r,q),p=new A.L(p,p.gm(0),q.h("L")),q=q.h("G.E"),s=s.a;p.p();){o=p.d +if(o==null)o=q.a(o) +n=o.x +if(0>=r.length)return A.c(r,0) +m=o===r[0] +if(m)n=l.w +switch(n){case"select":case"colgroup":case"head":case"html":break}if(!m&&o.w!=s)continue +switch(n){case"select":l.x=l.gbH() +return +case"td":l.x=l.gdj() +return +case"th":l.x=l.gdj() +return +case"tr":l.x=l.gdk() +return +case"tbody":l.x=l.gci() +return +case"thead":l.x=l.gci() +return +case"tfoot":l.x=l.gci() +return +case"caption":l.x=l.gej() +return +case"colgroup":l.x=l.gek() +return +case"table":l.x=l.gaA() +return +case"head":l.x=l.ga4() +return +case"body":l.x=l.ga4() +return +case"frameset":l.x=l.gel() +return +case"html":l.x=l.gfS() +return}}l.x=l.ga4()}, +cY(a,b){var s,r,q=this +q.d.M(a) +s=t.c +r=q.c +if(b==="RAWTEXT")r.x=s.a(r.gdT()) +else r.x=s.a(r.gcu()) +q.y=q.gaD() +q.x=q.ght()}} +A.a9.prototype={ +ac(){throw A.f(A.jY(null))}, +c9(a){var s=this.b +s.cq(a,B.a.gA(s.c)) +return null}, +il(a){this.a.a2(a.a,"unexpected-doctype") +return null}, +a3(a){this.b.bN(a.gaC(),a.a) +return null}, +aJ(a){this.b.bN(a.gaC(),a.a) +return null}, +J(a){throw A.f(A.jY(null))}, +bf(a){var s,r=this.a +if(!r.f&&a.b==="html")r.a2(a.a,"non-html-root") +s=this.b.c +if(0>=s.length)return A.c(s,0) +s[0].e=a.a +a.e.X(0,new A.nm(this)) +r.f=!1 +return null}, +P(a){throw A.f(A.jY(null))}, +ct(a){var s,r=a.b,q=this.b.c +if(0>=q.length)return A.c(q,-1) +s=q.pop() +while(s.x!=r){if(0>=q.length)return A.c(q,-1) +s=q.pop()}}} +A.nm.prototype={ +$2(a,b){var s +A.cg(a) +A.q(b) +s=this.a.b.c +if(0>=s.length)return A.c(s,0) +s[0].b.f6(a,new A.nl(b))}, +$S:17} +A.nl.prototype={ +$0(){return this.a}, +$S:8} +A.iM.prototype={ +aJ(a){return null}, +c9(a){var s=this.b,r=s.b +r===$&&A.o() +s.cq(a,r) +return null}, +il(a){var s,r,q=this,p=a.d,o=a.b,n=o==null?null:A.c9(o),m=a.c,l=a.e +o=!0 +if(p==="html")if(n==null)o=m!=null&&m!=="about:legacy-compat" +if(o)q.a.a2(a.a,"unknown-doctype") +if(n==null)n="" +s=A.rk(a.d,a.b,a.c) +s.e=a.a +o=q.b.b +o===$&&A.o() +o.gO().l(0,s) +o=!0 +if(l)if(a.d==="html"){r=B.b.gfE(n) +if(!B.a.aH(B.iW,r))if(!B.a.D(B.jl,n))if(!(B.a.aH(B.cW,r)&&m==null))o=m!=null&&m.toLowerCase()==="http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd"}if(o)q.a.r="quirks" +else{o=B.b.gfE(n) +if(!B.a.aH(B.jf,o))o=B.a.aH(B.cW,o)&&m!=null +else o=!0 +if(o)q.a.r="limited quirks"}o=q.a +o.x=o.gfT() +return null}, +br(){var s=this.a +s.r="quirks" +s.x=s.gfT()}, +a3(a){this.a.a2(a.a,"expected-doctype-but-got-chars") +this.br() +return a}, +J(a){this.a.G(a.a,"expected-doctype-but-got-start-tag",A.v(["name",a.b],t.N,t.X)) +this.br() +return a}, +P(a){this.a.G(a.a,"expected-doctype-but-got-end-tag",A.v(["name",a.b],t.N,t.X)) +this.br() +return a}, +ac(){var s=this.a +s.a2(s.ghc(),"expected-doctype-but-got-eof") +this.br() +return!0}} +A.hZ.prototype={ +dN(){var s=this.b,r=s.i0(A.aZ("html",A.ac(t.K,t.N),null,!1)) +B.a.l(s.c,r) +s=s.b +s===$&&A.o() +s.gO().l(0,r) +s=this.a +s.x=s.gfS()}, +ac(){this.dN() +return!0}, +c9(a){var s=this.b,r=s.b +r===$&&A.o() +s.cq(a,r) +return null}, +aJ(a){return null}, +a3(a){this.dN() +return a}, +J(a){if(a.b==="html")this.a.f=!0 +this.dN() +return a}, +P(a){var s=a.b +switch(s){case"head":case"body":case"html":case"br":this.dN() +return a +default:this.a.G(a.a,"unexpected-end-tag-before-html",A.v(["name",s],t.N,t.X)) +return null}}} +A.hY.prototype={ +J(a){switch(a.b){case"html":return this.a.ga4().J(a) +case"head":this.cF(a) +return null +default:this.cF(A.aZ("head",A.ac(t.K,t.N),null,!1)) +return a}}, +P(a){var s=a.b +switch(s){case"head":case"body":case"html":case"br":this.cF(A.aZ("head",A.ac(t.K,t.N),null,!1)) +return a +default:this.a.G(a.a,"end-tag-after-implied-root",A.v(["name",s],t.N,t.X)) +return null}}, +ac(){this.cF(A.aZ("head",A.ac(t.K,t.N),null,!1)) +return!0}, +aJ(a){return null}, +a3(a){this.cF(A.aZ("head",A.ac(t.K,t.N),null,!1)) +return a}, +cF(a){var s=this.b +s.M(a) +s.e=B.a.gA(s.c) +s=this.a +s.x=s.gc_()}} +A.iF.prototype={ +J(a){var s,r,q,p,o,n=this,m=null +switch(a.b){case"html":return n.a.ga4().J(a) +case"title":n.a.cY(a,"RCDATA") +return m +case"noscript":case"noframes":case"style":n.a.cY(a,"RAWTEXT") +return m +case"script":n.b.M(a) +s=n.a +r=s.c +r.x=t.c.a(r.gbC()) +s.y=s.gaD() +s.x=s.ght() +return m +case"base":case"basefont":case"bgsound":case"command":case"link":s=n.b +s.M(a) +s=s.c +if(0>=s.length)return A.c(s,-1) +s.pop() +a.r=!0 +return m +case"meta":s=n.b +s.M(a) +s=s.c +if(0>=s.length)return A.c(s,-1) +s.pop() +a.r=!0 +q=a.e +s=n.a.c.a +if(!s.b){p=q.n(0,"charset") +o=q.n(0,"content") +if(p!=null)s.hR(p) +else if(o!=null)s.hR(new A.lK(new A.lP(o)).nD())}return m +case"head":n.a.a2(a.a,"two-heads-are-not-better-than-one") +return m +default:n.cO(new A.H("head",!1)) +return a}}, +P(a){var s=a.b +switch(s){case"head":this.cO(a) +return null +case"br":case"html":case"body":this.cO(new A.H("head",!1)) +return a +default:this.a.G(a.a,"unexpected-end-tag",A.v(["name",s],t.N,t.X)) +return null}}, +ac(){this.cO(new A.H("head",!1)) +return!0}, +a3(a){this.cO(new A.H("head",!1)) +return a}, +cO(a){var s,r=this.a,q=r.d,p=q.c +if(0>=p.length)return A.c(p,-1) +p.pop() +s=r.ay +r.x=s===$?r.ay=new A.hM(r,q):s}} +A.hM.prototype={ +J(a){var s=this,r=null,q=a.b +switch(q){case"html":return s.a.ga4().J(a) +case"body":q=s.a +q.z=!1 +s.b.M(a) +q.x=q.ga4() +return r +case"frameset":s.b.M(a) +q=s.a +q.x=q.gel() +return r +case"base":case"basefont":case"bgsound":case"link":case"meta":case"noframes":case"script":case"style":case"title":s.ju(a) +return r +case"head":s.a.G(a.a,"unexpected-start-tag",A.v(["name",q],t.N,t.X)) +return r +default:s.br() +return a}}, +P(a){var s=a.b +switch(s){case"body":case"html":case"br":this.br() +return a +default:this.a.G(a.a,"unexpected-end-tag",A.v(["name",s],t.N,t.X)) +return null}}, +ac(){this.br() +return!0}, +a3(a){this.br() +return a}, +ju(a){var s,r,q,p=this.a +p.G(a.a,"unexpected-start-tag-out-of-my-head",A.v(["name",a.b],t.N,t.X)) +s=this.b +r=s.c +B.a.l(r,t.g.a(s.e)) +p.gc_().J(a) +for(p=A.x(r).h("V<1>"),s=new A.V(r,p),s=new A.L(s,s.gm(0),p.h("L")),p=p.h("G.E");s.p();){q=s.d +if(q==null)q=p.a(q) +if(q.x==="head"){B.a.V(r,q) +break}}}, +br(){this.b.M(A.aZ("body",A.ac(t.K,t.N),null,!1)) +var s=this.a +s.x=s.ga4() +s.z=!0}} +A.iz.prototype={ +J(a){var s,r,q,p,o,n=this,m=null,l="p",k="button",j="unexpected-start-tag",i="unexpected-start-tag-implies-end-tag",h="RAWTEXT",g=a.b +switch(g){case"html":return n.bf(a) +case"base":case"basefont":case"bgsound":case"command":case"link":case"meta":case"noframes":case"script":case"style":case"title":return n.a.gc_().J(a) +case"body":n.jr(a) +return m +case"frameset":n.jt(a) +return m +case"address":case"article":case"aside":case"blockquote":case"center":case"details":case"dir":case"div":case"dl":case"fieldset":case"figcaption":case"figure":case"footer":case"header":case"hgroup":case"menu":case"nav":case"ol":case"p":case"section":case"summary":case"ul":n.fw(a) +return m +case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":g=n.b +if(g.a0(l,k))n.bt(new A.H(l,!1)) +s=g.c +if(B.hS.D(0,B.a.gA(s).x)){n.a.G(a.a,j,A.v(["name",a.b],t.N,t.X)) +if(0>=s.length)return A.c(s,-1) +s.pop()}g.M(a) +return m +case"pre":case"listing":g=n.b +if(g.a0(l,k))n.bt(new A.H(l,!1)) +g.M(a) +n.a.z=!1 +n.c=!0 +return m +case"form":g=n.b +if(g.f!=null)n.a.G(a.a,j,A.v(["name","form"],t.N,t.X)) +else{if(g.a0(l,k))n.bt(new A.H(l,!1)) +g.M(a) +g.f=B.a.gA(g.c)}return m +case"li":case"dd":case"dt":n.jx(a) +return m +case"plaintext":g=n.b +if(g.a0(l,k))n.bt(new A.H(l,!1)) +g.M(a) +g=n.a.c +g.x=t.c.a(g.gnG()) +return m +case"a":g=n.b +r=g.i4("a") +if(r!=null){n.a.G(a.a,i,A.v(["startName","a","endName","a"],t.N,t.X)) +n.i7(new A.H("a",!1)) +B.a.V(g.c,r) +B.a.V(g.d.a,r)}g.aE() +n.ev(a) +return m +case"b":case"big":case"code":case"em":case"font":case"i":case"s":case"small":case"strike":case"strong":case"tt":case"u":n.b.aE() +n.ev(a) +return m +case"nobr":g=n.b +g.aE() +if(g.b6("nobr")){n.a.G(a.a,i,A.v(["startName","nobr","endName","nobr"],t.N,t.X)) +n.P(new A.H("nobr",!1)) +g.aE()}n.ev(a) +return m +case"button":return n.js(a) +case"applet":case"marquee":case"object":g=n.b +g.aE() +g.M(a) +g.d.l(0,m) +n.a.z=!1 +return m +case"xmp":g=n.b +if(g.a0(l,k))n.bt(new A.H(l,!1)) +g.aE() +g=n.a +g.z=!1 +g.cY(a,h) +return m +case"table":g=n.a +if(g.r!=="quirks")if(n.b.a0(l,k))n.P(new A.H(l,!1)) +n.b.M(a) +g.z=!1 +g.x=g.gaA() +return m +case"area":case"br":case"embed":case"img":case"keygen":case"wbr":n.fD(a) +return m +case"param":case"source":case"track":g=n.b +g.M(a) +g=g.c +if(0>=g.length)return A.c(g,-1) +g.pop() +a.r=!0 +return m +case"input":g=n.a +q=g.z +n.fD(a) +s=a.e.n(0,"type") +if((s==null?m:A.c9(s))==="hidden")g.z=q +return m +case"hr":g=n.b +if(g.a0(l,k))n.bt(new A.H(l,!1)) +g.M(a) +g=g.c +if(0>=g.length)return A.c(g,-1) +g.pop() +a.r=!0 +n.a.z=!1 +return m +case"image":n.a.G(a.a,"unexpected-start-tag-treated-as",A.v(["originalName","image","newName","img"],t.N,t.X)) +n.J(A.aZ("img",a.e,m,a.c)) +return m +case"isindex":n.jw(a) +return m +case"textarea":n.b.M(a) +g=n.a +s=g.c +s.x=t.c.a(s.gcu()) +n.c=!0 +g.z=!1 +return m +case"iframe":g=n.a +g.z=!1 +g.cY(a,h) +return m +case"noembed":case"noscript":n.a.cY(a,h) +return m +case"select":g=n.b +g.aE() +g.M(a) +g=n.a +g.z=!1 +if(g.gaA()===g.gaD()||g.gej()===g.gaD()||g.gek()===g.gaD()||g.gci()===g.gaD()||g.gdk()===g.gaD()||g.gdj()===g.gaD()){p=g.go +g.x=p===$?g.go=new A.iH(g,g.d):p}else g.x=g.gbH() +return m +case"rp":case"rt":g=n.b +if(g.b6("ruby")){g.ca() +o=B.a.gA(g.c) +if(o.x!=="ruby")n.a.a2(o.e,"undefined-error")}g.M(a) +return m +case"option":case"optgroup":g=n.b +if(B.a.gA(g.c).x==="option")n.a.gaD().P(new A.H("option",!1)) +g.aE() +n.a.d.M(a) +return m +case"math":g=n.b +g.aE() +s=n.a +s.hG(a) +s.ew(a) +a.w="http://www.w3.org/1998/Math/MathML" +g.M(a) +if(a.c){g=g.c +if(0>=g.length)return A.c(g,-1) +g.pop() +a.r=!0}return m +case"svg":g=n.b +g.aE() +s=n.a +s.hH(a) +s.ew(a) +a.w="http://www.w3.org/2000/svg" +g.M(a) +if(a.c){g=g.c +if(0>=g.length)return A.c(g,-1) +g.pop() +a.r=!0}return m +case"caption":case"col":case"colgroup":case"frame":case"head":case"tbody":case"td":case"tfoot":case"th":case"thead":case"tr":n.a.G(a.a,"unexpected-start-tag-ignored",A.v(["name",g],t.N,t.X)) +return m +default:g=n.b +g.aE() +g.M(a) +return m}}, +P(a){var s,r,q,p,o,n=this,m=null,l="end-tag-too-early",k="unexpected-end-tag",j=a.b +switch(j){case"body":n.i6(a) +return m +case"html":return n.eO(a) +case"address":case"article":case"aside":case"blockquote":case"button":case"center":case"details":case"dir":case"div":case"dl":case"fieldset":case"figcaption":case"figure":case"footer":case"header":case"hgroup":case"listing":case"menu":case"nav":case"ol":case"pre":case"section":case"summary":case"ul":if(j==="pre")n.c=!1 +s=n.b +r=s.b6(j) +if(r)s.ca() +j=B.a.gA(s.c) +s=a.b +if(j.x!=s)n.a.G(a.a,l,A.v(["name",s],t.N,t.X)) +if(r)n.ct(a) +return m +case"form":j=n.b +q=j.f +j.f=null +if(q==null||!j.b6(q))n.a.G(a.a,k,A.v(["name","form"],t.N,t.X)) +else{j.ca() +j=j.c +if(B.a.gA(j)!==q)n.a.G(a.a,"end-tag-too-early-ignored",A.v(["name","form"],t.N,t.X)) +B.a.V(j,q)}return m +case"p":n.bt(a) +return m +case"dd":case"dt":case"li":p=j==="li"?"list":m +s=n.b +j=s.a0(j,p) +o=a.b +if(!j)n.a.G(a.a,k,A.v(["name",o],t.N,t.X)) +else{s.bS(o) +j=B.a.gA(s.c) +s=a.b +if(j.x!=s)n.a.G(a.a,l,A.v(["name",s],t.N,t.X)) +n.ct(a)}return m +case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":n.mV(a) +return m +case"a":case"b":case"big":case"code":case"em":case"font":case"i":case"nobr":case"s":case"small":case"strike":case"strong":case"tt":case"u":n.i7(a) +return m +case"applet":case"marquee":case"object":s=n.b +if(s.b6(j))s.ca() +j=B.a.gA(s.c) +o=a.b +if(j.x!=o)n.a.G(a.a,l,A.v(["name",o],t.N,t.X)) +if(s.b6(a.b)){n.ct(a) +s.eB()}return m +case"br":j=t.N +n.a.G(a.a,"unexpected-end-tag-treated-as",A.v(["originalName","br","newName","br element"],j,t.X)) +s=n.b +s.aE() +s.M(A.aZ("br",A.ac(t.K,j),m,!1)) +s=s.c +if(0>=s.length)return A.c(s,-1) +s.pop() +return m +default:n.mX(a) +return m}}, +ng(a,b){var s,r +if(a.x!=b.x||a.w!=b.w)return!1 +else{s=a.b +if(s.a!==b.b.a)return!1 +else for(s=new A.cv(s,s.r,s.e,A.w(s).h("cv<1>"));s.p();){r=s.d +if(a.b.n(0,r)!=b.b.n(0,r))return!1}}return!0}, +ev(a){var s,r,q,p,o,n,m=this.b +m.M(a) +s=B.a.gA(m.c) +r=A.i([],t.hg) +for(m=m.d,q=A.w(m).h("V"),p=new A.V(m,q),p=new A.L(p,p.gm(0),q.h("L")),o=t.g,q=q.h("G.E");p.p();){n=p.d +if(n==null)n=q.a(n) +if(n==null)break +else{o.a(n) +if(this.ng(n,s))B.a.l(r,n)}}if(r.length===3)B.a.V(m.a,B.a.gA(r)) +m.l(0,s)}, +ac(){var s,r,q,p +A:for(s=this.b.c,r=A.x(s).h("V<1>"),s=new A.V(s,r),s=new A.L(s,s.gm(0),r.h("L")),r=r.h("G.E");s.p();){q=s.d +if(q==null)q=r.a(q) +switch(q.x){case"dd":case"dt":case"li":case"p":case"tbody":case"td":case"tfoot":case"th":case"thead":case"tr":case"body":case"html":continue A}s=this.a +p=q.e +t.n.a(B.bi) +if(p==null){r=s.c.a +q=r.w +if(q==null)p=null +else{r=r.y +new A.bh(q,r).bg(q,r) +p=new A.av(q,r,r) +p.aG(q,r,r)}}B.a.l(s.e,new A.b9("expected-closing-tag-but-got-eof",p,B.bi)) +break A}return!1}, +a3(a){var s +if(a.gaC()==="\x00")return null +s=this.b +s.aE() +s.bN(a.gaC(),a.a) +s=this.a +if(s.z&&!A.qL(a.gaC()))s.z=!1 +return null}, +aJ(a){var s,r,q,p=this +if(p.c){s=a.gaC() +r=p.c=!1 +if(B.b.T(s,"\n")){q=B.a.gA(p.b.c) +if(B.a.D(B.jh,q.x)){r=q.gO() +r=r.gN(r)}if(r)s=B.b.ab(s,1)}if(s.length!==0){r=p.b +r.aE() +r.bN(s,a.a)}}else{r=p.b +r.aE() +r.bN(a.gaC(),a.a)}return null}, +jr(a){var s,r,q=this.a +q.G(a.a,"unexpected-start-tag",A.v(["name","body"],t.N,t.X)) +s=this.b.c +r=s.length +if(r!==1){if(1>=r)return A.c(s,1) +s=s[1].x!=="body"}else s=!0 +if(!s){q.z=!1 +a.e.X(0,new A.mB(this))}}, +jt(a){var s,r,q,p,o=this.a +o.G(a.a,"unexpected-start-tag",A.v(["name","frameset"],t.N,t.X)) +s=this.b +r=s.c +q=r.length +if(q!==1){if(1>=q)return A.c(r,1) +p=r[1].x!=="body"}else p=!0 +if(!p)if(o.z){if(1>=q)return A.c(r,1) +q=r[1] +p=q.a +if(p!=null){p=p.gO() +if(1>=r.length)return A.c(r,1) +B.a.V(p.a,q)}while(B.a.gA(r).x!=="html"){if(0>=r.length)return A.c(r,-1) +r.pop()}s.M(a) +o.x=o.gel()}}, +fw(a){var s=this.b +if(s.a0("p","button"))this.bt(new A.H("p",!1)) +s.M(a)}, +jx(a){var s,r,q,p,o,n,m,l,k=this.a +k.z=!1 +s=a.b +s.toString +s=B.qF.n(0,s) +s.toString +for(r=this.b,q=r.c,p=A.x(q).h("V<1>"),q=new A.V(q,p),q=new A.L(q,q.gm(0),p.h("L")),p=p.h("G.E");q.p();){o=q.d +if(o==null)o=p.a(o) +n=o.x +if(B.a.D(s,n)){m=k.x +if(m===$)m=k.x=k.gbo() +m.P(new A.H(n,!1)) +break}l=o.w +if(B.cC.D(0,new A.l(l==null?"http://www.w3.org/1999/xhtml":l,n))&&!B.a.D(B.j3,n))break}if(r.a0("p","button"))k.gaD().P(new A.H("p",!1)) +r.M(a)}, +js(a){var s=this.b,r=this.a +if(s.b6("button")){r.G(a.a,"unexpected-start-tag-implies-end-tag",A.v(["startName","button","endName","button"],t.N,t.X)) +this.P(new A.H("button",!1)) +return a}else{s.aE() +s.M(a) +r.z=!1}return null}, +fD(a){var s=this.b +s.aE() +s.M(a) +s=s.c +if(0>=s.length)return A.c(s,-1) +s.pop() +a.r=!0 +this.a.z=!1}, +jw(a){var s,r,q,p,o,n=this,m=null,l="action",k=t.N +n.a.G(a.a,"deprecated-tag",A.v(["name","isindex"],k,t.X)) +if(n.b.f!=null)return +s=t.K +r=A.ac(s,k) +q=a.e.n(0,l) +if(q!=null)r.k(0,l,q) +n.J(A.aZ("form",r,m,!1)) +n.J(A.aZ("hr",A.ac(s,k),m,!1)) +n.J(A.aZ("label",A.ac(s,k),m,!1)) +p=a.e.n(0,"prompt") +if(p==null)p="This is a searchable index. Enter search keywords: " +n.a3(new A.B(m,p)) +o=A.j1(a.e,s,k) +o.V(0,l) +o.V(0,"prompt") +o.k(0,"name","isindex") +n.J(A.aZ("input",o,m,a.c)) +n.P(new A.H("label",!1)) +n.J(A.aZ("hr",A.ac(s,k),m,!1)) +n.P(new A.H("form",!1))}, +bt(a){var s=this,r="unexpected-end-tag",q=s.b +if(!q.a0("p","button")){q=t.N +s.fw(A.aZ("p",A.ac(t.K,q),null,!1)) +s.a.G(a.a,r,A.v(["name","p"],q,t.X)) +s.bt(new A.H("p",!1))}else{q.bS("p") +if(B.a.gA(q.c).x!=="p")s.a.G(a.a,r,A.v(["name","p"],t.N,t.X)) +s.ct(a)}}, +i6(a){var s,r,q,p,o,n,m=this,l=m.b +if(!l.b6("body")){m.a.a2(a.a,"undefined-error") +return}else{l=l.c +if(B.a.gA(l).x==="body")B.a.gA(l) +else A:for(l=A.qX(l,2,null,t.g),s=l.length,r=0;r=q.length)return A.c(q,-1) +q.pop() +s.bS(null)}break}q=s.c +o=B.a.gA(q) +n=a.b +if(o.x!=n)this.a.G(a.a,"end-tag-too-early",A.v(["name",n],t.N,t.X)) +for(r=0;r<6;++r)if(s.b6(B.cY[r])){if(0>=q.length)return A.c(q,-1) +m=q.pop() +while(!B.hS.D(0,m.x)){if(0>=q.length)return A.c(q,-1) +m=q.pop()}break}}, +i7(b4){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3=null +for(s=this.b,r=s.d,q=r.a,p=A.w(r).h("b7.E"),o=s.c,n=t.K,m=t.N,l=t.g,k=this.a,j=t.X,i=t.n,h=k.c.a,g=0;g<8;){++g +f=s.i4(b4.b) +if(f!=null)e=B.a.D(o,f)&&!s.b6(f.x) +else e=!0 +if(e){d=b4.a +s=i.a(A.v(["name",b4.b],m,j)) +if(d==null){r=h.w +if(r==null)d=b3 +else{q=h.y +new A.bh(r,q).bg(r,q) +d=new A.av(r,q,q) +d.aG(r,q,q)}}B.a.l(k.e,new A.b9("adoption-agency-1.1",d,s)) +return}else if(!B.a.D(o,f)){d=b4.a +s=i.a(A.v(["name",b4.b],m,j)) +if(d==null){r=h.w +if(r==null)d=b3 +else{p=h.y +new A.bh(r,p).bg(r,p) +d=new A.av(r,p,p) +d.aG(r,p,p)}}B.a.l(k.e,new A.b9("adoption-agency-1.2",d,s)) +B.a.V(q,f) +return}if(f!==B.a.gA(o)){d=b4.a +e=i.a(A.v(["name",b4.b],m,j)) +if(d==null){c=h.w +if(c==null)d=b3 +else{b=h.y +new A.bh(c,b).bg(c,b) +d=new A.av(c,b,b) +d.aG(c,b,b)}}B.a.l(k.e,new A.b9("adoption-agency-1.3",d,e))}a=B.a.al(o,f) +e=A.qX(o,a,b3,l) +c=e.length +a1=0 +for(;;){if(!(a1=o.length)return A.c(o,-1) +a2=o.pop() +while(a2!==f){if(0>=o.length)return A.c(o,-1) +a2=o.pop()}B.a.V(q,a2) +return}e=a-1 +if(!(e>=0&&e=0&&a6"),p=new A.V(r,q),p=new A.L(p,p.gm(0),q.h("L")),q=q.h("G.E");p.p();){o=p.d +if(o==null)o=q.a(o) +n=o.x +m=a.b +if(n==m){l=B.a.gA(r).x +if(l!=m&&B.a.D(B.bH,l)){if(0>=r.length)return A.c(r,-1) +r.pop() +s.bS(m)}s=B.a.gA(r) +q=a.b +if(s.x!=q){s=this.a +k=a.a +q=t.n.a(A.v(["name",q],t.N,t.X)) +if(k==null){p=s.c.a +n=p.w +if(n==null)k=null +else{p=p.y +new A.bh(n,p).bg(n,p) +k=new A.av(n,p,p) +k.aG(n,p,p)}}B.a.l(s.e,new A.b9(i,k,q))}for(;;){if(0>=r.length)return A.c(r,-1) +if(!(r.pop()!==o))break}break}else{j=o.w +if(B.cC.D(0,new A.l(j==null?"http://www.w3.org/1999/xhtml":j,n))){s=this.a +k=a.a +r=t.n.a(A.v(["name",a.b],t.N,t.X)) +if(k==null){q=s.c.a +p=q.w +if(p==null)k=null +else{q=q.y +new A.bh(p,q).bg(p,q) +k=new A.av(p,q,q) +k.aG(p,q,q)}}B.a.l(s.e,new A.b9(i,k,r)) +break}}}}} +A.mB.prototype={ +$2(a,b){var s +A.cg(a) +A.q(b) +s=this.a.b.c +if(1>=s.length)return A.c(s,1) +s[1].b.f6(a,new A.mA(b))}, +$S:17} +A.mA.prototype={ +$0(){return this.a}, +$S:8} +A.jS.prototype={ +J(a){throw A.f(A.ce("Cannot process start stag in text phase"))}, +P(a){var s,r,q=this +if(a.b==="script"){s=q.b.c +if(0>=s.length)return A.c(s,-1) +s.pop() +s=q.a +r=s.y +r.toString +s.x=r +return null}s=q.b.c +if(0>=s.length)return A.c(s,-1) +s.pop() +s=q.a +r=s.y +r.toString +s.x=r +return null}, +a3(a){this.b.bN(a.gaC(),a.a) +return null}, +ac(){var s=this.b.c,r=B.a.gA(s),q=this.a +q.G(r.e,"expected-named-closing-tag-but-got-eof",A.v(["name",r.x],t.N,t.X)) +if(0>=s.length)return A.c(s,-1) +s.pop() +s=q.y +s.toString +q.x=s +return!0}} +A.iK.prototype={ +J(a){var s,r,q=this,p=null +switch(a.b){case"html":return q.bf(a) +case"caption":q.eD() +s=q.b +s.d.l(0,p) +s.M(a) +s=q.a +s.x=s.gej() +return p +case"colgroup":q.fz(a) +return p +case"col":q.fz(A.aZ("colgroup",A.ac(t.K,t.N),p,!1)) +return a +case"tbody":case"tfoot":case"thead":q.fB(a) +return p +case"td":case"th":case"tr":q.fB(A.aZ("tbody",A.ac(t.K,t.N),p,!1)) +return a +case"table":return q.jy(a) +case"style":case"script":return q.a.gc_().J(a) +case"input":s=a.e.n(0,"type") +if((s==null?p:A.c9(s))==="hidden"){q.a.a2(a.a,"unexpected-hidden-input-in-table") +s=q.b +s.M(a) +s=s.c +if(0>=s.length)return A.c(s,-1) +s.pop()}else q.fA(a) +return p +case"form":q.a.a2(a.a,"unexpected-form-in-table") +s=q.b +if(s.f==null){s.M(a) +r=s.c +s.f=B.a.gA(r) +if(0>=r.length)return A.c(r,-1) +r.pop()}return p +default:q.fA(a) +return p}}, +P(a){var s,r=this,q=a.b +switch(q){case"table":r.bM(a) +return null +case"body":case"caption":case"col":case"colgroup":case"html":case"tbody":case"td":case"tfoot":case"th":case"thead":case"tr":r.a.G(a.a,"unexpected-end-tag",A.v(["name",q],t.N,t.X)) +return null +default:s=r.a +s.G(a.a,"unexpected-end-tag-implies-table-voodoo",A.v(["name",q],t.N,t.X)) +q=r.b +q.r=!0 +s.ga4().P(a) +q.r=!1 +return null}}, +eD(){var s=this.b.c +for(;;){if(!(B.a.gA(s).x!=="table"&&B.a.gA(s).x!=="html"))break +if(0>=s.length)return A.c(s,-1) +s.pop()}}, +ac(){var s=B.a.gA(this.b.c) +if(s.x!=="html")this.a.a2(s.e,"eof-in-table") +return!1}, +aJ(a){var s=this.a,r=s.gaD(),q=s.gem() +s.x=q +q.c=r +s.gaD().aJ(a) +return null}, +a3(a){var s=this.a,r=s.gaD(),q=s.gem() +s.x=q +q.c=r +s.gaD().a3(a) +return null}, +fz(a){var s +this.eD() +this.b.M(a) +s=this.a +s.x=s.gek()}, +fB(a){var s +this.eD() +this.b.M(a) +s=this.a +s.x=s.gci()}, +jy(a){var s=this.a +s.G(a.a,"unexpected-start-tag-implies-end-tag",A.v(["startName","table","endName","table"],t.N,t.X)) +s.gaD().P(new A.H("table",!1)) +return a}, +fA(a){var s,r=this.a +r.G(a.a,u.M,A.v(["name",a.b],t.N,t.X)) +s=this.b +s.r=!0 +r.ga4().J(a) +s.r=!1}, +bM(a){var s,r=this,q=r.b +if(q.a0("table","table")){q.ca() +q=q.c +s=B.a.gA(q).x +if(s!=="table")r.a.G(a.a,"end-tag-too-early-named",A.v(["gotName","table","expectedName",s],t.N,t.X)) +while(B.a.gA(q).x!=="table"){if(0>=q.length)return A.c(q,-1) +q.pop()}if(0>=q.length)return A.c(q,-1) +q.pop() +r.a.iw()}else r.a.a2(a.a,"undefined-error")}} +A.fg.prototype={ +cP(){var s,r,q=this,p=q.d +if(p.length===0)return +s=A.x(p) +r=new A.R(p,s.h("e(1)").a(new A.mC()),s.h("R<1,e>")).aq(0,"") +if(!A.qL(r)){p=q.a.gaA() +s=p.b +s.r=!0 +p.a.ga4().a3(new A.B(null,r)) +s.r=!1}else if(r.length!==0)q.b.bN(r,null) +q.d=A.i([],t.ks)}, +c9(a){var s +this.cP() +s=this.c +s.toString +this.a.x=s +return a}, +ac(){this.cP() +var s=this.c +s.toString +this.a.x=s +return!0}, +a3(a){if(a.gaC()==="\x00")return null +B.a.l(this.d,a) +return null}, +aJ(a){B.a.l(this.d,a) +return null}, +J(a){var s +this.cP() +s=this.c +s.toString +this.a.x=s +return a}, +P(a){var s +this.cP() +s=this.c +s.toString +this.a.x=s +return a}} +A.mC.prototype={ +$1(a){return t.v.a(a).gaC()}, +$S:93} +A.iA.prototype={ +J(a){switch(a.b){case"html":return this.bf(a) +case"caption":case"col":case"colgroup":case"tbody":case"td":case"tfoot":case"th":case"thead":case"tr":return this.jz(a) +default:return this.a.ga4().J(a)}}, +P(a){var s=this,r=a.b +switch(r){case"caption":s.mU(a) +return null +case"table":return s.bM(a) +case"body":case"col":case"colgroup":case"html":case"tbody":case"td":case"tfoot":case"th":case"thead":case"tr":s.a.G(a.a,"unexpected-end-tag",A.v(["name",r],t.N,t.X)) +return null +default:return s.a.ga4().P(a)}}, +ac(){this.a.ga4().ac() +return!1}, +a3(a){return this.a.ga4().a3(a)}, +jz(a){var s,r=this.a +r.a2(a.a,"undefined-error") +s=this.b.a0("caption","table") +r.gaD().P(new A.H("caption",!1)) +if(s)return a +return null}, +mU(a){var s,r=this,q=r.b +if(q.a0("caption","table")){q.ca() +s=q.c +if(B.a.gA(s).x!=="caption")r.a.G(a.a,"expected-one-end-tag-but-got-another",A.v(["gotName","caption","expectedName",B.a.gA(s).x],t.N,t.X)) +while(B.a.gA(s).x!=="caption"){if(0>=s.length)return A.c(s,-1) +s.pop()}if(0>=s.length)return A.c(s,-1) +s.pop() +q.eB() +q=r.a +q.x=q.gaA()}else r.a.a2(a.a,"undefined-error")}, +bM(a){var s,r=this.a +r.a2(a.a,"undefined-error") +s=this.b.a0("caption","table") +r.gaD().P(new A.H("caption",!1)) +if(s)return a +return null}} +A.iC.prototype={ +J(a){var s,r=this +switch(a.b){case"html":return r.bf(a) +case"col":s=r.b +s.M(a) +s=s.c +if(0>=s.length)return A.c(s,-1) +s.pop() +return null +default:s=B.a.gA(r.b.c) +r.cN(new A.H("colgroup",!1)) +return s.x==="html"?null:a}}, +P(a){var s,r=this +switch(a.b){case"colgroup":r.cN(a) +return null +case"col":r.a.G(a.a,"no-end-tag",A.v(["name","col"],t.N,t.X)) +return null +default:s=B.a.gA(r.b.c) +r.cN(new A.H("colgroup",!1)) +return s.x==="html"?null:a}}, +ac(){if(B.a.gA(this.b.c).x==="html")return!1 +else{this.cN(new A.H("colgroup",!1)) +return!0}}, +a3(a){var s=B.a.gA(this.b.c) +this.cN(new A.H("colgroup",!1)) +return s.x==="html"?null:a}, +cN(a){var s=this.b.c,r=this.a +if(B.a.gA(s).x==="html")r.a2(a.a,"undefined-error") +else{if(0>=s.length)return A.c(s,-1) +s.pop() +r.x=r.gaA()}}} +A.iJ.prototype={ +J(a){var s,r=this,q=a.b +switch(q){case"html":return r.bf(a) +case"tr":r.fC(a) +return null +case"td":case"th":s=t.N +r.a.G(a.a,"unexpected-cell-in-table-body",A.v(["name",q],s,t.X)) +r.fC(A.aZ("tr",A.ac(t.K,s),null,!1)) +return a +case"caption":case"col":case"colgroup":case"tbody":case"tfoot":case"thead":return r.bM(a) +default:return r.a.gaA().J(a)}}, +P(a){var s=this,r=a.b +switch(r){case"tbody":case"tfoot":case"thead":s.dG(a) +return null +case"table":return s.bM(a) +case"body":case"caption":case"col":case"colgroup":case"html":case"td":case"th":case"tr":s.a.G(a.a,"unexpected-end-tag-in-table-body",A.v(["name",r],t.N,t.X)) +return null +default:return s.a.gaA().P(a)}}, +eC(){for(var s=this.b.c;!B.a.D(B.jk,B.a.gA(s).x);){if(0>=s.length)return A.c(s,-1) +s.pop()}B.a.gA(s)}, +ac(){this.a.gaA().ac() +return!1}, +aJ(a){return this.a.gaA().aJ(a)}, +a3(a){return this.a.gaA().a3(a)}, +fC(a){var s +this.eC() +this.b.M(a) +s=this.a +s.x=s.gdk()}, +dG(a){var s=this.b,r=this.a +if(s.a0(a.b,"table")){this.eC() +s=s.c +if(0>=s.length)return A.c(s,-1) +s.pop() +r.x=r.gaA()}else r.G(a.a,"unexpected-end-tag-in-table-body",A.v(["name",a.b],t.N,t.X))}, +bM(a){var s=this,r="table",q=s.b +if(q.a0("tbody",r)||q.a0("thead",r)||q.a0("tfoot",r)){s.eC() +s.dG(new A.H(B.a.gA(q.c).x,!1)) +return a}else s.a.a2(a.a,"undefined-error") +return null}} +A.iG.prototype={ +J(a){var s,r,q=this +switch(a.b){case"html":return q.bf(a) +case"td":case"th":q.hU() +s=q.b +s.M(a) +r=q.a +r.x=r.gdj() +s.d.l(0,null) +return null +case"caption":case"col":case"colgroup":case"tbody":case"tfoot":case"thead":case"tr":s=q.b.a0("tr","table") +q.dH(new A.H("tr",!1)) +return!s?null:a +default:return q.a.gaA().J(a)}}, +P(a){var s=this,r=a.b +switch(r){case"tr":s.dH(a) +return null +case"table":r=s.b.a0("tr","table") +s.dH(new A.H("tr",!1)) +return!r?null:a +case"tbody":case"tfoot":case"thead":return s.dG(a) +case"body":case"caption":case"col":case"colgroup":case"html":case"td":case"th":s.a.G(a.a,"unexpected-end-tag-in-table-row",A.v(["name",r],t.N,t.X)) +return null +default:return s.a.gaA().P(a)}}, +hU(){var s,r,q,p,o,n,m,l,k,j,i +for(s=this.b.c,r=this.a,q=t.N,p=t.X,o=t.n,n=r.c.a;;){m=B.a.gA(s) +l=m.x +if(l==="tr"||l==="html")break +k=m.e +l=o.a(A.v(["name",B.a.gA(s).x],q,p)) +if(k==null){j=n.w +if(j==null)k=null +else{i=n.y +new A.bh(j,i).bg(j,i) +k=new A.av(j,i,i) +k.aG(j,i,i)}}B.a.l(r.e,new A.b9("unexpected-implied-end-tag-in-table-row",k,l)) +if(0>=s.length)return A.c(s,-1) +s.pop()}}, +ac(){this.a.gaA().ac() +return!1}, +aJ(a){return this.a.gaA().aJ(a)}, +a3(a){return this.a.gaA().a3(a)}, +dH(a){var s=this.b,r=this.a +if(s.a0("tr","table")){this.hU() +s=s.c +if(0>=s.length)return A.c(s,-1) +s.pop() +r.x=r.gci()}else r.a2(a.a,"undefined-error")}, +dG(a){if(this.b.a0(a.b,"table")){this.dH(new A.H("tr",!1)) +return a}else{this.a.a2(a.a,"undefined-error") +return null}}} +A.iB.prototype={ +J(a){switch(a.b){case"html":return this.bf(a) +case"caption":case"col":case"colgroup":case"tbody":case"td":case"tfoot":case"th":case"thead":case"tr":return this.jA(a) +default:return this.a.ga4().J(a)}}, +P(a){var s=this,r=a.b +switch(r){case"td":case"th":s.eQ(a) +return null +case"body":case"caption":case"col":case"colgroup":case"html":s.a.G(a.a,"unexpected-end-tag",A.v(["name",r],t.N,t.X)) +return null +case"table":case"tbody":case"tfoot":case"thead":case"tr":return s.mW(a) +default:return s.a.ga4().P(a)}}, +hV(){var s=this.b +if(s.a0("td","table"))this.eQ(new A.H("td",!1)) +else if(s.a0("th","table"))this.eQ(new A.H("th",!1))}, +ac(){this.a.ga4().ac() +return!1}, +a3(a){return this.a.ga4().a3(a)}, +jA(a){var s=this.b +if(s.a0("td","table")||s.a0("th","table")){this.hV() +return a}else{this.a.a2(a.a,"undefined-error") +return null}}, +eQ(a){var s,r=this,q=r.b,p=q.a0(a.b,"table"),o=a.b +if(p){q.bS(o) +p=q.c +o=B.a.gA(p) +s=a.b +if(o.x!=s){r.a.G(a.a,"unexpected-cell-end-tag",A.v(["name",s],t.N,t.X)) +r.ct(a)}else{if(0>=p.length)return A.c(p,-1) +p.pop()}q.eB() +q=r.a +q.x=q.gdk()}else r.a.G(a.a,"unexpected-end-tag",A.v(["name",o],t.N,t.X))}, +mW(a){if(this.b.a0(a.b,"table")){this.hV() +return a}else this.a.a2(a.a,"undefined-error") +return null}} +A.iI.prototype={ +J(a){var s,r=this,q=null,p=a.b +switch(p){case"html":return r.bf(a) +case"option":p=r.b +s=p.c +if(B.a.gA(s).x==="option"){if(0>=s.length)return A.c(s,-1) +s.pop()}p.M(a) +return q +case"optgroup":p=r.b +s=p.c +if(B.a.gA(s).x==="option"){if(0>=s.length)return A.c(s,-1) +s.pop()}if(B.a.gA(s).x==="optgroup"){if(0>=s.length)return A.c(s,-1) +s.pop()}p.M(a) +return q +case"select":r.a.a2(a.a,"unexpected-select-in-select") +r.eP(new A.H("select",!1)) +return q +case"input":case"keygen":case"textarea":return r.jv(a) +case"script":return r.a.gc_().J(a) +default:r.a.G(a.a,"unexpected-start-tag-in-select",A.v(["name",p],t.N,t.X)) +return q}}, +P(a){var s,r,q=this,p=null,o="unexpected-end-tag-in-select",n=a.b +switch(n){case"option":n=q.b.c +if(B.a.gA(n).x==="option"){if(0>=n.length)return A.c(n,-1) +n.pop()}else q.a.G(a.a,o,A.v(["name","option"],t.N,t.X)) +return p +case"optgroup":n=q.b.c +if(B.a.gA(n).x==="option"){s=n.length +r=s-2 +if(!(r>=0))return A.c(n,r) +r=n[r].x==="optgroup" +s=r}else s=!1 +if(s){if(0>=n.length)return A.c(n,-1) +n.pop()}if(B.a.gA(n).x==="optgroup"){if(0>=n.length)return A.c(n,-1) +n.pop()}else q.a.G(a.a,o,A.v(["name","optgroup"],t.N,t.X)) +return p +case"select":q.eP(a) +return p +default:q.a.G(a.a,o,A.v(["name",n],t.N,t.X)) +return p}}, +ac(){var s=B.a.gA(this.b.c) +if(s.x!=="html")this.a.a2(s.e,"eof-in-select") +return!1}, +a3(a){if(a.gaC()==="\x00")return null +this.b.bN(a.gaC(),a.a) +return null}, +jv(a){var s="select" +this.a.a2(a.a,"unexpected-input-in-select") +if(this.b.a0(s,s)){this.eP(new A.H(s,!1)) +return a}return null}, +eP(a){var s=this.a +if(this.b.a0("select","select")){this.ct(a) +s.iw()}else s.a2(a.a,"undefined-error")}} +A.iH.prototype={ +J(a){var s,r=a.b +switch(r){case"caption":case"table":case"tbody":case"tfoot":case"thead":case"tr":case"td":case"th":s=this.a +s.G(a.a,u.a,A.v(["name",r],t.N,t.X)) +s.gbH().P(new A.H("select",!1)) +return a +default:return this.a.gbH().J(a)}}, +P(a){switch(a.b){case"caption":case"table":case"tbody":case"tfoot":case"thead":case"tr":case"td":case"th":return this.bM(a) +default:return this.a.gbH().P(a)}}, +ac(){this.a.gbH().ac() +return!1}, +a3(a){return this.a.gbH().a3(a)}, +bM(a){var s=this.a +s.G(a.a,u.r,A.v(["name",a.b],t.N,t.X)) +if(this.b.a0(a.b,"table")){s.gbH().P(new A.H("select",!1)) +return a}return null}} +A.iD.prototype={ +a3(a){var s +if(a.gaC()==="\x00"){a.c="\ufffd" +a.b=null}else{s=this.a +if(s.z&&!A.qL(a.gaC()))s.z=!1}return this.jM(a)}, +J(a){var s,r,q,p=this,o=p.b,n=o.c,m=B.a.gA(n) +if(!B.a.D(B.j5,a.b))if(a.b==="font")s=a.e.a8("color")||a.e.a8("face")||a.e.a8("size") +else s=!1 +else s=!0 +if(s){s=p.a +s.G(a.a,u.G,A.v(["name",a.b],t.N,t.X)) +o=o.a +for(;;){r=!1 +if(B.a.gA(n).w!=o)if(!s.ib(B.a.gA(n))){r=B.a.gA(n) +r=!B.hP.D(0,new A.l(r.w,r.x))}if(!r)break +if(0>=n.length)return A.c(n,-1) +n.pop()}return a}else{s=m.w +if(s==="http://www.w3.org/1998/Math/MathML")p.a.hG(a) +else if(s==="http://www.w3.org/2000/svg"){q=B.rp.n(0,a.b) +if(q!=null)a.b=q +p.a.hH(a)}p.a.ew(a) +a.w=s +o.M(a) +if(a.c){if(0>=n.length)return A.c(n,-1) +n.pop() +a.r=!0}return null}}, +P(a){var s,r,q,p=this,o=p.b,n=o.c,m=n.length-1,l=B.a.gA(n),k=l.x +k=k==null?null:A.c9(k) +s=a.b +if(k!=s)p.a.G(a.a,"unexpected-end-tag",A.v(["name",s],t.N,t.X)) +for(o=o.a;r=null,!0;){k=l.x +k=k==null?null:A.c9(k) +if(k==a.b){o=p.a +q=o.x +if(q===$)q=o.x=o.gbo() +if(q===o.gem()){q=o.x +if(q===$)q=o.x=o.gbo() +t.aB.a(q) +q.cP() +k=q.c +k.toString +o.x=k}for(;;){if(0>=n.length)return A.c(n,-1) +if(!(n.pop()!==l))break}break}--m +if(!(m>=0&&m=r.length)return A.c(r,0) +s.cq(a,r[0]) +return null}, +a3(a){var s=this.a +s.a2(a.a,"unexpected-char-after-body") +s.x=s.ga4() +return a}, +eO(a){var s,r,q,p +for(s=this.b.c,r=A.x(s).h("V<1>"),s=new A.V(s,r),s=new A.L(s,s.gm(0),r.h("L")),r=r.h("G.E");s.p();){q=s.d +if((q==null?r.a(q):q).x==="html")break}s=this.a +p=s.k4 +s.x=p===$?s.k4=new A.hI(s,s.d):p}} +A.iE.prototype={ +J(a){var s=this,r=a.b +switch(r){case"html":return s.bf(a) +case"frameset":s.b.M(a) +return null +case"frame":r=s.b +r.M(a) +r=r.c +if(0>=r.length)return A.c(r,-1) +r.pop() +return null +case"noframes":return s.a.ga4().J(a) +default:s.a.G(a.a,"unexpected-start-tag-in-frameset",A.v(["name",r],t.N,t.X)) +return null}}, +P(a){var s,r=this,q=a.b +switch(q){case"frameset":q=r.b.c +if(B.a.gA(q).x==="html")r.a.a2(a.a,u.q) +else{if(0>=q.length)return A.c(q,-1) +q.pop()}q=B.a.gA(q) +if(q.x!=="frameset"){q=r.a +s=q.k3 +q.x=s===$?q.k3=new A.hL(q,q.d):s}return null +default:r.a.G(a.a,"unexpected-end-tag-in-frameset",A.v(["name",q],t.N,t.X)) +return null}}, +ac(){var s=B.a.gA(this.b.c) +if(s.x!=="html")this.a.a2(s.e,"eof-in-frameset") +return!1}, +a3(a){this.a.a2(a.a,"unexpected-char-in-frameset") +return null}} +A.hL.prototype={ +J(a){var s=a.b +switch(s){case"html":return this.bf(a) +case"noframes":return this.a.gc_().J(a) +default:this.a.G(a.a,"unexpected-start-tag-after-frameset",A.v(["name",s],t.N,t.X)) +return null}}, +P(a){var s,r=a.b,q=this.a +switch(r){case"html":s=q.ok +q.x=s===$?q.ok=new A.hJ(q,q.d):s +return null +default:q.G(a.a,"unexpected-end-tag-after-frameset",A.v(["name",r],t.N,t.X)) +return null}}, +ac(){return!1}, +a3(a){this.a.a2(a.a,"unexpected-char-after-frameset") +return null}} +A.hI.prototype={ +J(a){var s,r=a.b +if(r==="html")return this.a.ga4().J(a) +s=this.a +s.G(a.a,"expected-eof-but-got-start-tag",A.v(["name",r],t.N,t.X)) +s.x=s.ga4() +return a}, +ac(){return!1}, +c9(a){var s=this.b,r=s.b +r===$&&A.o() +s.cq(a,r) +return null}, +aJ(a){return this.a.ga4().aJ(a)}, +a3(a){var s=this.a +s.a2(a.a,"expected-eof-but-got-char") +s.x=s.ga4() +return a}, +P(a){var s=this.a +s.G(a.a,"expected-eof-but-got-end-tag",A.v(["name",a.b],t.N,t.X)) +s.x=s.ga4() +return a}} +A.hJ.prototype={ +J(a){var s=a.b,r=this.a +switch(s){case"html":return r.ga4().J(a) +case"noframes":return r.gc_().J(a) +default:r.G(a.a,"expected-eof-but-got-start-tag",A.v(["name",s],t.N,t.X)) +return null}}, +ac(){return!1}, +c9(a){var s=this.b,r=s.b +r===$&&A.o() +s.cq(a,r) +return null}, +aJ(a){return this.a.ga4().aJ(a)}, +a3(a){this.a.a2(a.a,"expected-eof-but-got-char") +return null}, +P(a){this.a.G(a.a,"expected-eof-but-got-end-tag",A.v(["name",a.b],t.N,t.X)) +return null}} +A.b9.prototype={ +j(a){var s,r,q=this,p=q.b +if(p==null){p=B.fX.n(0,q.a) +p.toString +return A.uo(p,q.c)}s=B.fX.n(0,q.a) +s.toString +r=p.ie(A.uo(s,q.c),null) +return p.a.a==null?"ParserError on "+r:"On "+r}, +$iah:1} +A.nx.prototype={} +A.ia.prototype={ +d0(){var s,r,q,p,o=A.vY(t.N),n=this.a.b.n(0,"class") +for(s=(n==null?"":n).split(" "),r=s.length,q=0;q=this.a.length)throw A.f(A.qs("No more elements")) +this.b=a}, +gau(){var s=this.b +if(s>=this.a.length)throw A.f(A.qs("No more elements")) +if(s>=0)return s +else return 0}, +kY(a){var s,r,q,p,o=this +t.pi.a(a) +if(a==null)a=A.uh() +s=o.gau() +for(r=o.a,q=r.length;s=0))return A.c(r,s) +p=r[s] +if(!a.$1(p)){o.b=s +return p}++s}o.b=s +return null}, +hp(){return this.kY(null)}, +kZ(a){var s,r,q,p +t.gS.a(a) +s=this.gau() +for(r=this.a,q=r.length;s=0))return A.c(r,s) +p=r[s] +if(a.$1(p)){this.b=s +return p}++s}return null}, +ha(a){var s=B.b.ap(this.a,a,this.gau()) +if(s>=0){this.b=s+a.length-1 +return!0}else throw A.f(A.qs("No more elements"))}, +er(a,b){if(b==null)b=this.a.length +if(b<0)b+=this.a.length +return B.b.t(this.a,a,b)}, +l_(a){return this.er(a,null)}} +A.lK.prototype={ +nD(){var s,r,q,p,o,n,m,l +try{p=this.a +p.ha("charset") +p.sau(p.gau()+1) +p.hp() +o=p.a +n=p.gau() +m=o.length +if(!(n>=0&&n=0&&n=0&&n=0&&n0){r=h.x +q=r.length +B.a.o8(r,q-n,q)}}, +hR(a){var s=A.ce("cannot change encoding when parsing a String.") +throw A.f(s)}, +C(){var s,r,q,p,o=this,n=o.y,m=o.x,l=m.length +if(n>=l)return null +s=o.y=n+1 +if(!(n>=0))return A.c(m,n) +r=m[n] +if(r<256)return B.j4[r] +n=s-1 +t.L.a(m) +q=n+1 +p=!1 +if(q=0))return A.c(m,n) +if((m[n]&64512)===55296){if(!(q>=0))return A.c(m,q) +n=(m[q]&64512)===56320}else n=p}else n=p +if(n){o.y=s+1 +if(!(s>=0&&s=q)return null +if(!(s>=0))return A.c(r,s) +return r[s]}, +lY(a){var s,r,q=this +t.nO.a(a) +s=q.y +for(;;){r=q.cs() +if(!(r!=null&&!a.D(0,r)))break;++q.y}return A.ay(B.a.am(q.x,s,q.y),0,null)}, +hS(a){var s,r=this,q=r.y +for(;;){s=r.cs() +if(!(s!=null&&a!==s))break;++r.y}return A.ay(B.a.am(r.x,q,r.y),0,null)}, +cn(a,b){var s,r,q=this,p=q.y +for(;;){s=q.cs() +if(s!=null)r=!(a===s||b===s) +else r=!1 +if(!r)break;++q.y}return A.ay(B.a.am(q.x,p,q.y),0,null)}, +hT(a,b,c){var s,r,q=this,p=q.y +for(;;){s=q.cs() +if(s!=null)r=!(a===s||b===s||c===s) +else r=!1 +if(!r)break;++q.y}return A.ay(B.a.am(q.x,p,q.y),0,null)}, +lZ(a){var s,r,q=this,p=q.y +for(;;){s=q.cs() +if(s!=null)if(!(s>=65&&s<=90))r=s>=97&&s<=122 +else r=!0 +else r=!1 +if(!r)break;++q.y}return A.ay(B.a.am(q.x,p,q.y),0,null)}, +cL(a){var s,r,q=this,p=q.y +for(;;){s=q.cs() +if(s!=null)r=s===32||s===10||s===13||s===9||s===12 +else r=!1 +if(!r)break;++q.y}return A.ay(B.a.am(q.x,p,q.y),0,null)}, +W(a){if(a!=null)this.y=this.y-a.length}} +A.b7.prototype={ +gm(a){return this.a.length}, +gF(a){var s=this.a +return new J.J(s,s.length,A.x(s).h("J<1>"))}, +n(a,b){var s=this.a +if(!(b>=0&&b").a(b))}} +A.d0.prototype={ +f7(a,b){var s,r,q,p,o,n,m +for(s=a.gO().gF(0),r=new A.bZ(s,t.pl),q=b.b,p=this.gfm(),o=t.g;r.p();){n=o.a(s.gB()) +this.a=n +if(B.a.aH(q,p))return n +m=this.f7(n,b) +if(m!=null)return m}return null}, +f8(a,b,c){var s,r,q,p,o,n +t.jB.a(c) +for(s=a.gO().gF(0),r=new A.bZ(s,t.pl),q=b.b,p=this.gfm(),o=t.g;r.p();){n=o.a(s.gB()) +this.a=n +if(B.a.aH(q,p))B.a.l(c,n) +this.f8(n,b,c)}}, +iE(a){var s,r,q,p,o,n,m,l,k,j,i=this,h=null +t.dT.a(a) +s=i.a +for(r=a.b,q=A.x(r).h("V<1>"),r=new A.V(r,q),r=new A.L(r,r.gm(0),q.h("L")),q=q.h("G.E"),p=h;o=!0,r.p();){n=r.d +if(n==null)n=q.a(n) +if(p==null)o=A.hA(n.c.L(i)) +else{if(p===514){m=n.c +do{l=i.a.a +k=l instanceof A.a6?l:h +i.a=k}while(k!=null&&!A.hA(m.L(i))) +m=i.a +o=m!=null}else if(p===517){m=n.c +do{k=i.a.gdR() +i.a=k}while(k!=null&&!A.hA(m.L(i))) +m=i.a +o=m!=null}p=h}if(!o)break +j=n.b +switch(j){case 515:i.a=i.a.gdR() +break +case 516:l=i.a.a +i.a=l instanceof A.a6?l:h +break +case 514:case 517:p=j +break +case 513:break +default:throw A.f(i.hy(a))}if(i.a==null){o=!1 +break}}i.a=s +return o}, +cK(a){return new A.fW("'"+a.j(0)+"' selector of type "+A.cN(a).j(0)+" is not implemented")}, +hy(a){return new A.aA("'"+a.j(0)+"' is not a valid selector",null,null)}, +op(a){var s=this,r=a.b +switch(r.ga7()){case"root":r=s.a +return r.x==="html"&&r.a==null +case"empty":r=s.a.gO() +return r.aH(r,new A.nE()) +case"blank":r=s.a.gO() +return r.aH(r,new A.nF()) +case"first-child":return s.a.gdR()==null +case"last-child":return s.a.gih()==null +case"only-child":return s.a.gdR()==null&&s.a.gih()==null +case"link":return s.a.b.n(0,"href")!=null +case"visited":return!1}if(A.rR(r.ga7()))return!1 +throw A.f(s.cK(a))}, +or(a){if(A.rR(a.b.ga7()))return!1 +throw A.f(this.cK(a))}, +oq(a){return A.O(this.cK(a))}, +oo(a){var s,r,q,p,o,n,m=this +switch(a.b.ga7()){case"nth-child":s=t.b9.a(a.f).b +r=s.length +if(r===1){if(0>=r)return A.c(s,0) +q=s[0] instanceof A.ak}else q=!1 +if(q){if(0>=r)return A.c(s,0) +r=t.mH.a(s[0]).c +if(typeof r!="number")return!1 +p=m.a.a +q=!1 +if(p!=null)if(r>0){q=p.gO() +r=q.al(q,m.a)===r}else r=q +else r=q +return r}break +case"lang":r=t.b9.a(a.f) +r=r.a +r.toString +o=A.ay(B.aA.am(r.a.c,r.b,r.c),0,null) +n=A.wG(m.a) +return n!=null&&B.b.T(n,o)}throw A.f(m.cK(a))}, +on(a){if(!A.hA(t.g9.a(a.b).L(this)))return!1 +if(a.d instanceof A.d4)return!0 +if(a.gig()==="")return this.a.w==null +throw A.f(this.cK(a))}, +oj(a){var s,r,q,p=this.a.b.n(0,a.b.ga7().toLowerCase()) +if(p==null)return!1 +s=a.d +if(s===535)return!0 +r=A.k(a.e) +A:{if(28===s){s=p===r +break A}if(530===s){s=B.a.aH(A.i(p.split(" "),t.s),new A.nC(r)) +break A}if(531===s){if(B.b.T(p,r)){s=p.length +q=r.length +if(s!==q){if(!(q1114111){l=A.v(["charAsInt",n],t.N,t.X) +k.i(new A.j(l,j,i)) +m="\ufffd"}else{l=!0 +if(!(1<=n&&n<=8))if(!(14<=n&&n<=31))if(!(127<=n&&n<=159))l=64976<=n&&n<=65007||B.a.D(B.jj,n) +if(l){l=A.v(["charAsInt",n],t.N,t.X) +k.i(new A.j(l,j,i))}m=A.ay(A.i([n],t.Z),0,j)}if(o!==";"){k.i(new A.j(j,j,"numeric-entity-without-semicolon")) +p.W(o)}return m}, +dF(a,b){var s,r,q,p,o,n,m,l,k,j=this,i=null,h=j.a,g=A.i([h.C()],t.mf) +if(0>=g.length)return A.c(g,0) +if(!A.a7(g[0])){if(0>=g.length)return A.c(g,0) +s=g[0] +s=s==="<"||s==="&"||s==null||a===s}else s=!0 +if(s){if(0>=g.length)return A.c(g,0) +h.W(g[0]) +r="&"}else{if(0>=g.length)return A.c(g,0) +if(g[0]==="#"){B.a.l(g,h.C()) +q=B.a.gA(g)==="x"||B.a.gA(g)==="X" +if(q)B.a.l(g,h.C()) +if(!(q&&A.ut(B.a.gA(g))))s=!q&&A.pD(B.a.gA(g)) +else s=!0 +if(s){h.W(B.a.gA(g)) +r=j.md(q)}else{j.i(new A.j(i,i,"expected-numeric-entity")) +if(0>=g.length)return A.c(g,-1) +h.W(g.pop()) +r="&"+B.a.aQ(g)}}else{s=B.a.gA(g) +if(s==null)s=i +else{if(0>=s.length)return A.c(s,0) +s=s.charCodeAt(0)}p=B.kS.n(0,s) +for(;;){if(!(p!=null&&B.a.gA(g)!=null))break +B.a.l(g,h.C()) +s=B.a.gA(g) +if(s==null)s=i +else{if(0>=s.length)return A.c(s,0) +s=s.charCodeAt(0)}p=p.n(0,s)}n=g.length-1 +for(;;){if(!(n>1)){o=i +break}m=B.a.aQ(B.a.am(g,0,n)) +if(B.fs.a8(m)){o=m +break}--n}if(o!=null){s=o.length +l=s-1 +if(!(l>=0))return A.c(o,l) +s=o[l]!==";" +if(s)j.i(new A.j(i,i,"named-entity-without-semicolon")) +l=!1 +if(s)if(b){if(!(n>=0&&n=g.length)return A.c(g,-1) +h.W(g.pop()) +r="&"+B.a.aQ(g)}else{r=B.fs.n(0,o) +if(0>=g.length)return A.c(g,-1) +h.W(g.pop()) +r=A.k(r)+B.a.aQ(A.qX(g,n,i,t.jv))}}else{if(!b)j.i(new A.j(i,i,"expected-named-entity")) +if(0>=g.length)return A.c(g,-1) +h.W(g.pop()) +r="&"+B.a.aQ(g)}}}if(b)j.ay.a+=r +else{if(A.a7(r))k=new A.dB(i,r) +else k=new A.B(i,r) +j.i(k)}}, +i_(){return this.dF(null,!1)}, +b7(){var s,r,q,p,o,n,m=this,l=null,k=m.w +k.toString +if(k instanceof A.cA){s=k.b +k.b=s==null?l:A.c9(s) +if(k instanceof A.H){if(m.Q!=null)m.i(new A.j(l,l,"attributes-in-end-tag")) +if(k.c)m.i(new A.j(l,l,"this-closing-flag-on-end-tag"))}else if(k instanceof A.d2){k.saC(A.ac(t.K,t.N)) +s=m.Q +if(s!=null)for(r=s.length,q=0;q"){s.i(new A.j(r,r,"expected-tag-name-but-got-right-bracket")) +s.i(new A.B(r,"<>")) +s.x=t.c.a(s.gE())}else if(p==="?"){s.i(new A.j(r,r,"expected-tag-name-but-got-question-mark")) +q.W(p) +s.x=t.c.a(s.geA())}else{s.i(new A.j(r,r,"expected-tag-name")) +s.i(new A.B(r,"<")) +q.W(p) +s.x=t.c.a(s.gE())}return!0}, +m1(){var s,r=this,q=null,p=r.a,o=p.C() +if(A.b3(o)){r.w=new A.H(o,!1) +r.x=t.c.a(r.giz())}else if(o===">"){r.i(new A.j(q,q,u.g)) +r.x=t.c.a(r.gE())}else if(o==null){r.i(new A.j(q,q,"expected-closing-tag-but-got-eof")) +r.i(new A.B(q,"")r.b7() +else if(p==null){r.i(new A.j(q,q,"eof-in-tag-name")) +r.x=t.c.a(r.gE())}else if(p==="/")r.x=t.c.a(r.gbm()) +else if(p==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) +s=t.fn.a(r.w) +s.b=A.k(s.b)+"\ufffd"}else{s=t.fn.a(r.w) +s.b=A.k(s.b)+p}return!0}, +o2(){var s=this,r=s.a,q=r.C() +if(q==="/"){s.y.a="" +s.x=t.c.a(s.go_())}else{s.i(new A.B(null,"<")) +r.W(q) +s.x=t.c.a(s.gcu())}return!0}, +o0(){var s=this,r=s.a,q=r.C() +if(A.b3(q)){s.y.a+=A.k(q) +s.x=t.c.a(s.gnY())}else{s.i(new A.B(null,""&&q){r.w=new A.H(r.y.j(0),!1) +r.b7() +r.x=t.c.a(r.gE())}else{s=r.y +if(A.b3(o))s.a+=A.k(o) +else{s=s.j(0) +r.i(new A.B(null,""&&q){r.w=new A.H(r.y.j(0),!1) +r.b7() +r.x=t.c.a(r.gE())}else{s=r.y +if(A.b3(o))s.a+=A.k(o) +else{s=s.j(0) +r.i(new A.B(null,""&&q){r.w=new A.H(r.y.j(0),!1) +r.b7() +r.x=t.c.a(r.gE())}else{s=r.y +if(A.b3(o))s.a+=A.k(o) +else{s=s.j(0) +r.i(new A.B(null,""){s.i(new A.B(r,">")) +s.x=t.c.a(s.gbC())}else if(q==="\x00"){s.i(new A.j(r,r,"invalid-codepoint")) +s.i(new A.B(r,"\ufffd")) +s.x=t.c.a(s.gbe())}else if(q==null)s.x=t.c.a(s.gE()) +else{s.i(new A.B(r,q)) +s.x=t.c.a(s.gbe())}return!0}, +je(){var s,r=this,q=r.a,p=q.C() +if(p==="/"){r.y.a="" +r.x=t.c.a(r.gjc())}else if(A.b3(p)){q=A.k(p) +r.i(new A.B(null,"<"+q)) +s=r.y +s.a="" +s.a=q +r.x=t.c.a(r.giS())}else{r.i(new A.B(null,"<")) +q.W(p) +r.x=t.c.a(r.gbe())}return!0}, +jd(){var s=this,r=s.a,q=r.C() +if(A.b3(q)){r=s.y +r.a="" +r.a=A.k(q) +s.x=t.c.a(s.gja())}else{s.i(new A.B(null,""&&q){r.w=new A.H(r.y.j(0),!1) +r.b7() +r.x=t.c.a(r.gE())}else{s=r.y +if(A.b3(o))s.a+=A.k(o) +else{s=s.j(0) +r.i(new A.B(null,""){s.i(new A.B(q==null?new A.W(""):null,q)) +r=t.c +if(s.y.j(0).toLowerCase()==="script")s.x=r.a(s.gbB()) +else s.x=r.a(s.gbe())}else if(A.b3(q)){s.i(new A.B(q==null?new A.W(""):null,q)) +s.y.a+=A.k(q)}else{r.W(q) +s.x=t.c.a(s.gbe())}return!0}, +iZ(){var s=this,r=null,q=s.a.C() +if(q==="-"){s.i(new A.B(r,"-")) +s.x=t.c.a(s.giW())}else if(q==="<"){s.i(new A.B(r,"<")) +s.x=t.c.a(s.ge2())}else if(q==="\x00"){s.i(new A.j(r,r,"invalid-codepoint")) +s.i(new A.B(r,"\ufffd"))}else if(q==null){s.i(new A.j(r,r,"eof-in-script-in-script")) +s.x=t.c.a(s.gE())}else s.i(new A.B(r,q)) +return!0}, +iX(){var s=this,r=null,q=s.a.C() +if(q==="-"){s.i(new A.B(r,"-")) +s.x=t.c.a(s.giU())}else if(q==="<"){s.i(new A.B(r,"<")) +s.x=t.c.a(s.ge2())}else if(q==="\x00"){s.i(new A.j(r,r,"invalid-codepoint")) +s.i(new A.B(r,"\ufffd")) +s.x=t.c.a(s.gbB())}else if(q==null){s.i(new A.j(r,r,"eof-in-script-in-script")) +s.x=t.c.a(s.gE())}else{s.i(new A.B(r,q)) +s.x=t.c.a(s.gbB())}return!0}, +iV(){var s=this,r=null,q=s.a.C() +if(q==="-")s.i(new A.B(r,"-")) +else if(q==="<"){s.i(new A.B(r,"<")) +s.x=t.c.a(s.ge2())}else if(q===">"){s.i(new A.B(r,">")) +s.x=t.c.a(s.gbC())}else if(q==="\x00"){s.i(new A.j(r,r,"invalid-codepoint")) +s.i(new A.B(r,"\ufffd")) +s.x=t.c.a(s.gbB())}else if(q==null){s.i(new A.j(r,r,"eof-in-script-in-script")) +s.x=t.c.a(s.gE())}else{s.i(new A.B(r,q)) +s.x=t.c.a(s.gbB())}return!0}, +iY(){var s=this,r=s.a,q=r.C() +if(q==="/"){s.i(new A.B(null,"/")) +s.y.a="" +s.x=t.c.a(s.giQ())}else{r.W(q) +s.x=t.c.a(s.gbB())}return!0}, +iR(){var s=this,r=s.a,q=r.C() +if(A.a7(q)||q==="/"||q===">"){s.i(new A.B(q==null?new A.W(""):null,q)) +r=t.c +if(s.y.j(0).toLowerCase()==="script")s.x=r.a(s.gbe()) +else s.x=r.a(s.gbB())}else if(A.b3(q)){s.i(new A.B(q==null?new A.W(""):null,q)) +s.y.a+=A.k(q)}else{r.W(q) +s.x=t.c.a(s.gbB())}return!0}, +lG(){var s=this,r=null,q=s.a,p=q.C() +if(A.a7(p))q.cL(!0) +else{q=p==null +if(!q&&A.b3(p)){s.bF(p) +s.x=t.c.a(s.gbI())}else if(p===">")s.b7() +else if(p==="/")s.x=t.c.a(s.gbm()) +else if(q){s.i(new A.j(r,r,"expected-attribute-name-but-got-eof")) +s.x=t.c.a(s.gE())}else if(B.b.D("'\"=<",p)){s.i(new A.j(r,r,"invalid-character-in-attribute-name")) +s.bF(p) +s.x=t.c.a(s.gbI())}else if(p==="\x00"){s.i(new A.j(r,r,"invalid-codepoint")) +s.bF("\ufffd") +s.x=t.c.a(s.gbI())}else{s.bF(p) +s.x=t.c.a(s.gbI())}}return!0}, +ls(){var s,r,q=this,p=null,o=q.a,n=o.C(),m=!0,l=!1 +if(n==="=")q.x=t.c.a(q.ghO()) +else if(A.b3(n)){s=q.ax +s.a+=A.k(n) +o=o.lZ(!0) +s.a+=o +m=!1}else{l=n===">" +if(!l)if(A.a7(n))q.x=t.c.a(q.glc()) +else if(n==="/")q.x=t.c.a(q.gbm()) +else if(n==="\x00"){q.i(new A.j(p,p,"invalid-codepoint")) +q.ax.a+="\ufffd" +m=!1}else{m=n==null +if(m){q.i(new A.j(p,p,"eof-in-attribute-name")) +q.x=t.c.a(q.gE())}else if(B.b.D("'\"<",n)){q.i(new A.j(p,p,"invalid-character-in-attribute-name")) +q.ax.a+=n}else q.ax.a+=n}}if(m){q.dl(-1) +o=q.ax.a +r=A.c9(o.charCodeAt(0)==0?o:o) +o=q.Q +o.toString +B.a.gA(o).a=r +o=q.as +if((o==null?q.as=A.j2(t.N):o).D(0,r))q.i(new A.j(p,p,"duplicate-attribute")) +q.as.l(0,r) +if(l)q.b7()}return!0}, +ld(){var s=this,r=null,q=s.a,p=q.C() +if(A.a7(p))q.cL(!0) +else if(p==="=")s.x=t.c.a(s.ghO()) +else if(p===">")s.b7() +else{q=p==null +if(!q&&A.b3(p)){s.bF(p) +s.x=t.c.a(s.gbI())}else if(p==="/")s.x=t.c.a(s.gbm()) +else if(p==="\x00"){s.i(new A.j(r,r,"invalid-codepoint")) +s.bF("\ufffd") +s.x=t.c.a(s.gbI())}else if(q){s.i(new A.j(r,r,"expected-end-of-tag-but-got-eof")) +s.x=t.c.a(s.gE())}else if(B.b.D("'\"<",p)){s.i(new A.j(r,r,"invalid-character-after-attribute-name")) +s.bF(p) +s.x=t.c.a(s.gbI())}else{s.bF(p) +s.x=t.c.a(s.gbI())}}return!0}, +lH(){var s=this,r=null,q=s.a,p=q.C() +if(A.a7(p))q.cL(!0) +else if(p==='"'){s.cj(0) +s.x=t.c.a(s.glw())}else if(p==="&"){s.x=t.c.a(s.gdE()) +q.W(p) +s.cj(0)}else if(p==="'"){s.cj(0) +s.x=t.c.a(s.glC())}else if(p===">"){s.i(new A.j(r,r,u.F)) +s.b7()}else if(p==="\x00"){s.i(new A.j(r,r,"invalid-codepoint")) +s.cj(-1) +s.ay.a+="\ufffd" +s.x=t.c.a(s.gdE())}else if(p==null){s.i(new A.j(r,r,"expected-attribute-value-but-got-eof")) +s.x=t.c.a(s.gE())}else if(B.b.D("=<`",p)){s.i(new A.j(r,r,"equals-in-unquoted-attribute-value")) +s.cj(-1) +s.ay.a+=p +s.x=t.c.a(s.gdE())}else{s.cj(-1) +s.ay.a+=p +s.x=t.c.a(s.gdE())}return!0}, +lx(){var s,r=this,q=null,p=r.a,o=p.C() +if(o==='"'){r.c0(-1) +r.dl(0) +r.x=t.c.a(r.ghI())}else if(o==="&")r.dF('"',!0) +else if(o==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) +r.ay.a+="\ufffd"}else if(o==null){r.i(new A.j(q,q,"eof-in-attribute-value-double-quote")) +r.c0(-1) +r.x=t.c.a(r.gE())}else{s=r.ay +s.a+=o +p=p.cn(34,38) +s.a+=p}return!0}, +lD(){var s,r=this,q=null,p=r.a,o=p.C() +if(o==="'"){r.c0(-1) +r.dl(0) +r.x=t.c.a(r.ghI())}else if(o==="&")r.dF("'",!0) +else if(o==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) +r.ay.a+="\ufffd"}else if(o==null){r.i(new A.j(q,q,"eof-in-attribute-value-single-quote")) +r.c0(-1) +r.x=t.c.a(r.gE())}else{s=r.ay +s.a+=o +p=p.cn(39,38) +s.a+=p}return!0}, +lE(){var s,r=this,q=null,p=r.a,o=p.C() +if(A.a7(o)){r.c0(-1) +r.x=t.c.a(r.gbs())}else if(o==="&")r.dF(">",!0) +else if(o===">"){r.c0(-1) +r.b7()}else if(o==null){r.i(new A.j(q,q,"eof-in-attribute-value-no-quotes")) +r.c0(-1) +r.x=t.c.a(r.gE())}else if(B.b.D("\"'=<`",o)){r.i(new A.j(q,q,u.V)) +r.ay.a+=o}else if(o==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) +r.ay.a+="\ufffd"}else{s=r.ay +s.a+=o +p=p.lY(B.Mk) +s.a+=p}return!0}, +le(){var s=this,r=null,q=s.a,p=q.C() +if(A.a7(p))s.x=t.c.a(s.gbs()) +else if(p===">")s.b7() +else if(p==="/")s.x=t.c.a(s.gbm()) +else if(p==null){s.i(new A.j(r,r,"unexpected-EOF-after-attribute-value")) +q.W(p) +s.x=t.c.a(s.gE())}else{s.i(new A.j(r,r,u.H)) +q.W(p) +s.x=t.c.a(s.gbs())}return!0}, +jj(){var s=this,r=null,q=s.a,p=q.C() +if(p===">"){t.fn.a(s.w).c=!0 +s.b7()}else if(p==null){s.i(new A.j(r,r,"unexpected-EOF-after-solidus-in-tag")) +q.W(p) +s.x=t.c.a(s.gE())}else{s.i(new A.j(r,r,u.B)) +q.W(p) +s.x=t.c.a(s.gbs())}return!0}, +lO(){var s=this,r=s.a,q=r.hS(62) +q=A.cO(q,"\x00","\ufffd") +s.i(new A.dU(null,q)) +r.C() +s.x=t.c.a(s.gE()) +return!0}, +no(){var s,r,q,p,o,n,m=this,l=m.a,k=A.i([l.C()],t.mf) +if(B.a.gA(k)==="-"){B.a.l(k,l.C()) +if(B.a.gA(k)==="-"){m.w=new A.dU(new A.W(""),null) +m.x=t.c.a(m.gma()) +return!0}}else if(B.a.gA(k)==="d"||B.a.gA(k)==="D"){r=0 +for(;;){if(!(r<6)){s=!0 +break}q=B.j1[r] +p=l.C() +B.a.l(k,p) +if(p==null||!B.b.D(q,p)){s=!1 +break}++r}if(s){m.w=new A.eS(!0) +m.x=t.c.a(m.gmL()) +return!0}}else{o=!1 +if(B.a.gA(k)==="["){n=m.f +if(n!=null){o=n.d.c +o=o.length!==0&&B.a.gA(o).w!=m.f.d.a}}if(o){r=0 +for(;;){if(!(r<6)){s=!0 +break}q=B.j0[r] +B.a.l(k,l.C()) +if(B.a.gA(k)!==q){s=!1 +break}++r}if(s){m.x=t.c.a(m.glS()) +return!0}}}m.i(new A.j(null,null,"expected-dashes-or-doctype")) +while(o=k.length,o!==0){if(0>=o)return A.c(k,-1) +o=k.pop() +if(o!=null)l.y=l.y-o.length}m.x=t.c.a(m.geA()) +return!0}, +mb(){var s,r=this,q=null,p=r.a.C() +if(p==="-")r.x=t.c.a(r.gm8()) +else if(p==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) +t.v.a(r.w).b.a+="\ufffd"}else if(p===">"){r.i(new A.j(q,q,"incorrect-comment")) +s=r.w +s.toString +r.i(s) +r.x=t.c.a(r.gE())}else if(p==null){r.i(new A.j(q,q,"eof-in-comment")) +s=r.w +s.toString +r.i(s) +r.x=t.c.a(r.gE())}else{t.v.a(r.w).b.a+=p +r.x=t.c.a(r.gbJ())}return!0}, +m9(){var s,r=this,q=null,p=r.a.C() +if(p==="-")r.x=t.c.a(r.ghY()) +else if(p==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) +t.v.a(r.w).b.a+="-\ufffd"}else if(p===">"){r.i(new A.j(q,q,"incorrect-comment")) +s=r.w +s.toString +r.i(s) +r.x=t.c.a(r.gE())}else if(p==null){r.i(new A.j(q,q,"eof-in-comment")) +s=r.w +s.toString +r.i(s) +r.x=t.c.a(r.gE())}else{s=t.v.a(r.w).b +s.a=(s.a+="-")+p +r.x=t.c.a(r.gbJ())}return!0}, +mc(){var s,r=this,q=null,p=r.a,o=p.C() +if(o==="-")r.x=t.c.a(r.ghX()) +else if(o==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) +t.v.a(r.w).b.a+="\ufffd"}else if(o==null){r.i(new A.j(q,q,"eof-in-comment")) +p=r.w +p.toString +r.i(p) +r.x=t.c.a(r.gE())}else{s=t.v.a(r.w) +s.b.a+=o +p=p.cn(45,0) +s=s.b +s.a+=p}return!0}, +m6(){var s,r=this,q=null,p=r.a.C() +if(p==="-")r.x=t.c.a(r.ghY()) +else if(p==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) +t.v.a(r.w).b.a+="-\ufffd" +r.x=t.c.a(r.gbJ())}else if(p==null){r.i(new A.j(q,q,"eof-in-comment-end-dash")) +s=r.w +s.toString +r.i(s) +r.x=t.c.a(r.gE())}else{s=t.v.a(r.w).b +s.a=(s.a+="-")+p +r.x=t.c.a(r.gbJ())}return!0}, +m7(){var s,r=this,q=null,p=r.a.C() +if(p===">"){s=r.w +s.toString +r.i(s) +r.x=t.c.a(r.gE())}else if(p==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) +t.v.a(r.w).b.a+="--\ufffd" +r.x=t.c.a(r.gbJ())}else if(p==="!"){r.i(new A.j(q,q,u.x)) +r.x=t.c.a(r.gm4())}else if(p==="-"){r.i(new A.j(q,q,u.K)) +s=t.v.a(r.w) +p.toString +s.b.a+=p}else if(p==null){r.i(new A.j(q,q,"eof-in-comment-double-dash")) +s=r.w +s.toString +r.i(s) +r.x=t.c.a(r.gE())}else{r.i(new A.j(q,q,"unexpected-char-in-comment")) +s=t.v.a(r.w).b +s.a=(s.a+="--")+p +r.x=t.c.a(r.gbJ())}return!0}, +m5(){var s,r=this,q=null,p=r.a.C() +if(p===">"){s=r.w +s.toString +r.i(s) +r.x=t.c.a(r.gE())}else if(p==="-"){t.v.a(r.w).b.a+="--!" +r.x=t.c.a(r.ghX())}else if(p==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) +t.v.a(r.w).b.a+="--!\ufffd" +r.x=t.c.a(r.gbJ())}else if(p==null){r.i(new A.j(q,q,"eof-in-comment-end-bang-state")) +s=r.w +s.toString +r.i(s) +r.x=t.c.a(r.gE())}else{s=t.v.a(r.w).b +s.a=(s.a+="--!")+p +r.x=t.c.a(r.gbJ())}return!0}, +mM(){var s=this,r=null,q=s.a,p=q.C() +if(A.a7(p))s.x=t.c.a(s.ghP()) +else if(p==null){s.i(new A.j(r,r,"expected-doctype-name-but-got-eof")) +q=t.W.a(s.w) +q.e=!1 +s.i(q) +s.x=t.c.a(s.gE())}else{s.i(new A.j(r,r,"need-space-after-doctype")) +q.W(p) +s.x=t.c.a(s.ghP())}return!0}, +lI(){var s,r=this,q=null,p=r.a.C() +if(A.a7(p))return!0 +else if(p===">"){r.i(new A.j(q,q,u.f)) +s=t.W.a(r.w) +s.e=!1 +r.i(s) +r.x=t.c.a(r.gE())}else if(p==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) +t.W.a(r.w).d="\ufffd" +r.x=t.c.a(r.geK())}else if(p==null){r.i(new A.j(q,q,"expected-doctype-name-but-got-eof")) +s=t.W.a(r.w) +s.e=!1 +r.i(s) +r.x=t.c.a(r.gE())}else{t.W.a(r.w).d=p +r.x=t.c.a(r.geK())}return!0}, +mC(){var s,r,q=this,p=null,o=q.a.C() +if(A.a7(o)){s=t.W.a(q.w) +r=s.d +s.d=r==null?p:A.c9(r) +q.x=t.c.a(q.glf())}else if(o===">"){s=t.W.a(q.w) +r=s.d +s.d=r==null?p:A.c9(r) +s=q.w +s.toString +q.i(s) +q.x=t.c.a(q.gE())}else if(o==="\x00"){q.i(new A.j(p,p,"invalid-codepoint")) +s=t.W.a(q.w) +s.d=A.k(s.d)+"\ufffd" +q.x=t.c.a(q.geK())}else if(o==null){q.i(new A.j(p,p,"eof-in-doctype-name")) +s=t.W.a(q.w) +s.e=!1 +r=s.d +s.d=r==null?p:A.c9(r) +s=q.w +s.toString +q.i(s) +q.x=t.c.a(q.gE())}else{s=t.W.a(q.w) +s.d=A.k(s.d)+o}return!0}, +lg(){var s,r,q,p=this,o=p.a,n=o.C() +if(A.a7(n))return!0 +else if(n===">"){o=p.w +o.toString +p.i(o) +p.x=t.c.a(p.gE())}else if(n==null){t.W.a(p.w).e=!1 +o.W(n) +p.i(new A.j(null,null,"eof-in-doctype")) +o=p.w +o.toString +p.i(o) +p.x=t.c.a(p.gE())}else{if(n==="p"||n==="P"){r=0 +for(;;){if(!(r<5)){s=!0 +break}q=B.ji[r] +n=o.C() +if(n==null||!B.b.D(q,n)){s=!1 +break}++r}if(s){p.x=t.c.a(p.gli()) +return!0}}else if(n==="s"||n==="S"){r=0 +for(;;){if(!(r<5)){s=!0 +break}q=B.iZ[r] +n=o.C() +if(n==null||!B.b.D(q,n)){s=!1 +break}++r}if(s){p.x=t.c.a(p.gll()) +return!0}}o.W(n) +o=A.v(["data",n],t.N,t.X) +p.i(new A.j(o,null,u.p)) +t.W.a(p.w).e=!1 +p.x=t.c.a(p.gcm())}return!0}, +lj(){var s=this,r=null,q=s.a,p=q.C() +if(A.a7(p))s.x=t.c.a(s.gey()) +else if(p==="'"||p==='"'){s.i(new A.j(r,r,"unexpected-char-in-doctype")) +q.W(p) +s.x=t.c.a(s.gey())}else if(p==null){s.i(new A.j(r,r,"eof-in-doctype")) +q=t.W.a(s.w) +q.e=!1 +s.i(q) +s.x=t.c.a(s.gE())}else{q.W(p) +s.x=t.c.a(s.gey())}return!0}, +lJ(){var s,r=this,q=null,p=r.a.C() +if(A.a7(p))return!0 +else if(p==='"'){t.W.a(r.w).b="" +r.x=t.c.a(r.gmF())}else if(p==="'"){t.W.a(r.w).b="" +r.x=t.c.a(r.gmH())}else if(p===">"){r.i(new A.j(q,q,"unexpected-end-of-doctype")) +s=t.W.a(r.w) +s.e=!1 +r.i(s) +r.x=t.c.a(r.gE())}else if(p==null){r.i(new A.j(q,q,"eof-in-doctype")) +s=t.W.a(r.w) +s.e=!1 +r.i(s) +r.x=t.c.a(r.gE())}else{r.i(new A.j(q,q,"unexpected-char-in-doctype")) +t.W.a(r.w).e=!1 +r.x=t.c.a(r.gcm())}return!0}, +mG(){var s,r=this,q=null,p=r.a.C() +if(p==='"')r.x=t.c.a(r.ghJ()) +else if(p==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) +s=t.W.a(r.w) +s.b=A.k(s.b)+"\ufffd"}else if(p===">"){r.i(new A.j(q,q,"unexpected-end-of-doctype")) +s=t.W.a(r.w) +s.e=!1 +r.i(s) +r.x=t.c.a(r.gE())}else if(p==null){r.i(new A.j(q,q,"eof-in-doctype")) +s=t.W.a(r.w) +s.e=!1 +r.i(s) +r.x=t.c.a(r.gE())}else{s=t.W.a(r.w) +s.b=A.k(s.b)+p}return!0}, +mI(){var s,r=this,q=null,p=r.a.C() +if(p==="'")r.x=t.c.a(r.ghJ()) +else if(p==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) +s=t.W.a(r.w) +s.b=A.k(s.b)+"\ufffd"}else if(p===">"){r.i(new A.j(q,q,"unexpected-end-of-doctype")) +s=t.W.a(r.w) +s.e=!1 +r.i(s) +r.x=t.c.a(r.gE())}else if(p==null){r.i(new A.j(q,q,"eof-in-doctype")) +s=t.W.a(r.w) +s.e=!1 +r.i(s) +r.x=t.c.a(r.gE())}else{s=t.W.a(r.w) +s.b=A.k(s.b)+p}return!0}, +lh(){var s,r=this,q=null,p="unexpected-char-in-doctype",o=r.a.C() +if(A.a7(o))r.x=t.c.a(r.glL()) +else if(o===">"){s=r.w +s.toString +r.i(s) +r.x=t.c.a(r.gE())}else if(o==='"'){r.i(new A.j(q,q,p)) +t.W.a(r.w).c="" +r.x=t.c.a(r.geL())}else if(o==="'"){r.i(new A.j(q,q,p)) +t.W.a(r.w).c="" +r.x=t.c.a(r.geM())}else if(o==null){r.i(new A.j(q,q,"eof-in-doctype")) +s=t.W.a(r.w) +s.e=!1 +r.i(s) +r.x=t.c.a(r.gE())}else{r.i(new A.j(q,q,p)) +t.W.a(r.w).e=!1 +r.x=t.c.a(r.gcm())}return!0}, +lM(){var s,r=this,q=null,p=r.a.C() +if(A.a7(p))return!0 +else if(p===">"){s=r.w +s.toString +r.i(s) +r.x=t.c.a(r.gE())}else if(p==='"'){t.W.a(r.w).c="" +r.x=t.c.a(r.geL())}else if(p==="'"){t.W.a(r.w).c="" +r.x=t.c.a(r.geM())}else if(p==null){r.i(new A.j(q,q,"eof-in-doctype")) +s=t.W.a(r.w) +s.e=!1 +r.i(s) +r.x=t.c.a(r.gE())}else{r.i(new A.j(q,q,"unexpected-char-in-doctype")) +t.W.a(r.w).e=!1 +r.x=t.c.a(r.gcm())}return!0}, +lm(){var s=this,r=null,q=s.a,p=q.C() +if(A.a7(p))s.x=t.c.a(s.gez()) +else if(p==="'"||p==='"'){s.i(new A.j(r,r,"unexpected-char-in-doctype")) +q.W(p) +s.x=t.c.a(s.gez())}else if(p==null){s.i(new A.j(r,r,"eof-in-doctype")) +q=t.W.a(s.w) +q.e=!1 +s.i(q) +s.x=t.c.a(s.gE())}else{q.W(p) +s.x=t.c.a(s.gez())}return!0}, +lK(){var s,r=this,q=null,p="unexpected-char-in-doctype",o=r.a.C() +if(A.a7(o))return!0 +else if(o==='"'){t.W.a(r.w).c="" +r.x=t.c.a(r.geL())}else if(o==="'"){t.W.a(r.w).c="" +r.x=t.c.a(r.geM())}else if(o===">"){r.i(new A.j(q,q,p)) +s=t.W.a(r.w) +s.e=!1 +r.i(s) +r.x=t.c.a(r.gE())}else if(o==null){r.i(new A.j(q,q,"eof-in-doctype")) +s=t.W.a(r.w) +s.e=!1 +r.i(s) +r.x=t.c.a(r.gE())}else{r.i(new A.j(q,q,p)) +t.W.a(r.w).e=!1 +r.x=t.c.a(r.gcm())}return!0}, +mN(){var s,r=this,q=null,p=r.a.C() +if(p==='"')r.x=t.c.a(r.ghK()) +else if(p==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) +s=t.W.a(r.w) +s.c=A.k(s.c)+"\ufffd"}else if(p===">"){r.i(new A.j(q,q,"unexpected-end-of-doctype")) +s=t.W.a(r.w) +s.e=!1 +r.i(s) +r.x=t.c.a(r.gE())}else if(p==null){r.i(new A.j(q,q,"eof-in-doctype")) +s=t.W.a(r.w) +s.e=!1 +r.i(s) +r.x=t.c.a(r.gE())}else{s=t.W.a(r.w) +s.c=A.k(s.c)+p}return!0}, +mO(){var s,r=this,q=null,p=r.a.C() +if(p==="'")r.x=t.c.a(r.ghK()) +else if(p==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) +s=t.W.a(r.w) +s.c=A.k(s.c)+"\ufffd"}else if(p===">"){r.i(new A.j(q,q,"unexpected-end-of-doctype")) +s=t.W.a(r.w) +s.e=!1 +r.i(s) +r.x=t.c.a(r.gE())}else if(p==null){r.i(new A.j(q,q,"eof-in-doctype")) +s=t.W.a(r.w) +s.e=!1 +r.i(s) +r.x=t.c.a(r.gE())}else{s=t.W.a(r.w) +s.c=A.k(s.c)+p}return!0}, +lk(){var s,r=this,q=null,p=r.a.C() +if(A.a7(p))return!0 +else if(p===">"){s=r.w +s.toString +r.i(s) +r.x=t.c.a(r.gE())}else if(p==null){r.i(new A.j(q,q,"eof-in-doctype")) +s=t.W.a(r.w) +s.e=!1 +r.i(s) +r.x=t.c.a(r.gE())}else{r.i(new A.j(q,q,"unexpected-char-in-doctype")) +r.x=t.c.a(r.gcm())}return!0}, +lP(){var s=this,r=s.a,q=r.C() +if(q===">"){r=s.w +r.toString +s.i(r) +s.x=t.c.a(s.gE())}else if(q==null){r.W(q) +r=s.w +r.toString +s.i(r) +s.x=t.c.a(s.gE())}return!0}, +lT(){var s,r,q,p=this,o=A.i([],t.s) +for(s=p.a,r=0;;){q=s.C() +if(q==null)break +if(q==="\x00"){p.i(new A.j(null,null,"invalid-codepoint")) +q="\ufffd"}B.a.l(o,q) +if(q==="]"&&r<2)++r +else{if(q===">"&&r===2){if(0>=o.length)return A.c(o,-1) +o.pop() +if(0>=o.length)return A.c(o,-1) +o.pop() +if(0>=o.length)return A.c(o,-1) +o.pop() +break}r=0}}if(o.length!==0){s=B.a.aQ(o) +p.i(new A.B(null,s))}p.x=t.c.a(p.gE()) +return!0}, +$iK:1, +jC(){return this.gjB().$0()}} +A.my.prototype={ +$0(){var s=this.a.b +s===$&&A.o() +return s}, +$S:8} +A.hH.prototype={ +l(a,b){var s,r,q,p,o,n,m,l,k,j=this,i="http://www.w3.org/1999/xhtml" +t.mV.a(b) +if(b!=null)for(s=A.w(j).h("V"),r=new A.V(j,s),r=new A.L(r,r.gm(0),s.h("L")),q=b.x,p=b.w,s=s.h("G.E"),o=0;r.p();){n=r.d +if(n==null)n=s.a(n) +if(n==null)break +m=n.w +if(m==null)m=i +l=n.x +k=p==null?i:p +if(new A.l(m,l).$s===new A.l(k,q).$s&&m===k&&l==q&&A.yj(n.b,b.b))++o +if(o===3){B.a.V(j.a,n) +break}}j.bV(0,b)}} +A.nL.prototype={ +aL(){var s=this +B.a.bb(s.c) +s.d.sm(0,0) +s.f=s.e=null +s.r=!1 +s.b=A.rj()}, +a0(a,b){var s,r,q,p,o,n,m,l,k,j="We should never reach this point",i="http://www.w3.org/1999/xhtml",h=a instanceof A.al,g=!1 +if(b!=null)switch(b){case"button":s=B.cE +r=B.Mi +break +case"list":s=B.cE +r=B.Mm +break +case"table":s=B.Mq +r=B.cD +break +case"select":s=B.Mo +r=B.cD +g=!0 +break +default:throw A.f(A.ce(j))}else{s=B.cE +r=B.cD}for(q=this.c,p=A.x(q).h("V<1>"),q=new A.V(q,p),q=new A.L(q,q.gm(0),p.h("L")),o=!h,p=p.h("G.E");q.p();){n=q.d +if(n==null)n=p.a(n) +if(o){m=n.x +m=m==null?a==null:m===a}else m=!1 +if(!m)m=h&&n===a +else m=!0 +if(m)return!0 +else{l=n.w +m=l==null +k=m?i:l +n=n.x +if(!s.D(0,new A.l(k,n)))n=r.D(0,new A.l(m?i:l,n)) +else n=!0 +if(g!==n)return!1}}throw A.f(A.ce(j))}, +b6(a){return this.a0(a,null)}, +aE(){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=h.d +if(g.gm(0)===0)return +s=g.a +r=s.length +q=r-1 +if(!(q>=0))return A.c(s,q) +p=s[q] +if(p==null||B.a.D(h.c,p))return +r=h.c +for(;;){if(!(p!=null&&!B.a.D(r,p)))break +if(q===0){q=-1 +break}--q +if(!(q>=0&&q=0&&q"),s=new A.V(s,r),s=new A.L(s,s.gm(0),r.h("L")),r=r.h("G.E");s.p();){q=s.d +if(q==null)q=r.a(q) +if(q==null)break +else if(q.x==a)return q}return null}, +cq(a,b){var s=b.gO(),r=A.rh(a.gaC()) +r.e=a.a +s.l(0,r)}, +i0(a){var s,r=a.b,q=a.w +if(q==null)q=this.a +this.b===$&&A.o() +s=A.pW(r,q===""?null:q) +s.saZ(a.e) +s.e=a.a +return s}, +M(a){if(this.r)return this.nb(a) +return this.ia(a)}, +ia(a){var s,r,q=a.b,p=a.w +if(p==null)p=this.a +this.b===$&&A.o() +s=A.pW(q,p===""?null:p) +s.saZ(a.e) +s.e=a.a +r=this.c +B.a.gA(r).gO().l(0,s) +B.a.l(r,s) +return s}, +nb(a){var s,r,q=this,p=q.i0(a),o=q.c +if(!B.hQ.D(0,B.a.gA(o).x))return q.ia(a) +else{s=q.e1() +r=s[1] +if(r==null)s[0].gO().l(0,p) +else s[0].na(p,r) +B.a.l(o,p)}return p}, +bN(a,b){var s,r=this.c,q=B.a.gA(r) +if(this.r)r=!B.hQ.D(0,B.a.gA(r).x) +else r=!0 +if(r)A.rY(q,a,b,null) +else{s=this.e1() +r=s[0] +r.toString +A.rY(r,a,b,t.mV.a(s[1]))}}, +e1(){var s,r,q,p,o=this.c,n=A.x(o).h("V<1>"),m=new A.V(o,n) +m=new A.L(m,m.gm(0),n.h("L")) +n=n.h("G.E") +for(;;){if(!m.p()){s=null +break}r=m.d +s=r==null?n.a(r):r +if(s.x==="table")break}q=null +if(s!=null){p=s.a +if(p!=null)q=s +else{n=B.a.al(o,s)-1 +if(!(n>=0&&n=o.length)return A.c(o,0) +p=o[0]}return A.i([p,q],t.hg)}, +bS(a){var s=this.c,r=B.a.gA(s).x +if(r!=a&&B.a.D(B.bH,r)){if(0>=s.length)return A.c(s,-1) +s.pop() +this.bS(a)}}, +ca(){return this.bS(null)}} +A.pv.prototype={ +$2(a,b){var s,r,q,p,o,n,m,l,k,j=new A.W(""),i="%("+A.q(a)+")" +for(s=this.a,r=i.length,q=J.ci(b),p=0,o="";n=s.a,m=B.b.ap(n,i,p),m>=0;){j.a=o+B.b.t(n,p,m) +m+=r +l=m +for(;;){o=s.a +if(!(lm){k=A.lx(B.b.t(s.a,m,l),null) +m=l}else k=0 +o=s.a +if(!(m")).aQ(0) +p=A.i([0],t.Z) +r=(q.length===0?B.hT:new A.d3(q)).a +o=new A.fR(r,0,0) +n=0 +while(o.fQ(1,o.c)){m=o.d +n+=(m==null?o.d=B.b.t(r,o.b,o.c):m).length +B.a.l(p,n)}for(r=this.c,o=this.a,l=t.N,k=t.X,j=t.ke,i=0,h=0;i2048)g=i+f+1 +e=p.length +for(;;){d=h+1 +if(d=0))return A.c(p,d) +c=p[d]<=g}else c=!1 +if(!c)break +h=d}if(!(h>=0&&h=0&&da3){a5=A.ac(l,k) +a5.a1(0,a1) +a5.k(0,"text",B.b.t(a2,a3,a4)) +B.a.l(b,a5)}a+=c +if(a>=g)break}B.a.l(r,A.v(["kind",o.b,"offset",o.a+i,"length",g-i,"runs",b,"paragraphEnd",g===s],l,k))}o.a=o.a+(s+1)}B.a.bb(a6)}, +$S:1} +A.pg.prototype={ +$2(a,b){return A.aw(a)+A.q(t.f.a(b).n(0,"text")).length}, +$S:19} +A.ph.prototype={ +$1(a){return B.b.bk(A.q(t.f.a(a).n(0,"text"))).length!==0}, +$S:44} +A.pi.prototype={ +$1(a){return A.q(t.f.a(a).n(0,"text"))}, +$S:45} +A.pj.prototype={ +$2(a,b){var s,r +t.f.a(b) +s=this.a +if(!s.c){r=A.a4("\\s+",!0) +a=A.cO(a,r," ")}r=this.b +if(r.length===0&&!s.c)a=B.b.og(a) +if(a.length!==0){s=A.aC(t.N,t.X) +s.k(0,"text",a) +s.a1(0,b) +B.a.l(r,s)}}, +$S:46} +A.pk.prototype={ +$2(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this +t.f.a(b) +if(a instanceof A.bY){s=J.ax(a.w) +a.w=s +f.b.$2(s,b) +return}if(!(a instanceof A.a6))return +r=a.x +if(r==null)r="" +q=B.Mj.D(0,r) +s=f.a +p=s.b +o=s.c +if(q){f.c.$0() +s.b=r +s.c=r==="pre"}n=a.geV().length===0?a.b.n(0,"name"):a.geV() +if(n!=null&&n.length!==0)f.d.k(0,n,s.a+B.a.cQ(f.e,0,new A.pl(),t.S)) +m=t.N +l=t.X +k=A.vX(b,m,l) +if(B.Mp.D(0,r))k.k(0,"bold",!0) +if(B.Mn.D(0,r))k.k(0,"italic",!0) +if(r==="u"||r==="a")k.k(0,"underline",!0) +if(r==="s"||r==="del")k.k(0,"strike",!0) +if(r==="code"||r==="pre")k.k(0,"code",!0) +if(r==="br"){j=A.aC(m,l) +j.k(0,"text","\n") +j.a1(0,k) +B.a.l(f.e,j)}if(r==="li")f.b.$2("\u2022 ",k) +if(r==="td"||r==="th")if(f.e.length!==0)f.b.$2(" | ",k) +if(r==="img"){f.c.$0() +i=a.b.n(0,"src") +if(i!=null){k=a.b.n(0,"width") +h=A.q9(k==null?"":k) +k=a.b.n(0,"height") +g=A.q9(k==null?"":k) +k=s.a +j=a.b.n(0,"alt") +if(j==null)j="Illustration" +B.a.l(f.f,A.v(["kind","image","offset",k,"length",1,"src",i,"alt",j,"aspect",h!=null&&g!=null&&h>0&&g>0?h/g:1.5],m,l)) +s.a+=2}}else for(m=a.gO().a,l=A.x(m),m=new J.J(m,m.length,l.h("J<1>")),l=l.c;m.p();){j=m.d +f.$2(j==null?l.a(j):j,k)}if(q){f.c.$0() +s.b=p +s.c=o}}, +$S:47} +A.pl.prototype={ +$2(a,b){return A.aw(a)+A.q(t.f.a(b).n(0,"text")).length}, +$S:19} +A.lS.prototype={ +eI(a,b){var s=0,r=A.br(t.f),q,p=this +var $async$eI=A.bs(function(c,d){if(c===1)return A.bo(d,r) +for(;;)switch(s){case 0:if(a==="open"){q=p.dn(t.ev.a(b)) +s=1 +break}if(a==="chapter"){q=p.cH(A.aw(b)) +s=1 +break}throw A.f(A.U("Unknown EPUB worker command: "+a,null)) +case 1:return A.bp(q,r)}}) +return A.bq($async$eI,r)}, +dn(a2){var s=0,r=A.br(t.f),q,p=this,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1 +var $async$dn=A.bs(function(a3,a4){if(a3===1)return A.bo(a4,r) +for(;;)switch(s){case 0:s=3 +return A.c3(A.m6(a2),$async$dn) +case 3:c=a4 +b=c.e +a=b.a +a0=a.b +a1=a0==null?null:B.a.aH(a0.ay,new A.lU()) +if(a1===!0)throw A.f(B.ih) +o=A.vu(c) +a1=c.f +n=a1==null?null:a1.a +if(n==null)n=A.aC(t.N,t.am) +a1=A.aC(t.jv,t.w) +m=a.c.a +if(m==null)m=A.i([],t.bz) +l=m.length +k=0 +for(;k>") +d=A.aV(new A.R(o,b.h("d(1)").a(new A.m_(i)),a1),a1.h("G.E"))}else d=new A.lV(i).$1(e) +p.a=c +p.b=i +p.c.bb(0) +q=A.v(["count",i.length,"toc",d],t.N,t.X) +s=1 +break +case 1:return A.bp(q,r)}}) +return A.bq($async$dn,r)}, +cH(a){var s=0,r=A.br(t.f),q,p=this,o,n,m,l,k,j,i,h,g,f +var $async$cH=A.bs(function(b,c){if(b===1)return A.bo(c,r) +for(;;)switch(s){case 0:g=p.c +f=g.V(0,a) +if(f!=null){g.k(0,a,f) +q=f +s=1 +break}if(p.a==null||a<0||a>=p.b.length)throw A.f(B.iM) +o=p.b +if(!(a>=0&&a")).cQ(0,0,new A.lT(),t.S) +j=j.h("aU<1>") +for(;;){if(!(g.a>3||i>4194304))break +h=new A.aU(g,j).gF(0) +if(!h.p())A.O(A.bi()) +i-=A.q(g.V(0,h.gB()).n(0,"html")).length}q=o +s=1 +break +case 1:return A.bp(q,r)}}) +return A.bq($async$cH,r)}, +ds(a6,a7,a8){var s=0,r=A.br(t.N),q,p=this,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5 +var $async$ds=A.bs(function(a9,b0){if(a9===1)return A.bo(b0,r) +for(;;)switch(s){case 0:a5=A.uz(a6) +for(o=B.hR.gF(B.hR),n=t.il,m=t.kU;o.p();){l=o.gB() +k=A.i([],n) +j=A.i([],m) +i=A.zj(l,j) +if(i==null||j.length!==0)A.O(A.aB("'"+l+"' is not a valid selector: "+A.k(j),null,null)) +new A.d0().f8(a5,i,k) +l=A.i(k.slice(0),n) +h=l.length +g=0 +for(;g") +a0=A.vQ(new A.b8(new A.bb(new A.dp(d,a1),a1.h("C(h.E)").a(new A.m4(p,a)),a1.h("bb")),a1.h("bg(h.E)").a(new A.m5()),a1.h("b8")),l)}if(a0==null){d=f.a +if(d!=null)B.a.V(d.gO().a,f) +s=4 +break}s=6 +return A.c3(a0.d1(),$async$ds) +case 6:a2=b0 +a3=a0.d +if(!B.b.T(a3.toLowerCase(),"image/")){d=f.a +if(d!=null)B.a.V(d.gO().a,f) +s=4 +break}d=f.b +m.a(a2) +d.k(0,"src","data:"+a3+";base64,"+B.cJ.geN().bL(a2)) +case 4:o.length===n||(0,A.a1)(o),++g +s=3 +break +case 5:a4=new A.W("") +a5.cf(a4) +o=a4.a +q=o.charCodeAt(0)==0?o:o +s=1 +break +case 1:return A.bp(q,r)}}) +return A.bq($async$ds,r)}, +kT(a){var s,r,q,p,o,n,m,l,k="style",j=a.b,i=A.w(j).h("aU<1>") +j=A.aV(new A.aU(j,i),i.h("h.E")) +i=j.length +s=0 +for(;s=n.length)return A.c(n,-1) +n.pop() +for(s=b.split("/"),r=s.length,q=0;q=o)return A.c(n,-1) +n.pop()}}else if(p!=="."&&p.length!==0)B.a.l(n,p)}return B.a.aq(n,"/")}} +A.lU.prototype={ +$1(a){var s,r="rendition:layout" +t.az.a(a) +if(a.e===r||a.a===r)s=a.b==="pre-paginated"||a.r.n(0,"content")==="pre-paginated" +else s=!1 +return s}, +$S:48} +A.m1.prototype={ +$1(a){var s,r,q,p=B.a.gbv(a.c.split("#")) +if(this.a.l(0,p))B.a.l(this.b,a) +for(s=a.e,r=s.length,q=0;q>") +p=A.aV(new A.R(p,o.h("d(1)").a(this),n),n.h("G.E")) +return A.v(["title",a.b,"index",q,"anchor",a.d,"children",p],t.N,t.X)}, +$S:50} +A.m0.prototype={ +$1(a){return t.k5.a(a).c===this.a}, +$S:32} +A.lV.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k,j,i,h,g +t.nw.a(a) +s=A.i([],t.ke) +for(r=a.length,q=t.N,p=t.X,o=this.a,n=0;n")).cp(0,new A.lY(),new A.lZ()) +if(k.gdK()){l=k.gcR() +l=A.d9(l,0,l.length,B.E,!1)}else l=null +B.a.l(s,A.v(["title",g,"index",j,"anchor",l,"children",i],q,p))}return s}, +$S:52} +A.lW.prototype={ +$1(a){return t.k5.a(a).c===this.a}, +$S:32} +A.lX.prototype={ +$1(a){var s=B.b.bk(t.gK.a(a).a) +return s}, +$S:53} +A.lY.prototype={ +$1(a){return A.q(a).length!==0}, +$S:4} +A.lZ.prototype={ +$0(){return"Chapter"}, +$S:8} +A.lT.prototype={ +$2(a,b){return A.aw(a)+A.q(t.f.a(b).n(0,"html")).length}, +$S:19} +A.m4.prototype={ +$1(a){return B.b.d4(B.b.d4(t.kY.a(a).a,A.a4("^OEBPS/",!0),""),A.a4("^/",!0),"")===B.b.d4(B.b.d4(this.b,A.a4("^OEBPS/",!0),""),A.a4("^/",!0),"")}, +$S:54} +A.m5.prototype={ +$1(a){return t.kY.a(a).b}, +$S:55} +A.m2.prototype={ +$1(a){return B.b.bk(A.q(a))}, +$S:33} +A.m3.prototype={ +$1(a){var s +A.q(a) +if(a.length!==0){s=A.a4("(?:url\\s*\\(|@import|expression\\s*\\()",!1) +s=!s.b.test(a)}else s=!1 +return s}, +$S:4} +A.f9.prototype={$iah:1} +A.lL.prototype={ +la(a){var s,r,q=t.mf +A.ua("absolute",A.i([a,null,null,null,null,null,null,null,null,null,null,null,null,null,null],q)) +s=this.a +s=s.aU(a)>0&&!s.bO(a) +if(s)return a +s=A.uj() +r=A.i([s,a,null,null,null,null,null,null,null,null,null,null,null,null,null,null],q) +A.ua("join",r) +return this.nk(new A.a_(r,t.lS))}, +nk(a){var s,r,q,p,o,n,m,l,k,j +t.bq.a(a) +for(s=a.$ti,r=s.h("C(h.E)").a(new A.lM()),q=a.gF(0),s=new A.cF(q,r,s.h("cF")),r=this.a,p=!1,o=!1,n="";s.p();){m=q.gB() +if(r.bO(m)&&o){l=A.jq(m,r) +k=n.charCodeAt(0)==0?n:n +n=B.b.t(k,0,r.cv(k,!0)) +l.b=n +if(r.cW(n))B.a.k(l.e,0,r.gcc()) +n=l.j(0)}else if(r.aU(m)>0){o=!r.bO(m) +n=m}else{j=m.length +if(j!==0){if(0>=j)return A.c(m,0) +j=r.eG(m[0])}else j=!1 +if(!j)if(p)n+=r.gcc() +n+=m}p=r.cW(m)}return n.charCodeAt(0)==0?n:n}, +d9(a,b){var s=A.jq(b,this.a),r=s.d,q=A.x(r),p=q.h("bb<1>") +r=A.aV(new A.bb(r,q.h("C(1)").a(new A.lN()),p),p.h("h.E")) +s.snE(r) +r=s.b +if(r!=null)B.a.bx(s.d,0,r) +return s.d}, +dP(a){var s +if(!this.kB(a))return a +s=A.jq(a,this.a) +s.f1() +return s.j(0)}, +kB(a){var s,r,q,p,o,n,m,l=this.a,k=l.aU(a) +if(k!==0){if(l===$.lz())for(s=a.length,r=0;r=0))return A.c(a,r) +n=a.charCodeAt(r) +if(l.by(n)){if(l===$.lz()&&n===47)return!0 +if(p!=null&&l.by(p))return!0 +if(p===46)m=o==null||o===46||l.by(o) +else m=!1 +if(m)return!0}}if(p==null)return!0 +if(l.by(p))return!0 +if(p===46)l=o==null||l.by(o)||o===46 +else l=!1 +if(l)return!0 +return!1}, +o6(a){var s,r,q,p,o,n,m,l=this,k='Unable to find a path to "',j=l.a,i=j.aU(a) +if(i<=0)return l.dP(a) +s=A.uj() +if(j.aU(s)<=0&&j.aU(a)>0)return l.dP(a) +if(j.aU(a)<=0||j.bO(a))a=l.la(a) +if(j.aU(a)<=0&&j.aU(s)>0)throw A.f(A.rD(k+a+'" from "'+s+'".')) +r=A.jq(s,j) +r.f1() +q=A.jq(a,j) +q.f1() +i=r.d +p=i.length +if(p!==0){if(0>=p)return A.c(i,0) +i=i[0]==="."}else i=!1 +if(i)return q.j(0) +i=r.b +p=q.b +if(i!=p)i=i==null||p==null||!j.f4(i,p) +else i=!1 +if(i)return q.j(0) +for(;;){i=r.d +p=i.length +o=!1 +if(p!==0){n=q.d +m=n.length +if(m!==0){if(0>=p)return A.c(i,0) +i=i[0] +if(0>=m)return A.c(n,0) +n=j.f4(i,n[0]) +i=n}else i=o}else i=o +if(!i)break +B.a.d2(r.d,0) +B.a.d2(r.e,1) +B.a.d2(q.d,0) +B.a.d2(q.e,1)}i=r.d +p=i.length +if(p!==0){if(0>=p)return A.c(i,0) +i=i[0]===".."}else i=!1 +if(i)throw A.f(A.rD(k+a+'" from "'+s+'".')) +i=t.N +B.a.eX(q.d,0,A.aD(p,"..",!1,i)) +B.a.k(q.e,0,"") +B.a.eX(q.e,1,A.aD(r.d.length,j.gcc(),!1,i)) +j=q.d +i=j.length +if(i===0)return"." +if(i>1&&B.a.gA(j)==="."){B.a.d3(q.d) +j=q.e +if(0>=j.length)return A.c(j,-1) +j.pop() +if(0>=j.length)return A.c(j,-1) +j.pop() +B.a.l(j,"")}q.b="" +q.iu() +return q.j(0)}, +ik(a){var s,r,q=this,p=A.u3(a) +if(p.gaV()==="file"&&q.a===$.hF())return p.j(0) +else if(p.gaV()!=="file"&&p.gaV()!==""&&q.a!==$.hF())return p.j(0) +s=q.dP(q.a.f3(A.u3(p))) +r=q.o6(s) +return q.d9(0,r).length>q.d9(0,s).length?s:r}} +A.lM.prototype={ +$1(a){return A.q(a)!==""}, +$S:4} +A.lN.prototype={ +$1(a){return A.q(a).length!==0}, +$S:4} +A.pc.prototype={ +$1(a){A.hB(a) +return a==null?"null":'"'+a+'"'}, +$S:57} +A.e1.prototype={ +iP(a){var s,r=this.aU(a) +if(r>0)return B.b.t(a,0,r) +if(this.bO(a)){if(0>=a.length)return A.c(a,0) +s=a[0]}else s=null +return s}, +f4(a,b){return a===b}} +A.ne.prototype={ +iu(){var s,r,q=this +for(;;){s=q.d +if(!(s.length!==0&&B.a.gA(s)===""))break +B.a.d3(q.d) +s=q.e +if(0>=s.length)return A.c(s,-1) +s.pop()}s=q.e +r=s.length +if(r!==0)B.a.k(s,r-1,"")}, +f1(){var s,r,q,p,o,n,m=this,l=A.i([],t.s) +for(s=m.d,r=s.length,q=0,p=0;p=n)return A.c(l,-1) +l.pop()}else ++q}else B.a.l(l,o)}if(m.b==null)B.a.eX(l,0,A.aD(q,"..",!1,t.N)) +if(l.length===0&&m.b==null)B.a.l(l,".") +m.d=l +s=m.a +m.e=A.aD(l.length+1,s.gcc(),!0,t.N) +r=m.b +if(r==null||l.length===0||!s.cW(r))B.a.k(m.e,0,"") +r=m.b +if(r!=null&&s===$.lz())m.b=A.cO(r,"/","\\") +m.iu()}, +j(a){var s,r,q,p,o,n=this.b +n=n!=null?n:"" +for(s=this.d,r=s.length,q=this.e,p=q.length,o=0;o=0))return A.c(a,s) +s=a.charCodeAt(s)!==47 +r=s}else r=!1 +return r}, +cv(a,b){var s=a.length +if(s!==0){if(0>=s)return A.c(a,0) +s=a.charCodeAt(0)===47}else s=!1 +if(s)return 1 +return 0}, +aU(a){return this.cv(a,!1)}, +bO(a){return!1}, +f3(a){var s +if(a.gaV()===""||a.gaV()==="file"){s=a.gaT() +return A.d9(s,0,s.length,B.E,!1)}throw A.f(A.U("Uri "+a.j(0)+" must have scheme 'file:'.",null))}, +ga7(){return"posix"}, +gcc(){return"/"}} +A.k1.prototype={ +eG(a){return B.b.D(a,"/")}, +by(a){return a===47}, +cW(a){var s,r=a.length +if(r===0)return!1 +s=r-1 +if(!(s>=0))return A.c(a,s) +if(a.charCodeAt(s)!==47)return!0 +return B.b.bu(a,"://")&&this.aU(a)===r}, +cv(a,b){var s,r,q,p=a.length +if(p===0)return 0 +if(0>=p)return A.c(a,0) +if(a.charCodeAt(0)===47)return 1 +for(s=0;s=s)return A.c(a,0) +s=a.charCodeAt(0)===47}else s=!1 +return s}, +f3(a){return a.j(0)}, +ga7(){return"url"}, +gcc(){return"/"}} +A.k7.prototype={ +eG(a){return B.b.D(a,"/")}, +by(a){return a===47||a===92}, +cW(a){var s,r=a.length +if(r===0)return!1 +s=r-1 +if(!(s>=0))return A.c(a,s) +s=a.charCodeAt(s) +return!(s===47||s===92)}, +cv(a,b){var s,r,q=a.length +if(q===0)return 0 +if(0>=q)return A.c(a,0) +if(a.charCodeAt(0)===47)return 1 +if(a.charCodeAt(0)===92){if(q>=2){if(1>=q)return A.c(a,1) +s=a.charCodeAt(1)!==92}else s=!0 +if(s)return 1 +r=B.b.ap(a,"\\",2) +if(r>0){r=B.b.ap(a,"\\",r+1) +if(r>0)return r}return q}if(q<3)return 0 +if(!A.us(a.charCodeAt(0)))return 0 +if(a.charCodeAt(1)!==58)return 0 +q=a.charCodeAt(2) +if(!(q===47||q===92))return 0 +return 3}, +aU(a){return this.cv(a,!1)}, +bO(a){return this.aU(a)===1}, +f3(a){var s,r +if(a.gaV()!==""&&a.gaV()!=="file")throw A.f(A.U("Uri "+a.j(0)+" must have scheme 'file:'.",null)) +s=a.gaT() +if(a.gc5()===""){if(s.length>=3&&B.b.T(s,"/")&&A.um(s,1)!=null)s=B.b.d4(s,"/","")}else s="\\\\"+a.gc5()+s +r=A.cO(s,"/","\\") +return A.d9(r,0,r.length,B.E,!1)}, +m2(a,b){var s +if(a===b)return!0 +if(a===47)return b===92 +if(a===92)return b===47 +if((a^b)!==32)return!1 +s=a|32 +return s>=97&&s<=122}, +f4(a,b){var s,r,q +if(a===b)return!0 +s=a.length +r=b.length +if(s!==r)return!1 +for(q=0;q=0)return A.c(s,0) +return!1}return!0}return!1}, +gq(a){return J.A(this.a)}, +$iny:1} +A.fr.prototype={ +gF(a){var s=this +return new A.fs(s.a,s.b,!1,s.c,s.$ti.h("fs<1>"))}} +A.fs.prototype={ +gB(){var s=this.e +s===$&&A.o() +return s}, +p(){var s,r,q,p,o,n=this +for(s=n.b,r=s.length,q=n.a;p=n.d,p<=r;){o=q.a.I(s,p) +p=n.d +if(o<0)n.d=p+1 +else{n.e=n.$ti.c.a(q.H(new A.cb(s,p)).gR()) +s=n.d +if(s===o)n.d=s+1 +else n.d=o +return!0}}return!1}, +$iK:1} +A.cp.prototype={ +H(a){var s,r=a.a,q=a.b,p=this.a.I(r,q) +if(p<0)return new A.F(this.b,r,q) +s=B.b.t(r,q,p) +return new A.Q(s,r,p,t.y)}, +I(a,b){return this.a.I(a,b)}, +j(a){var s=this.bE(0) +return s+"["+this.b+"]"}} +A.fq.prototype={ +H(a){var s,r,q=this.a.H(a) +if(q instanceof A.F)return q +s=this.$ti +r=s.y[1].a(this.b.$1(q.gR())) +return new A.Q(r,q.a,q.b,s.h("Q<2>"))}, +I(a,b){var s=this.a.I(a,b) +return s}} +A.fU.prototype={ +H(a){var s,r,q,p=this.a.H(a) +if(p instanceof A.F)return p +s=p.b +r=this.$ti +q=r.h("cB<1>") +q=q.a(new A.cB(p.gR(),a.a,a.b,s,q)) +return new A.Q(q,p.a,s,r.h("Q>"))}, +I(a,b){return this.a.I(a,b)}} +A.pK.prototype={ +$1(a){return this.a.H(new A.cb(A.q(a),0)).gR()}, +$S:58} +A.p8.prototype={ +$1(a){var s,r,q +A.q(a) +s=this.a +r=s?new A.bV(a):new A.af(a) +q=r.gbU(r) +r=s?new A.bV(a):new A.af(a) +return new A.aa(q,r.gbU(r))}, +$S:59} +A.p9.prototype={ +$3(a,b,c){var s,r,q +A.q(a) +A.q(b) +A.q(c) +s=this.a +r=s?new A.bV(a):new A.af(a) +q=r.gbU(r) +r=s?new A.bV(c):new A.af(c) +return new A.aa(q,r.gbU(r))}, +$S:60} +A.ca.prototype={ +j(a){return A.cN(this).j(0)}} +A.fM.prototype={ +b9(a){return this.a===a}, +j(a){return this.cG(0)+"("+this.a+")"}} +A.ck.prototype={ +b9(a){return this.a}, +j(a){return this.cG(0)+"("+this.a+")"}} +A.j3.prototype={ +jU(a){var s,r,q,p,o,n,m,l,k,j,i,h +for(s=a.length,r=this.a,q=this.c,p=q.length,o=q.$flags|0,n=0;n>>0}}}, +b9(a){var s=this.a,r=!1 +if(s<=a)if(a<=this.b){s=a-s +s=(this.c[B.f.b5(s,5)]&B.d2[s&31])>>>0!==0}else s=r +else s=r +return s}, +j(a){var s=this +return s.cG(0)+"("+s.a+", "+s.b+", "+A.k(s.c)+")"}} +A.ji.prototype={ +b9(a){return!this.a.b9(a)}, +j(a){return this.cG(0)+"("+this.a.j(0)+")"}} +A.aa.prototype={ +b9(a){return this.a<=a&&a<=this.b}, +j(a){return this.cG(0)+"("+this.a+", "+this.b+")"}} +A.k6.prototype={ +b9(a){if(a<256)switch(a){case 9:case 10:case 11:case 12:case 13:case 32:case 133:case 160:return!0 +default:return!1}switch(a){case 5760:case 8192:case 8193:case 8194:case 8195:case 8196:case 8197:case 8198:case 8199:case 8200:case 8201:case 8202:case 8232:case 8233:case 8239:case 8287:case 12288:case 65279:return!0 +default:return!1}}} +A.pS.prototype={ +$1(a){var s +A.aw(a) +s=B.rn.n(0,a) +if(s!=null)return s +if(a<32)return"\\x"+B.b.nB(B.f.d6(a,16),2,"0") +return A.a3(a)}, +$S:37} +A.pJ.prototype={ +$1(a){A.aw(a) +return new A.aa(a,a)}, +$S:62} +A.pH.prototype={ +$2(a,b){var s,r=t.eN +r.a(a) +r.a(b) +r=a.a +s=b.a +return r!==s?r-s:a.b-b.b}, +$S:63} +A.pI.prototype={ +$2(a,b){A.aw(a) +t.eN.a(b) +return a+(b.b-b.a+1)}, +$S:64} +A.eO.prototype={ +H(a){var s,r,q,p,o=this.a,n=o[0].H(a) +if(!(n instanceof A.F))return n +for(s=o.length,r=this.b,q=n,p=1;p=0)return q}return q}} +A.at.prototype={ +gaN(){return A.i([this.a],t.U)}, +b8(a,b){var s=this +s.bW(a,b) +if(s.a.u(0,a))s.a=A.w(s).h("n").a(b)}} +A.fH.prototype={ +H(a){var s,r,q=this.a.H(a) +if(q instanceof A.F)return q +s=this.b.H(q) +if(s instanceof A.F)return s +r=this.$ti +q=r.h("+(1,2)").a(new A.l(q.gR(),s.gR())) +return new A.Q(q,s.a,s.b,r.h("Q<+(1,2)>"))}, +I(a,b){b=this.a.I(a,b) +if(b<0)return-1 +b=this.b.I(a,b) +if(b<0)return-1 +return b}, +gaN(){return A.i([this.a,this.b],t.U)}, +b8(a,b){var s=this +s.bW(a,b) +if(s.a.u(0,a))s.a=s.$ti.h("n<1>").a(b) +if(s.b.u(0,a))s.b=s.$ti.h("n<2>").a(b)}} +A.nr.prototype={ +$1(a){this.b.h("@<0>").v(this.c).h("+(1,2)").a(a) +return this.a.$2(a.a,a.b)}, +$S(){return this.d.h("@<0>").v(this.b).v(this.c).h("1(+(2,3))")}} +A.dA.prototype={ +H(a){var s,r,q,p=this,o=p.a.H(a) +if(o instanceof A.F)return o +s=p.b.H(o) +if(s instanceof A.F)return s +r=p.c.H(s) +if(r instanceof A.F)return r +q=p.$ti +s=q.h("+(1,2,3)").a(new A.hl(o.gR(),s.gR(),r.gR())) +return new A.Q(s,r.a,r.b,q.h("Q<+(1,2,3)>"))}, +I(a,b){b=this.a.I(a,b) +if(b<0)return-1 +b=this.b.I(a,b) +if(b<0)return-1 +b=this.c.I(a,b) +if(b<0)return-1 +return b}, +gaN(){return A.i([this.a,this.b,this.c],t.U)}, +b8(a,b){var s=this +s.bW(a,b) +if(s.a.u(0,a))s.a=s.$ti.h("n<1>").a(b) +if(s.b.u(0,a))s.b=s.$ti.h("n<2>").a(b) +if(s.c.u(0,a))s.c=s.$ti.h("n<3>").a(b)}} +A.ns.prototype={ +$1(a){var s=this +s.b.h("@<0>").v(s.c).v(s.d).h("+(1,2,3)").a(a) +return s.a.$3(a.a,a.b,a.c)}, +$S(){var s=this +return s.e.h("@<0>").v(s.b).v(s.c).v(s.d).h("1(+(2,3,4))")}} +A.fI.prototype={ +H(a){var s,r,q,p,o=this,n=o.a.H(a) +if(n instanceof A.F)return n +s=o.b.H(n) +if(s instanceof A.F)return s +r=o.c.H(s) +if(r instanceof A.F)return r +q=o.d.H(r) +if(q instanceof A.F)return q +p=o.$ti +r=p.h("+(1,2,3,4)").a(new A.hm([n.gR(),s.gR(),r.gR(),q.gR()])) +return new A.Q(r,q.a,q.b,p.h("Q<+(1,2,3,4)>"))}, +I(a,b){var s=this +b=s.a.I(a,b) +if(b<0)return-1 +b=s.b.I(a,b) +if(b<0)return-1 +b=s.c.I(a,b) +if(b<0)return-1 +b=s.d.I(a,b) +if(b<0)return-1 +return b}, +gaN(){var s=this +return A.i([s.a,s.b,s.c,s.d],t.U)}, +b8(a,b){var s=this +s.bW(a,b) +if(s.a.u(0,a))s.a=s.$ti.h("n<1>").a(b) +if(s.b.u(0,a))s.b=s.$ti.h("n<2>").a(b) +if(s.c.u(0,a))s.c=s.$ti.h("n<3>").a(b) +if(s.d.u(0,a))s.d=s.$ti.h("n<4>").a(b)}} +A.nu.prototype={ +$1(a){var s=this,r=s.b.h("@<0>").v(s.c).v(s.d).v(s.e).h("+(1,2,3,4)").a(a).a +return s.a.$4(r[0],r[1],r[2],r[3])}, +$S(){var s=this +return s.f.h("@<0>").v(s.b).v(s.c).v(s.d).v(s.e).h("1(+(2,3,4,5))")}} +A.fJ.prototype={ +H(a){var s,r,q,p,o,n=this,m=n.a.H(a) +if(m instanceof A.F)return m +s=n.b.H(m) +if(s instanceof A.F)return s +r=n.c.H(s) +if(r instanceof A.F)return r +q=n.d.H(r) +if(q instanceof A.F)return q +p=n.e.H(q) +if(p instanceof A.F)return p +o=n.$ti +q=o.h("+(1,2,3,4,5)").a(new A.hn([m.gR(),s.gR(),r.gR(),q.gR(),p.gR()])) +return new A.Q(q,p.a,p.b,o.h("Q<+(1,2,3,4,5)>"))}, +I(a,b){var s=this +b=s.a.I(a,b) +if(b<0)return-1 +b=s.b.I(a,b) +if(b<0)return-1 +b=s.c.I(a,b) +if(b<0)return-1 +b=s.d.I(a,b) +if(b<0)return-1 +b=s.e.I(a,b) +if(b<0)return-1 +return b}, +gaN(){var s=this +return A.i([s.a,s.b,s.c,s.d,s.e],t.U)}, +b8(a,b){var s=this +s.bW(a,b) +if(s.a.u(0,a))s.a=s.$ti.h("n<1>").a(b) +if(s.b.u(0,a))s.b=s.$ti.h("n<2>").a(b) +if(s.c.u(0,a))s.c=s.$ti.h("n<3>").a(b) +if(s.d.u(0,a))s.d=s.$ti.h("n<4>").a(b) +if(s.e.u(0,a))s.e=s.$ti.h("n<5>").a(b)}} +A.nv.prototype={ +$1(a){var s=this,r=s.b.h("@<0>").v(s.c).v(s.d).v(s.e).v(s.f).h("+(1,2,3,4,5)").a(a).a +return s.a.$5(r[0],r[1],r[2],r[3],r[4])}, +$S(){var s=this +return s.r.h("@<0>").v(s.b).v(s.c).v(s.d).v(s.e).v(s.f).h("1(+(2,3,4,5,6))")}} +A.fK.prototype={ +H(a){var s,r,q,p,o,n,m,l,k=this,j=k.a.H(a) +if(j instanceof A.F)return j +s=k.b.H(j) +if(s instanceof A.F)return s +r=k.c.H(s) +if(r instanceof A.F)return r +q=k.d.H(r) +if(q instanceof A.F)return q +p=k.e.H(q) +if(p instanceof A.F)return p +o=k.f.H(p) +if(o instanceof A.F)return o +n=k.r.H(o) +if(n instanceof A.F)return n +m=k.w.H(n) +if(m instanceof A.F)return m +l=k.$ti +n=l.h("+(1,2,3,4,5,6,7,8)").a(new A.ho([j.gR(),s.gR(),r.gR(),q.gR(),p.gR(),o.gR(),n.gR(),m.gR()])) +return new A.Q(n,m.a,m.b,l.h("Q<+(1,2,3,4,5,6,7,8)>"))}, +I(a,b){var s=this +b=s.a.I(a,b) +if(b<0)return-1 +b=s.b.I(a,b) +if(b<0)return-1 +b=s.c.I(a,b) +if(b<0)return-1 +b=s.d.I(a,b) +if(b<0)return-1 +b=s.e.I(a,b) +if(b<0)return-1 +b=s.f.I(a,b) +if(b<0)return-1 +b=s.r.I(a,b) +if(b<0)return-1 +b=s.w.I(a,b) +if(b<0)return-1 +return b}, +gaN(){var s=this +return A.i([s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w],t.U)}, +b8(a,b){var s=this +s.bW(a,b) +if(s.a.u(0,a))s.a=s.$ti.h("n<1>").a(b) +if(s.b.u(0,a))s.b=s.$ti.h("n<2>").a(b) +if(s.c.u(0,a))s.c=s.$ti.h("n<3>").a(b) +if(s.d.u(0,a))s.d=s.$ti.h("n<4>").a(b) +if(s.e.u(0,a))s.e=s.$ti.h("n<5>").a(b) +if(s.f.u(0,a))s.f=s.$ti.h("n<6>").a(b) +if(s.r.u(0,a))s.r=s.$ti.h("n<7>").a(b) +if(s.w.u(0,a))s.w=s.$ti.h("n<8>").a(b)}} +A.nw.prototype={ +$1(a){var s=this,r=s.b.h("@<0>").v(s.c).v(s.d).v(s.e).v(s.f).v(s.r).v(s.w).v(s.x).h("+(1,2,3,4,5,6,7,8)").a(a).a +return s.a.$8(r[0],r[1],r[2],r[3],r[4],r[5],r[6],r[7])}, +$S(){var s=this +return s.y.h("@<0>").v(s.b).v(s.c).v(s.d).v(s.e).v(s.f).v(s.r).v(s.w).v(s.x).h("1(+(2,3,4,5,6,7,8,9))")}} +A.dr.prototype={ +b8(a,b){var s,r,q,p +this.bW(a,b) +for(s=this.a,r=s.length,q=this.$ti.h("n"),p=0;p"))}, +I(a,b){var s=this.a.I(a,b) +return s<0?b:s}} +A.fP.prototype={ +H(a){var s,r,q,p,o=this,n=o.b.H(a) +if(n instanceof A.F)return n +s=o.a.H(n) +if(s instanceof A.F)return s +r=o.c.H(s) +if(r instanceof A.F)return r +q=o.$ti +p=q.c.a(s.gR()) +return new A.Q(p,r.a,r.b,q.h("Q<1>"))}, +I(a,b){b=this.b.I(a,b) +if(b<0)return-1 +b=this.a.I(a,b) +if(b<0)return-1 +return this.c.I(a,b)}, +gaN(){return A.i([this.b,this.a,this.c],t.U)}, +b8(a,b){var s=this +s.fI(a,b) +if(s.b.u(0,a))s.b=b +if(s.c.u(0,a))s.c=b}} +A.id.prototype={ +H(a){var s=a.b,r=a.a +if(s"))}, +I(a,b){return b}, +j(a){return this.bE(0)+"["+A.k(this.a)+"]"}} +A.jf.prototype={ +H(a){var s,r=a.a,q=a.b,p=r.length +if(q=s.c){o=B.b.t(r,q,m) +o=new A.Q(o,r,m,t.y)}else o=new A.F(s.b,r,m) +return o}, +I(a,b){var s=a.length,r=this.d,q=this.a,p=0 +for(;;){if(!(p=this.c?b:-1}, +j(a){var s=this,r=s.bE(0),q=s.d +return r+"["+s.b+", "+s.c+".."+A.k(q===9007199254740991?"*":q)+"]"}} +A.bj.prototype={ +H(a){var s,r,q,p,o=this,n=o.$ti,m=A.i([],n.h("y<1>")) +for(s=o.b,r=a;m.length=s)return p +q=o.a.H(r) +if(q instanceof A.F)return p +B.a.l(m,q.gR())}else{n.h("m<1>").a(m) +return new A.Q(m,r.a,r.b,n.h("Q>"))}}}, +I(a,b){var s,r,q,p,o=this +for(s=o.b,r=b,q=0;q=s)return-1 +p=o.a.I(a,r) +if(p<0)return-1;++q}else return r}} +A.fm.prototype={ +gaN(){return A.i([this.a,this.e],t.U)}, +b8(a,b){this.fI(a,b) +if(this.e.u(0,a))this.e=b}} +A.fB.prototype={ +H(a){var s,r,q,p=this,o=p.$ti,n=A.i([],o.h("y<1>")) +for(s=p.b,r=a;n.length").a(n) +return new A.Q(n,r.a,r.b,o.h("Q>"))}, +I(a,b){var s,r,q,p,o=this +for(s=o.b,r=b,q=0;q=q.gm(a)||q.n(a,l)!==10)m=10}if(m===10)B.a.l(o,n+1)}}, +K(a,b){return A.qt(this,a,b)}, +cC(a){var s,r=this +if(a<0)throw A.f(A.aP("Offset may not be negative, was "+a+".")) +else if(a>r.c.length)throw A.f(A.aP("Offset "+a+u.D+r.gm(0)+".")) +s=r.b +if(a=B.a.gA(s))return s.length-1 +if(r.kw(a)){s=r.d +s.toString +return s}return r.d=r.k5(a)-1}, +kw(a){var s,r,q,p=this.d +if(p==null)return!1 +s=this.b +r=s.length +if(p>>>0!==p||p>=r)return A.c(s,p) +if(a=r-1)){q=p+1 +if(!(q=r-2)){q=p+2 +if(!(q=0&&ra)o=r +else s=r+1}return o}, +e_(a){var s,r,q,p=this +if(a<0)throw A.f(A.aP("Offset may not be negative, was "+a+".")) +else if(a>p.c.length)throw A.f(A.aP("Offset "+a+" must be not be greater than the number of characters in the file, "+p.gm(0)+".")) +s=p.cC(a) +r=p.b +if(!(s>=0&&sa)throw A.f(A.aP("Line "+s+" comes after offset "+a+".")) +return a-q}, +d7(a){var s,r,q,p +if(a<0)throw A.f(A.aP("Line may not be negative, was "+a+".")) +else{s=this.b +r=s.length +if(a>=r)throw A.f(A.aP("Line "+a+" must be less than the number of lines in the file, "+this.gnl()+"."))}q=s[a] +if(q<=this.c.length){p=a+1 +s=p=s[p]}else s=!0 +if(s)throw A.f(A.aP("Line "+a+" doesn't have 0 columns.")) +return q}} +A.bh.prototype={ +ga6(){return this.a.a}, +gaj(){return this.a.cC(this.b)}, +gao(){return this.a.e_(this.b)}, +bg(a,b){var s,r=this.b +if(r<0)throw A.f(A.aP("Offset may not be negative, was "+r+".")) +else{s=this.a +if(r>s.c.length)throw A.f(A.aP("Offset "+r+u.D+s.gm(0)+"."))}}, +gaw(){return this.b}} +A.av.prototype={ +ga6(){return this.a.a}, +gm(a){return this.c-this.b}, +gS(){return A.cU(this.a,this.b)}, +gU(){return A.cU(this.a,this.c)}, +gZ(){return A.ay(B.aA.am(this.a.c,this.b,this.c),0,null)}, +gb_(){var s=this,r=s.a,q=s.c,p=r.cC(q) +if(r.e_(q)===0&&p!==0){if(q-s.b===0)return p===r.b.length-1?"":A.ay(B.aA.am(r.c,r.d7(p),r.d7(p+1)),0,null)}else q=p===r.b.length-1?r.c.length:r.d7(p+1) +return A.ay(B.aA.am(r.c,r.d7(r.cC(s.b)),q),0,null)}, +aG(a,b,c){var s,r=this.c,q=this.b +if(rs.c.length)throw A.f(A.aP("End "+r+u.D+s.gm(0)+".")) +else if(q<0)throw A.f(A.aP("Start may not be negative, was "+q+"."))}}, +ah(a,b){var s +t.hs.a(b) +if(!(b instanceof A.av))return this.jO(0,b) +s=B.f.ah(this.b,b.b) +return s===0?B.f.ah(this.c,b.c):s}, +u(a,b){var s=this +if(b==null)return!1 +if(!(b instanceof A.av))return s.jN(0,b) +return s.b===b.b&&s.c===b.c&&J.M(s.a.a,b.a.a)}, +gq(a){return A.aX(this.b,this.c,this.a.a,B.u)}, +aO(a,b){var s,r=this,q=r.a +if(!J.M(q.a,b.a.a))throw A.f(A.U('Source URLs "'+A.k(r.ga6())+'" and "'+A.k(b.ga6())+"\" don't match.",null)) +s=Math.min(r.b,b.b) +return A.qt(q,s,Math.max(r.c,b.c))}, +$irl:1, +$icd:1} +A.ma.prototype={ +n6(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a=this,a0=null,a1=a.a +a.hB(B.a.gbv(a1).c) +s=a.e +r=A.aD(s,a0,!1,t.dd) +for(q=a.r,s=s!==0,p=a.b,o=0;o0){m=a1[o-1] +l=n.c +if(!J.M(m.c,l)){a.dw("\u2575") +q.a+="\n" +a.hB(l)}else if(m.b+1!==n.b){a.l9("...") +q.a+="\n"}}for(l=n.d,k=A.x(l).h("V<1>"),j=new A.V(l,k),j=new A.L(j,j.gm(0),k.h("L")),k=k.h("G.E"),i=n.b,h=n.a;j.p();){g=j.d +if(g==null)g=k.a(g) +f=g.a +if(f.gS().gaj()!==f.gU().gaj()&&f.gS().gaj()===i&&a.kx(B.b.t(h,0,f.gS().gao()))){e=B.a.al(r,a0) +if(e<0)A.O(A.U(A.k(r)+" contains no null elements.",a0)) +B.a.k(r,e,g)}}a.l8(i) +q.a+=" " +a.l7(n,r) +if(s)q.a+=" " +d=B.a.eW(l,new A.mv()) +if(d===-1)c=a0 +else{if(!(d>=0&&d")),q=this.r,r=r.h("D.E");s.p();){p=s.d +if(p==null)p=r.a(p) +if(p===9)q.a+=B.b.b2(" ",4) +else{p=A.a3(p) +q.a+=p}}}, +dz(a,b,c){var s={} +s.a=c +if(b!=null)s.a=B.f.j(b+1) +this.b3(new A.mt(s,this,a),"\x1b[34m",t.a)}, +dw(a){return this.dz(a,null,null)}, +l9(a){return this.dz(null,null,a)}, +l8(a){return this.dz(null,a,null)}, +eu(){return this.dz(null,null,null)}, +ec(a){var s,r,q,p +for(s=new A.af(a),r=t.G,s=new A.L(s,s.gm(0),r.h("L")),r=r.h("D.E"),q=0;s.p();){p=s.d +if((p==null?r.a(p):p)===9)++q}return q}, +kx(a){var s,r,q +for(s=new A.af(a),r=t.G,s=new A.L(s,s.gm(0),r.h("L")),r=r.h("D.E");s.p();){q=s.d +if(q==null)q=r.a(q) +if(q!==32&&q!==9)return!1}return!0}, +b3(a,b,c){var s,r +c.h("0()").a(a) +s=this.b!=null +if(s&&b!=null)this.r.a+=b +r=a.$0() +if(s&&b!=null)this.r.a+="\x1b[0m" +return r}} +A.mu.prototype={ +$0(){return this.a}, +$S:65} +A.mc.prototype={ +$1(a){var s=t.nR.a(a).d,r=A.x(s) +return new A.bb(s,r.h("C(1)").a(new A.mb()),r.h("bb<1>")).gm(0)}, +$S:66} +A.mb.prototype={ +$1(a){var s=t.D.a(a).a +return s.gS().gaj()!==s.gU().gaj()}, +$S:21} +A.md.prototype={ +$1(a){return t.nR.a(a).c}, +$S:68} +A.mf.prototype={ +$1(a){var s=t.D.a(a).a.ga6() +return s==null?new A.p():s}, +$S:69} +A.mg.prototype={ +$2(a,b){var s=t.D +return s.a(a).a.ah(0,s.a(b).a)}, +$S:70} +A.mh.prototype={ +$1(a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a +t.lO.a(a0) +s=a0.a +r=a0.b +q=A.i([],t.dg) +for(p=J.c4(r),o=p.gF(r),n=t.g7;o.p();){m=o.gB().a +l=m.gb_() +k=A.pu(l,m.gZ(),m.gS().gao()) +k.toString +j=B.b.dB("\n",B.b.t(l,0,k)).gm(0) +i=m.gS().gaj()-j +for(m=l.split("\n"),k=m.length,h=0;hB.a.gA(q).b)B.a.l(q,new A.bD(g,i,s,A.i([],n)));++i}}f=A.i([],n) +for(o=q.length,n=t.aP,e=f.$flags|0,d=0,h=0;h")),b=g.b,k=k.h("G.E");m.p();){a=m.d +if(a==null)a=k.a(a) +if(a.a.gS().gaj()>b)break +B.a.l(f,a)}d+=f.length-c +B.a.a1(g.d,f)}return q}, +$S:71} +A.me.prototype={ +$1(a){return t.D.a(a).a.gU().gaj()" +return null}, +$S:1} +A.mp.prototype={ +$0(){var s=this.a.r,r=this.b===this.c.b?"\u250c":"\u2514" +s.a+=r}, +$S:3} +A.mq.prototype={ +$0(){var s=this.a.r,r=this.b==null?"\u2500":"\u253c" +s.a+=r}, +$S:3} +A.mr.prototype={ +$0(){this.a.r.a+="\u2500" +return null}, +$S:1} +A.ms.prototype={ +$0(){var s,r,q=this,p=q.a,o=p.a?"\u253c":"\u2502" +if(q.c!=null)q.b.r.a+=o +else{s=q.e +r=s.b +if(q.d===r){s=q.b +s.b3(new A.mn(p,s),p.b,t.a) +p.a=!0 +if(p.b==null)p.b=s.b}else{s=q.r===r&&q.f.a.gU().gao()===s.a.length +r=q.b +if(s)r.r.a+="\u2514" +else r.b3(new A.mo(r,o),p.b,t.a)}}}, +$S:3} +A.mn.prototype={ +$0(){var s=this.b.r,r=this.a.a?"\u252c":"\u250c" +s.a+=r}, +$S:3} +A.mo.prototype={ +$0(){this.a.r.a+=this.b}, +$S:3} +A.mj.prototype={ +$0(){var s=this +return s.a.dA(B.b.t(s.b,s.c,s.d))}, +$S:1} +A.mk.prototype={ +$0(){var s,r,q=this.a,p=q.r,o=p.a,n=this.c.a,m=n.gS().gao(),l=n.gU().gao() +n=this.b.a +s=q.ec(B.b.t(n,0,m)) +r=q.ec(B.b.t(n,m,l)) +m+=s*3 +n=(p.a+=B.b.b2(" ",m))+B.b.b2("^",Math.max(l+(s+r)*3-m,1)) +p.a=n +return n.length-o.length}, +$S:34} +A.ml.prototype={ +$0(){return this.a.l4(this.b,this.c.a.gS().gao())}, +$S:1} +A.mm.prototype={ +$0(){var s=this,r=s.a,q=r.r,p=q.a +if(s.b)q.a=p+B.b.b2("\u2500",3) +else r.hA(s.c,Math.max(s.d.a.gU().gao()-1,0),!1) +return q.a.length-p.length}, +$S:34} +A.mt.prototype={ +$0(){var s=this.b,r=s.r,q=this.a.a +if(q==null)q="" +s=B.b.nC(q,s.d) +s=r.a+=s +q=this.c +r.a=s+(q==null?"\u2502":q)}, +$S:3} +A.aK.prototype={ +j(a){var s=this.a +s="primary "+(""+s.gS().gaj()+":"+s.gS().gao()+"-"+s.gU().gaj()+":"+s.gU().gao()) +return s.charCodeAt(0)==0?s:s}} +A.oL.prototype={ +$0(){var s,r,q,p,o=this.a +if(!(t.ol.b(o)&&A.pu(o.gb_(),o.gZ(),o.gS().gao())!=null)){s=A.jM(o.gS().gaw(),0,0,o.ga6()) +r=o.gU().gaw() +q=o.ga6() +p=A.yQ(o.gZ(),10) +o=A.nH(s,A.jM(r,A.tp(o.gZ()),p,q),o.gZ(),o.gZ())}return A.x9(A.xb(A.xa(o)))}, +$S:73} +A.bD.prototype={ +j(a){return""+this.b+': "'+this.a+'" ('+B.a.aq(this.d,", ")+")"}} +A.bW.prototype={ +eJ(a){var s=this.a +if(!J.M(s,a.ga6()))throw A.f(A.U('Source URLs "'+A.k(s)+'" and "'+A.k(a.ga6())+"\" don't match.",null)) +return Math.abs(this.b-a.gaw())}, +ah(a,b){var s +t.hq.a(b) +s=this.a +if(!J.M(s,b.ga6()))throw A.f(A.U('Source URLs "'+A.k(s)+'" and "'+A.k(b.ga6())+"\" don't match.",null)) +return this.b-b.gaw()}, +u(a,b){if(b==null)return!1 +return t.hq.b(b)&&J.M(this.a,b.ga6())&&this.b===b.gaw()}, +gq(a){var s=this.a +s=s==null?null:s.gq(s) +if(s==null)s=0 +return s+this.b}, +j(a){var s=this,r=A.cN(s).j(0),q=s.a +return"<"+r+": "+s.b+" "+(A.k(q==null?"unknown source":q)+":"+(s.c+1)+":"+(s.d+1))+">"}, +$ia5:1, +ga6(){return this.a}, +gaw(){return this.b}, +gaj(){return this.c}, +gao(){return this.d}} +A.jN.prototype={ +eJ(a){if(!J.M(this.a.a,a.ga6()))throw A.f(A.U('Source URLs "'+A.k(this.ga6())+'" and "'+A.k(a.ga6())+"\" don't match.",null)) +return Math.abs(this.b-a.gaw())}, +ah(a,b){t.hq.a(b) +if(!J.M(this.a.a,b.ga6()))throw A.f(A.U('Source URLs "'+A.k(this.ga6())+'" and "'+A.k(b.ga6())+"\" don't match.",null)) +return this.b-b.gaw()}, +u(a,b){if(b==null)return!1 +return t.hq.b(b)&&J.M(this.a.a,b.ga6())&&this.b===b.gaw()}, +gq(a){var s=this.a.a +s=s==null?null:s.gq(s) +if(s==null)s=0 +return s+this.b}, +j(a){var s=A.cN(this).j(0),r=this.b,q=this.a,p=q.a +return"<"+s+": "+r+" "+(A.k(p==null?"unknown source":p)+":"+(q.cC(r)+1)+":"+(q.e_(r)+1))+">"}, +$ia5:1, +$ibW:1} +A.jO.prototype={ +jV(a,b,c){var s,r=this.b,q=this.a +if(!J.M(r.ga6(),q.ga6()))throw A.f(A.U('Source URLs "'+A.k(q.ga6())+'" and "'+A.k(r.ga6())+"\" don't match.",null)) +else if(r.gaw()'}, +$ia5:1, +$ibJ:1} +A.cd.prototype={ +gb_(){return this.d}} +A.aI.prototype={ +j(a){var s,r=this,q=r.a +if(q!=null){s=r.b.c +s="PUBLIC "+s+q+s +q=s}else q="SYSTEM" +s=r.d.c +s=q+" "+s+r.c+s +return s.charCodeAt(0)==0?s:s}, +gq(a){return A.aX(this.c,this.a,B.u,B.u)}, +u(a,b){if(b==null)return!1 +return b instanceof A.aI}} +A.kb.prototype={ +mh(a){var s=a.length +if(s>1&&a[0]==="#"){if(s>2){s=a[1] +s=s==="x"||s==="X"}else s=!1 +if(s)return this.h2(B.b.ab(a,2),16) +else return this.h2(B.b.ab(a,1),10)}else return B.qL.n(0,a)}, +h2(a,b){var s=A.qa(a,b) +if(s==null||s<0||1114111=r)return A.c(s,-1) +s=s.pop() +this.b=s +this.iq(s) +return!0}}, +$iK:1} +A.oj.prototype={ +$1(a){t.I.a(a) +return a instanceof A.es||a instanceof A.en}, +$S:29} +A.ok.prototype={ +$1(a){return t.I.a(a).gR()}, +$S:74} +A.nT.prototype={ +gaZ(){return B.j9}, +fq(a,b){return null}} +A.ep.prototype={ +fp(a,b){var s=this.fq(a,b) +return s==null?null:s.b}, +cb(a){return this.fp(a,null)}, +fq(a,b){var s,r,q,p=A.ui(a,b) +for(s=this.gaZ().a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c;s.p();){q=s.d +if(q==null)q=r.a(q) +if(p.$1(q))return q}return null}, +gaZ(){return this.y$}} +A.nU.prototype={ +gaN(){return B.cZ}} +A.d6.prototype={ +gaN(){return this.w$}} +A.cG.prototype={} +A.aR.prototype={ +gc8(){return null}, +ex(a){return this.es()}, +es(){return A.O(A.aj(this.j(0)+" does not have a parent"))}} +A.X.prototype={ +gc8(){return this.x$}, +ex(a){A.w(this).h("X.T").a(a) +A.kn(this) +this.x$=a}} +A.ol.prototype={ +gR(){return null}} +A.aG.prototype={} +A.kl.prototype={ +iB(){var s,r=new A.W(""),q=new A.kr(r,B.bF) +this.ag(q) +s=r.a +return s.charCodeAt(0)==0?s:s}, +j(a){return this.iB()}} +A.aQ.prototype={ +gaS(){return B.hW}, +aB(){return A.nS(this.a.aB(),this.b,this.c)}, +ag(a){var s,r,q +this.a.ag(a) +s=a.a +s.a+="=" +r=this.c +q=r.c +q=q+a.b.i5(this.b,r)+q +s.a+=q +return null}, +ga7(){return this.a}, +gR(){return this.b}} +A.kX.prototype={} +A.kY.prototype={} +A.en.prototype={ +gaS(){return B.bA}, +aB(){return new A.en(this.a,null)}, +ag(a){var s=a.a,r=(s.a+="" +return null}} +A.fY.prototype={ +gaS(){return B.bD}, +aB(){return new A.fY(this.a,null)}, +ag(a){var s=a.a,r=(s.a+="" +return null}} +A.k9.prototype={ +gR(){return this.a}} +A.kZ.prototype={} +A.ka.prototype={ +gR(){if(this.y$.a.length===0)return"" +var s=this.iB() +return B.b.t(s,6,s.length-2)}, +gaS(){return B.cH}, +aB(){var s=this.y$,r=s.a,q=A.x(r) +return A.t6(new A.R(r,q.h("aQ(1)").a(s.$ti.h("aQ(1)").a(new A.nV())),q.h("R<1,aQ>")))}, +ag(a){var s=a.a +s.a+="" +return null}} +A.nV.prototype={ +$1(a){t.F.a(a) +return A.nS(a.a.aB(),a.b,a.c)}, +$S:35} +A.l_.prototype={} +A.l0.prototype={} +A.fZ.prototype={ +gaS(){return B.cI}, +aB(){return new A.fZ(this.a,this.b,this.c,null)}, +ag(a){var s,r=a.a,q=(r.a+="" +return null}} +A.l1.prototype={} +A.kd.prototype={ +gaS(){return B.MH}, +aB(){var s=this.w$,r=s.a,q=A.x(r) +return A.t7(new A.R(r,q.h("E(1)").a(s.$ti.h("E(1)").a(new A.nX())),q.h("R<1,E>")))}, +ag(a){return a.ol(this)}} +A.nX.prototype={ +$1(a){return t.I.a(a).aB()}, +$S:36} +A.l2.prototype={} +A.aF.prototype={ +gaS(){return B.aT}, +aB(){var s=this,r=s.y$,q=r.a,p=A.x(q),o=s.w$,n=o.a,m=A.x(n) +return A.wT(s.b.aB(),new A.R(q,p.h("aQ(1)").a(r.$ti.h("aQ(1)").a(new A.nY())),p.h("R<1,aQ>")),new A.R(n,m.h("E(1)").a(o.$ti.h("E(1)").a(new A.nZ())),m.h("R<1,E>")),s.a)}, +ag(a){return a.om(this)}, +ga7(){return this.b}} +A.nY.prototype={ +$1(a){t.F.a(a) +return A.nS(a.a.aB(),a.b,a.c)}, +$S:35} +A.nZ.prototype={ +$1(a){return t.I.a(a).aB()}, +$S:36} +A.l3.prototype={} +A.l4.prototype={} +A.l5.prototype={} +A.l6.prototype={} +A.E.prototype={} +A.li.prototype={} +A.lj.prototype={} +A.lk.prototype={} +A.ll.prototype={} +A.lm.prototype={} +A.ln.prototype={} +A.h4.prototype={ +gaS(){return B.bB}, +aB(){return new A.h4(this.c,this.a,null)}, +ag(a){var s=a.a,r=s.a=(s.a+="" +return null}} +A.es.prototype={ +gaS(){return B.bC}, +aB(){return new A.es(this.a,null)}, +ag(a){var s=a.a,r=A.pP(this.a,$.r2(),t.jt.a(t.po.a(A.ul())),null) +s.a+=r +return null}} +A.k8.prototype={ +n(a,b){var s,r,q,p,o=this +o.$ti.c.a(b) +s=o.c +if(!s.a8(b)){s.k(0,b,o.a.$1(b)) +for(r=o.b,q=A.w(s).h("aU<1>");s.a>r;){p=new A.aU(s,q).gF(0) +if(!p.p())A.O(A.bi()) +s.V(0,p.gB())}}s=s.n(0,b) +s.toString +return s}} +A.eo.prototype={ +H(a){var s,r=a.a,q=a.b,p=r.length,o=q").a(b)) +o.jF(0,n) +for(s=n.length,r=0;r").a(a) +s=A.i([],p.h("y<1>")) +for(p=J.as(a);p.p();){r=p.gB() +if(r.gaS()===B.hX)B.a.a1(s,this.h6(r)) +else{q=this.c +q===$&&A.o() +if(!q.D(0,r.gaS()))A.O(A.wU("Got "+r.gaS().j(0)+", but expected one of "+q.aq(0,", "),r,q)) +if(r.gc8()!=null)A.O(A.tb(u.d,r,r.gc8())) +B.a.l(s,r)}}return s}} +A.oi.prototype={ +$1(a){var s,r +t.I.a(a) +s=this.a +r=s.c +r===$&&A.o() +A.ta(a,r) +return s.$ti.c.a(a.aB())}, +$S(){return this.a.$ti.h("1(E)")}} +A.h3.prototype={ +es(){return A.O(A.n2(this,A.rr(B.hU,"oA",0,[],[],0)))}, +gcV(){var s=A.uv(this.x$,"xmlns",this.b) +return s==null?null:s.b}, +aB(){return new A.h3(this.b,this.c,this.d,null)}, +gij(){return this.b}, +ga_(){return this.c}, +gdS(){return this.d}} +A.h5.prototype={ +es(){return A.O(A.n2(this,A.rr(B.hU,"oB",0,[],[],0)))}, +gij(){return null}, +gdS(){return this.b}, +gcV(){var s=A.uv(this.x$,null,"xmlns") +return s==null?null:s.b}, +aB(){return new A.h5(this.b,null)}, +ga_(){return this.b}} +A.kq.prototype={} +A.kr.prototype={ +ol(a){this.iI(a.w$)}, +om(a){var s,r,q,p,o=this,n=o.a +n.a+="<" +s=a.b +s.ag(o) +o.iG(a) +r=a.w$ +q=r.a.length===0&&a.a +p=n.a +if(q)n.a=p+"/>" +else{n.a=p+">" +o.iI(r) +n.a+=""}}, +iG(a){var s=a.y$ +if(s.a.length!==0){this.a.a+=" " +this.iJ(s," ")}}, +iJ(a,b){var s,r,q,p,o=this,n=J.as(t.b7.a(a)) +if(n.p())if(b==null||b.length===0){s=t.ax +r=n.$ti.c +do{q=n.d +s.a(q==null?r.a(q):q).ag(o)}while(n.p())}else{s=n.d +if(s==null)s=n.$ti.c.a(s) +r=t.ax +r.a(s).ag(o) +for(s=o.a,q=n.$ti.c;n.p();){s.a+=b +p=n.d +r.a(p==null?q.a(p):p).ag(o)}}}, +iI(a){return this.iJ(a,null)}} +A.lr.prototype={} +A.nR.prototype={ +ln(a,b,c,d){var s=this,r=s.r,q=r.length +if(q===0)A:{if(a instanceof A.bB){q=s.f +if(!new A.a_(q,t.nk).gN(0))throw A.f(A.er("Expected at most one XML declaration",b,c)) +else if(q.length!==0)throw A.f(A.er("Unexpected XML declaration",b,c)) +B.a.l(q,a) +break A}if(a instanceof A.bC){q=s.f +if(!new A.a_(q,t.os).gN(0))throw A.f(A.er("Expected at most one doctype declaration",b,c)) +else if(!new A.a_(q,t.lH).gN(0))throw A.f(A.er("Unexpected doctype declaration",b,c)) +B.a.l(q,a) +break A}if(a instanceof A.bc){q=s.f +if(!new A.a_(q,t.lH).gN(0))throw A.f(A.er("Unexpected root element",b,c)) +B.a.l(q,a)}}B:{if(a instanceof A.bc){if(!a.r)B.a.l(r,a) +break B}if(a instanceof A.bM){if(r.length===0)throw A.f(A.td(a.e,b,c)) +else{q=a.e +if(B.a.gA(r).e!==q)throw A.f(A.tc(B.a.gA(r).e,q,b,c))}q=r.length +if(q!==0){if(0>=q)return A.c(r,-1) +r.pop()}}}}} +A.og.prototype={} +A.oh.prototype={} +A.kk.prototype={} +A.ke.prototype={ +bL(a){var s,r=new A.W("") +J.vf(t.iF.a(a),new A.la(t.i3.a(new A.df(r.got(),t.nP)),this.a).giD()) +s=r.a +return s.charCodeAt(0)==0?s:s}} +A.la.prototype={ +fg(a){var s=this.a,r=s.$ti.c +r.a(""))}, +fh(a){var s=this.a,r=s.$ti.c +r.a(""))}, +fi(a){var s=this.a,r=s.$ti.c +r.a(""))}, +fj(a){var s,r,q=this.a,p=q.$ti.c +p.a(""))}, +fk(a){var s=this.a,r=s.$ti.c +r.a(""))}, +fl(a){var s,r=this.a,q=r.$ti.c +q.a(""))}, +fn(a){var s=this.a,r=s.$ti.c +r.a("<") +s=s.a +s.$1("<") +s.$1(r.a(a.e)) +this.hF(a.f) +if(a.r)s.$1(r.a("/>")) +else s.$1(r.a(">"))}, +fo(a){var s=this.a,r=s.$ti.c.a(A.pP(a.gR(),$.r2(),t.jt.a(t.po.a(A.ul())),null)) +s.a.$1(r)}, +hF(a){var s,r,q,p,o,n,m,l +for(s=J.as(t.p6.a(a)),r=this.a,q=r.$ti.c,p=this.b;s.p();){o=s.gB() +q.a(" ") +n=r.a +n.$1(" ") +n.$1(q.a(o.a)) +n.$1(q.a("=")) +m=o.b +o=o.c +l=o.c +n.$1(q.a(l+p.i5(m,o)+l))}}, +$ifN:1} +A.ls.prototype={} +A.lh.prototype={ +fg(a){return this.bK(new A.en(a.e,null),a)}, +fh(a){return this.bK(new A.fY(a.e,null),a)}, +fi(a){return this.bK(A.t6(this.eH(a.e)),a)}, +fj(a){return this.bK(new A.fZ(a.e,a.f,a.r,null),a)}, +fk(a){var s,r,q,p,o=this.b +if(o==null)throw A.f(A.td(a.e,a.at$,a.Q$)) +s=o.b.gdS() +r=a.e +q=a.at$ +p=a.Q$ +if(s!==r)A.O(A.tc(s,r,q,p)) +o.a=o.w$.a.length!==0 +s=A.wV(o) +this.b=s +if(s==null)this.bK(o,a.z$)}, +fl(a){return this.bK(new A.h4(a.e,a.f,null),a)}, +fn(a){var s,r=this,q=A.t8(a.e,r.eH(a.f),B.cZ,!0) +if(a.r)r.bK(q,a) +else{s=r.b +if(s!=null)s.w$.l(0,q) +r.b=q}}, +fo(a){return this.bK(new A.es(a.gR(),null),a)}, +bK(a,b){var s,r,q,p=this.b +if(p==null){s=b==null?null:b.z$ +p=t.eB +r=a +for(;s!=null;s=s.z$)r=A.t8(s.e,this.eH(s.f),A.i([r],p),s.r) +q=this.a +p=q.$ti.c.a(A.i([a],p)) +q.a.$1(p)}else p.w$.l(0,a)}, +eH(a){return J.r6(t.eh.a(a),new A.p1(),t.F)}, +$ifN:1} +A.p1.prototype={ +$1(a){t.fw.a(a) +return A.nS(A.t9(a.a),a.b,a.c)}, +$S:78} +A.lt.prototype={} +A.a0.prototype={ +j(a){return new A.ke(B.bF).bL(A.i([this],t.pp))}} +A.lb.prototype={} +A.lc.prototype={} +A.ld.prototype={} +A.c_.prototype={ +ag(a){return a.fg(this)}, +gq(a){return A.aX(B.bA,this.e,B.u,B.u)}, +u(a,b){if(b==null)return!1 +return b instanceof A.c_&&b.e===this.e}} +A.c0.prototype={ +ag(a){return a.fh(this)}, +gq(a){return A.aX(B.bD,this.e,B.u,B.u)}, +u(a,b){if(b==null)return!1 +return b instanceof A.c0&&b.e===this.e}} +A.bB.prototype={ +ag(a){return a.fi(this)}, +gq(a){return A.aX(B.cH,B.aX.Y(this.e),B.u,B.u)}, +u(a,b){if(b==null)return!1 +return b instanceof A.bB&&B.aX.aI(b.e,this.e)}} +A.bC.prototype={ +ag(a){return a.fj(this)}, +gq(a){return A.aX(B.cI,this.e,this.f,this.r)}, +u(a,b){if(b==null)return!1 +return b instanceof A.bC&&this.e===b.e&&J.M(this.f,b.f)&&this.r==b.r}} +A.bM.prototype={ +ag(a){return a.fk(this)}, +gq(a){return A.aX(B.aT,this.e,B.u,B.u)}, +u(a,b){if(b==null)return!1 +return b instanceof A.bM&&b.e===this.e}} +A.l7.prototype={} +A.c2.prototype={ +ag(a){return a.fl(this)}, +gq(a){return A.aX(B.bB,this.f,this.e,B.u)}, +u(a,b){if(b==null)return!1 +return b instanceof A.c2&&b.e===this.e&&b.f===this.f}} +A.bc.prototype={ +ag(a){return a.fn(this)}, +gq(a){return A.aX(B.aT,this.e,this.r,B.aX.Y(this.f))}, +u(a,b){if(b==null)return!1 +return b instanceof A.bc&&b.e===this.e&&b.r===this.r&&B.aX.aI(b.f,this.f)}} +A.lp.prototype={} +A.dH.prototype={ +gR(){var s,r=this,q=r.r +if(q===$){s=r.f.b0(r.e) +r.r!==$&&A.dQ() +r.r=s +q=s}return q}, +ag(a){return a.fo(this)}, +gq(a){return A.aX(B.bC,this.gR(),B.u,B.u)}, +u(a,b){if(b==null)return!1 +return b instanceof A.dH&&b.gR()===this.gR()}, +$ih6:1} +A.kf.prototype={ +gF(a){var s=A.i([],t.pp),r=A.i([],t.oi) +return new A.kg($.va().n(0,this.b),new A.nR(!0,!0,!1,!1,!1,s,r),new A.F("",this.a,0))}} +A.kg.prototype={ +gB(){var s=this.d +s.toString +return s}, +p(){var s,r,q,p,o,n,m=this,l=m.c +if(l!=null){s=m.a.H(l) +if(s instanceof A.Q){m.c=s +r=s.e +m.d=r +m.b.ln(r,l.a,l.b,s.b) +return!0}else{r=l.b +q=l.a +if(r"),A.S("/>")],t.ig),A.yZ(),r),r,r,q,r,r),new A.of(),r,r,q,r,r,t.l3)}, +lF(){return A.nn(new A.u(this.glo(),B.h,t.jk),0,9007199254740991,t.fw)}, +lp(){var s=this,r=t.h,q=t.N,p=t.R +return A.dy(A.c5(new A.u(s.gcD(),B.h,r),new A.u(s.gbc(),B.h,r),new A.u(s.glq(),B.h,t.b),q,q,p),new A.o3(s),q,q,p,t.fw)}, +lr(){var s=this.gcE(),r=t.h,q=t.N,p=t.R +return new A.bT(B.Mf,A.nt(A.pO(new A.u(s,B.h,r),A.S("="),new A.u(s,B.h,r),new A.u(this.gc1(),B.h,t.b),q,q,q,p),new A.o_(),q,q,q,p,p),t.bQ)}, +lt(){var s=t.b +return A.cj(A.i([new A.u(this.glu(),B.h,s),new A.u(this.glA(),B.h,s),new A.u(this.gly(),B.h,s)],t.ge),null,t.R)}, +lv(){var s=t.N +return A.dy(A.c5(A.S('"'),new A.eo('"',0),A.S('"'),s,s,s),new A.o0(),s,s,s,t.R)}, +lB(){var s=t.N +return A.dy(A.c5(A.S("'"),new A.eo("'",0),A.S("'"),s,s,s),new A.o2(),s,s,s,t.R)}, +lz(){return A.ds(new A.u(this.gbc(),B.h,t.h),new A.o1(),!1,t.N,t.R)}, +mT(){var s=t.h,r=t.N +return A.nt(A.pO(A.S(""),r,r,r,r),new A.oc(),r,r,r,r,t.cW)}, +m3(){var s=A.S("" expected',new A.bj(A.S("-->"),0,9007199254740991,r,t.ln)),A.S("-->"),q,q,q),new A.o6(),q,q,q,t.lY)}, +lR(){var s=A.S("" expected',new A.bj(A.S("]]>"),0,9007199254740991,r,t.ln)),A.S("]]>"),q,q,q),new A.o4(),q,q,q,t.bf)}, +mg(){var s=t.N,r=t.p6 +return A.nt(A.pO(A.S(""),s,r,s,s),new A.o7(),s,r,s,s,t.ee)}, +nQ(){var s=A.S("" expected',new A.bj(A.S("?>"),0,9007199254740991,q,t.ln)),p,p),new A.od(),p,p,p),t.g1),A.S("?>"),p,p,p,p),new A.oe(),p,p,p,p,t.co)}, +mn(){var s=this,r=s.gcD(),q=t.h,p=s.gcE(),o=t.N +return A.wE(new A.fK(A.S(""),t.i6),new A.ob(),o,o,o,t.g0,o,t.jv,o,o,t.dH)}, +mv(){var s=t.by +return A.cj(A.i([new A.u(this.gmy(),B.h,s),new A.u(this.gmw(),B.h,s)],t.jj),null,t.hd)}, +mz(){var s=t.N,r=t.R +return A.dy(A.c5(A.S("SYSTEM"),new A.u(this.gcD(),B.h,t.h),new A.u(this.gc1(),B.h,t.b),s,s,r),new A.o9(),s,s,r,t.hd)}, +mx(){var s=this.gcD(),r=t.h,q=this.gc1(),p=t.b,o=t.N,n=t.R +return A.rO(A.uG(A.S("PUBLIC"),new A.u(s,B.h,r),new A.u(q,B.h,p),new A.u(s,B.h,r),new A.u(q,B.h,p),o,o,n,o,n),new A.o8(),o,o,n,o,n,t.hd)}, +mB(){var s,r=this,q=A.S("["),p=t.gy +p=A.cj(A.i([new A.u(r.gmq(),B.h,p),new A.u(r.gmo(),B.h,p),new A.u(r.gms(),B.h,p),new A.u(r.gmD(),B.h,p),new A.u(r.gip(),B.h,t.hN),new A.u(r.ghW(),B.h,t.dE),new A.u(r.gmJ(),B.h,p),A.bH(B.W,"input expected",!1)],t.U),null,t.z) +s=t.N +return A.dy(A.c5(q,new A.cp('"]" expected',new A.bj(A.S("]"),0,9007199254740991,p,t.mP)),A.S("]"),s,s,s),new A.oa(),s,s,s,s)}, +mr(){var s=A.S(""),0,9007199254740991,r,t.du),A.S(">"),q,t.ez,q)}, +mp(){var s=A.S(""),0,9007199254740991,r,t.du),A.S(">"),q,t.ez,q)}, +mt(){var s=A.S(""),0,9007199254740991,r,t.du),A.S(">"),q,t.ez,q)}, +mE(){var s=A.S(""),0,9007199254740991,r,t.du),A.S(">"),q,t.ez,q)}, +mK(){var s=t.N +return A.c5(A.S("%"),new A.u(this.gbc(),B.h,t.h),A.S(";"),s,s,s)}, +jn(){var s="whitespace expected" +return A.rP(A.bH(B.cO,s,!1),1,9007199254740991,s)}, +jo(){var s="whitespace expected" +return A.rP(A.bH(B.cO,s,!1),0,9007199254740991,s)}, +nx(){var s=t.h,r=t.N +return new A.cp("name expected",A.uF(new A.u(this.gnv(),B.h,s),A.nn(new A.u(this.gnt(),B.h,s),0,9007199254740991,r),r,t.bF))}, +nw(){return A.uB(":A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd\ud800\udc00-\udb7f\udfff",!1,null,!0)}, +nu(){return A.uB(":A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd\ud800\udc00-\udb7f\udfff-.0-9\xb7\u0300-\u036f\u203f-\u2040",!1,null,!0)}} +A.o5.prototype={ +$1(a){var s=null +return new A.dH(A.q(a),this.a.a,s,s,s,s)}, +$S:94} +A.of.prototype={ +$5(a,b,c,d,e){var s=null +A.q(a) +A.q(b) +t.p6.a(c) +A.q(d) +return new A.bc(b,c,A.q(e)==="/>",s,s,s,s)}, +$S:95} +A.o3.prototype={ +$3(a,b,c){A.q(a) +A.q(b) +t.R.a(c) +return new A.au(b,this.a.a.b0(c.a),c.b,null)}, +$S:96} +A.o_.prototype={ +$4(a,b,c,d){A.q(a) +A.q(b) +A.q(c) +return t.R.a(d)}, +$S:97} +A.o0.prototype={ +$3(a,b,c){A.q(a) +A.q(b) +A.q(c) +return new A.l(b,B.cG)}, +$S:39} +A.o2.prototype={ +$3(a,b,c){A.q(a) +A.q(b) +A.q(c) +return new A.l(b,B.MG)}, +$S:39} +A.o1.prototype={ +$1(a){return new A.l(A.q(a),B.cG)}, +$S:99} +A.oc.prototype={ +$4(a,b,c,d){var s=null +A.q(a) +A.q(b) +A.q(c) +A.q(d) +return new A.bM(b,s,s,s,s)}, +$S:100} +A.o6.prototype={ +$3(a,b,c){var s=null +A.q(a) +A.q(b) +A.q(c) +return new A.c0(b,s,s,s,s)}, +$S:101} +A.o4.prototype={ +$3(a,b,c){var s=null +A.q(a) +A.q(b) +A.q(c) +return new A.c_(b,s,s,s,s)}, +$S:102} +A.o7.prototype={ +$4(a,b,c,d){var s=null +A.q(a) +t.p6.a(b) +A.q(c) +A.q(d) +return new A.bB(b,s,s,s,s)}, +$S:103} +A.od.prototype={ +$2(a,b){A.q(a) +return A.q(b)}, +$S:104} +A.oe.prototype={ +$4(a,b,c,d){var s=null +A.q(a) +A.q(b) +A.q(c) +A.q(d) +return new A.c2(b,c,s,s,s,s)}, +$S:105} +A.ob.prototype={ +$8(a,b,c,d,e,f,g,h){var s=null +A.q(a) +A.q(b) +A.q(c) +t.g0.a(d) +A.q(e) +A.hB(f) +A.q(g) +A.q(h) +return new A.bC(c,d,f,s,s,s,s)}, +$S:106} +A.o9.prototype={ +$3(a,b,c){A.q(a) +A.q(b) +t.R.a(c) +return new A.aI(null,null,c.a,c.b)}, +$S:107} +A.o8.prototype={ +$5(a,b,c,d,e){var s +A.q(a) +A.q(b) +s=t.R +s.a(c) +A.q(d) +s.a(e) +return new A.aI(c.a,c.b,e.a,e.b)}, +$S:108} +A.oa.prototype={ +$3(a,b,c){A.q(a) +A.q(b) +A.q(c) +return b}, +$S:109} +A.pt.prototype={ +$1(a){return A.zo(new A.u(new A.kh(t.j7.a(a)).gn0(),B.h,t.bj),t.mX)}, +$S:110} +A.df.prototype={$ifN:1} +A.au.prototype={ +gq(a){return A.aX(this.a,this.b,this.c,B.u)}, +u(a,b){if(b==null)return!1 +return b instanceof A.au&&b.a===this.a&&b.b===this.b&&b.c===this.c}} +A.l8.prototype={} +A.l9.prototype={} +A.h_.prototype={} +A.dG.prototype={ +L(a){return t.mX.a(a).ag(this)}, +fg(a){}, +fh(a){}, +fi(a){}, +fj(a){}, +fk(a){}, +fl(a){}, +fn(a){}, +fo(a){}} +A.pF.prototype={ +$1(a){var s,r=t.av.a(A.uk(A.p3(a).data)).c2(0,t.N,t.X),q=r.n(0,"bytes") +if(q!=null)r.k(0,"argument",q) +s=this.a +s.a=s.a.of(new A.pE(this.b,r),t.H)}, +$S:112} +A.pE.prototype={ +$1(a){var s=0,r=A.br(t.H),q=this,p,o +var $async$$1=A.bs(function(b,c){if(b===1)return A.bo(c,r) +for(;;)switch(s){case 0:p=A.p3(v.G.self) +o=B.iq +s=2 +return A.c3(A.pL(q.a,q.b),$async$$1) +case 2:p.postMessage(o.mQ(c,null)) +return A.bp(null,r)}}) +return A.bq($async$$1,r)}, +$S:113};(function aliases(){var s=J.cW.prototype +s.jH=s.j +s=A.cJ.prototype +s.jP=s.h_ +s.jQ=s.h7 +s.jR=s.ho +s=A.D.prototype +s.jI=s.bb +s.jJ=s.ba +s=A.h.prototype +s.jG=s.os +s=A.dY.prototype +s.jE=s.l +s.jF=s.a1 +s=A.a9.prototype +s.jM=s.a3 +s=A.b7.prototype +s.jK=s.k +s.bV=s.l +s.fJ=s.bx +s.jL=s.a1 +s=A.cb.prototype +s.fH=s.j +s=A.n.prototype +s.bW=s.b8 +s.bE=s.j +s=A.ca.prototype +s.cG=s.j +s=A.at.prototype +s.fI=s.b8 +s=A.ek.prototype +s.jO=s.ah +s.jN=s.u})();(function installTearOffs(){var s=hunkHelpers._static_2,r=hunkHelpers._instance_1i,q=hunkHelpers.installInstanceTearOff,p=hunkHelpers._static_1,o=hunkHelpers._static_0,n=hunkHelpers._instance_1u,m=hunkHelpers._instance_2u,l=hunkHelpers._instance_0u,k=hunkHelpers.installStaticTearOff +s(J,"y5","vU",40) +var j +r(j=J.y.prototype,"ghE","l",18) +r(j,"glb","a1",18) +q(J.ct.prototype,"gfE",1,1,null,["$2","$1"],["aa","T"],79,0,0) +p(A,"yA","x_",24) +p(A,"yB","x0",24) +p(A,"yC","x1",24) +o(A,"uc","yt",1) +s(A,"uf","xQ",13) +p(A,"ug","xR",14) +s(A,"yF","w_",40) +p(A,"yM","xS",38) +p(A,"yP","z6",14) +s(A,"yO","z5",13) +p(A,"yN","wS",33) +n(A.W.prototype,"got","ou",18) +m(j=A.eQ.prototype,"gar","aI",13) +n(j,"gdM","Y",14) +n(j,"gni","nj",31) +p(A,"uh","a7",20) +p(A,"yJ","pD",20) +p(A,"yK","ut",20) +p(A,"yI","vo",30) +p(A,"yH","vn",26) +n(A.d0.prototype,"gfm","iE",98) +l(j=A.ff.prototype,"gE","me",0) +l(j,"gmY","mZ",0) +l(j,"gcu","o3",0) +l(j,"glW","lX",0) +l(j,"gdT","nX",0) +l(j,"gbC","ji",0) +l(j,"gnG","nH",0) +l(j,"god","oe",0) +l(j,"gm0","m1",0) +l(j,"giz","oc",0) +l(j,"go1","o2",0) +l(j,"go_","o0",0) +l(j,"gnY","nZ",0) +l(j,"gnV","nW",0) +l(j,"gnT","nU",0) +l(j,"gnR","nS",0) +l(j,"gjg","jh",0) +l(j,"gj1","j2",0) +l(j,"gj_","j0",0) +l(j,"gj5","j6",0) +l(j,"gj3","j4",0) +l(j,"gbe","jf",0) +l(j,"gj8","j9",0) +l(j,"gft","j7",0) +l(j,"ge3","je",0) +l(j,"gjc","jd",0) +l(j,"gja","jb",0) +l(j,"giS","iT",0) +l(j,"gbB","iZ",0) +l(j,"giW","iX",0) +l(j,"giU","iV",0) +l(j,"ge2","iY",0) +l(j,"giQ","iR",0) +l(j,"gbs","lG",0) +l(j,"gbI","ls",0) +l(j,"glc","ld",0) +l(j,"ghO","lH",0) +l(j,"glw","lx",0) +l(j,"glC","lD",0) +l(j,"gdE","lE",0) +l(j,"ghI","le",0) +l(j,"gbm","jj",0) +l(j,"geA","lO",0) +l(j,"gnn","no",0) +l(j,"gma","mb",0) +l(j,"gm8","m9",0) +l(j,"gbJ","mc",0) +l(j,"ghX","m6",0) +l(j,"ghY","m7",0) +l(j,"gm4","m5",0) +l(j,"gmL","mM",0) +l(j,"ghP","lI",0) +l(j,"geK","mC",0) +l(j,"glf","lg",0) +l(j,"gli","lj",0) +l(j,"gey","lJ",0) +l(j,"gmF","mG",0) +l(j,"gmH","mI",0) +l(j,"ghJ","lh",0) +l(j,"glL","lM",0) +l(j,"gll","lm",0) +l(j,"gez","lK",0) +l(j,"geL","mN",0) +l(j,"geM","mO",0) +l(j,"ghK","lk",0) +l(j,"gcm","lP",0) +l(j,"glS","lT",0) +p(A,"ul","yw",15) +p(A,"yT","yr",15) +p(A,"yS","xU",15) +l(j=A.kh.prototype,"gn0","n1",119) +l(j,"glU","lV",80) +l(j,"gjp","jq",81) +l(j,"gaZ","lF",82) +l(j,"glo","lp",83) +l(j,"glq","lr",7) +l(j,"gc1","lt",7) +l(j,"glu","lv",7) +l(j,"glA","lB",7) +l(j,"gly","lz",7) +l(j,"gmS","mT",85) +l(j,"ghW","m3",86) +l(j,"glQ","lR",87) +l(j,"gmf","mg",88) +l(j,"gip","nQ",89) +l(j,"gmm","mn",90) +l(j,"gmu","mv",23) +l(j,"gmy","mz",23) +l(j,"gmw","mx",23) +l(j,"gmA","mB",6) +l(j,"gmq","mr",11) +l(j,"gmo","mp",11) +l(j,"gms","mt",11) +l(j,"gmD","mE",11) +l(j,"gmJ","mK",11) +l(j,"gcD","jn",6) +l(j,"gcE","jo",6) +l(j,"gbc","nx",6) +l(j,"gnv","nw",6) +l(j,"gnt","nu",6) +n(A.dG.prototype,"giD","L",111) +k(A,"zh",2,null,["$1$2","$2"],["uw",function(a,b){return A.uw(a,b,t.cZ)}],118,1) +s(A,"yZ","zq",22) +s(A,"z_","zr",22) +s(A,"yY","zp",22)})();(function inheritance(){var s=hunkHelpers.mixin,r=hunkHelpers.inherit,q=hunkHelpers.inheritMany +r(A.p,null) +q(A.p,[A.pZ,J.iR,A.fF,J.J,A.h,A.eN,A.a8,A.b6,A.Z,A.D,A.nG,A.L,A.dt,A.cF,A.fd,A.fT,A.fO,A.eX,A.bZ,A.ai,A.bL,A.cf,A.bn,A.ea,A.dW,A.cK,A.aY,A.fj,A.nM,A.jk,A.fc,A.hq,A.oS,A.mI,A.cv,A.dq,A.fn,A.cV,A.hg,A.et,A.fS,A.kS,A.kz,A.oX,A.bU,A.kL,A.kU,A.oU,A.kv,A.bG,A.kA,A.dI,A.az,A.kw,A.kQ,A.hz,A.hd,A.kM,A.dK,A.hv,A.hf,A.bt,A.cl,A.ou,A.oO,A.kW,A.ap,A.dg,A.oA,A.jo,A.fQ,A.kK,A.aA,A.iQ,A.b_,A.aJ,A.kT,A.jH,A.W,A.hw,A.nO,A.bN,A.jj,A.ie,A.bQ,A.lG,A.lE,A.op,A.on,A.fe,A.kt,A.oo,A.mz,A.om,A.mD,A.lD,A.ni,A.nh,A.ju,A.jt,A.fA,A.ng,A.iN,A.jp,A.fR,A.cP,A.lF,A.eR,A.e2,A.cX,A.bE,A.ey,A.e9,A.eQ,A.ev,A.kO,A.I,A.nK,A.eb,A.j4,A.no,A.N,A.k5,A.ip,A.eY,A.di,A.bu,A.ih,A.f3,A.f2,A.cm,A.f4,A.il,A.f5,A.cS,A.cn,A.f6,A.im,A.f7,A.co,A.f8,A.ii,A.eZ,A.ij,A.dj,A.ik,A.f_,A.dk,A.f0,A.f1,A.cR,A.io,A.iq,A.fa,A.ig,A.aN,A.kN,A.oQ,A.kG,A.al,A.mx,A.a9,A.b9,A.nx,A.lP,A.lK,A.ew,A.mw,A.bl,A.jQ,A.ff,A.nL,A.lS,A.f9,A.lL,A.nI,A.ne,A.js,A.cb,A.jr,A.n,A.cB,A.fs,A.ca,A.jL,A.jN,A.ek,A.ma,A.aK,A.bD,A.bW,A.aI,A.d5,A.ki,A.kj,A.kc,A.nT,A.ep,A.nU,A.d6,A.cG,A.aR,A.X,A.ol,A.aG,A.kl,A.li,A.k8,A.le,A.kq,A.lr,A.nR,A.og,A.oh,A.kk,A.ls,A.lt,A.lb,A.kg,A.kh,A.df,A.l8,A.h_,A.dG]) +q(J.iR,[J.iU,J.e4,J.fk,J.e6,J.e7,J.e5,J.ct]) +q(J.fk,[J.cW,J.y,A.du,A.fu]) +q(J.cW,[J.jz,J.dE,J.cu]) +r(J.iT,A.fF) +r(J.mF,J.y) +q(J.e5,[J.fi,J.iV]) +q(A.h,[A.eu,A.z,A.b8,A.bb,A.dm,A.dD,A.cx,A.a_,A.he,A.ku,A.kR,A.bV,A.hQ,A.d3,A.fr,A.c1,A.kf]) +r(A.dd,A.eu) +r(A.hb,A.dd) +q(A.a8,[A.de,A.bx,A.cJ]) +q(A.b6,[A.i5,A.iO,A.i4,A.jR,A.pz,A.pB,A.or,A.oq,A.p5,A.oJ,A.oz,A.ox,A.pM,A.pN,A.pr,A.mE,A.m7,A.m9,A.lJ,A.lI,A.mX,A.mY,A.mZ,A.n_,A.n0,A.n1,A.mM,A.mN,A.mO,A.mQ,A.mS,A.mR,A.mT,A.mV,A.mU,A.mW,A.n4,A.n5,A.n6,A.n7,A.n8,A.n9,A.na,A.nb,A.nc,A.nd,A.nz,A.nA,A.nB,A.lR,A.lQ,A.mC,A.nE,A.nF,A.nD,A.nC,A.ph,A.pi,A.lU,A.m1,A.m_,A.m0,A.lV,A.lW,A.lX,A.lY,A.m4,A.m5,A.m2,A.m3,A.lM,A.lN,A.pc,A.pK,A.p8,A.p9,A.pS,A.pJ,A.nr,A.ns,A.nu,A.nv,A.nw,A.pQ,A.pR,A.mc,A.mb,A.md,A.mf,A.mh,A.me,A.mv,A.p4,A.oj,A.ok,A.nV,A.nX,A.nY,A.nZ,A.pm,A.pn,A.po,A.pp,A.pq,A.oi,A.p1,A.o5,A.of,A.o3,A.o_,A.o0,A.o2,A.o1,A.oc,A.o6,A.o4,A.o7,A.oe,A.ob,A.o9,A.o8,A.oa,A.pt,A.pF,A.pE]) +q(A.i5,[A.lH,A.np,A.mG,A.pA,A.p6,A.pd,A.oK,A.mJ,A.mK,A.oP,A.ow,A.n3,A.nQ,A.lO,A.nm,A.mB,A.pv,A.pg,A.pj,A.pk,A.pl,A.lT,A.pH,A.pI,A.mg,A.od]) +q(A.Z,[A.e8,A.jD,A.cC,A.iW,A.jZ,A.jI,A.kJ,A.fl,A.hU,A.bR,A.jg,A.fX,A.fW,A.dC,A.i7]) +q(A.D,[A.em,A.b7]) +q(A.em,[A.af,A.cE]) +q(A.z,[A.G,A.eW,A.aU,A.fo,A.dp,A.hc]) +q(A.G,[A.cy,A.R,A.V,A.fp]) +r(A.eU,A.b8) +r(A.eV,A.dD) +r(A.dZ,A.cx) +q(A.bn,[A.ez,A.eA,A.d7]) +r(A.l,A.ez) +r(A.hl,A.eA) +q(A.d7,[A.hm,A.hn,A.ho]) +r(A.eC,A.ea) +r(A.dF,A.eC) +r(A.eP,A.dF) +q(A.dW,[A.r,A.a]) +q(A.aY,[A.dX,A.hp,A.kB]) +q(A.dX,[A.bf,A.aO]) +r(A.e0,A.iO) +r(A.fx,A.cC) +q(A.jR,[A.jP,A.dT]) +r(A.dn,A.bx) +q(A.fu,[A.j6,A.aW]) +q(A.aW,[A.hh,A.hj]) +r(A.hi,A.hh) +r(A.ft,A.hi) +r(A.hk,A.hj) +r(A.by,A.hk) +q(A.ft,[A.j7,A.j8]) +q(A.by,[A.j9,A.ja,A.jb,A.jc,A.fv,A.fw,A.dv]) +r(A.eB,A.kJ) +q(A.i4,[A.os,A.ot,A.oV,A.oB,A.oF,A.oE,A.oD,A.oC,A.oI,A.oH,A.oG,A.oT,A.pb,A.p_,A.oZ,A.m8,A.nl,A.mA,A.my,A.pf,A.lZ,A.mu,A.mi,A.mp,A.mq,A.mr,A.ms,A.mn,A.mo,A.mj,A.mk,A.ml,A.mm,A.mt,A.oL]) +r(A.h8,A.kA) +r(A.kP,A.hz) +q(A.cJ,[A.dJ,A.ha]) +r(A.cL,A.hp) +q(A.bt,[A.ic,A.eL,A.iX]) +q(A.ic,[A.hS,A.k2]) +q(A.cl,[A.kV,A.hX,A.iZ,A.k3,A.ke]) +r(A.hT,A.kV) +r(A.iY,A.fl) +r(A.oN,A.oO) +q(A.bR,[A.ef,A.fh]) +r(A.kC,A.hw) +q(A.oA,[A.dV,A.h7,A.i0,A.ec,A.aS,A.cT,A.ir,A.ae,A.bm]) +q(A.fe,[A.ks,A.it]) +r(A.p2,A.om) +q(A.ni,[A.nk,A.fz]) +r(A.nj,A.nh) +r(A.jw,A.jt) +r(A.jx,A.jw) +r(A.jv,A.ju) +r(A.nf,A.ng) +r(A.e_,A.iN) +r(A.fy,A.jp) +r(A.ei,A.bE) +r(A.dY,A.ev) +r(A.iy,A.I) +r(A.jV,A.nK) +q(A.N,[A.cs,A.d4,A.jT,A.jd,A.jJ,A.d_,A.fL,A.ba,A.eh,A.an]) +q(A.ba,[A.dh,A.j5,A.hW,A.ix,A.i3,A.ed,A.ee,A.je]) +r(A.fD,A.ed) +r(A.jC,A.ee) +q(A.an,[A.jn,A.jm,A.ak]) +q(A.ak,[A.jl,A.bA,A.jy,A.ib,A.is,A.iu]) +q(A.bA,[A.j_,A.hN,A.jU,A.iv,A.jG,A.i1,A.jE,A.j0,A.k4]) +q(A.di,[A.bg,A.fb]) +q(A.al,[A.kD,A.i9,A.bY,A.kH,A.i6]) +r(A.kE,A.kD) +r(A.kF,A.kE) +r(A.eT,A.kF) +r(A.kI,A.kH) +r(A.a6,A.kI) +q(A.b7,[A.jh,A.hH]) +q(A.a9,[A.iM,A.hZ,A.hY,A.iF,A.hM,A.iz,A.jS,A.iK,A.fg,A.iA,A.iC,A.iJ,A.iG,A.iB,A.iI,A.iH,A.iD,A.hK,A.iE,A.hL,A.hI,A.hJ]) +r(A.ia,A.kB) +r(A.d0,A.k5) +q(A.bl,[A.cA,A.bK,A.eS]) +q(A.cA,[A.d2,A.H]) +q(A.bK,[A.j,A.B,A.dB,A.dU]) +r(A.e1,A.nI) +q(A.e1,[A.jA,A.k1,A.k7]) +r(A.eg,A.cb) +q(A.eg,[A.Q,A.F]) +q(A.n,[A.u,A.at,A.dr,A.fH,A.dA,A.fI,A.fJ,A.fK,A.id,A.cQ,A.jf,A.i2,A.fC,A.jF,A.eo]) +q(A.at,[A.cp,A.fq,A.fU,A.bT,A.fP,A.dz]) +q(A.ca,[A.fM,A.ck,A.j3,A.ji,A.aa,A.k6]) +r(A.eO,A.dr) +q(A.i2,[A.ej,A.fV]) +r(A.hO,A.ej) +r(A.hP,A.fV) +q(A.dz,[A.fm,A.fB]) +r(A.bj,A.fm) +r(A.bh,A.jN) +q(A.ek,[A.av,A.jO]) +r(A.cd,A.jO) +r(A.kb,A.d5) +q(A.ki,[A.km,A.lo,A.lq,A.h2]) +r(A.ko,A.lo) +r(A.kp,A.lq) +r(A.lj,A.li) +r(A.lk,A.lj) +r(A.ll,A.lk) +r(A.lm,A.ll) +r(A.ln,A.lm) +r(A.E,A.ln) +q(A.E,[A.kX,A.kZ,A.l_,A.l1,A.l2,A.l3]) +r(A.kY,A.kX) +r(A.aQ,A.kY) +r(A.k9,A.kZ) +q(A.k9,[A.en,A.fY,A.h4,A.es]) +r(A.l0,A.l_) +r(A.ka,A.l0) +r(A.fZ,A.l1) +r(A.kd,A.l2) +r(A.l4,A.l3) +r(A.l5,A.l4) +r(A.l6,A.l5) +r(A.aF,A.l6) +r(A.lf,A.le) +r(A.lg,A.lf) +r(A.eq,A.lg) +r(A.h0,A.dY) +q(A.eq,[A.h3,A.h5]) +r(A.kr,A.lr) +r(A.la,A.ls) +r(A.lh,A.lt) +r(A.lc,A.lb) +r(A.ld,A.lc) +r(A.a0,A.ld) +q(A.a0,[A.c_,A.c0,A.bB,A.bC,A.l7,A.c2,A.lp,A.dH]) +r(A.bM,A.l7) +r(A.bc,A.lp) +r(A.l9,A.l8) +r(A.au,A.l9) +s(A.em,A.bL) +s(A.hh,A.D) +s(A.hi,A.ai) +s(A.hj,A.D) +s(A.hk,A.ai) +s(A.eC,A.hv) +s(A.kD,A.kN) +s(A.kE,A.oQ) +s(A.kF,A.kG) +s(A.kH,A.kN) +s(A.kI,A.kG) +s(A.lo,A.kj) +s(A.lq,A.kj) +s(A.kX,A.cG) +s(A.kY,A.X) +s(A.kZ,A.X) +s(A.l_,A.X) +s(A.l0,A.ep) +s(A.l1,A.X) +s(A.l2,A.d6) +s(A.l3,A.cG) +s(A.l4,A.X) +s(A.l5,A.ep) +s(A.l6,A.d6) +s(A.li,A.nT) +s(A.lj,A.nU) +s(A.lk,A.aG) +s(A.ll,A.kl) +s(A.lm,A.aR) +s(A.ln,A.ol) +s(A.le,A.aG) +s(A.lf,A.kl) +s(A.lg,A.X) +s(A.lr,A.kq) +s(A.ls,A.dG) +s(A.lt,A.dG) +s(A.lb,A.kk) +s(A.lc,A.oh) +s(A.ld,A.og) +s(A.l7,A.h_) +s(A.lp,A.h_) +s(A.l8,A.h_) +s(A.l9,A.kk)})() +var v={G:typeof self!="undefined"?self:globalThis,typeUniverse:{eC:new Map(),tR:{},eT:{},tPV:{},sEA:[]},mangledGlobalNames:{b:"int",T:"double",b4:"num",e:"String",C:"bool",aJ:"Null",m:"List",p:"Object",d:"Map",ao:"JSObject"},mangledNames:{},types:["C()","~()","~(aF)","aJ()","C(e)","C(aF?)","n()","n<+(e,ae)>()","e()","C(bQ)","C(cG)","n<@>()","C(dj)","C(p?,p?)","b(p?)","e(cc)","~(@)","~(p,e)","~(p?)","b(b,d)","C(e?)","C(aK)","F(F,F)","n()","~(~())","@()","b(b)","C(al)","aJ(@)","C(E)","C(b)","C(p?)","C(bu)","e(e)","b()","aQ(aQ)","E(E)","e(b)","@(@)","+(e,ae)(e,e,e)","b(@,@)","~(p?,p?)","~(el,@)","aJ(@,d1)","C(d)","e(d)","~(e,d)","~(al,d)","C(cR)","~(bu)","d(bu)","~(b,@)","m>(m)","e(cS)","C(b_)","bg(b_)","aJ(p,d1)","e(e?)","m(e)","aa(e)","aa(e,e,e)","~(e,@)","aa(b)","b(aa,aa)","b(b,aa)","e?()","b(bD)","e?(dk)","p(bD)","p(aK)","b(aK,aK)","m(b_>)","~(@,@)","cd()","e?(E)","aJ(~())","cm(aF)","cn(aF)","aQ(au)","C(dw[b])","n
()","n()","n>()","n()","b(b,b)","n()","n()","n()","n()","n()","n()","@(@,e)","@(e)","e(bK)","dH(e)","bc(e,e,m,e,e)","au(e,e,+(e,ae))","+(e,ae)(e,e,e,+(e,ae))","C(d_)","+(e,ae)(e)","bM(e,e,e,e)","c0(e,e,e)","c_(e,e,e)","bB(e,m,e,e)","e(e,e)","c2(e,e,e,e)","bC(e,e,e,aI?,e,e?,e,e)","aI(e,e,+(e,ae))","aI(e,e,+(e,ae),e,+(e,ae))","e(e,e,e)","n(d5)","~(a0)","aJ(ao)","cr<~>(~)","0&(e,b?)","p?(p?)","e(m)","~(e,p?)","0^(0^,0^)","n()"],interceptorsByTag:null,leafTags:null,arrayRti:Symbol("$ti"),rttc:{"2;":(a,b)=>c=>c instanceof A.l&&a.b(c.a)&&b.b(c.b),"3;":(a,b,c)=>d=>d instanceof A.hl&&a.b(d.a)&&b.b(d.b)&&c.b(d.c),"4;":a=>b=>b instanceof A.hm&&A.qV(a,b.a),"5;":a=>b=>b instanceof A.hn&&A.qV(a,b.a),"8;":a=>b=>b instanceof A.ho&&A.qV(a,b.a)}} +A.xt(v.typeUniverse,JSON.parse('{"cu":"cW","jz":"cW","dE":"cW","zJ":"du","iU":{"C":[],"a2":[]},"e4":{"aJ":[],"a2":[]},"fk":{"ao":[]},"cW":{"ao":[]},"y":{"m":["1"],"z":["1"],"ao":[],"h":["1"],"aT":["1"]},"iT":{"fF":[]},"mF":{"y":["1"],"m":["1"],"z":["1"],"ao":[],"h":["1"],"aT":["1"]},"J":{"K":["1"]},"e5":{"T":[],"b4":[],"a5":["b4"]},"fi":{"T":[],"b":[],"b4":[],"a5":["b4"],"a2":[]},"iV":{"T":[],"b4":[],"a5":["b4"],"a2":[]},"ct":{"e":[],"a5":["e"],"dw":[],"aT":["@"],"a2":[]},"eu":{"h":["2"]},"eN":{"K":["2"]},"dd":{"eu":["1","2"],"h":["2"],"h.E":"2"},"hb":{"dd":["1","2"],"eu":["1","2"],"z":["2"],"h":["2"],"h.E":"2"},"de":{"a8":["3","4"],"d":["3","4"],"a8.K":"3","a8.V":"4"},"e8":{"Z":[]},"jD":{"Z":[]},"af":{"D":["b"],"bL":["b"],"m":["b"],"z":["b"],"h":["b"],"D.E":"b","bL.E":"b"},"z":{"h":["1"]},"G":{"z":["1"],"h":["1"]},"cy":{"G":["1"],"z":["1"],"h":["1"],"h.E":"1","G.E":"1"},"L":{"K":["1"]},"b8":{"h":["2"],"h.E":"2"},"eU":{"b8":["1","2"],"z":["2"],"h":["2"],"h.E":"2"},"dt":{"K":["2"]},"R":{"G":["2"],"z":["2"],"h":["2"],"h.E":"2","G.E":"2"},"bb":{"h":["1"],"h.E":"1"},"cF":{"K":["1"]},"dm":{"h":["2"],"h.E":"2"},"fd":{"K":["2"]},"dD":{"h":["1"],"h.E":"1"},"eV":{"dD":["1"],"z":["1"],"h":["1"],"h.E":"1"},"fT":{"K":["1"]},"cx":{"h":["1"],"h.E":"1"},"dZ":{"cx":["1"],"z":["1"],"h":["1"],"h.E":"1"},"fO":{"K":["1"]},"eW":{"z":["1"],"h":["1"],"h.E":"1"},"eX":{"K":["1"]},"a_":{"h":["1"],"h.E":"1"},"bZ":{"K":["1"]},"em":{"D":["1"],"bL":["1"],"m":["1"],"z":["1"],"h":["1"]},"V":{"G":["1"],"z":["1"],"h":["1"],"h.E":"1","G.E":"1"},"cf":{"el":[]},"l":{"ez":[],"bn":[]},"hl":{"eA":[],"bn":[]},"hm":{"d7":[],"bn":[]},"hn":{"d7":[],"bn":[]},"ho":{"d7":[],"bn":[]},"eP":{"dF":["1","2"],"eC":["1","2"],"ea":["1","2"],"hv":["1","2"],"d":["1","2"]},"dW":{"d":["1","2"]},"r":{"dW":["1","2"],"d":["1","2"]},"he":{"h":["1"],"h.E":"1"},"cK":{"K":["1"]},"a":{"dW":["1","2"],"d":["1","2"]},"dX":{"aY":["1"],"bk":["1"],"z":["1"],"h":["1"]},"bf":{"dX":["1"],"aY":["1"],"bk":["1"],"z":["1"],"h":["1"],"aY.E":"1"},"aO":{"dX":["1"],"aY":["1"],"bk":["1"],"z":["1"],"h":["1"],"aY.E":"1"},"iO":{"b6":[],"cq":[]},"e0":{"b6":[],"cq":[]},"fj":{"rn":[]},"fx":{"cC":[],"Z":[]},"iW":{"Z":[]},"jZ":{"Z":[]},"jk":{"ah":[]},"hq":{"d1":[]},"b6":{"cq":[]},"i4":{"b6":[],"cq":[]},"i5":{"b6":[],"cq":[]},"jR":{"b6":[],"cq":[]},"jP":{"b6":[],"cq":[]},"dT":{"b6":[],"cq":[]},"jI":{"Z":[]},"bx":{"a8":["1","2"],"mH":["1","2"],"d":["1","2"],"a8.K":"1","a8.V":"2"},"aU":{"z":["1"],"h":["1"],"h.E":"1"},"cv":{"K":["1"]},"fo":{"z":["1"],"h":["1"],"h.E":"1"},"dq":{"K":["1"]},"dp":{"z":["b_<1,2>"],"h":["b_<1,2>"],"h.E":"b_<1,2>"},"fn":{"K":["b_<1,2>"]},"dn":{"bx":["1","2"],"a8":["1","2"],"mH":["1","2"],"d":["1","2"],"a8.K":"1","a8.V":"2"},"ez":{"bn":[]},"eA":{"bn":[]},"d7":{"bn":[]},"cV":{"qb":[],"dw":[]},"hg":{"fE":[],"cc":[]},"ku":{"h":["fE"],"h.E":"fE"},"et":{"K":["fE"]},"fS":{"cc":[]},"kR":{"h":["cc"],"h.E":"cc"},"kS":{"K":["cc"]},"du":{"ao":[],"a2":[]},"fu":{"ao":[]},"j6":{"ao":[],"a2":[]},"aW":{"bw":["1"],"ao":[],"aT":["1"]},"ft":{"D":["T"],"aW":["T"],"m":["T"],"bw":["T"],"z":["T"],"ao":[],"aT":["T"],"h":["T"],"ai":["T"]},"by":{"D":["b"],"aW":["b"],"m":["b"],"bw":["b"],"z":["b"],"ao":[],"aT":["b"],"h":["b"],"ai":["b"]},"j7":{"D":["T"],"aW":["T"],"m":["T"],"bw":["T"],"z":["T"],"ao":[],"aT":["T"],"h":["T"],"ai":["T"],"a2":[],"D.E":"T","ai.E":"T"},"j8":{"D":["T"],"aW":["T"],"m":["T"],"bw":["T"],"z":["T"],"ao":[],"aT":["T"],"h":["T"],"ai":["T"],"a2":[],"D.E":"T","ai.E":"T"},"j9":{"by":[],"D":["b"],"aW":["b"],"m":["b"],"bw":["b"],"z":["b"],"ao":[],"aT":["b"],"h":["b"],"ai":["b"],"a2":[],"D.E":"b","ai.E":"b"},"ja":{"by":[],"iP":[],"D":["b"],"aW":["b"],"m":["b"],"bw":["b"],"z":["b"],"ao":[],"aT":["b"],"h":["b"],"ai":["b"],"a2":[],"D.E":"b","ai.E":"b"},"jb":{"by":[],"D":["b"],"aW":["b"],"m":["b"],"bw":["b"],"z":["b"],"ao":[],"aT":["b"],"h":["b"],"ai":["b"],"a2":[],"D.E":"b","ai.E":"b"},"jc":{"by":[],"qi":[],"D":["b"],"aW":["b"],"m":["b"],"bw":["b"],"z":["b"],"ao":[],"aT":["b"],"h":["b"],"ai":["b"],"a2":[],"D.E":"b","ai.E":"b"},"fv":{"by":[],"qj":[],"D":["b"],"aW":["b"],"m":["b"],"bw":["b"],"z":["b"],"ao":[],"aT":["b"],"h":["b"],"ai":["b"],"a2":[],"D.E":"b","ai.E":"b"},"fw":{"by":[],"D":["b"],"aW":["b"],"m":["b"],"bw":["b"],"z":["b"],"ao":[],"aT":["b"],"h":["b"],"ai":["b"],"a2":[],"D.E":"b","ai.E":"b"},"dv":{"by":[],"jX":[],"D":["b"],"aW":["b"],"m":["b"],"bw":["b"],"z":["b"],"ao":[],"aT":["b"],"h":["b"],"ai":["b"],"a2":[],"D.E":"b","ai.E":"b"},"kJ":{"Z":[]},"eB":{"cC":[],"Z":[]},"bG":{"Z":[]},"h8":{"kA":["1"]},"az":{"cr":["1"]},"hz":{"te":[]},"kP":{"hz":[],"te":[]},"cJ":{"a8":["1","2"],"d":["1","2"],"a8.K":"1","a8.V":"2"},"dJ":{"cJ":["1","2"],"a8":["1","2"],"d":["1","2"],"a8.K":"1","a8.V":"2"},"ha":{"cJ":["1","2"],"a8":["1","2"],"d":["1","2"],"a8.K":"1","a8.V":"2"},"hc":{"z":["1"],"h":["1"],"h.E":"1"},"hd":{"K":["1"]},"cL":{"hp":["1"],"aY":["1"],"rw":["1"],"bk":["1"],"z":["1"],"h":["1"],"aY.E":"1"},"dK":{"K":["1"]},"cE":{"D":["1"],"bL":["1"],"m":["1"],"z":["1"],"h":["1"],"D.E":"1","bL.E":"1"},"D":{"m":["1"],"z":["1"],"h":["1"]},"a8":{"d":["1","2"]},"ea":{"d":["1","2"]},"dF":{"eC":["1","2"],"ea":["1","2"],"hv":["1","2"],"d":["1","2"]},"fp":{"wC":["1"],"G":["1"],"z":["1"],"h":["1"],"h.E":"1","G.E":"1"},"hf":{"K":["1"]},"aY":{"bk":["1"],"z":["1"],"h":["1"]},"hp":{"aY":["1"],"bk":["1"],"z":["1"],"h":["1"]},"hS":{"bt":["e","m"],"bt.S":"e"},"kV":{"cl":["m","e"]},"hT":{"cl":["m","e"]},"eL":{"bt":["m","e"],"bt.S":"m"},"hX":{"cl":["m","e"]},"ic":{"bt":["e","m"]},"fl":{"Z":[]},"iY":{"Z":[]},"iX":{"bt":["p?","e"],"bt.S":"p?"},"iZ":{"cl":["p?","e"]},"k2":{"bt":["e","m"],"bt.S":"e"},"k3":{"cl":["m","e"]},"i_":{"a5":["i_"]},"dg":{"a5":["dg"]},"T":{"b4":[],"a5":["b4"]},"b":{"b4":[],"a5":["b4"]},"m":{"z":["1"],"h":["1"]},"b4":{"a5":["b4"]},"qb":{"dw":[]},"fE":{"cc":[]},"bk":{"z":["1"],"h":["1"]},"e":{"a5":["e"],"dw":[]},"ap":{"i_":[],"a5":["i_"]},"hU":{"Z":[]},"cC":{"Z":[]},"bR":{"Z":[]},"ef":{"Z":[]},"fh":{"Z":[]},"jg":{"Z":[]},"fX":{"Z":[]},"fW":{"Z":[]},"dC":{"Z":[]},"i7":{"Z":[]},"jo":{"Z":[]},"fQ":{"Z":[]},"kK":{"ah":[]},"aA":{"ah":[]},"iQ":{"ah":[],"Z":[]},"kT":{"d1":[]},"bV":{"h":["b"],"h.E":"b"},"jH":{"K":["b"]},"W":{"wK":[]},"hw":{"k_":[]},"bN":{"k_":[]},"kC":{"k_":[]},"jj":{"ah":[]},"vP":{"m":["b"],"z":["b"],"h":["b"]},"jX":{"m":["b"],"z":["b"],"h":["b"]},"wO":{"m":["b"],"z":["b"],"h":["b"]},"vO":{"m":["b"],"z":["b"],"h":["b"]},"qi":{"m":["b"],"z":["b"],"h":["b"]},"iP":{"m":["b"],"z":["b"],"h":["b"]},"qj":{"m":["b"],"z":["b"],"h":["b"]},"vH":{"m":["T"],"z":["T"],"h":["T"]},"vI":{"m":["T"],"z":["T"],"h":["T"]},"hQ":{"h":["bQ"],"h.E":"bQ"},"ks":{"fe":[]},"ju":{"rF":[]},"jt":{"q8":[]},"jw":{"q8":[]},"jx":{"q8":[]},"jv":{"rF":[]},"it":{"fe":[]},"e_":{"iN":[]},"fy":{"jp":[]},"d3":{"h":["e"],"h.E":"e"},"fR":{"K":["e"]},"eR":{"bS":["1"]},"e2":{"bS":["h<1>"]},"cX":{"bS":["m<1>"]},"bE":{"bS":["2"]},"ei":{"bE":["1","bk<1>"],"bS":["bk<1>"],"bE.E":"1","bE.T":"bk<1>"},"e9":{"bS":["d<1,2>"]},"eQ":{"bS":["@"]},"ev":{"h":["1"]},"dY":{"m":["1"],"ev":["1"],"z":["1"],"h":["1"]},"iy":{"I":[]},"d_":{"N":[]},"fL":{"N":[]},"an":{"N":[]},"cs":{"N":[]},"d4":{"N":[]},"jT":{"N":[]},"jd":{"N":[]},"jJ":{"N":[]},"ba":{"N":[]},"dh":{"ba":[],"N":[]},"j5":{"ba":[],"N":[]},"hW":{"ba":[],"N":[]},"ix":{"ba":[],"N":[]},"i3":{"ba":[],"N":[]},"ed":{"ba":[],"N":[]},"ee":{"ba":[],"N":[]},"fD":{"ed":[],"ba":[],"N":[]},"jC":{"ee":[],"ba":[],"N":[]},"eh":{"N":[]},"je":{"ba":[],"N":[]},"jn":{"an":[],"N":[]},"jm":{"an":[],"N":[]},"ak":{"an":[],"N":[]},"jl":{"ak":[],"an":[],"N":[]},"bA":{"ak":[],"an":[],"N":[]},"j_":{"bA":[],"ak":[],"an":[],"N":[]},"jy":{"ak":[],"an":[],"N":[]},"ib":{"ak":[],"an":[],"N":[]},"is":{"ak":[],"an":[],"N":[]},"hN":{"bA":[],"ak":[],"an":[],"N":[]},"jU":{"bA":[],"ak":[],"an":[],"N":[]},"iv":{"bA":[],"ak":[],"an":[],"N":[]},"iu":{"ak":[],"an":[],"N":[]},"jG":{"bA":[],"ak":[],"an":[],"N":[]},"i1":{"bA":[],"ak":[],"an":[],"N":[]},"jE":{"bA":[],"ak":[],"an":[],"N":[]},"j0":{"bA":[],"ak":[],"an":[],"N":[]},"k4":{"bA":[],"ak":[],"an":[],"N":[]},"k5":{"t5":[]},"bg":{"di":[]},"fb":{"di":[]},"aN":{"a5":["p"]},"eT":{"al":[]},"a6":{"al":[]},"i9":{"al":[]},"bY":{"al":[]},"i6":{"al":[]},"jh":{"b7":["al"],"D":["al"],"m":["al"],"z":["al"],"h":["al"],"D.E":"al","b7.E":"al"},"b9":{"ah":[]},"iM":{"a9":[]},"hZ":{"a9":[]},"hY":{"a9":[]},"iF":{"a9":[]},"hM":{"a9":[]},"iz":{"a9":[]},"jS":{"a9":[]},"iK":{"a9":[]},"fg":{"a9":[]},"iA":{"a9":[]},"iC":{"a9":[]},"iJ":{"a9":[]},"iG":{"a9":[]},"iB":{"a9":[]},"iI":{"a9":[]},"iH":{"a9":[]},"iD":{"a9":[]},"hK":{"a9":[]},"iE":{"a9":[]},"hL":{"a9":[]},"hI":{"a9":[]},"hJ":{"a9":[]},"ia":{"aY":["e"],"bk":["e"],"z":["e"],"h":["e"],"aY.E":"e"},"kB":{"aY":["e"],"bk":["e"],"z":["e"],"h":["e"]},"ew":{"ah":[]},"b7":{"D":["1"],"m":["1"],"z":["1"],"h":["1"]},"d0":{"t5":[]},"bK":{"bl":[]},"cA":{"bl":[]},"d2":{"cA":[],"bl":[]},"H":{"cA":[],"bl":[]},"j":{"bK":[],"bl":[]},"B":{"bK":[],"bl":[]},"dB":{"bK":[],"bl":[]},"dU":{"bK":[],"bl":[]},"eS":{"bl":[]},"ff":{"K":["bl"]},"hH":{"b7":["a6?"],"D":["a6?"],"m":["a6?"],"z":["a6?"],"h":["a6?"],"D.E":"a6?","b7.E":"a6?"},"f9":{"ah":[]},"js":{"ah":[]},"jA":{"e1":[]},"k1":{"e1":[]},"k7":{"e1":[]},"jr":{"aA":[],"ah":[]},"F":{"eg":["0&"],"cb":[]},"eg":{"cb":[]},"Q":{"eg":["1"],"cb":[]},"u":{"ny":["1"],"n":["1"]},"fr":{"h":["1"],"h.E":"1"},"fs":{"K":["1"]},"cp":{"at":["~","e"],"n":["e"],"at.T":"~"},"fq":{"at":["1","2"],"n":["2"],"at.T":"1"},"fU":{"at":["1","cB<1>"],"n":["cB<1>"],"at.T":"1"},"fM":{"ca":[]},"ck":{"ca":[]},"j3":{"ca":[]},"ji":{"ca":[]},"aa":{"ca":[]},"k6":{"ca":[]},"eO":{"dr":["1","1"],"n":["1"],"dr.R":"1"},"at":{"n":["2"]},"fH":{"n":["+(1,2)"]},"dA":{"n":["+(1,2,3)"]},"fI":{"n":["+(1,2,3,4)"]},"fJ":{"n":["+(1,2,3,4,5)"]},"fK":{"n":["+(1,2,3,4,5,6,7,8)"]},"dr":{"n":["2"]},"bT":{"at":["1","1"],"n":["1"],"at.T":"1"},"fP":{"at":["1","1"],"n":["1"],"at.T":"1"},"id":{"n":["~"]},"cQ":{"n":["1"]},"jf":{"n":["e"]},"i2":{"n":["e"]},"fC":{"n":["e"]},"ej":{"n":["e"]},"hO":{"n":["e"]},"fV":{"n":["e"]},"hP":{"n":["e"]},"jF":{"n":["e"]},"bj":{"fm":["1"],"dz":["1","m<1>"],"at":["1","m<1>"],"n":["m<1>"],"at.T":"1"},"fm":{"dz":["1","m<1>"],"at":["1","m<1>"],"n":["m<1>"]},"fB":{"dz":["1","m<1>"],"at":["1","m<1>"],"n":["m<1>"],"at.T":"1"},"dz":{"at":["1","2"],"n":["2"]},"rl":{"cd":[],"bJ":[],"a5":["bJ"]},"bh":{"bW":[],"a5":["bW"]},"av":{"rl":[],"cd":[],"bJ":[],"a5":["bJ"]},"bW":{"a5":["bW"]},"jN":{"bW":[],"a5":["bW"]},"bJ":{"a5":["bJ"]},"jO":{"bJ":[],"a5":["bJ"]},"ek":{"bJ":[],"a5":["bJ"]},"cd":{"bJ":[],"a5":["bJ"]},"kb":{"d5":[]},"ki":{"ah":[]},"km":{"ah":[]},"ko":{"aA":[],"ah":[]},"kp":{"aA":[],"ah":[]},"h2":{"ah":[]},"c1":{"h":["E"],"h.E":"E"},"kc":{"K":["E"]},"aQ":{"E":[],"X":["E"],"aG":[],"aR":[],"cG":[],"X.T":"E"},"en":{"E":[],"X":["E"],"aG":[],"aR":[],"X.T":"E"},"fY":{"E":[],"X":["E"],"aG":[],"aR":[],"X.T":"E"},"k9":{"E":[],"X":["E"],"aG":[],"aR":[]},"ka":{"ep":[],"E":[],"X":["E"],"aG":[],"aR":[],"X.T":"E"},"fZ":{"E":[],"X":["E"],"aG":[],"aR":[],"X.T":"E"},"kd":{"E":[],"d6":["E"],"aG":[],"aR":[],"d6.T":"E"},"aF":{"ep":[],"E":[],"X":["E"],"d6":["E"],"aG":[],"aR":[],"cG":[],"d6.T":"E","X.T":"E"},"E":{"aG":[],"aR":[]},"h4":{"E":[],"X":["E"],"aG":[],"aR":[],"X.T":"E"},"es":{"E":[],"X":["E"],"aG":[],"aR":[],"X.T":"E"},"eo":{"n":["e"]},"eq":{"X":["E"],"aG":[],"aR":[]},"h0":{"dY":["1"],"m":["1"],"ev":["1"],"z":["1"],"h":["1"]},"h3":{"eq":[],"X":["E"],"aG":[],"aR":[],"X.T":"E"},"h5":{"eq":[],"X":["E"],"aG":[],"aR":[],"X.T":"E"},"kr":{"kq":[]},"ke":{"cl":["m","e"]},"la":{"dG":[],"fN":["m"]},"lh":{"dG":[],"fN":["m"]},"c_":{"a0":[]},"c0":{"a0":[]},"bB":{"a0":[]},"bC":{"a0":[]},"bM":{"a0":[]},"c2":{"a0":[]},"bc":{"a0":[]},"h6":{"a0":[]},"dH":{"h6":[],"a0":[]},"kf":{"h":["a0"],"h.E":"a0"},"kg":{"K":["a0"]},"df":{"fN":["1"]},"ny":{"n":["1"]}}')) +A.xs(v.typeUniverse,JSON.parse('{"em":1,"aW":1}')) +var u={S:"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\u03f6\x00\u0404\u03f4 \u03f4\u03f6\u01f6\u01f6\u03f6\u03fc\u01f4\u03ff\u03ff\u0584\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u05d4\u01f4\x00\u01f4\x00\u0504\u05c4\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u0400\x00\u0400\u0200\u03f7\u0200\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u0200\u0200\u0200\u03f7\x00",t:"\x01\x01)==\xb5\x8d\x15)QeyQQ\xc9===\xf1\xf0\x00\x01)==\xb5\x8d\x15)QeyQQ\xc9===\xf1\xf0\x01\x01)==\xb5\x8d\x15(QeyQQ\xc9===\xf1\xf0\x01\x01(<<\xb4\x8c\x15(PdxPP\xc8<<<\xf1\xf0\x01\x01)==\xb5\x8d\x15(PeyQQ\xc9===\xf1\xf0\x01\x01)==\xb5\x8d\x15(PdyPQ\xc9===\xf1\xf0\x01\x01)==\xb5\x8d\x15(QdxPP\xc9===\xf1\xf0\x01\x01)==\xb5\x8d\x15(QeyQQ\xc9\u011a==\xf1\xf0\xf0\xf0\xf0\xf0\xf0\xdc\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\x01\x01)==\u0156\x8d\x15(QeyQQ\xc9===\xf1\xf0\x01\x01)==\xb5\x8d\x15(QeyQQ\xc9\u012e\u012e\u0142\xf1\xf0\x01\x01)==\xa1\x8d\x15(QeyQQ\xc9===\xf1\xf0\x00\x00(<<\xb4\x8c\x14(PdxPP\xc8<<<\xf0\xf0\x01\x01)==\xb5\x8d\x15)QeyQQ\xc9===\xf0\xf0??)\u0118=\xb5\x8c?)QeyQQ\xc9=\u0118\u0118?\xf0??)==\xb5\x8d?)QeyQQ\xc9\u012c\u012c\u0140?\xf0??)==\xb5\x8d?)QeyQQ\xc8\u0140\u0140\u0140?\xf0\xdc\xdc\xdc\xdc\xdc\u0168\xdc\xdc\xdc\xdc\xdc\xdc\xdc\xdc\xdc\xdc\xdc\xdc\xdc\x00\xa1\xa1\xa1\xa1\xa1\u0154\xa1\xa1\xa1\xa1\xa1\xa1\xa1\xa1\xa1\xa1\xa1\xa1\xa1\x00",e:"\x10\x10\b\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x10\x10\x10\x10\x10\x02\x02\x02\x04\x04\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x02\x01\x01\x01\x01\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x02\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x02\x0e\x02\x02\x02\x0e\x0e\x0e\x0e\x02\x02\x10\x02\x10\x04\x10\x04\x04\x02\x10\x10\x10\x02\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x02\x02\x06\x02\x02\x02\x02\x06\x02\x06\x02\x02\x02\x02\x06\x06\x06\x02\x06\x02\x02\x02\x02\x02\x02\x02\x02\x04\x10\x10\x10\x10\x02\x02\x04\x04\x02\x02\x04\x04\x11\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x0e\x0e\x02\x0e\x10\x04\x04\x04\x04\x02\x10\x10\x10\x02\x10\x10\x10\x11\x02\x02\x02\x02\x02\x02\x02\x10\x10\x02\x0e\x0e\x0e\x02\x02\x02\x02\x02\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x0e\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x04\x10\x10\x10\x10\x10\x10\x02\x10\x10\x04\x04\x10\x10\x02\x10\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x04\x04\x04\x04\x04\x04\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x10\x10\x02\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x04\x10\x10\x10\x10\x10\x10\x10\x04\x04\x04\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x02\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x02\x02\x10\x02\x10\x10\x10\x02\x10\x10\x02\x02\x02\x02\x02\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x04\x04\x10\x02\x02\x02\x02\x04\x10\x10\x10\x10\x10\x10\x10\x10\x04\x04\x04\x04\x11\x04\x04\x02\x10\x10\x10\x10\x10\x10\x10\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\f\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\f\r\r\r\r\r\r\r\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\x02\x02\x02\x02\x04\x10\x10\x10\x10\x02\x04\x04\x04\x02\x04\x04\x04\x11\b\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x04\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x01\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x10\x10\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x10\x10\x10\x10\x10\x10\x10\x02\x10\x10\x02\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x02\x02\x02\x10\x10\x10\x10\x10\x10\x01\x01\x01\x01\x01\x01\x01\x01\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x02\x02\x02\x02\x02\x02\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x0e\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x02\x02\x02\x06\x06\x06\x02\x02\x02\x02\x02\x10\x04\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x04\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\x02\x02\x02\x04\x04\x10\x04\x04\x10\x04\x04\x02\x04\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x02\x02\x02\x02\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x02\x02\x02\x10\x04\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x02\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x02\x0e\x0e\x02\x0e\x0e\x0e\x0e\x0e\x02\x02\x10\x02\x10\x10\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x02\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x02\x0e\x0e\x02\x0e\x0e\x0e\x0e\x0e\x02\x02\x10\x02\x04\x04\x10\x10\x10\x10\x02\x02\x04\x04\x02\x02\x04\x04\x11\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x02\x02\x02\x02\x0e\x0e\x02\x0e\n\n\n\n\n\n\n\x02\x02\x02\x02\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\x10\x10\b\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x10\x10\x10\x10\x10\x10\x10\x02\x10\x10\x10\x10\x10\x10\x04\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x04\x10\x10\x10\x10\x10\x10\x10\x04\x10\x10\x04\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x02\x02\x02\x10\x02\x10\x10\x02\x10\x10\x10\x10\x10\x10\x10\b\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x04\x04\x04\x02\x10\x10\x02\x04\x04\x10\x04\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x04\x04\x04\x04\x04\x02\x04\x04\x02\x02\x10\x10\x10\x10\b\x04\b\x04\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x04\x10\x10\x10\x10\x02\x02\x10\x10\x04\x04\x04\x04\x10\x02\x02\x02\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x06\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x07\x01\x01\x00\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x02\x02\x02\x02\x04\x04\x10\x10\x04\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\b\x02\x10\x10\x10\x10\x02\x10\x10\x10\x02\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x10\x04\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x10\x02\x02\x04\x10\x10\x02\x02\x02\x02\x02\x02\x10\x04\x10\x10\x04\x04\x04\x10\x04\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x01\x03\x0f\x01\x01\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x04\x04\x10\x10\x04\x04\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x01\x01\x01\x01\x01\x01\x01\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x02\x02\x02\x01\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x10\x10\x10\x02\x02\x10\x10\x02\x02\x02\x02\x02\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x0e\x0e\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x04\x10\x10\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x10\x04\x04\x10\x10\x10\x02\x10\x02\x04\x04\x04\x04\x04\x04\x04\x10\x04\x04\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x04\x10\x10\x10\x10\x04\x04\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x04\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x04\x10\x10\x10\x10\x10\x10\x10\x10\x10\x04\x10\x02\b\b\x02\x02\x02\x02\x02\x10\x10\x10\x10\x02\x04\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x04\x10\x10\x10\x10\x10\x10\x10\x10\x04\x04\x10\x04\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x04\x10\x04\x04\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x04\x04\x04\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x04\x10\x10\x10\x10\x10\x10\x10\x10\x10\x04\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\b\b\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x04\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x10\x10\x02\x10\x04\x04\x02\x02\x02\x04\x04\x04\x02\x04\x04\x04\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x10\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x04\x04\x10\x10\x10\x10\x04\x04\x10\x10\x04\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x02\x10\x04\x10\x04\x04\x04\x04\x02\x02\x04\x04\x02\x02\x04\x04\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x02\x02\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x04\x04\x10\x10\x10\x10\x10\x10\x02\x10\x02\x02\x10\x02\x10\x10\x10\x04\x02\x04\x04\x10\x10\x10\b\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x10\x10\x02\x02\x02\x02\x10\x10\x02\x02\x10\x10\x10\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\b\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x10\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x04\x04\x04\x04\x10\x10\x04\x04\x04\x02\x02\x02\x02\x04\x04\x10\x04\x04\x04\x04\x04\x04\x10\x10\x10\x02\x02\x02\x02\x10\x10\x10\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x10\x04\x10\x02\x04\x04\x10\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x04\x10\x10\x10\x10\x04\x04\x10\x10\x02\x02\b\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\b\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x10\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x04\x04\x10\x10\x10\x10\x02\x02\x04\x04\x04\x04\x10\x10\x04\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x04\x10\x02\x02\x10\x10\x10\x10\x04\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x04\x10\x10\x10\x10\x10\x10\x10\x10\x04\x04\x10\x10\x10\x04\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x04\x04\x10\x10\x10\x10\x10\x10\x04\x10\x04\x04\x10\x04\x10\x10\x04\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x04\x10\x10\x10\x04\x04\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x10\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x04\x04\x04\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\b\b\b\b\b\b\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x01\x02\x02\x02\x10\x10\x02\x10\x10\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x02\x06\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x04\b\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x04\x04\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\b\b\b\b\b\b\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x04\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\n\x02\x02\x02\n\n\n\n\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x06\x02\x06\x02\x02\x02\x02\x02\x02\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x10\x02\x10\x02\x02\x02\x02\x04\x04\x04\x04\x04\x04\x04\x04\x10\x10\x10\x10\x10\x10\x10\x10\x04\x04\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x04\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x04\x10\x10\x10\x10\x10\x02\x10\x10\x04\x02\x04\x04\x11\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x10\x10\x04\x04\x02\x02\x02\x02\x02\x04\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02",U:"\x15\x01)))\xb5\x8d\x01=Qeyey\xc9)))\xf1\xf0\x15\x01)))\xb5\x8d\x00=Qeyey\xc9)))\xf1\xf0\x15\x01)((\xb5\x8d\x01=Qeyey\xc9(((\xf1\xf0\x15\x01(((\xb4\x8c\x01"),i9:s("eP"),M:s("r"),o:s("r"),d:s("bf"),k0:s("df>"),nP:s("df"),cs:s("dg"),W:s("eS"),dA:s("eT"),hd:s("aI"),gt:s("z<@>"),g:s("a6"),ia:s("H"),m9:s("ig"),pf:s("cQ"),cC:s("cQ<~>"),gw:s("eY"),ht:s("bg"),k5:s("bu"),mg:s("di"),aN:s("ih"),fc:s("ii"),iA:s("eZ"),pd:s("ij"),w:s("dj"),mz:s("ik"),ib:s("f_"),fj:s("dk"),fW:s("f0"),mv:s("f1"),az:s("cR"),kZ:s("f2"),j1:s("f3"),ck:s("cm"),f5:s("f4"),aw:s("il"),eo:s("f5"),gK:s("cS"),c9:s("cn"),ni:s("f6"),eH:s("im"),on:s("f7"),iV:s("co"),p7:s("f8"),hl:s("io"),gF:s("ip"),oe:s("iq"),ad:s("fa"),am:s("fb"),fz:s("Z"),mA:s("ah"),nq:s("F"),lW:s("aA"),gY:s("cq"),ha:s("a"),mj:s("a"),j:s("a>"),r:s("a>>"),e:s("a>>>"),t:s("a>>>>"),V:s("a>>>>>"),i:s("a>>>>>>"),J:s("a>>>>>>>"),O:s("a>>>>>>>>"),l:s("a>>>>>>>>>"),x:s("a>>>>>>>>>>"),Y:s("a>>>>>>>>>>>"),k:s("a>>>>>>>>>>>>"),_:s("a>>>>>>>>>>>>>"),Q:s("a>>>>>>>>>>>>>>"),B:s("a>>>>>>>>>>>>>>>"),kg:s("a>>>>>>>>>>>>>>>>"),oJ:s("a>>>>>>>>>>>>>>>>>"),m:s("aO<+(e,e)>"),fr:s("aO"),gx:s("cs"),aB:s("fg"),jL:s("iP"),bg:s("rn"),nZ:s("e2<@>"),fY:s("h"),bq:s("h"),bO:s("h"),eh:s("h"),b7:s("h"),e7:s("h<@>"),fm:s("h"),c_:s("y"),aa:s("y"),il:s("y"),lv:s("y"),mE:s("y"),bz:s("y"),l6:s("y"),bS:s("y"),oc:s("y"),oj:s("y"),ik:s("y"),hJ:s("y"),lu:s("y"),mt:s("y"),nS:s("y"),cJ:s("y"),jA:s("y"),oQ:s("y"),ic:s("y>"),ke:s("y>"),kU:s("y"),cx:s("y"),bD:s("y"),jj:s("y>"),bX:s("y>"),fa:s("y>"),ge:s("y>"),ig:s("y>"),dy:s("y>"),U:s("y>"),gg:s("y"),lU:s("y"),im:s("y"),fG:s("y"),iM:s("y"),s:s("y"),ks:s("y"),kG:s("y"),pp:s("y"),eB:s("y"),oi:s("y"),iJ:s("y"),g7:s("y"),dg:s("y"),dG:s("y<@>"),Z:s("y"),lB:s("y"),hg:s("y"),mf:s("y"),iy:s("aT<@>"),bE:s("e4"),bp:s("ao"),dY:s("cu"),dX:s("bw<@>"),jO:s("bx"),du:s("bj

"),ln:s("bj"),mP:s("bj<@>"),oP:s("mH"),hI:s("cX<@>"),jB:s("m"),nw:s("m"),kn:s("m"),eP:s("m>"),ez:s("m

"),aI:s("m"),bF:s("m"),lR:s("m"),aE:s("m"),iF:s("m"),p6:s("m"),p:s("m<@>"),L:s("m"),eU:s("m"),mH:s("ak"),kY:s("b_"),lO:s("b_>"),a3:s("e9<@,@>"),av:s("d<@,@>"),f:s("d"),gQ:s("R"),iZ:s("R"),f1:s("fr>"),aj:s("by"),hD:s("dv"),fh:s("al"),a:s("aJ"),K:s("p"),bQ:s("bT<+(e,ae)>"),g1:s("bT"),eK:s("bT"),kT:s("bT"),jK:s("j"),n4:s("n<@>"),m4:s("dw"),dl:s("fA"),eN:s("aa"),lZ:s("zK"),aK:s("+()"),R:s("+(e,ae)"),by:s("u"),mD:s("u>"),b:s("u<+(e,ae)>"),h:s("u"),eM:s("u"),dE:s("u"),cB:s("u"),i8:s("u"),gV:s("u"),bj:s("u"),jk:s("u"),hN:s("u"),d8:s("u"),br:s("u

"),gy:s("u<@>"),mi:s("u<~>"),lg:s("fE"),ob:s("ny<@>"),hF:s("V"),mO:s("bV"),dT:s("d_"),b9:s("eh"),bT:s("dA"),i6:s("fK"),cu:s("ei<@>"),i2:s("bk"),hj:s("bk<@>"),nO:s("bk"),i3:s("fN"),hq:s("bW"),hs:s("bJ"),ol:s("cd"),fp:s("dB"),E:s("d1"),ny:s("d2"),N:s("e"),v:s("bK"),po:s("e(cc)"),gL:s("e(e)"),y:s("Q"),k2:s("Q<~>"),bR:s("el"),fn:s("cA"),oI:s("bY"),n9:s("fU"),in:s("N"),aJ:s("a2"),do:s("cC"),ev:s("jX"),mK:s("dE"),bW:s("cE"),jJ:s("k_"),lS:s("a_"),nk:s("a_"),os:s("a_"),C:s("a_"),lH:s("a_"),pl:s("bZ"),k7:s("bZ"),F:s("aQ"),bf:s("c_"),lY:s("c0"),ee:s("bB"),n8:s("c1"),dH:s("bC"),P:s("aF"),cW:s("bM"),j7:s("d5"),mX:s("a0"),fw:s("au"),jN:s("cG"),ax:s("aG"),I:s("E"),co:s("c2"),l3:s("bc"),hO:s("h6"),f9:s("ap"),j_:s("az<@>"),cU:s("az<~>"),D:s("aK"),mp:s("dJ"),nR:s("bD"),fA:s("ey"),k4:s("C"),c:s("C()"),iW:s("C(p)"),gS:s("C(e)"),aP:s("C(aK)"),dx:s("T"),z:s("@"),mY:s("@()"),mq:s("@(p)"),ng:s("@(p,d1)"),f6:s("@(e)"),S:s("b"),g0:s("aI?"),mV:s("a6?"),cX:s("cr?"),mU:s("ao?"),n:s("d?"),X:s("p?"),g9:s("ba?"),jv:s("e?"),jt:s("e(cc)?"),nU:s("bl?"),q:s("aF?"),np:s("dI<@,@>?"),dd:s("aK?"),nF:s("kM?"),fU:s("C?"),pi:s("C(e)?"),jX:s("T?"),aV:s("b?"),jh:s("b4?"),cZ:s("b4"),H:s("~"),T:s("~()"),f0:s("~(h)"),m3:s("~(eb)")}})();(function constants(){var s=hunkHelpers.makeConstList +B.iO=J.iR.prototype +B.a=J.y.prototype +B.f=J.fi.prototype +B.cU=J.e4.prototype +B.cV=J.e5.prototype +B.b=J.ct.prototype +B.iP=J.cu.prototype +B.iQ=J.fk.prototype +B.aA=A.fv.prototype +B.k=A.dv.prototype +B.hw=J.jz.prototype +B.cF=J.dE.prototype +B.i_=new A.hT(!1,127) +B.F=new A.i0(0,"littleEndian") +B.aU=new A.i0(1,"bigEndian") +B.ic=new A.e0(A.zh(),A.Y("e0")) +B.id=new A.hS() +B.ie=new A.hX() +B.cJ=new A.eL() +B.ig=new A.eR(A.Y("eR<0&>")) +B.l=new A.eQ() +B.cK=new A.eX(A.Y("eX<0&>")) +B.cL=new A.ie() +B.bE=new A.ie() +B.ih=new A.f9() +B.ii=new A.iQ() +B.cM=function getTagFallback(o) { + var s = Object.prototype.toString.call(o); + return s.substring(8, s.length - 1); +} +B.ij=function() { + var toStringFunction = Object.prototype.toString; + function getTag(o) { + var s = toStringFunction.call(o); + return s.substring(8, s.length - 1); + } + function getUnknownTag(object, tag) { + if (/^HTML[A-Z].*Element$/.test(tag)) { + var name = toStringFunction.call(object); + if (name == "[object Object]") return null; + return "HTMLElement"; + } + } + function getUnknownTagGenericBrowser(object, tag) { + if (object instanceof HTMLElement) return "HTMLElement"; + return getUnknownTag(object, tag); + } + function prototypeForTag(tag) { + if (typeof window == "undefined") return null; + if (typeof window[tag] == "undefined") return null; + var constructor = window[tag]; + if (typeof constructor != "function") return null; + return constructor.prototype; + } + function discriminator(tag) { return null; } + var isBrowser = typeof HTMLElement == "function"; + return { + getTag: getTag, + getUnknownTag: isBrowser ? getUnknownTagGenericBrowser : getUnknownTag, + prototypeForTag: prototypeForTag, + discriminator: discriminator }; +} +B.ip=function(getTagFallback) { + return function(hooks) { + if (typeof navigator != "object") return hooks; + var userAgent = navigator.userAgent; + if (typeof userAgent != "string") return hooks; + if (userAgent.indexOf("DumpRenderTree") >= 0) return hooks; + if (userAgent.indexOf("Chrome") >= 0) { + function confirm(p) { + return typeof window == "object" && window[p] && window[p].name == p; + } + if (confirm("Window") && confirm("HTMLElement")) return hooks; + } + hooks.getTag = getTagFallback; + }; +} +B.ik=function(hooks) { + if (typeof dartExperimentalFixupGetTag != "function") return hooks; + hooks.getTag = dartExperimentalFixupGetTag(hooks.getTag); +} +B.io=function(hooks) { + if (typeof navigator != "object") return hooks; + var userAgent = navigator.userAgent; + if (typeof userAgent != "string") return hooks; + if (userAgent.indexOf("Firefox") == -1) return hooks; + var getTag = hooks.getTag; + var quickMap = { + "BeforeUnloadEvent": "Event", + "DataTransfer": "Clipboard", + "GeoGeolocation": "Geolocation", + "Location": "!Location", + "WorkerMessageEvent": "MessageEvent", + "XMLDocument": "!Document"}; + function getTagFirefox(o) { + var tag = getTag(o); + return quickMap[tag] || tag; + } + hooks.getTag = getTagFirefox; +} +B.im=function(hooks) { + if (typeof navigator != "object") return hooks; + var userAgent = navigator.userAgent; + if (typeof userAgent != "string") return hooks; + if (userAgent.indexOf("Trident/") == -1) return hooks; + var getTag = hooks.getTag; + var quickMap = { + "BeforeUnloadEvent": "Event", + "DataTransfer": "Clipboard", + "HTMLDDElement": "HTMLElement", + "HTMLDTElement": "HTMLElement", + "HTMLPhraseElement": "HTMLElement", + "Position": "Geoposition" + }; + function getTagIE(o) { + var tag = getTag(o); + var newTag = quickMap[tag]; + if (newTag) return newTag; + if (tag == "Object") { + if (window.DataView && (o instanceof window.DataView)) return "DataView"; + } + return tag; + } + function prototypeForTagIE(tag) { + var constructor = window[tag]; + if (constructor == null) return null; + return constructor.prototype; + } + hooks.getTag = getTagIE; + hooks.prototypeForTag = prototypeForTagIE; +} +B.il=function(hooks) { + var getTag = hooks.getTag; + var prototypeForTag = hooks.prototypeForTag; + function getTagFixed(o) { + var tag = getTag(o); + if (tag == "Document") { + if (!!o.xmlVersion) return "!Document"; + return "!HTMLDocument"; + } + return tag; + } + function prototypeForTagFixed(tag) { + if (tag == "Document") return null; + return prototypeForTag(tag); + } + hooks.getTag = getTagFixed; + hooks.prototypeForTag = prototypeForTagFixed; +} +B.cN=function(hooks) { return hooks; } + +B.iq=new A.iX() +B.ir=new A.jo() +B.u=new A.nG() +B.E=new A.k2() +B.cO=new A.k6() +B.L3={amp:0,apos:1,gt:2,lt:3,quot:4} +B.qL=new A.r(B.L3,["&","'",">","<",'"'],t.o) +B.bF=new A.kb() +B.cP=new A.oS() +B.a3=new A.kP() +B.aV=new A.kT() +B.cQ=new A.p2() +B.aW=new A.dV(0,"none") +B.cR=new A.dV(1,"deflate") +B.cS=new A.dV(2,"bzip2") +B.is=new A.ck(!1) +B.W=new A.ck(!0) +B.it=new A.aS(0,"xhtml11") +B.iu=new A.aS(1,"dtbook") +B.iv=new A.aS(10,"imageSVG") +B.iw=new A.aS(11,"imageBMP") +B.ix=new A.aS(12,"fontTrueType") +B.iy=new A.aS(13,"fontOpenType") +B.iz=new A.aS(14,"other") +B.iA=new A.aS(2,"dtbookNCX") +B.iB=new A.aS(3,"oeb1Document") +B.iC=new A.aS(4,"xml") +B.iD=new A.aS(5,"css") +B.iE=new A.aS(6,"oeb1CSS") +B.iF=new A.aS(7,"imageGIF") +B.iG=new A.aS(8,"imageJPEG") +B.iH=new A.aS(9,"imagePNG") +B.bG=new A.ir(0,"epub2") +B.cT=new A.ir(1,"epub3") +B.iM=new A.aA("Chapter is outside the EPUB spine.",null,null) +B.iN=new A.aA("The EPUB has no readable spine.",null,null) +B.iR=new A.iZ(null) +B.aX=new A.cX(B.ig,A.Y("cX")) +B.af=s([82,9,106,213,48,54,165,56,191,64,163,158,129,243,215,251,124,227,57,130,155,47,255,135,52,142,67,68,196,222,233,203,84,123,148,50,166,194,35,61,238,76,149,11,66,250,195,78,8,46,161,102,40,217,36,178,118,91,162,73,109,139,209,37,114,248,246,100,134,104,152,22,212,164,92,204,93,101,182,146,108,112,72,80,253,237,185,218,94,21,70,87,167,141,157,132,144,216,171,0,140,188,211,10,247,228,88,5,184,179,69,6,208,44,30,143,202,63,15,2,193,175,189,3,1,19,138,107,58,145,17,65,79,103,220,234,151,242,207,206,240,180,230,115,150,172,116,34,231,173,53,133,226,249,55,232,28,117,223,110,71,241,26,113,29,41,197,137,111,183,98,14,170,24,190,27,252,86,62,75,198,210,121,32,154,219,192,254,120,205,90,244,31,221,168,51,136,7,199,49,177,18,16,89,39,128,236,95,96,81,127,169,25,181,74,13,45,229,122,159,147,201,156,239,160,224,59,77,174,42,245,176,200,235,187,60,131,83,153,97,23,43,4,126,186,119,214,38,225,105,20,99,85,33,12,125],t.Z) +B.iS=s(["table","tbody","tfoot","thead","tr"],t.s) +B.iT=s([0,0],t.Z) +B.iU=s([1,2,4,8,16,32,64,128,27,54,108,216,171,77,154,47,94,188,99,198,151,53,106,212,179,125,250,239,197,145],t.Z) +B.bH=s(["dd","dt","li","option","optgroup","p","rp","rt"],t.s) +B.iV=s([5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],t.Z) +B.iW=s(["+//silmaril//dtd html pro v0r11 19970101//","-//advasoft ltd//dtd html 3.0 aswedit + extensions//","-//as//dtd html 3.0 aswedit + extensions//","-//ietf//dtd html 2.0 level 1//","-//ietf//dtd html 2.0 level 2//","-//ietf//dtd html 2.0 strict level 1//","-//ietf//dtd html 2.0 strict level 2//","-//ietf//dtd html 2.0 strict//","-//ietf//dtd html 2.0//","-//ietf//dtd html 2.1e//","-//ietf//dtd html 3.0//","-//ietf//dtd html 3.2 final//","-//ietf//dtd html 3.2//","-//ietf//dtd html 3//","-//ietf//dtd html level 0//","-//ietf//dtd html level 1//","-//ietf//dtd html level 2//","-//ietf//dtd html level 3//","-//ietf//dtd html strict level 0//","-//ietf//dtd html strict level 1//","-//ietf//dtd html strict level 2//","-//ietf//dtd html strict level 3//","-//ietf//dtd html strict//","-//ietf//dtd html//","-//metrius//dtd metrius presentational//","-//microsoft//dtd internet explorer 2.0 html strict//","-//microsoft//dtd internet explorer 2.0 html//","-//microsoft//dtd internet explorer 2.0 tables//","-//microsoft//dtd internet explorer 3.0 html strict//","-//microsoft//dtd internet explorer 3.0 html//","-//microsoft//dtd internet explorer 3.0 tables//","-//netscape comm. corp.//dtd html//","-//netscape comm. corp.//dtd strict html//","-//o'reilly and associates//dtd html 2.0//","-//o'reilly and associates//dtd html extended 1.0//","-//o'reilly and associates//dtd html extended relaxed 1.0//","-//softquad software//dtd hotmetal pro 6.0::19990601::extensions to html 4.0//","-//softquad//dtd hotmetal pro 4.0::19971010::extensions to html 4.0//","-//spyglass//dtd html 2.0 extended//","-//sq//dtd html 2.0 hotmetal + extensions//","-//sun microsystems corp.//dtd hotjava html//","-//sun microsystems corp.//dtd hotjava strict html//","-//w3c//dtd html 3 1995-03-24//","-//w3c//dtd html 3.2 draft//","-//w3c//dtd html 3.2 final//","-//w3c//dtd html 3.2//","-//w3c//dtd html 3.2s draft//","-//w3c//dtd html 4.0 frameset//","-//w3c//dtd html 4.0 transitional//","-//w3c//dtd html experimental 19960712//","-//w3c//dtd html experimental 970421//","-//w3c//dtd w3 html//","-//w3o//dtd w3 html 3.0//","-//webtechs//dtd mozilla html 2.0//","-//webtechs//dtd mozilla html//"],t.s) +B.iX=s([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],t.Z) +B.i=s([1353184337,1399144830,3282310938,2522752826,3412831035,4047871263,2874735276,2466505547,1442459680,4134368941,2440481928,625738485,4242007375,3620416197,2151953702,2409849525,1230680542,1729870373,2551114309,3787521629,41234371,317738113,2744600205,3338261355,3881799427,2510066197,3950669247,3663286933,763608788,3542185048,694804553,1154009486,1787413109,2021232372,1799248025,3715217703,3058688446,397248752,1722556617,3023752829,407560035,2184256229,1613975959,1165972322,3765920945,2226023355,480281086,2485848313,1483229296,436028815,2272059028,3086515026,601060267,3791801202,1468997603,715871590,120122290,63092015,2591802758,2768779219,4068943920,2997206819,3127509762,1552029421,723308426,2461301159,4042393587,2715969870,3455375973,3586000134,526529745,2331944644,2639474228,2689987490,853641733,1978398372,971801355,2867814464,111112542,1360031421,4186579262,1023860118,2919579357,1186850381,3045938321,90031217,1876166148,4279586912,620468249,2548678102,3426959497,2006899047,3175278768,2290845959,945494503,3689859193,1191869601,3910091388,3374220536,0,2206629897,1223502642,2893025566,1316117100,4227796733,1446544655,517320253,658058550,1691946762,564550760,3511966619,976107044,2976320012,266819475,3533106868,2660342555,1338359936,2720062561,1766553434,370807324,179999714,3844776128,1138762300,488053522,185403662,2915535858,3114841645,3366526484,2233069911,1275557295,3151862254,4250959779,2670068215,3170202204,3309004356,880737115,1982415755,3703972811,1761406390,1676797112,3403428311,277177154,1076008723,538035844,2099530373,4164795346,288553390,1839278535,1261411869,4080055004,3964831245,3504587127,1813426987,2579067049,4199060497,577038663,3297574056,440397984,3626794326,4019204898,3343796615,3251714265,4272081548,906744984,3481400742,685669029,646887386,2764025151,3835509292,227702864,2613862250,1648787028,3256061430,3904428176,1593260334,4121936770,3196083615,2090061929,2838353263,3004310991,999926984,2809993232,1852021992,2075868123,158869197,4095236462,28809964,2828685187,1701746150,2129067946,147831841,3873969647,3650873274,3459673930,3557400554,3598495785,2947720241,824393514,815048134,3227951669,935087732,2798289660,2966458592,366520115,1251476721,4158319681,240176511,804688151,2379631990,1303441219,1414376140,3741619940,3820343710,461924940,3089050817,2136040774,82468509,1563790337,1937016826,776014843,1511876531,1389550482,861278441,323475053,2355222426,2047648055,2383738969,2302415851,3995576782,902390199,3991215329,1018251130,1507840668,1064563285,2043548696,3208103795,3939366739,1537932639,342834655,2262516856,2180231114,1053059257,741614648,1598071746,1925389590,203809468,2336832552,1100287487,1895934009,3736275976,2632234200,2428589668,1636092795,1890988757,1952214088,1113045200],t.Z) +B.n={type:0,value:1} +B.GU=new A.r(B.n,[670,"top-left-corner"],t.M) +B.H4=new A.r(B.n,[671,"top-left"],t.M) +B.GV=new A.r(B.n,[672,"top-center"],t.M) +B.Hk=new A.r(B.n,[673,"top-right"],t.M) +B.Hf=new A.r(B.n,[674,"top-right-corner"],t.M) +B.Hg=new A.r(B.n,[675,"bottom-left-corner"],t.M) +B.H8=new A.r(B.n,[676,"bottom-left"],t.M) +B.H1=new A.r(B.n,[677,"bottom-center"],t.M) +B.Hn=new A.r(B.n,[678,"bottom-right"],t.M) +B.Hi=new A.r(B.n,[679,"bottom-right-corner"],t.M) +B.GX=new A.r(B.n,[680,"left-top"],t.M) +B.H9=new A.r(B.n,[681,"left-middle"],t.M) +B.Hj=new A.r(B.n,[682,"right-bottom"],t.M) +B.Hh=new A.r(B.n,[683,"right-top"],t.M) +B.GW=new A.r(B.n,[684,"right-middle"],t.M) +B.GR=new A.r(B.n,[685,"right-bottom"],t.M) +B.iY=s([B.GU,B.H4,B.GV,B.Hk,B.Hf,B.Hg,B.H8,B.H1,B.Hn,B.Hi,B.GX,B.H9,B.Hj,B.Hh,B.GW,B.GR],t.ic) +B.cW=s(["-//w3c//dtd html 4.01 frameset//","-//w3c//dtd html 4.01 transitional//"],t.s) +B.X=s([0,79764919,159529838,222504665,319059676,398814059,445009330,507990021,638119352,583659535,797628118,726387553,890018660,835552979,1015980042,944750013,1276238704,1221641927,1167319070,1095957929,1595256236,1540665371,1452775106,1381403509,1780037320,1859660671,1671105958,1733955601,2031960084,2111593891,1889500026,1952343757,2552477408,2632100695,2443283854,2506133561,2334638140,2414271883,2191915858,2254759653,3190512472,3135915759,3081330742,3009969537,2905550212,2850959411,2762807018,2691435357,3560074640,3505614887,3719321342,3648080713,3342211916,3287746299,3467911202,3396681109,4063920168,4143685023,4223187782,4286162673,3779000052,3858754371,3904687514,3967668269,881225847,809987520,1023691545,969234094,662832811,591600412,771767749,717299826,311336399,374308984,453813921,533576470,25881363,88864420,134795389,214552010,2023205639,2086057648,1897238633,1976864222,1804852699,1867694188,1645340341,1724971778,1587496639,1516133128,1461550545,1406951526,1302016099,1230646740,1142491917,1087903418,2896545431,2825181984,2770861561,2716262478,3215044683,3143675388,3055782693,3001194130,2326604591,2389456536,2200899649,2280525302,2578013683,2640855108,2418763421,2498394922,3769900519,3832873040,3912640137,3992402750,4088425275,4151408268,4197601365,4277358050,3334271071,3263032808,3476998961,3422541446,3585640067,3514407732,3694837229,3640369242,1762451694,1842216281,1619975040,1682949687,2047383090,2127137669,1938468188,2001449195,1325665622,1271206113,1183200824,1111960463,1543535498,1489069629,1434599652,1363369299,622672798,568075817,748617968,677256519,907627842,853037301,1067152940,995781531,51762726,131386257,177728840,240578815,269590778,349224269,429104020,491947555,4046411278,4126034873,4172115296,4234965207,3794477266,3874110821,3953728444,4016571915,3609705398,3555108353,3735388376,3664026991,3290680682,3236090077,3449943556,3378572211,3174993278,3120533705,3032266256,2961025959,2923101090,2868635157,2813903052,2742672763,2604032198,2683796849,2461293480,2524268063,2284983834,2364738477,2175806836,2238787779,1569362073,1498123566,1409854455,1355396672,1317987909,1246755826,1192025387,1137557660,2072149281,2135122070,1912620623,1992383480,1753615357,1816598090,1627664531,1707420964,295390185,358241886,404320391,483945776,43990325,106832002,186451547,266083308,932423249,861060070,1041341759,986742920,613929101,542559546,756411363,701822548,3316196985,3244833742,3425377559,3370778784,3601682597,3530312978,3744426955,3689838204,3819031489,3881883254,3928223919,4007849240,4037393693,4100235434,4180117107,4259748804,2310601993,2373574846,2151335527,2231098320,2596047829,2659030626,2470359227,2550115596,2947551409,2876312838,2788305887,2733848168,3165939309,3094707162,3040238851,2985771188],t.Z) +B.iZ=s(["yY","sS","tT","eE","mM"],t.s) +B.j_=s([23,114,69,56,80,144],t.Z) +B.j0=s(["C","D","A","T","A","["],t.s) +B.L=s([99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22],t.Z) +B.j1=s(["oO","cC","tT","yY","pP","eE"],t.s) +B.H2=new A.r(B.n,[641,"import"],t.M) +B.H0=new A.r(B.n,[642,"media"],t.M) +B.Hb=new A.r(B.n,[643,"page"],t.M) +B.H3=new A.r(B.n,[644,"charset"],t.M) +B.GS=new A.r(B.n,[645,"stylet"],t.M) +B.Hm=new A.r(B.n,[646,"keyframes"],t.M) +B.Hp=new A.r(B.n,[647,"-webkit-keyframes"],t.M) +B.H5=new A.r(B.n,[648,"-moz-keyframes"],t.M) +B.Hc=new A.r(B.n,[649,"-ms-keyframes"],t.M) +B.Hd=new A.r(B.n,[650,"-o-keyframes"],t.M) +B.Ho=new A.r(B.n,[651,"font-face"],t.M) +B.He=new A.r(B.n,[652,"namespace"],t.M) +B.GZ=new A.r(B.n,[653,"host"],t.M) +B.GY=new A.r(B.n,[654,"mixin"],t.M) +B.H7=new A.r(B.n,[655,"include"],t.M) +B.Ha=new A.r(B.n,[656,"content"],t.M) +B.GQ=new A.r(B.n,[657,"extend"],t.M) +B.H_=new A.r(B.n,[658,"-moz-document"],t.M) +B.GT=new A.r(B.n,[659,"supports"],t.M) +B.H6=new A.r(B.n,[660,"viewport"],t.M) +B.Hl=new A.r(B.n,[661,"-ms-viewport"],t.M) +B.j2=s([B.H2,B.H0,B.Hb,B.H3,B.GS,B.Hm,B.Hp,B.H5,B.Hc,B.Hd,B.Ho,B.He,B.GZ,B.GY,B.H7,B.Ha,B.GQ,B.H_,B.GT,B.H6,B.Hl],t.ic) +B.Y=s([619,720,127,481,931,816,813,233,566,247,985,724,205,454,863,491,741,242,949,214,733,859,335,708,621,574,73,654,730,472,419,436,278,496,867,210,399,680,480,51,878,465,811,169,869,675,611,697,867,561,862,687,507,283,482,129,807,591,733,623,150,238,59,379,684,877,625,169,643,105,170,607,520,932,727,476,693,425,174,647,73,122,335,530,442,853,695,249,445,515,909,545,703,919,874,474,882,500,594,612,641,801,220,162,819,984,589,513,495,799,161,604,958,533,221,400,386,867,600,782,382,596,414,171,516,375,682,485,911,276,98,553,163,354,666,933,424,341,533,870,227,730,475,186,263,647,537,686,600,224,469,68,770,919,190,373,294,822,808,206,184,943,795,384,383,461,404,758,839,887,715,67,618,276,204,918,873,777,604,560,951,160,578,722,79,804,96,409,713,940,652,934,970,447,318,353,859,672,112,785,645,863,803,350,139,93,354,99,820,908,609,772,154,274,580,184,79,626,630,742,653,282,762,623,680,81,927,626,789,125,411,521,938,300,821,78,343,175,128,250,170,774,972,275,999,639,495,78,352,126,857,956,358,619,580,124,737,594,701,612,669,112,134,694,363,992,809,743,168,974,944,375,748,52,600,747,642,182,862,81,344,805,988,739,511,655,814,334,249,515,897,955,664,981,649,113,974,459,893,228,433,837,553,268,926,240,102,654,459,51,686,754,806,760,493,403,415,394,687,700,946,670,656,610,738,392,760,799,887,653,978,321,576,617,626,502,894,679,243,440,680,879,194,572,640,724,926,56,204,700,707,151,457,449,797,195,791,558,945,679,297,59,87,824,713,663,412,693,342,606,134,108,571,364,631,212,174,643,304,329,343,97,430,751,497,314,983,374,822,928,140,206,73,263,980,736,876,478,430,305,170,514,364,692,829,82,855,953,676,246,369,970,294,750,807,827,150,790,288,923,804,378,215,828,592,281,565,555,710,82,896,831,547,261,524,462,293,465,502,56,661,821,976,991,658,869,905,758,745,193,768,550,608,933,378,286,215,979,792,961,61,688,793,644,986,403,106,366,905,644,372,567,466,434,645,210,389,550,919,135,780,773,635,389,707,100,626,958,165,504,920,176,193,713,857,265,203,50,668,108,645,990,626,197,510,357,358,850,858,364,936,638],t.Z) +B.j3=s(["address","div","p"],t.s) +B.j4=s(["\x00","\x01","\x02","\x03","\x04","\x05","\x06","\x07","\b","\t","\n","\v","\f","\r","\x0e","\x0f","\x10","\x11","\x12","\x13","\x14","\x15","\x16","\x17","\x18","\x19","\x1a","\x1b","\x1c","\x1d","\x1e","\x1f"," ","!",'"',"#","$","%","&","'","(",")","*","+",",","-",".","/","0","1","2","3","4","5","6","7","8","9",":",";","<","=",">","?","@","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","[","\\","]","^","_","`","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","{","|","}","~","\x7f","\x80","\x81","\x82","\x83","\x84","\x85","\x86","\x87","\x88","\x89","\x8a","\x8b","\x8c","\x8d","\x8e","\x8f","\x90","\x91","\x92","\x93","\x94","\x95","\x96","\x97","\x98","\x99","\x9a","\x9b","\x9c","\x9d","\x9e","\x9f","\xa0","\xa1","\xa2","\xa3","\xa4","\xa5","\xa6","\xa7","\xa8","\xa9","\xaa","\xab","\xac","\xad","\xae","\xaf","\xb0","\xb1","\xb2","\xb3","\xb4","\xb5","\xb6","\xb7","\xb8","\xb9","\xba","\xbb","\xbc","\xbd","\xbe","\xbf","\xc0","\xc1","\xc2","\xc3","\xc4","\xc5","\xc6","\xc7","\xc8","\xc9","\xca","\xcb","\xcc","\xcd","\xce","\xcf","\xd0","\xd1","\xd2","\xd3","\xd4","\xd5","\xd6","\xd7","\xd8","\xd9","\xda","\xdb","\xdc","\xdd","\xde","\xdf","\xe0","\xe1","\xe2","\xe3","\xe4","\xe5","\xe6","\xe7","\xe8","\xe9","\xea","\xeb","\xec","\xed","\xee","\xef","\xf0","\xf1","\xf2","\xf3","\xf4","\xf5","\xf6","\xf7","\xf8","\xf9","\xfa","\xfb","\xfc","\xfd","\xfe","\xff"],t.s) +B.j5=s(["b","big","blockquote","body","br","center","code","dd","div","dl","dt","em","embed","h1","h2","h3","h4","h5","h6","head","hr","i","img","li","listing","menu","meta","nobr","ol","p","pre","ruby","s","small","span","strike","strong","sub","sup","table","tt","u","ul","var"],t.s) +B.j=s([2774754246,2222750968,2574743534,2373680118,234025727,3177933782,2976870366,1422247313,1345335392,50397442,2842126286,2099981142,436141799,1658312629,3870010189,2591454956,1170918031,2642575903,1086966153,2273148410,368769775,3948501426,3376891790,200339707,3970805057,1742001331,4255294047,3937382213,3214711843,4154762323,2524082916,1539358875,3266819957,486407649,2928907069,1780885068,1513502316,1094664062,49805301,1338821763,1546925160,4104496465,887481809,150073849,2473685474,1943591083,1395732834,1058346282,201589768,1388824469,1696801606,1589887901,672667696,2711000631,251987210,3046808111,151455502,907153956,2608889883,1038279391,652995533,1764173646,3451040383,2675275242,453576978,2659418909,1949051992,773462580,756751158,2993581788,3998898868,4221608027,4132590244,1295727478,1641469623,3467883389,2066295122,1055122397,1898917726,2542044179,4115878822,1758581177,0,753790401,1612718144,536673507,3367088505,3982187446,3194645204,1187761037,3653156455,1262041458,3729410708,3561770136,3898103984,1255133061,1808847035,720367557,3853167183,385612781,3309519750,3612167578,1429418854,2491778321,3477423498,284817897,100794884,2172616702,4031795360,1144798328,3131023141,3819481163,4082192802,4272137053,3225436288,2324664069,2912064063,3164445985,1211644016,83228145,3753688163,3249976951,1977277103,1663115586,806359072,452984805,250868733,1842533055,1288555905,336333848,890442534,804056259,3781124030,2727843637,3427026056,957814574,1472513171,4071073621,2189328124,1195195770,2892260552,3881655738,723065138,2507371494,2690670784,2558624025,3511635870,2145180835,1713513028,2116692564,2878378043,2206763019,3393603212,703524551,3552098411,1007948840,2044649127,3797835452,487262998,1994120109,1004593371,1446130276,1312438900,503974420,3679013266,168166924,1814307912,3831258296,1573044895,1859376061,4021070915,2791465668,2828112185,2761266481,937747667,2339994098,854058965,1137232011,1496790894,3077402074,2358086913,1691735473,3528347292,3769215305,3027004632,4199962284,133494003,636152527,2942657994,2390391540,3920539207,403179536,3585784431,2289596656,1864705354,1915629148,605822008,4054230615,3350508659,1371981463,602466507,2094914977,2624877800,555687742,3712699286,3703422305,2257292045,2240449039,2423288032,1111375484,3300242801,2858837708,3628615824,84083462,32962295,302911004,2741068226,1597322602,4183250862,3501832553,2441512471,1489093017,656219450,3114180135,954327513,335083755,3013122091,856756514,3144247762,1893325225,2307821063,2811532339,3063651117,572399164,2458355477,552200649,1238290055,4283782570,2015897680,2061492133,2408352771,4171342169,2156497161,386731290,3669999461,837215959,3326231172,3093850320,3275833730,2962856233,1999449434,286199582,3417354363,4233385128,3602627437,974525996],t.Z) +B.cY=s(["h1","h2","h3","h4","h5","h6"],t.s) +B.bI=s([],t.lv) +B.j7=s([],A.Y("y")) +B.j8=s([],A.Y("y")) +B.ja=s([],t.U) +B.j6=s([],t.s) +B.j9=s([],A.Y("y")) +B.cZ=s([],t.eB) +B.h=s([],t.dG) +B.iI=new A.cT(0,"undefined") +B.iJ=new A.cT(1,"front") +B.iK=new A.cT(2,"normal") +B.iL=new A.cT(3,"special") +B.jb=s([B.iI,B.iJ,B.iK,B.iL],A.Y("y")) +B.jc=s([0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918e3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117],t.Z) +B.aY=s([0,1,3,7,15,31,63,127,255],t.Z) +B.je=s([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],t.Z) +B.jf=s(["-//w3c//dtd xhtml 1.0 frameset//","-//w3c//dtd xhtml 1.0 transitional//"],t.s) +B.d_=s([3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258],t.Z) +B.d0=s([1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],t.Z) +B.jg=s(["poster","background"],t.s) +B.jh=s(["pre","listing","textarea"],t.s) +B.ji=s(["uU","bB","lL","iI","cC"],t.s) +B.jj=s([11,65534,65535,131070,131071,196606,196607,262142,262143,327678,327679,393214,393215,458750,458751,524286,524287,589822,589823,655358,655359,720894,720895,786430,786431,851966,851967,917502,917503,983038,983039,1048574,1048575,1114110,1114111],t.Z) +B.jk=s(["tbody","tfoot","thead","html"],t.s) +B.v={unit:0,value:1} +B.qa=new A.r(B.v,[600,"em"],t.M) +B.q6=new A.r(B.v,[601,"ex"],t.M) +B.qw=new A.r(B.v,[602,"px"],t.M) +B.qo=new A.r(B.v,[603,"cm"],t.M) +B.ql=new A.r(B.v,[604,"mm"],t.M) +B.qd=new A.r(B.v,[605,"in"],t.M) +B.q5=new A.r(B.v,[606,"pt"],t.M) +B.qg=new A.r(B.v,[607,"pc"],t.M) +B.qc=new A.r(B.v,[608,"deg"],t.M) +B.qs=new A.r(B.v,[609,"rad"],t.M) +B.q4=new A.r(B.v,[610,"grad"],t.M) +B.qf=new A.r(B.v,[611,"turn"],t.M) +B.q9=new A.r(B.v,[612,"ms"],t.M) +B.qv=new A.r(B.v,[613,"s"],t.M) +B.qn=new A.r(B.v,[614,"hz"],t.M) +B.qk=new A.r(B.v,[615,"khz"],t.M) +B.qp=new A.r(B.v,[617,"fr"],t.M) +B.qe=new A.r(B.v,[618,"dpi"],t.M) +B.qb=new A.r(B.v,[619,"dpcm"],t.M) +B.qj=new A.r(B.v,[620,"dppx"],t.M) +B.qh=new A.r(B.v,[621,"ch"],t.M) +B.qq=new A.r(B.v,[622,"rem"],t.M) +B.q7=new A.r(B.v,[623,"vw"],t.M) +B.qm=new A.r(B.v,[624,"vh"],t.M) +B.qi=new A.r(B.v,[625,"vmin"],t.M) +B.qr=new A.r(B.v,[626,"vmax"],t.M) +B.q8=new A.r(B.v,[627,"lh"],t.M) +B.qt=new A.r(B.v,[628,"rlh"],t.M) +B.d1=s([B.qa,B.q6,B.qw,B.qo,B.ql,B.qd,B.q5,B.qg,B.qc,B.qs,B.q4,B.qf,B.q9,B.qv,B.qn,B.qk,B.qp,B.qe,B.qb,B.qj,B.qh,B.qq,B.q7,B.qm,B.qi,B.qr,B.q8,B.qt],t.ic) +B.jl=s(["-//w3o//dtd w3 html strict 3.0//en//","-/w3c/dtd html 4.0 transitional/en","html"],t.s) +B.jm=s([8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8],t.Z) +B.d2=s([1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432,67108864,134217728,268435456,536870912,1073741824,2147483648],t.Z) +B.jn=s([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0],t.Z) +B.jo=s([49,65,89,38,83,89],t.Z) +B.dn=new A.a([0,B.aW,8,B.cR,12,B.cS],A.Y("a")) +B.aS={} +B.d=new A.r(B.aS,[],A.Y("r")) +B.c=new A.a([59,B.d],t.j) +B.R=new A.a([103,B.c],t.r) +B.c3=new A.a([105,B.R],t.e) +B.a1=new A.a([108,B.c3],t.t) +B.v8=new A.a([80,B.c],t.r) +B.z=new A.a([101,B.c],t.r) +B.aO=new A.a([116,B.z],t.e) +B.S=new A.a([117,B.aO],t.t) +B.K=new A.a([99,B.S],t.V) +B.b0=new A.a([118,B.z],t.e) +B.dB=new A.a([101,B.b0],t.t) +B.aH=new A.a([114,B.dB],t.V) +B.ad=new A.a([99,B.c],t.r) +B.P=new A.a([114,B.ad],t.e) +B.a_=new A.a([105,B.P,121,B.c],t.r) +B.e=new A.a([114,B.c],t.r) +B.be=new A.a([97,B.b0],t.t) +B.a5=new A.a([114,B.be],t.V) +B.C=new A.a([97,B.c],t.r) +B.ea=new A.a([104,B.C],t.e) +B.vF=new A.a([112,B.ea],t.t) +B.r=new A.a([99,B.e],t.e) +B.eL=new A.a([97,B.r],t.t) +B.a2=new A.a([100,B.c],t.r) +B.N=new A.a([110,B.c],t.r) +B.O=new A.a([111,B.N],t.e) +B.y=new A.a([102,B.c],t.r) +B.av=new A.a([103,B.O,112,B.y],t.e) +B.ee=new A.a([105,B.O],t.t) +B.fy=new A.a([116,B.ee],t.V) +B.fb=new A.a([99,B.fy],t.i) +B.Jz=new A.a([110,B.fb],t.J) +B.I5=new A.a([117,B.Jz],t.O) +B.pP=new A.a([70,B.I5],t.l) +B.zm=new A.a([121,B.pP],t.x) +B.Bj=new A.a([108,B.zm],t.Y) +B.vt=new A.a([112,B.Bj],t.k) +B.bw=new A.a([110,B.R],t.e) +B.aL=new A.a([105,B.bw],t.t) +B.G7=new A.a([103,B.N],t.e) +B.u4=new A.a([105,B.G7],t.t) +B.DB=new A.a([99,B.e,115,B.u4],t.e) +B.aQ=new A.a([100,B.z],t.e) +B.bk=new A.a([108,B.aQ],t.t) +B.J=new A.a([105,B.bk],t.V) +B.x=new A.a([108,B.c],t.r) +B.an=new A.a([109,B.x],t.e) +B.mX=new A.a([69,B.a1,77,B.v8,97,B.K,98,B.aH,99,B.a_,102,B.e,103,B.a5,108,B.vF,109,B.eL,110,B.a2,111,B.av,112,B.vt,114,B.aL,115,B.DB,116,B.J,117,B.an],t.e) +B.ag=new A.a([104,B.c],t.r) +B.eZ=new A.a([115,B.ag],t.e) +B.I=new A.a([97,B.eZ],t.t) +B.B_=new A.a([108,B.I],t.V) +B.yX=new A.a([115,B.B_],t.i) +B.Ik=new A.a([107,B.yX],t.J) +B.b5=new A.a([101,B.a2],t.e) +B.pw=new A.a([118,B.c,119,B.b5],t.r) +B.Hq=new A.a([99,B.Ik,114,B.pw],t.e) +B.D=new A.a([121,B.c],t.r) +B.eV=new A.a([115,B.z],t.e) +B.HG=new A.a([117,B.eV],t.t) +B.wj=new A.a([97,B.HG],t.V) +B.B=new A.a([115,B.c],t.r) +B.c1=new A.a([105,B.B],t.e) +B.BG=new A.a([108,B.c1],t.t) +B.Bc=new A.a([108,B.BG],t.V) +B.HR=new A.a([117,B.Bc],t.i) +B.k9=new A.a([111,B.HR],t.J) +B.IO=new A.a([110,B.k9],t.O) +B.KU=new A.a([99,B.wj,114,B.IO,116,B.C],t.e) +B.A=new A.a([112,B.y],t.e) +B.ay=new A.a([113,B.c],t.r) +B.bS=new A.a([101,B.ay],t.e) +B.vk=new A.a([112,B.bS],t.t) +B.JO=new A.a([109,B.vk],t.V) +B.A8=new A.a([97,B.Hq,99,B.D,101,B.KU,102,B.e,111,B.A,114,B.dB,115,B.r,117,B.JO],t.e) +B.p=new A.a([99,B.D],t.e) +B.mE=new A.a([89,B.c],t.r) +B.v9=new A.a([80,B.mE],t.e) +B.eQ=new A.a([68,B.c],t.r) +B.BO=new A.a([108,B.eQ],t.e) +B.wn=new A.a([97,B.BO],t.t) +B.tL=new A.a([105,B.wn],t.V) +B.fH=new A.a([116,B.tL],t.i) +B.IR=new A.a([110,B.fH],t.J) +B.lW=new A.a([101,B.IR],t.O) +B.oq=new A.a([114,B.lW],t.l) +B.l1=new A.a([101,B.oq],t.x) +B.f5=new A.a([102,B.l1],t.Y) +B.zM=new A.a([102,B.f5],t.k) +B.tR=new A.a([105,B.zM],t._) +B.xS=new A.a([68,B.tR],t.Q) +B.B4=new A.a([108,B.xS],t.B) +B.wM=new A.a([97,B.B4],t.kg) +B.CW=new A.a([116,B.wM],t.oJ) +B.yq=new A.a([59,B.d,105,B.CW],t.j) +B.zx=new A.a([121,B.B],t.e) +B.lH=new A.a([101,B.zx],t.t) +B.Bh=new A.a([108,B.lH],t.V) +B.v6=new A.a([99,B.S,112,B.yq,121,B.Bh],t.r) +B.a6=new A.a([114,B.O],t.t) +B.ac=new A.a([105,B.x],t.e) +B.ao=new A.a([100,B.ac],t.t) +B.t=new A.a([116,B.c],t.r) +B.U=new A.a([110,B.t],t.e) +B.c2=new A.a([105,B.U],t.t) +B.cw=new A.a([110,B.c2],t.V) +B.IC=new A.a([97,B.a6,101,B.ao,105,B.P,111,B.cw],t.t) +B.m=new A.a([111,B.t],t.e) +B.ff=new A.a([108,B.C],t.e) +B.B5=new A.a([108,B.ff],t.t) +B.tz=new A.a([105,B.B5],t.V) +B.ca=new A.a([68,B.m],t.t) +B.oG=new A.a([114,B.ca],t.V) +B.lD=new A.a([101,B.oG],t.i) +B.Cn=new A.a([116,B.lD],t.J) +B.Eb=new A.a([100,B.tz,110,B.Cn],t.i) +B.ab=new A.a([105,B.c],t.r) +B.ae=new A.a([117,B.B],t.e) +B.hh=new A.a([110,B.ae],t.t) +B.as=new A.a([105,B.hh],t.V) +B.Q=new A.a([108,B.ae],t.t) +B.b2=new A.a([101,B.B],t.e) +B.cy=new A.a([109,B.b2],t.t) +B.aj=new A.a([105,B.cy],t.V) +B.y5=new A.a([68,B.m,77,B.as,80,B.Q,84,B.aj],t.t) +B.lt=new A.a([101,B.y5],t.V) +B.Bv=new A.a([108,B.lt],t.i) +B.AC=new A.a([99,B.Bv],t.J) +B.nh=new A.a([114,B.AC],t.O) +B.bf=new A.a([97,B.x],t.e) +B.dP=new A.a([114,B.bf],t.t) +B.FT=new A.a([103,B.dP],t.V) +B.lx=new A.a([101,B.FT],t.i) +B.CM=new A.a([116,B.lx],t.J) +B.Jk=new A.a([110,B.CM],t.O) +B.FC=new A.a([73,B.Jk],t.l) +B.nC=new A.a([114,B.FC],t.x) +B.HZ=new A.a([117,B.nC],t.Y) +B.da=new A.a([111,B.HZ],t.k) +B.CZ=new A.a([116,B.da],t._) +B.J0=new A.a([110,B.CZ],t.Q) +B.dc=new A.a([111,B.J0],t.B) +B.mJ=new A.a([67,B.dc],t.kg) +B.mj=new A.a([101,B.mJ],t.oJ) +B.z7=new A.a([115,B.mj],A.Y("a>>>>>>>>>>>>>>>>>>")) +B.uk=new A.a([105,B.z7],A.Y("a>>>>>>>>>>>>>>>>>>>")) +B.EQ=new A.a([119,B.uk],A.Y("a>>>>>>>>>>>>>>>>>>>>")) +B.he=new A.a([107,B.EQ],A.Y("a>>>>>>>>>>>>>>>>>>>>>")) +B.jG=new A.a([111,B.aO],t.t) +B.h6=new A.a([117,B.jG],t.V) +B.EH=new A.a([81,B.h6],t.i) +B.lB=new A.a([101,B.EH],t.J) +B.AQ=new A.a([108,B.lB],t.O) +B.GP=new A.a([98,B.AQ],t.l) +B.HU=new A.a([117,B.GP],t.x) +B.jA=new A.a([111,B.HU],t.Y) +B.zH=new A.a([68,B.jA,81,B.h6],t.i) +B.zs=new A.a([121,B.zH],t.J) +B.BI=new A.a([108,B.zs],t.O) +B.oA=new A.a([114,B.BI],t.l) +B.HY=new A.a([117,B.oA],t.x) +B.dE=new A.a([67,B.HY],t.Y) +B.mx=new A.a([101,B.dE],t.k) +B.DD=new A.a([99,B.he,115,B.mx],t._) +B.kl=new A.a([111,B.DD],t.Q) +B.al=new A.a([59,B.d,101,B.c],t.j) +B.Jc=new A.a([110,B.al],t.r) +B.jz=new A.a([111,B.Jc],t.e) +B.bP=new A.a([101,B.U],t.t) +B.I9=new A.a([117,B.bP],t.V) +B.dQ=new A.a([114,B.I9],t.i) +B.F4=new A.a([103,B.dQ,105,B.U,116,B.da],t.t) +B.AM=new A.a([99,B.t],t.e) +B.h8=new A.a([117,B.AM],t.t) +B.Kg=new A.a([100,B.h8],t.V) +B.ke=new A.a([111,B.Kg],t.i) +B.Ab=new A.a([102,B.c,114,B.ke],t.r) +B.AE=new A.a([99,B.he],A.Y("a>>>>>>>>>>>>>>>>>>>>>>")) +B.jD=new A.a([111,B.AE],A.Y("a>>>>>>>>>>>>>>>>>>>>>>>")) +B.BE=new A.a([108,B.jD],A.Y("a>>>>>>>>>>>>>>>>>>>>>>>>")) +B.mH=new A.a([67,B.BE],A.Y("a>>>>>>>>>>>>>>>>>>>>>>>>>")) +B.o0=new A.a([114,B.mH],A.Y("a>>>>>>>>>>>>>>>>>>>>>>>>>>")) +B.mf=new A.a([101,B.o0],A.Y("a>>>>>>>>>>>>>>>>>>>>>>>>>>>")) +B.CF=new A.a([116,B.mf],A.Y("a>>>>>>>>>>>>>>>>>>>>>>>>>>>>")) +B.Jp=new A.a([110,B.CF],A.Y("a>>>>>>>>>>>>>>>>>>>>>>>>>>>>>")) +B.xI=new A.a([108,B.jz,110,B.F4,112,B.Ab,117,B.Jp],t.e) +B.cd=new A.a([115,B.B],t.e) +B.dh=new A.a([111,B.cd],t.t) +B.w=new A.a([112,B.c],t.r) +B.au=new A.a([97,B.w],t.e) +B.Df=new A.a([59,B.d,67,B.au],t.j) +B.ve=new A.a([112,B.Df],t.r) +B.rZ=new A.a([72,B.p,79,B.v9,97,B.v6,99,B.IC,100,B.m,101,B.Eb,102,B.e,104,B.ab,105,B.nh,108,B.kl,111,B.xI,114,B.dh,115,B.r,117,B.ve],t.e) +B.rw=new A.a([104,B.a2],t.e) +B.wu=new A.a([97,B.rw],t.t) +B.p1=new A.a([114,B.wu],t.V) +B.Cb=new A.a([116,B.p1],t.i) +B.qS=new A.a([59,B.d,111,B.Cb],t.j) +B.b1=new A.a([101,B.e],t.e) +B.cs=new A.a([103,B.b1],t.t) +B.aD=new A.a([118,B.c],t.r) +B.rP=new A.a([104,B.aD],t.e) +B.yn=new A.a([103,B.cs,114,B.e,115,B.rP],t.e) +B.bg=new A.a([97,B.a6,121,B.c],t.r) +B.ph=new A.a([59,B.d,116,B.C],t.j) +B.BC=new A.a([108,B.ph],t.r) +B.ky=new A.a([65,B.K],t.i) +B.lh=new A.a([101,B.ky],t.J) +B.Bf=new A.a([108,B.lh],t.O) +B.GK=new A.a([98,B.Bf],t.l) +B.qB=new A.a([116,B.c,117,B.GK],t.r) +B.k1=new A.a([111,B.qB],t.e) +B.pE=new A.a([65,B.K,68,B.k1,71,B.a5,84,B.J],t.t) +B.B7=new A.a([108,B.pE],t.V) +B.wD=new A.a([97,B.B7],t.i) +B.Ah=new A.a([99,B.wD],t.J) +B.tK=new A.a([105,B.Ah],t.O) +B.D4=new A.a([116,B.tK],t.l) +B.ui=new A.a([105,B.D4],t.x) +B.nu=new A.a([114,B.ui],t.Y) +B.bx=new A.a([110,B.a2],t.e) +B.k2=new A.a([111,B.bx],t.t) +B.Dp=new A.a([99,B.nu,109,B.k2],t.V) +B.rl=new A.a([97,B.Dp,102,B.f5],t.i) +B.HX=new A.a([117,B.bf],t.t) +B.a0=new A.a([113,B.HX],t.V) +B.tm=new A.a([59,B.d,68,B.m,69,B.a0],t.j) +B.fN=new A.a([119,B.c],t.r) +B.jR=new A.a([111,B.fN],t.e) +B.dS=new A.a([114,B.jR],t.t) +B.G=new A.a([114,B.dS],t.V) +B.bL=new A.a([65,B.G],t.i) +B.hg=new A.a([110,B.bL],t.J) +B.t0=new A.a([116,B.c,119,B.hg],t.r) +B.jZ=new A.a([111,B.t0],t.e) +B.fC=new A.a([116,B.bL],t.J) +B.rY=new A.a([104,B.fC],t.O) +B.G_=new A.a([103,B.rY],t.l) +B.ai=new A.a([105,B.G_],t.x) +B.a8=new A.a([101,B.z],t.e) +B.Fw=new A.a([65,B.G,82,B.ai,84,B.a8],t.t) +B.Db=new A.a([116,B.Fw],t.V) +B.zS=new A.a([102,B.Db],t.i) +B.p7=new A.a([65,B.G,82,B.ai],t.i) +B.Cs=new A.a([116,B.p7],t.J) +B.zQ=new A.a([102,B.Cs],t.O) +B.dA=new A.a([101,B.zQ],t.l) +B.EE=new A.a([76,B.dA,82,B.ai],t.x) +B.Gd=new A.a([103,B.EE],t.Y) +B.J4=new A.a([110,B.Gd],t.k) +B.DU=new A.a([101,B.zS,111,B.J4],t.J) +B.Ix=new A.a([65,B.G,84,B.a8],t.t) +B.Ca=new A.a([116,B.Ix],t.V) +B.rS=new A.a([104,B.Ca],t.i) +B.FQ=new A.a([103,B.rS],t.J) +B.u0=new A.a([105,B.FQ],t.O) +B.F3=new A.a([119,B.hg],t.O) +B.aZ=new A.a([111,B.F3],t.l) +B.w3=new A.a([65,B.G,68,B.aZ],t.i) +B.vn=new A.a([112,B.w3],t.J) +B.o=new A.a([97,B.e],t.e) +B.r9=new A.a([66,B.o],t.t) +B.Bs=new A.a([108,B.r9],t.V) +B.x8=new A.a([97,B.Bs],t.i) +B.AI=new A.a([99,B.x8],t.J) +B.uh=new A.a([105,B.AI],t.O) +B.CS=new A.a([116,B.uh],t.l) +B.nQ=new A.a([114,B.CS],t.x) +B.bO=new A.a([101,B.nQ],t.Y) +B.xK=new A.a([67,B.dc,68,B.jZ,76,B.DU,82,B.u0,85,B.vn,86,B.bO],t.t) +B.mh=new A.a([101,B.xK],t.V) +B.BF=new A.a([108,B.mh],t.i) +B.GL=new A.a([98,B.BF],t.J) +B.ex=new A.a([112,B.bL],t.J) +B.uQ=new A.a([59,B.d,66,B.o,85,B.ex],t.j) +B.F2=new A.a([119,B.uQ],t.r) +B.jK=new A.a([111,B.F2],t.e) +B.o2=new A.a([114,B.jK],t.t) +B.ow=new A.a([114,B.o2],t.V) +B.df=new A.a([111,B.e],t.e) +B.fx=new A.a([116,B.df],t.t) +B.Ae=new A.a([99,B.fx],t.V) +B.bN=new A.a([101,B.Ae],t.i) +B.cp=new A.a([86,B.bN],t.J) +B.CG=new A.a([116,B.cp],t.O) +B.rB=new A.a([104,B.CG],t.l) +B.Gc=new A.a([103,B.rB],t.x) +B.u7=new A.a([105,B.Gc],t.Y) +B.lZ=new A.a([101,B.cp],t.O) +B.bR=new A.a([101,B.lZ],t.l) +B.Gz=new A.a([59,B.d,66,B.o],t.j) +B.o7=new A.a([114,B.Gz],t.r) +B.jy=new A.a([111,B.o7],t.e) +B.Cf=new A.a([116,B.jy],t.t) +B.Ak=new A.a([99,B.Cf],t.V) +B.aF=new A.a([101,B.Ak],t.i) +B.th=new A.a([82,B.u7,84,B.bR,86,B.aF],t.J) +B.CQ=new A.a([116,B.th],t.O) +B.zL=new A.a([102,B.CQ],t.l) +B.lk=new A.a([101,B.zL],t.x) +B.e7=new A.a([84,B.bR,86,B.aF],t.J) +B.CP=new A.a([116,B.e7],t.O) +B.rJ=new A.a([104,B.CP],t.l) +B.FL=new A.a([103,B.rJ],t.x) +B.ud=new A.a([105,B.FL],t.Y) +B.EO=new A.a([59,B.d,65,B.G],t.j) +B.m_=new A.a([101,B.EO],t.r) +B.dv=new A.a([101,B.m_],t.e) +B.nc=new A.a([65,B.ow,66,B.aH,76,B.lk,82,B.ud,84,B.dv,97,B.G],t.t) +B.Jl=new A.a([110,B.nc],t.V) +B.E1=new A.a([112,B.y,116,B.tm,117,B.GL,119,B.Jl],t.r) +B.T=new A.a([107,B.c],t.r) +B.jC=new A.a([111,B.T],t.e) +B.aq=new A.a([114,B.jC],t.t) +B.c9=new A.a([99,B.e,116,B.aq],t.e) +B.C0=new A.a([68,B.qS,74,B.p,83,B.p,90,B.p,97,B.yn,99,B.bg,101,B.BC,102,B.e,105,B.rl,111,B.E1,115,B.c9],t.r) +B.fZ=new A.a([71,B.c],t.r) +B.xm=new A.a([72,B.c],t.r) +B.Dk=new A.a([97,B.a6,105,B.P,121,B.c],t.r) +B.K4=new A.a([109,B.bP],t.V) +B.b3=new A.a([101,B.K4],t.i) +B.dW=new A.a([114,B.z],t.e) +B.eH=new A.a([97,B.dW],t.t) +B.HH=new A.a([117,B.eH],t.V) +B.ch=new A.a([113,B.HH],t.i) +B.v1=new A.a([83,B.ch],t.J) +B.BH=new A.a([108,B.v1],t.O) +B.B9=new A.a([108,B.BH],t.l) +B.xa=new A.a([97,B.B9],t.x) +B.hp=new A.a([109,B.xa],t.Y) +B.v0=new A.a([83,B.hp],t.k) +B.zt=new A.a([121,B.v0],t._) +B.oM=new A.a([114,B.zt],t.Q) +B.lX=new A.a([101,B.oM],t.B) +B.e0=new A.a([83,B.hp,86,B.lX],t.k) +B.zp=new A.a([121,B.e0],t._) +B.Cg=new A.a([116,B.zp],t.Q) +B.E2=new A.a([97,B.r,112,B.Cg],t.t) +B.cl=new A.a([108,B.O],t.t) +B.tT=new A.a([105,B.cl],t.V) +B.eS=new A.a([115,B.tT],t.i) +B.BT=new A.a([59,B.d,84,B.J],t.j) +B.fm=new A.a([108,B.BT],t.r) +B.V=new A.a([109,B.c],t.r) +B.HE=new A.a([117,B.V],t.e) +B.ek=new A.a([105,B.HE],t.t) +B.op=new A.a([114,B.ek],t.V) +B.GF=new A.a([98,B.op],t.i) +B.us=new A.a([105,B.GF],t.J) +B.fg=new A.a([108,B.us],t.O) +B.pt=new A.a([97,B.fm,105,B.fg],t.e) +B.I_=new A.a([117,B.pt],t.t) +B.Ep=new A.a([99,B.e,105,B.V],t.e) +B.Ck=new A.a([116,B.B],t.e) +B.eY=new A.a([115,B.Ck],t.t) +B.cf=new A.a([69,B.c],t.r) +B.BJ=new A.a([108,B.cf],t.e) +B.x2=new A.a([97,B.BJ],t.t) +B.ue=new A.a([105,B.x2],t.V) +B.Cq=new A.a([116,B.ue],t.i) +B.IG=new A.a([110,B.Cq],t.J) +B.l5=new A.a([101,B.IG],t.O) +B.JD=new A.a([110,B.l5],t.l) +B.jQ=new A.a([111,B.JD],t.x) +B.EB=new A.a([105,B.eY,112,B.jQ],t.V) +B.ym=new A.a([78,B.fZ,84,B.xm,97,B.K,99,B.Dk,100,B.m,102,B.e,103,B.a5,108,B.b3,109,B.E2,111,B.av,112,B.eS,113,B.I_,115,B.Ep,116,B.C,117,B.an,120,B.EB],t.e) +B.Kp=new A.a([100,B.e0],t._) +B.ma=new A.a([101,B.Kp],t.Q) +B.Bu=new A.a([108,B.ma],t.B) +B.Bm=new A.a([108,B.Bu],t.kg) +B.cn=new A.a([108,B.x],t.e) +B.kx=new A.a([65,B.cn],t.t) +B.bW=new A.a([114,B.y],t.e) +B.bn=new A.a([116,B.bW],t.t) +B.oz=new A.a([114,B.bn],t.V) +B.kY=new A.a([101,B.oz],t.i) +B.tS=new A.a([105,B.kY],t.J) +B.nw=new A.a([114,B.tS],t.O) +B.Fk=new A.a([112,B.y,114,B.kx,117,B.nw],t.e) +B.kT=new A.a([99,B.D,102,B.e,105,B.Bm,111,B.Fk,115,B.r],t.e) +B.br=new A.a([59,B.d,100,B.c],t.j) +B.wp=new A.a([97,B.br],t.r) +B.hl=new A.a([109,B.wp],t.e) +B.JQ=new A.a([109,B.hl],t.t) +B.Fx=new A.a([101,B.ao,105,B.P,121,B.c],t.r) +B.Z=new A.a([101,B.cd],t.t) +B.qz=new A.a([59,B.d,76,B.Z],t.j) +B.Bn=new A.a([108,B.qz],t.r) +B.w8=new A.a([97,B.Bn],t.e) +B.HI=new A.a([117,B.w8],t.t) +B.A1=new A.a([113,B.HI],t.V) +B.f2=new A.a([69,B.a0],t.i) +B.BM=new A.a([108,B.f2],t.J) +B.Bo=new A.a([108,B.BM],t.O) +B.bu=new A.a([117,B.Bo],t.l) +B.fD=new A.a([116,B.b1],t.t) +B.wX=new A.a([97,B.fD],t.V) +B.lf=new A.a([101,B.wX],t.i) +B.aG=new A.a([114,B.lf],t.J) +B.D0=new A.a([116,B.f2],t.J) +B.IL=new A.a([110,B.D0],t.O) +B.wV=new A.a([97,B.IL],t.l) +B.az=new A.a([108,B.wV],t.x) +B.pD=new A.a([69,B.A1,70,B.bu,71,B.aG,76,B.Z,83,B.az,84,B.J],t.V) +B.nY=new A.a([114,B.pD],t.i) +B.lg=new A.a([101,B.nY],t.J) +B.Cc=new A.a([116,B.lg],t.O) +B.xd=new A.a([97,B.Cc],t.l) +B.lE=new A.a([101,B.xd],t.x) +B.Dw=new A.a([74,B.p,84,B.c,97,B.JQ,98,B.aH,99,B.Fx,100,B.m,102,B.e,103,B.c,111,B.A,114,B.lE,115,B.r,116,B.c],t.r) +B.xU=new A.a([68,B.p],t.t) +B.ux=new A.a([82,B.xU],t.V) +B.lQ=new A.a([101,B.T],t.e) +B.xs=new A.a([99,B.lQ,116,B.c],t.r) +B.aJ=new A.a([105,B.P],t.t) +B.AG=new A.a([99,B.z],t.e) +B.wI=new A.a([97,B.AG],t.t) +B.vf=new A.a([112,B.wI],t.V) +B.ak=new A.a([83,B.vf],t.i) +B.D8=new A.a([116,B.ak],t.J) +B.o8=new A.a([114,B.D8],t.O) +B.lm=new A.a([101,B.o8],t.l) +B.GI=new A.a([98,B.lm],t.x) +B.B6=new A.a([108,B.GI],t.Y) +B.aP=new A.a([110,B.z],t.e) +B.ba=new A.a([105,B.aP],t.t) +B.ed=new A.a([76,B.ba],t.V) +B.Bt=new A.a([108,B.ed],t.i) +B.wx=new A.a([97,B.Bt],t.J) +B.CI=new A.a([116,B.wx],t.O) +B.J6=new A.a([110,B.CI],t.l) +B.jT=new A.a([111,B.J6],t.x) +B.p5=new A.a([122,B.jT],t.Y) +B.u9=new A.a([105,B.p5],t.k) +B.Hx=new A.a([112,B.y,114,B.u9],t.e) +B.K3=new A.a([109,B.w],t.e) +B.HO=new A.a([117,B.K3],t.t) +B.xo=new A.a([72,B.HO],t.V) +B.J7=new A.a([110,B.xo],t.i) +B.EY=new A.a([119,B.J7],t.J) +B.k6=new A.a([111,B.EY],t.O) +B.F6=new A.a([68,B.k6,69,B.a0],t.i) +B.vD=new A.a([112,B.F6],t.J) +B.hq=new A.a([109,B.vD],t.O) +B.y8=new A.a([65,B.ux,97,B.xs,99,B.aJ,102,B.e,105,B.B6,111,B.Hx,115,B.c9,117,B.hq],t.e) +B.FB=new A.a([73,B.c],t.r) +B.zv=new A.a([121,B.FB],t.e) +B.nN=new A.a([114,B.zv],t.t) +B.wT=new A.a([97,B.nN],t.V) +B.IV=new A.a([110,B.wT],t.i) +B.tP=new A.a([105,B.IV],t.J) +B.KB=new A.a([99,B.e,103,B.tP],t.e) +B.tM=new A.a([105,B.b2],t.t) +B.fp=new A.a([108,B.tM],t.V) +B.y2=new A.a([59,B.d,97,B.KB,112,B.fp],t.j) +B.kZ=new A.a([101,B.fb],t.J) +B.eW=new A.a([115,B.kZ],t.O) +B.Ei=new A.a([103,B.dP,114,B.eW],t.V) +B.xD=new A.a([59,B.d,101,B.Ei],t.j) +B.hn=new A.a([109,B.C],t.e) +B.cx=new A.a([109,B.hn],t.t) +B.jX=new A.a([111,B.cx],t.V) +B.p8=new A.a([67,B.jX,84,B.aj],t.i) +B.lc=new A.a([101,B.p8],t.J) +B.Bi=new A.a([108,B.lc],t.O) +B.GG=new A.a([98,B.Bi],t.l) +B.ur=new A.a([105,B.GG],t.x) +B.z1=new A.a([115,B.ur],t.Y) +B.uo=new A.a([105,B.z1],t.k) +B.Fc=new A.a([116,B.xD,118,B.uo],t.r) +B.yl=new A.a([103,B.O,112,B.y,116,B.C],t.e) +B.e1=new A.a([107,B.p,109,B.x],t.e) +B.KF=new A.a([69,B.p,74,B.a1,79,B.p,97,B.K,99,B.a_,100,B.m,102,B.e,103,B.a5,109,B.y2,110,B.Fc,111,B.yl,115,B.r,116,B.J,117,B.e1],t.r) +B.om=new A.a([114,B.p],t.t) +B.fI=new A.a([99,B.e,101,B.om],t.e) +B.hd=new A.a([107,B.p],t.t) +B.px=new A.a([99,B.a_,102,B.e,111,B.A,115,B.fI,117,B.hd],t.e) +B.vd=new A.a([112,B.C],t.e) +B.ew=new A.a([112,B.vd],t.t) +B.di=new A.a([101,B.ao,121,B.c],t.r) +B.E7=new A.a([72,B.p,74,B.p,97,B.ew,99,B.di,102,B.e,111,B.A,115,B.r],t.e) +B.Kd=new A.a([100,B.C],t.e) +B.h1=new A.a([98,B.Kd],t.t) +B.lb=new A.a([101,B.bn],t.V) +B.Af=new A.a([99,B.lb],t.i) +B.wz=new A.a([97,B.Af],t.J) +B.Bx=new A.a([108,B.wz],t.O) +B.uH=new A.a([99,B.S,109,B.h1,110,B.R,112,B.Bx,114,B.e],t.e) +B.aN=new A.a([97,B.a6,101,B.ao,121,B.c],t.r) +B.aE=new A.a([101,B.t],t.e) +B.Ij=new A.a([107,B.aE],t.t) +B.Av=new A.a([99,B.Ij],t.V) +B.wH=new A.a([97,B.Av],t.i) +B.oO=new A.a([114,B.wH],t.J) +B.r6=new A.a([66,B.oO],t.O) +B.m0=new A.a([101,B.r6],t.l) +B.fk=new A.a([108,B.m0],t.x) +B.fU=new A.a([103,B.fk],t.Y) +B.tn=new A.a([59,B.d,66,B.o,82,B.ai],t.j) +B.EP=new A.a([119,B.tn],t.r) +B.ka=new A.a([111,B.EP],t.e) +B.ns=new A.a([114,B.ka],t.t) +B.zA=new A.a([110,B.fU,114,B.ns],t.V) +B.Bk=new A.a([108,B.aL],t.V) +B.tD=new A.a([105,B.Bk],t.i) +B.dC=new A.a([101,B.tD],t.J) +B.GJ=new A.a([98,B.fk],t.Y) +B.IQ=new A.a([110,B.e7],t.O) +B.y7=new A.a([117,B.GJ,119,B.IQ],t.l) +B.d8=new A.a([111,B.y7],t.x) +B.db=new A.a([111,B.df],t.t) +B.fd=new A.a([108,B.db],t.V) +B.Dl=new A.a([65,B.G,86,B.bN],t.i) +B.CO=new A.a([116,B.Dl],t.J) +B.rF=new A.a([104,B.CO],t.O) +B.FK=new A.a([103,B.rF],t.l) +B.tO=new A.a([105,B.FK],t.x) +B.rj=new A.a([59,B.d,65,B.G,86,B.bN],t.j) +B.m8=new A.a([101,B.rj],t.r) +B.pu=new A.a([59,B.d,66,B.o,69,B.a0],t.j) +B.lT=new A.a([101,B.pu],t.r) +B.B2=new A.a([108,B.lT],t.e) +B.G2=new A.a([103,B.B2],t.t) +B.IU=new A.a([110,B.G2],t.V) +B.wE=new A.a([97,B.IU],t.i) +B.eg=new A.a([105,B.wE],t.J) +B.hf=new A.a([101,B.m8,114,B.eg],t.e) +B.Jj=new A.a([110,B.cp],t.O) +B.ET=new A.a([119,B.Jj],t.l) +B.jH=new A.a([111,B.ET],t.x) +B.yf=new A.a([68,B.jH,84,B.bR,86,B.aF],t.J) +B.ey=new A.a([112,B.yf],t.O) +B.c7=new A.a([97,B.G],t.i) +B.ft=new A.a([116,B.c7],t.J) +B.rQ=new A.a([104,B.ft],t.O) +B.fR=new A.a([103,B.rQ],t.l) +B.ah=new A.a([105,B.fR],t.x) +B.w_=new A.a([65,B.zA,67,B.dC,68,B.d8,70,B.fd,82,B.tO,84,B.hf,85,B.ey,86,B.aF,97,B.G,114,B.ah],t.t) +B.D2=new A.a([116,B.w_],t.V) +B.h_=new A.a([71,B.aG],t.O) +B.BK=new A.a([108,B.h_],t.l) +B.wy=new A.a([97,B.BK],t.x) +B.HN=new A.a([117,B.wy],t.Y) +B.A3=new A.a([113,B.HN],t.k) +B.pB=new A.a([69,B.A3,70,B.bu,71,B.aG,76,B.Z,83,B.az,84,B.J],t.V) +B.ze=new A.a([115,B.pB],t.i) +B.Es=new A.a([102,B.D2,115,B.ze],t.i) +B.f4=new A.a([102,B.ft],t.O) +B.xy=new A.a([59,B.d,101,B.f4],t.j) +B.aR=new A.a([100,B.m],t.t) +B.un=new A.a([105,B.aR],t.V) +B.zZ=new A.a([97,B.G,114,B.ah],t.i) +B.fF=new A.a([116,B.zZ],t.J) +B.f3=new A.a([102,B.fF],t.O) +B.dy=new A.a([101,B.f3],t.l) +B.r0=new A.a([76,B.dA,82,B.ai,108,B.dy,114,B.ah],t.x) +B.G3=new A.a([103,B.r0],t.Y) +B.zN=new A.a([102,B.fC],t.O) +B.bQ=new A.a([101,B.zN],t.l) +B.EF=new A.a([76,B.bQ,82,B.ai],t.x) +B.nD=new A.a([114,B.EF],t.Y) +B.dz=new A.a([101,B.nD],t.k) +B.qC=new A.a([110,B.G3,112,B.y,119,B.dz],t.e) +B.mN=new A.a([99,B.e,104,B.c,116,B.aq],t.r) +B.Gg=new A.a([74,B.p,84,B.c,97,B.uH,99,B.aN,101,B.Es,102,B.e,108,B.xy,109,B.un,111,B.qC,115,B.mN,116,B.c],t.r) +B.JV=new A.a([109,B.ak],t.J) +B.HV=new A.a([117,B.JV],t.O) +B.eo=new A.a([105,B.HV],t.l) +B.IZ=new A.a([110,B.bn],t.V) +B.tG=new A.a([105,B.IZ],t.i) +B.AP=new A.a([108,B.tG],t.J) +B.BW=new A.a([100,B.eo,108,B.AP],t.O) +B.va=new A.a([80,B.Q],t.V) +B.yW=new A.a([115,B.va],t.i) +B.I2=new A.a([117,B.yW],t.J) +B.IW=new A.a([110,B.I2],t.O) +B.Gj=new A.a([97,B.w,99,B.D,101,B.BW,102,B.e,105,B.IW,111,B.A,115,B.r,117,B.c],t.r) +B.Kh=new A.a([100,B.eo],t.x) +B.mu=new A.a([101,B.Kh],t.Y) +B.Ip=new A.a([107,B.ak],t.J) +B.ep=new A.a([99,B.Ip,110,B.ak],t.J) +B.tV=new A.a([105,B.ep],t.O) +B.rX=new A.a([104,B.tV],t.l) +B.Js=new A.a([110,B.ak],t.J) +B.um=new A.a([105,B.Js],t.O) +B.rR=new A.a([104,B.um],t.l) +B.fQ=new A.a([84,B.rR],t.x) +B.zu=new A.a([121,B.fQ],t.Y) +B.o6=new A.a([114,B.zu],t.k) +B.ml=new A.a([101,B.o6],t._) +B.kQ=new A.a([77,B.mu,84,B.rX,86,B.ml],t.x) +B.lU=new A.a([101,B.kQ],t.Y) +B.kF=new A.a([118,B.lU],t.k) +B.u8=new A.a([105,B.kF],t._) +B.CT=new A.a([116,B.u8],t.Q) +B.wa=new A.a([97,B.CT],t.B) +B.ov=new A.a([114,B.h_],t.l) +B.lJ=new A.a([101,B.ov],t.x) +B.Ct=new A.a([116,B.lJ],t.Y) +B.x5=new A.a([97,B.Ct],t.k) +B.lC=new A.a([101,B.x5],t._) +B.oh=new A.a([114,B.lC],t.Q) +B.tr=new A.a([76,B.Z],t.V) +B.zd=new A.a([115,B.tr],t.i) +B.yJ=new A.a([115,B.zd],t.J) +B.mz=new A.a([101,B.yJ],t.O) +B.DP=new A.a([71,B.oh,76,B.mz],t.l) +B.Ki=new A.a([100,B.DP],t.x) +B.lP=new A.a([101,B.Ki],t.Y) +B.fA=new A.a([116,B.lP],t.k) +B.IA=new A.a([103,B.wa,115,B.fA,119,B.ed],t.i) +B.wK=new A.a([97,B.T],t.e) +B.mr=new A.a([101,B.wK],t.t) +B.o1=new A.a([114,B.mr],t.V) +B.G4=new A.a([103,B.ak],t.J) +B.IX=new A.a([110,B.G4],t.O) +B.uf=new A.a([105,B.IX],t.l) +B.In=new A.a([107,B.uf],t.x) +B.wo=new A.a([97,B.In],t.Y) +B.m7=new A.a([101,B.wo],t.k) +B.oP=new A.a([114,B.m7],t._) +B.r7=new A.a([66,B.oP],t.Q) +B.FV=new A.a([103,B.dQ],t.J) +B.Jm=new A.a([110,B.FV],t.O) +B.mK=new A.a([67,B.au],t.t) +B.vr=new A.a([112,B.mK],t.V) +B.Di=new A.a([111,B.Jm,117,B.vr],t.i) +B.Eg=new A.a([86,B.bO],t.k) +B.m1=new A.a([101,B.Eg],t._) +B.Ba=new A.a([108,B.m1],t.Q) +B.GN=new A.a([98,B.Ba],t.B) +B.HK=new A.a([117,B.GN],t.kg) +B.k7=new A.a([111,B.HK],t.oJ) +B.xg=new A.a([97,B.fm],t.e) +B.HB=new A.a([117,B.xg],t.t) +B.ua=new A.a([105,B.eY],t.V) +B.kr=new A.a([108,B.b3,113,B.HB,120,B.ua],t.V) +B.KD=new A.a([59,B.d,69,B.a0,70,B.bu,71,B.aG,76,B.Z,83,B.az,84,B.J],t.j) +B.oI=new A.a([114,B.KD],t.r) +B.mw=new A.a([101,B.oI],t.e) +B.CR=new A.a([116,B.mw],t.t) +B.x1=new A.a([97,B.CR],t.V) +B.mo=new A.a([101,B.x1],t.i) +B.ok=new A.a([114,B.mo],t.J) +B.I6=new A.a([117,B.hq],t.l) +B.oZ=new A.a([114,B.eg],t.O) +B.Fn=new A.a([84,B.oZ],t.l) +B.fB=new A.a([116,B.Fn],t.x) +B.pc=new A.a([59,B.d,69,B.a0,71,B.aG,76,B.Z,83,B.az,84,B.J],t.j) +B.zh=new A.a([115,B.pc],t.r) +B.Et=new A.a([102,B.fB,115,B.zh],t.e) +B.mi=new A.a([101,B.Et],t.t) +B.z6=new A.a([115,B.fA],t._) +B.mm=new A.a([101,B.z6],t.Q) +B.Gv=new A.a([59,B.d,69,B.a0,83,B.az],t.j) +B.yP=new A.a([115,B.Gv],t.r) +B.lG=new A.a([101,B.yP],t.e) +B.Kq=new A.a([100,B.lG],t.t) +B.l8=new A.a([101,B.Kq],t.V) +B.Am=new A.a([99,B.l8],t.i) +B.mt=new A.a([101,B.Am],t.J) +B.ox=new A.a([114,B.mt],t.O) +B.Bd=new A.a([108,B.b3],t.J) +B.zC=new A.a([69,B.Bd],t.O) +B.me=new A.a([101,B.zC],t.l) +B.yR=new A.a([115,B.me],t.x) +B.oT=new A.a([114,B.yR],t.Y) +B.lL=new A.a([101,B.oT],t.k) +B.kG=new A.a([118,B.lL],t._) +B.rC=new A.a([104,B.fB],t.Y) +B.G9=new A.a([103,B.rC],t.k) +B.Fg=new A.a([101,B.kG,105,B.G9],t._) +B.uT=new A.a([59,B.d,69,B.a0],t.j) +B.Cr=new A.a([116,B.uT],t.r) +B.du=new A.a([101,B.Cr],t.e) +B.ce=new A.a([115,B.du],t.t) +B.dM=new A.a([114,B.ce],t.V) +B.dt=new A.a([101,B.dM],t.i) +B.KO=new A.a([98,B.ce,112,B.dt],t.V) +B.h7=new A.a([117,B.KO],t.i) +B.v2=new A.a([83,B.h7],t.J) +B.ly=new A.a([101,B.v2],t.O) +B.oc=new A.a([114,B.ly],t.l) +B.wF=new A.a([97,B.oc],t.x) +B.HS=new A.a([117,B.wF],t.Y) +B.t_=new A.a([59,B.d,69,B.a0,83,B.az,84,B.J],t.j) +B.eX=new A.a([115,B.t_],t.r) +B.Kc=new A.a([100,B.eX],t.e) +B.m2=new A.a([101,B.Kc],t.t) +B.ds=new A.a([101,B.m2],t.V) +B.Ai=new A.a([99,B.ds],t.i) +B.v_=new A.a([98,B.ce,99,B.Ai,112,B.dt],t.V) +B.xN=new A.a([113,B.HS,117,B.v_],t.i) +B.De=new A.a([59,B.d,69,B.a0,70,B.bu,84,B.J],t.j) +B.md=new A.a([101,B.De],t.r) +B.Kk=new A.a([100,B.md],t.e) +B.fl=new A.a([108,B.Kk],t.t) +B.tx=new A.a([105,B.fl],t.V) +B.y6=new A.a([59,B.d,67,B.Di,68,B.k7,69,B.kr,71,B.ok,72,B.I6,76,B.mi,78,B.mm,80,B.ox,82,B.Fg,83,B.xN,84,B.tx,86,B.bO],t.j) +B.t7=new A.a([66,B.o1,110,B.r7,112,B.y,116,B.y6],t.r) +B.uO=new A.a([74,B.p,97,B.K,99,B.aN,101,B.IA,102,B.e,111,B.t7,115,B.r,116,B.J,117,B.c],t.r) +B.eC=new A.a([97,B.ad],t.e) +B.ck=new A.a([108,B.eC],t.t) +B.h2=new A.a([98,B.ck],t.V) +B.fS=new A.a([103,B.C],t.e) +B.Aq=new A.a([99,B.a6],t.V) +B.tj=new A.a([97,B.r,101,B.fS,105,B.Aq],t.t) +B.JG=new A.a([110,B.dE],t.k) +B.ms=new A.a([101,B.JG],t._) +B.tc=new A.a([99,B.e,108,B.I],t.e) +B.xP=new A.a([108,B.aQ,109,B.b2],t.t) +B.tw=new A.a([105,B.xP],t.V) +B.rc=new A.a([101,B.c,107,B.aE],t.r) +B.Al=new A.a([99,B.rc],t.e) +B.x7=new A.a([97,B.Al],t.t) +B.zX=new A.a([97,B.e,114,B.x7],t.e) +B.yM=new A.a([115,B.c1],t.t) +B.lq=new A.a([101,B.yM],t.V) +B.ry=new A.a([104,B.lq],t.i) +B.D5=new A.a([116,B.ry],t.J) +B.Jo=new A.a([110,B.D5],t.O) +B.lz=new A.a([101,B.Jo],t.l) +B.np=new A.a([114,B.lz],t.x) +B.wc=new A.a([97,B.np],t.Y) +B.Ea=new A.a([66,B.zX,80,B.wc],t.t) +B.oy=new A.a([114,B.Ea],t.V) +B.dw=new A.a([101,B.oy],t.i) +B.xi=new A.a([69,B.a1,97,B.K,99,B.a_,100,B.h2,102,B.e,103,B.a5,109,B.tj,111,B.A,112,B.ms,114,B.c,115,B.tc,116,B.tw,117,B.an,118,B.dw],t.r) +B.oj=new A.a([114,B.fH],t.J) +B.y0=new A.a([77,B.as],t.i) +B.z_=new A.a([115,B.y0],t.J) +B.HD=new A.a([117,B.z_],t.O) +B.wR=new A.a([97,B.aP],t.t) +B.AS=new A.a([108,B.wR],t.V) +B.vE=new A.a([112,B.AS],t.i) +B.mA=new A.a([101,B.vE],t.J) +B.ny=new A.a([114,B.mA],t.O) +B.wA=new A.a([97,B.ny],t.l) +B.Aj=new A.a([99,B.wA],t.x) +B.Jb=new A.a([110,B.Aj],t.Y) +B.ED=new A.a([105,B.Jb,112,B.y],t.e) +B.lS=new A.a([101,B.eX],t.e) +B.Kr=new A.a([100,B.lS],t.t) +B.lK=new A.a([101,B.Kr],t.V) +B.AJ=new A.a([99,B.lK],t.i) +B.ho=new A.a([109,B.z],t.e) +B.t4=new A.a([59,B.d,97,B.x],t.j) +B.Jq=new A.a([110,B.t4],t.r) +B.kj=new A.a([111,B.Jq],t.e) +B.tI=new A.a([105,B.kj],t.t) +B.Cw=new A.a([116,B.tI],t.V) +B.nF=new A.a([114,B.Cw],t.i) +B.jF=new A.a([111,B.nF],t.J) +B.vP=new A.a([100,B.h8,112,B.jF],t.V) +B.pa=new A.a([59,B.d,101,B.AJ,105,B.ho,111,B.vP],t.j) +B.fL=new A.a([99,B.e,105,B.c],t.r) +B.xZ=new A.a([97,B.oj,99,B.D,102,B.e,104,B.ab,105,B.c,108,B.HD,111,B.ED,114,B.pa,115,B.fL],t.r) +B.Fo=new A.a([84,B.c],t.r) +B.kM=new A.a([79,B.Fo],t.e) +B.r5=new A.a([85,B.kM,102,B.e,111,B.A,115,B.r],t.e) +B.q=new A.a([114,B.e],t.e) +B.M=new A.a([97,B.q],t.t) +B.pj=new A.a([59,B.d,116,B.x],t.j) +B.nk=new A.a([114,B.pj],t.r) +B.It=new A.a([99,B.S,110,B.R,114,B.nk],t.e) +B.ug=new A.a([105,B.fg],t.l) +B.hb=new A.a([117,B.ug],t.x) +B.xx=new A.a([108,B.b3,113,B.hb],t.J) +B.f9=new A.a([113,B.hb],t.Y) +B.zD=new A.a([69,B.f9],t.k) +B.vy=new A.a([112,B.zD],t._) +B.xp=new A.a([69,B.xx,85,B.vy],t.O) +B.lr=new A.a([101,B.xp],t.l) +B.zf=new A.a([115,B.lr],t.x) +B.od=new A.a([114,B.zf],t.Y) +B.lw=new A.a([101,B.od],t.k) +B.C4=new A.a([59,B.d,118,B.lw],t.j) +B.a4=new A.a([111,B.c],t.r) +B.Dt=new A.a([59,B.d,66,B.o,76,B.bQ],t.j) +B.EX=new A.a([119,B.Dt],t.r) +B.jN=new A.a([111,B.EX],t.e) +B.o_=new A.a([114,B.jN],t.t) +B.zz=new A.a([110,B.fU,114,B.o_],t.V) +B.zU=new A.a([65,B.zz,67,B.dC,68,B.d8,70,B.fd,84,B.hf,85,B.ey,86,B.aF,97,B.G],t.t) +B.CJ=new A.a([116,B.zU],t.V) +B.rN=new A.a([104,B.CJ],t.i) +B.Ga=new A.a([103,B.rN],t.J) +B.vw=new A.a([112,B.fp],t.i) +B.JK=new A.a([109,B.vw],t.J) +B.FA=new A.a([73,B.JK],t.O) +B.Ko=new A.a([100,B.FA],t.l) +B.IM=new A.a([110,B.Ko],t.x) +B.Kt=new A.a([112,B.y,117,B.IM],t.e) +B.Dn=new A.a([99,B.e,104,B.c],t.r) +B.zn=new A.a([121,B.b5],t.t) +B.x4=new A.a([97,B.zn],t.V) +B.Bb=new A.a([108,B.x4],t.i) +B.lo=new A.a([101,B.Bb],t.J) +B.xT=new A.a([68,B.lo],t.O) +B.ll=new A.a([101,B.xT],t.l) +B.AX=new A.a([108,B.ll],t.x) +B.vZ=new A.a([66,B.M,69,B.fZ,97,B.It,99,B.aN,101,B.C4,102,B.e,104,B.a4,105,B.Ga,111,B.Kt,114,B.ah,115,B.Dn,117,B.AX],t.r) +B.xn=new A.a([72,B.p],t.t) +B.DQ=new A.a([67,B.xn,99,B.D],t.e) +B.Fq=new A.a([84,B.p],t.t) +B.pO=new A.a([70,B.Fq],t.V) +B.q1=new A.a([59,B.d,97,B.a6,101,B.ao,105,B.P,121,B.c],t.j) +B.vV=new A.a([68,B.aZ,76,B.bQ,82,B.ai,85,B.ex],t.O) +B.Cj=new A.a([116,B.vV],t.l) +B.oK=new A.a([114,B.Cj],t.x) +B.kd=new A.a([111,B.oK],t.Y) +B.fW=new A.a([103,B.hn],t.t) +B.bl=new A.a([108,B.z],t.e) +B.Ax=new A.a([99,B.bl],t.t) +B.nZ=new A.a([114,B.Ax],t.V) +B.ty=new A.a([105,B.nZ],t.i) +B.mI=new A.a([67,B.ty],t.J) +B.Bl=new A.a([108,B.mI],t.O) +B.AV=new A.a([108,B.Bl],t.l) +B.wW=new A.a([97,B.AV],t.x) +B.or=new A.a([114,B.eW],t.l) +B.m9=new A.a([101,B.or],t.x) +B.Cp=new A.a([116,B.m9],t.Y) +B.IJ=new A.a([110,B.Cp],t.k) +B.Je=new A.a([110,B.ee],t.V) +B.ru=new A.a([59,B.d,73,B.IJ,83,B.h7,85,B.Je],t.j) +B.ld=new A.a([101,B.ru],t.r) +B.oC=new A.a([114,B.ld],t.e) +B.wQ=new A.a([97,B.oC],t.t) +B.BZ=new A.a([114,B.t,117,B.wQ],t.e) +B.mU=new A.a([59,B.d,115,B.du],t.j) +B.eG=new A.a([97,B.t],t.e) +B.rW=new A.a([104,B.eG],t.t) +B.Fp=new A.a([84,B.rW],t.V) +B.Dm=new A.a([99,B.ds,104,B.Fp],t.i) +B.K9=new A.a([59,B.d,101,B.dM,115,B.aE],t.j) +B.xH=new A.a([98,B.mU,99,B.Dm,109,B.c,112,B.K9],t.r) +B.KE=new A.a([72,B.DQ,79,B.pO,97,B.K,99,B.q1,102,B.e,104,B.kd,105,B.fW,109,B.wW,111,B.A,113,B.BZ,115,B.r,116,B.o,117,B.xH],t.r) +B.xV=new A.a([78,B.c],t.r) +B.uw=new A.a([82,B.xV],t.e) +B.kL=new A.a([79,B.uw],t.t) +B.xR=new A.a([68,B.cf],t.e) +B.kw=new A.a([65,B.xR],t.t) +B.DH=new A.a([72,B.p,99,B.D],t.e) +B.Fi=new A.a([98,B.c,117,B.c],t.r) +B.d7=new A.a([111,B.dW],t.t) +B.zO=new A.a([102,B.d7],t.V) +B.mq=new A.a([101,B.zO],t.i) +B.Gm=new A.a([114,B.mq,116,B.C],t.e) +B.Ff=new A.a([101,B.Gm,105,B.ep],t.t) +B.m4=new A.a([101,B.ca],t.V) +B.B1=new A.a([108,B.m4],t.i) +B.vq=new A.a([112,B.B1],t.J) +B.tC=new A.a([105,B.vq],t.O) +B.uL=new A.a([72,B.kL,82,B.kw,83,B.DH,97,B.Fi,99,B.aN,102,B.e,104,B.Ff,105,B.fl,111,B.A,114,B.tC,115,B.c9],t.e) +B.ar=new A.a([105,B.e],t.e) +B.bj=new A.a([99,B.ar],t.t) +B.qR=new A.a([59,B.d,111,B.bj],t.j) +B.oQ=new A.a([114,B.qR],t.r) +B.Hs=new A.a([99,B.S,114,B.oQ],t.e) +B.DR=new A.a([99,B.D,101,B.b0],t.e) +B.dO=new A.a([114,B.DR],t.t) +B.xJ=new A.a([59,B.d,80,B.Q],t.j) +B.IH=new A.a([110,B.xJ],t.r) +B.ki=new A.a([111,B.IH],t.e) +B.EI=new A.a([100,B.dw,105,B.ki],t.t) +B.Iv=new A.a([59,B.d,66,B.o,68,B.aZ],t.j) +B.EV=new A.a([119,B.Iv],t.r) +B.k5=new A.a([111,B.EV],t.e) +B.nT=new A.a([114,B.k5],t.t) +B.oL=new A.a([114,B.nT],t.V) +B.Jr=new A.a([110,B.c7],t.J) +B.EU=new A.a([119,B.Jr],t.O) +B.de=new A.a([111,B.EU],t.l) +B.n8=new A.a([59,B.d,108,B.O],t.j) +B.uu=new A.a([105,B.n8],t.r) +B.zl=new A.a([65,B.oL,68,B.aZ,69,B.f9,84,B.dv,97,B.G,100,B.de,112,B.dz,115,B.uu],t.e) +B.y4=new A.a([97,B.Hs,98,B.dO,99,B.a_,100,B.h2,102,B.e,103,B.a5,109,B.eL,110,B.EI,111,B.av,112,B.zl,114,B.aL,115,B.r,116,B.J,117,B.an],t.e) +B.b6=new A.a([59,B.d,108,B.c],t.j) +B.rK=new A.a([104,B.b6],t.r) +B.z5=new A.a([115,B.rK],t.e) +B.xb=new A.a([97,B.z5],t.t) +B.wg=new A.a([97,B.fx],t.V) +B.nH=new A.a([114,B.wg],t.i) +B.w9=new A.a([97,B.nH],t.J) +B.vp=new A.a([112,B.w9],t.O) +B.le=new A.a([101,B.vp],t.l) +B.EC=new A.a([66,B.o,76,B.ba,83,B.le,84,B.J],t.t) +B.AW=new A.a([108,B.EC],t.V) +B.wZ=new A.a([97,B.AW],t.i) +B.AL=new A.a([99,B.wZ],t.J) +B.yo=new A.a([59,B.d,105,B.AL],t.j) +B.xL=new A.a([98,B.o,116,B.yo,121,B.fQ],t.r) +B.Iu=new A.a([101,B.c,114,B.xL],t.r) +B.Km=new A.a([100,B.I],t.V) +B.F7=new A.a([68,B.I,98,B.o,99,B.D,100,B.xb,101,B.Iu,102,B.e,111,B.A,115,B.r,118,B.Km],t.e) +B.fV=new A.a([103,B.z],t.e) +B.hs=new A.a([100,B.fV],t.t) +B.p9=new A.a([99,B.aJ,101,B.hs,102,B.e,111,B.A,115,B.r],t.e) +B.rq=new A.a([102,B.e,105,B.c,111,B.A,115,B.r],t.r) +B.mP=new A.a([65,B.p,73,B.p,85,B.p,97,B.K,99,B.a_,102,B.e,111,B.A,115,B.r,117,B.an],t.e) +B.rE=new A.a([104,B.ak],t.J) +B.D3=new A.a([116,B.rE],t.O) +B.Kv=new A.a([100,B.D3],t.l) +B.tW=new A.a([105,B.Kv],t.x) +B.zG=new A.a([87,B.tW],t.Y) +B.jY=new A.a([111,B.zG],t.k) +B.Gl=new A.a([114,B.jY,116,B.C],t.e) +B.uK=new A.a([72,B.p,97,B.K,99,B.bg,100,B.m,101,B.Gl,102,B.e,111,B.A,115,B.r],t.e) +B.qu=new A.a([59,B.d,69,B.c,100,B.c,105,B.P,117,B.aO,121,B.c],t.j) +B.bq=new A.a([59,B.d,114,B.c],t.j) +B.f0=new A.a([121,B.V],t.e) +B.za=new A.a([115,B.f0],t.t) +B.yy=new A.a([102,B.za,112,B.ag],t.e) +B.AN=new A.a([101,B.yy,112,B.ea],t.t) +B.te=new A.a([99,B.e,108,B.R],t.e) +B.E4=new A.a([97,B.te,112,B.c],t.r) +B.vg=new A.a([112,B.z],t.e) +B.jM=new A.a([111,B.vg],t.t) +B.fi=new A.a([108,B.jM],t.V) +B.yx=new A.a([59,B.d,97,B.bx,100,B.c,115,B.fi,118,B.c],t.j) +B.BR=new A.a([97,B.c,98,B.c,99,B.c,100,B.c,101,B.c,102,B.c,103,B.c,104,B.c],t.r) +B.t2=new A.a([59,B.d,97,B.BR],t.j) +B.Ke=new A.a([100,B.t2],t.r) +B.yN=new A.a([115,B.Ke],t.e) +B.GE=new A.a([98,B.br],t.r) +B.C5=new A.a([59,B.d,118,B.GE],t.j) +B.Cu=new A.a([116,B.C5],t.r) +B.pV=new A.a([112,B.ag,116,B.c],t.r) +B.q2=new A.a([59,B.d,101,B.c,108,B.z,109,B.yN,114,B.Cu,115,B.pV,122,B.M],t.j) +B.A6=new A.a([100,B.yx,103,B.q2],t.r) +B.aw=new A.a([59,B.d,101,B.ay],t.j) +B.q_=new A.a([120,B.aw],t.r) +B.k0=new A.a([111,B.q_],t.e) +B.oS=new A.a([114,B.k0],t.t) +B.yj=new A.a([59,B.d,69,B.c,97,B.bj,101,B.c,105,B.a2,111,B.B,112,B.oS],t.j) +B.vx=new A.a([112,B.aw],t.r) +B.JN=new A.a([109,B.vx],t.e) +B.Ib=new A.a([99,B.e,116,B.c,121,B.JN],t.r) +B.kc=new A.a([111,B.cw],t.i) +B.fM=new A.a([99,B.kc,105,B.U],t.t) +B.kD=new A.a([97,B.K,98,B.aH,99,B.qu,101,B.a1,102,B.bq,103,B.a5,108,B.AN,109,B.E4,110,B.A6,111,B.av,112,B.yj,114,B.aL,115,B.Ib,116,B.J,117,B.an,119,B.fM],t.r) +B.ko=new A.a([111,B.bw],t.t) +B.c5=new A.a([112,B.eS],t.J) +B.c0=new A.a([105,B.ho],t.t) +B.b7=new A.a([114,B.c0],t.V) +B.K_=new A.a([109,B.aw],t.r) +B.uc=new A.a([105,B.K_],t.e) +B.Eq=new A.a([99,B.ko,101,B.c5,112,B.b7,115,B.uc],t.t) +B.If=new A.a([107,B.Eq],t.V) +B.mB=new A.a([59,B.d,103,B.z],t.j) +B.Kn=new A.a([100,B.mB],t.r) +B.ls=new A.a([101,B.Kn],t.e) +B.pv=new A.a([118,B.a8,119,B.ls],t.t) +B.Ht=new A.a([99,B.If,114,B.pv],t.V) +B.aa=new A.a([114,B.T],t.e) +B.GM=new A.a([98,B.aa],t.t) +B.pi=new A.a([59,B.d,116,B.GM],t.j) +B.Ig=new A.a([107,B.pi],t.r) +B.nA=new A.a([114,B.Ig],t.e) +B.n2=new A.a([111,B.bw,121,B.c],t.r) +B.cu=new A.a([117,B.a4],t.e) +B.bh=new A.a([113,B.cu],t.t) +B.yQ=new A.a([115,B.al],t.r) +B.HT=new A.a([117,B.yQ],t.e) +B.w7=new A.a([97,B.HT],t.t) +B.zw=new A.a([121,B.aD],t.e) +B.CY=new A.a([116,B.zw],t.t) +B.bc=new A.a([112,B.CY],t.V) +B.yL=new A.a([115,B.ab],t.e) +B.HC=new A.a([117,B.c],t.r) +B.km=new A.a([111,B.HC],t.e) +B.Ja=new A.a([110,B.km],t.t) +B.bV=new A.a([101,B.N],t.e) +B.dr=new A.a([101,B.bV],t.t) +B.yA=new A.a([97,B.c,104,B.c,119,B.dr],t.r) +B.Fa=new A.a([99,B.w7,109,B.bc,112,B.yL,114,B.Ja,116,B.yA],t.e) +B.dl=new A.a([97,B.w,105,B.P,117,B.w],t.e) +B.E0=new A.a([100,B.m,112,B.Q,116,B.aj],t.t) +B.HP=new A.a([117,B.w],t.e) +B.cj=new A.a([99,B.HP],t.t) +B.Fz=new A.a([113,B.cj,116,B.o],t.t) +B.cq=new A.a([119,B.N],t.e) +B.b_=new A.a([111,B.cq],t.t) +B.es=new A.a([100,B.b_,117,B.w],t.e) +B.lM=new A.a([101,B.es],t.t) +B.AZ=new A.a([108,B.lM],t.V) +B.FO=new A.a([103,B.AZ],t.i) +B.JE=new A.a([110,B.FO],t.J) +B.wq=new A.a([97,B.JE],t.O) +B.tE=new A.a([105,B.wq],t.l) +B.o5=new A.a([114,B.tE],t.x) +B.ev=new A.a([112,B.Q],t.V) +B.b4=new A.a([101,B.hs],t.V) +B.kJ=new A.a([99,B.dl,111,B.E0,115,B.Fz,116,B.o5,117,B.ev,118,B.a8,119,B.b4],t.t) +B.G6=new A.a([103,B.kJ],t.V) +B.aM=new A.a([97,B.dS],t.V) +B.hi=new A.a([110,B.fV],t.t) +B.kW=new A.a([101,B.hi],t.V) +B.p3=new A.a([122,B.kW],t.i) +B.k3=new A.a([111,B.p3],t.J) +B.zJ=new A.a([102,B.t],t.e) +B.bT=new A.a([101,B.zJ],t.t) +B.c_=new A.a([104,B.t],t.e) +B.FN=new A.a([103,B.c_],t.t) +B.ej=new A.a([105,B.FN],t.V) +B.A5=new A.a([59,B.d,100,B.b_,108,B.bT,114,B.ej],t.j) +B.l4=new A.a([101,B.A5],t.r) +B.BN=new A.a([108,B.l4],t.e) +B.FR=new A.a([103,B.BN],t.t) +B.Jv=new A.a([110,B.FR],t.V) +B.ws=new A.a([97,B.Jv],t.i) +B.tY=new A.a([105,B.ws],t.J) +B.o9=new A.a([114,B.tY],t.O) +B.KA=new A.a([108,B.k3,115,B.ch,116,B.o9],t.J) +B.Il=new A.a([107,B.KA],t.O) +B.uz=new A.a([99,B.Il,110,B.T],t.e) +B.kR=new A.a([50,B.c,52,B.c],t.r) +B.kN=new A.a([52,B.c],t.r) +B.uC=new A.a([49,B.kR,51,B.kN],t.e) +B.Az=new A.a([99,B.T],t.e) +B.v3=new A.a([97,B.uz,107,B.uC,111,B.Az],t.t) +B.u2=new A.a([105,B.aD],t.e) +B.ha=new A.a([117,B.u2],t.t) +B.vT=new A.a([59,B.d,113,B.ha],t.j) +B.DW=new A.a([101,B.vT,111,B.t],t.r) +B.kf=new A.a([111,B.V],t.e) +B.pk=new A.a([59,B.d,116,B.kf],t.j) +B.bb=new A.a([105,B.z],t.e) +B.Ci=new A.a([116,B.bb],t.t) +B.b9=new A.a([76,B.c,82,B.c,108,B.c,114,B.c],t.r) +B.eR=new A.a([59,B.d,68,B.c,85,B.c,100,B.c,117,B.c],t.j) +B.e9=new A.a([59,B.d,72,B.c,76,B.c,82,B.c,104,B.c,108,B.c,114,B.c],t.j) +B.e3=new A.a([120,B.c],t.r) +B.d4=new A.a([111,B.e3],t.e) +B.qE=new A.a([68,B.b9,72,B.eR,85,B.b9,86,B.e9,98,B.d4,100,B.b9,104,B.eR,109,B.as,112,B.Q,116,B.aj,117,B.b9,118,B.e9],t.r) +B.qQ=new A.a([112,B.y,116,B.pk,119,B.Ci,120,B.qE],t.r) +B.ct=new A.a([98,B.o],t.t) +B.vN=new A.a([101,B.b0,118,B.ct],t.t) +B.JS=new A.a([109,B.ab],t.e) +B.JP=new A.a([109,B.al],t.r) +B.bt=new A.a([98,B.c],t.r) +B.h4=new A.a([117,B.bt],t.e) +B.yZ=new A.a([115,B.h4],t.t) +B.qK=new A.a([59,B.d,98,B.c,104,B.yZ],t.j) +B.B8=new A.a([108,B.qK],t.r) +B.uP=new A.a([99,B.e,101,B.JS,105,B.JP,111,B.B8],t.e) +B.xC=new A.a([59,B.d,101,B.t],t.j) +B.Bq=new A.a([108,B.xC],t.r) +B.at=new A.a([59,B.d,113,B.c],t.j) +B.Go=new A.a([59,B.d,69,B.c,101,B.at],t.j) +B.vj=new A.a([112,B.Go],t.r) +B.xQ=new A.a([108,B.Bq,109,B.vj],t.e) +B.pS=new A.a([78,B.m,97,B.Ht,98,B.nA,99,B.n2,100,B.bh,101,B.Fa,102,B.e,105,B.G6,107,B.aM,108,B.v3,110,B.DW,111,B.qQ,112,B.b7,114,B.vN,115,B.uP,117,B.xQ],t.e) +B.nB=new A.a([114,B.cj],t.V) +B.e2=new A.a([97,B.w,117,B.w],t.e) +B.Kb=new A.a([59,B.d,97,B.bx,98,B.nB,99,B.e2,100,B.m,115,B.c],t.j) +B.DV=new A.a([101,B.t,111,B.N],t.e) +B.uU=new A.a([99,B.S,112,B.Kb,114,B.DV],t.r) +B.Hw=new A.a([112,B.B,114,B.O],t.e) +B.mR=new A.a([59,B.d,115,B.V],t.j) +B.yO=new A.a([115,B.mR],t.r) +B.vm=new A.a([112,B.yO],t.e) +B.KR=new A.a([97,B.Hw,101,B.ao,105,B.P,117,B.vm],t.t) +B.nR=new A.a([114,B.aR],t.V) +B.xA=new A.a([59,B.d,101,B.nR],t.j) +B.CH=new A.a([116,B.xA],t.r) +B.DS=new A.a([100,B.ac,109,B.bc,110,B.CH],t.e) +B.wJ=new A.a([97,B.aa],t.t) +B.Ef=new A.a([59,B.d,109,B.wJ],t.j) +B.Im=new A.a([107,B.Ef],t.r) +B.An=new A.a([99,B.Im],t.e) +B.BP=new A.a([99,B.D,101,B.An,105,B.c],t.r) +B.bM=new A.a([108,B.bT,114,B.ej],t.V) +B.F_=new A.a([119,B.bM],t.i) +B.jU=new A.a([111,B.F_],t.J) +B.ou=new A.a([114,B.jU],t.O) +B.dJ=new A.a([114,B.ou],t.l) +B.ax=new A.a([115,B.t],t.e) +B.vR=new A.a([82,B.c,83,B.c,97,B.ax,99,B.aJ,100,B.I],t.r) +B.mG=new A.a([97,B.dJ,100,B.vR],t.e) +B.mg=new A.a([101,B.mG],t.t) +B.pW=new A.a([59,B.d,101,B.ay,108,B.mg],t.j) +B.aK=new A.a([105,B.a2],t.e) +B.r1=new A.a([59,B.d,69,B.c,99,B.pW,101,B.c,102,B.cw,109,B.aK,115,B.bj],t.j) +B.oo=new A.a([114,B.r1],t.r) +B.eh=new A.a([105,B.t],t.e) +B.r3=new A.a([59,B.d,117,B.eh],t.j) +B.cb=new A.a([115,B.r3],t.r) +B.GH=new A.a([98,B.cb],t.e) +B.HA=new A.a([117,B.GH],t.t) +B.eP=new A.a([59,B.d,101,B.at],t.j) +B.J1=new A.a([110,B.eP],t.r) +B.jI=new A.a([111,B.J1],t.e) +B.pe=new A.a([59,B.d,116,B.c],t.j) +B.wP=new A.a([97,B.pe],t.r) +B.mL=new A.a([109,B.bP,120,B.b2],t.t) +B.mv=new A.a([101,B.mL],t.V) +B.td=new A.a([59,B.d,102,B.N,108,B.mv],t.j) +B.EA=new A.a([109,B.wP,112,B.td],t.r) +B.am=new A.a([59,B.d,100,B.m],t.j) +B.pH=new A.a([103,B.am,105,B.U],t.r) +B.bK=new A.a([111,B.a2],t.e) +B.mV=new A.a([59,B.d,115,B.e],t.j) +B.n5=new A.a([102,B.c,114,B.bK,121,B.mV],t.r) +B.KQ=new A.a([108,B.jI,109,B.EA,110,B.pH,112,B.n5],t.e) +B.pA=new A.a([97,B.q,111,B.cd],t.t) +B.KN=new A.a([98,B.al,112,B.al],t.r) +B.kB=new A.a([99,B.e,117,B.KN],t.e) +B.kE=new A.a([108,B.c,114,B.c],t.r) +B.bZ=new A.a([114,B.kE],t.e) +B.nx=new A.a([114,B.bZ],t.t) +B.wG=new A.a([97,B.nx],t.V) +B.yF=new A.a([112,B.e,115,B.ad],t.e) +B.tg=new A.a([59,B.d,112,B.c],t.j) +B.nJ=new A.a([114,B.tg],t.r) +B.nU=new A.a([114,B.nJ],t.e) +B.xc=new A.a([97,B.nU],t.t) +B.AK=new A.a([99,B.au],t.t) +B.oN=new A.a([114,B.AK],t.V) +B.zF=new A.a([59,B.d,98,B.oN,99,B.e2,100,B.m,111,B.e,115,B.c],t.j) +B.Ee=new A.a([59,B.d,109,B.c],t.j) +B.oD=new A.a([114,B.Ee],t.r) +B.on=new A.a([114,B.oD],t.e) +B.mn=new A.a([101,B.ad],t.e) +B.dN=new A.a([114,B.mn],t.t) +B.As=new A.a([99,B.ad],t.e) +B.I3=new A.a([117,B.As],t.t) +B.yG=new A.a([112,B.dN,115,B.I3],t.V) +B.A2=new A.a([113,B.yG],t.i) +B.ya=new A.a([101,B.A2,118,B.a8,119,B.b4],t.t) +B.zo=new A.a([121,B.ya],t.V) +B.eM=new A.a([97,B.dJ],t.x) +B.lu=new A.a([101,B.eM],t.Y) +B.v4=new A.a([97,B.on,108,B.zo,114,B.bV,118,B.lu],t.t) +B.Ey=new A.a([100,B.wG,101,B.yF,108,B.xc,112,B.zF,114,B.v4,118,B.a8,119,B.b5],t.r) +B.Cx=new A.a([116,B.D],t.e) +B.Au=new A.a([99,B.Cx],t.t) +B.B0=new A.a([108,B.Au],t.V) +B.pL=new A.a([97,B.uU,99,B.KR,100,B.m,101,B.DS,102,B.e,104,B.BP,105,B.oo,108,B.HA,111,B.KQ,114,B.pA,115,B.kB,116,B.aR,117,B.Ey,119,B.fM,121,B.B0],t.e) +B.fz=new A.a([116,B.ag],t.e) +B.mp=new A.a([101,B.fz],t.t) +B.a7=new A.a([59,B.d,118,B.c],t.j) +B.rz=new A.a([104,B.a7],t.r) +B.Dc=new A.a([103,B.cs,108,B.mp,114,B.e,115,B.rz],t.e) +B.pI=new A.a([107,B.aM,108,B.eC],t.t) +B.Ej=new A.a([103,B.cs,114,B.e],t.e) +B.yU=new A.a([115,B.bS],t.t) +B.fv=new A.a([116,B.yU],t.V) +B.pG=new A.a([59,B.d,97,B.Ej,111,B.fv],t.j) +B.co=new A.a([116,B.C],t.e) +B.xl=new A.a([103,B.c,108,B.co,109,B.bc],t.r) +B.eT=new A.a([115,B.c_],t.t) +B.e_=new A.a([105,B.eT,114,B.c],t.r) +B.wB=new A.a([97,B.bZ],t.t) +B.I4=new A.a([117,B.eh],t.t) +B.mW=new A.a([59,B.d,115,B.I4],t.j) +B.Ks=new A.a([100,B.mW],t.r) +B.JB=new A.a([110,B.Ks],t.e) +B.yI=new A.a([59,B.d,111,B.JB,115,B.c],t.j) +B.K5=new A.a([109,B.yI],t.r) +B.wt=new A.a([97,B.cx],t.V) +B.ei=new A.a([105,B.N],t.e) +B.fE=new A.a([116,B.aj],t.i) +B.II=new A.a([110,B.fE],t.J) +B.qY=new A.a([59,B.d,111,B.II],t.j) +B.kX=new A.a([101,B.qY],t.r) +B.Kl=new A.a([100,B.kX],t.e) +B.Jy=new A.a([110,B.e3],t.e) +B.rm=new A.a([59,B.d,105,B.Kl,111,B.Jy],t.j) +B.pC=new A.a([97,B.K5,101,B.c,103,B.wt,115,B.ei,118,B.rm],t.r) +B.dI=new A.a([114,B.N],t.e) +B.bJ=new A.a([111,B.w],t.e) +B.er=new A.a([111,B.dI,114,B.bJ],t.t) +B.AA=new A.a([99,B.er],t.V) +B.fq=new A.a([108,B.o],t.t) +B.A_=new A.a([113,B.am],t.r) +B.qG=new A.a([59,B.d,101,B.A_,109,B.as,112,B.Q,115,B.ch],t.j) +B.EW=new A.a([119,B.b4],t.i) +B.ol=new A.a([114,B.EW],t.J) +B.x6=new A.a([97,B.ol],t.O) +B.GD=new A.a([98,B.x6],t.l) +B.m5=new A.a([101,B.GD],t.x) +B.Be=new A.a([108,B.m5],t.Y) +B.GO=new A.a([98,B.Be],t.k) +B.ES=new A.a([119,B.B],t.e) +B.jV=new A.a([111,B.ES],t.t) +B.nL=new A.a([114,B.jV],t.V) +B.dG=new A.a([114,B.nL],t.i) +B.c8=new A.a([97,B.dG],t.J) +B.Ju=new A.a([110,B.c8],t.O) +B.EZ=new A.a([119,B.Ju],t.l) +B.k8=new A.a([111,B.EZ],t.x) +B.Jt=new A.a([110,B.bM],t.i) +B.jw=new A.a([111,B.Jt],t.J) +B.jB=new A.a([111,B.jw],t.O) +B.vb=new A.a([112,B.jB],t.l) +B.no=new A.a([114,B.vb],t.x) +B.eD=new A.a([97,B.no],t.Y) +B.y9=new A.a([97,B.G,100,B.k8,104,B.eD],t.i) +B.J2=new A.a([110,B.y9],t.J) +B.Gk=new A.a([108,B.fq,112,B.y,116,B.qG,117,B.GO,119,B.J2],t.r) +B.Id=new A.a([107,B.aM],t.i) +B.JI=new A.a([98,B.Id,99,B.er],t.V) +B.fY=new A.a([114,B.c,121,B.c],t.r) +B.vM=new A.a([99,B.fY,111,B.x,116,B.aq],t.e) +B.dj=new A.a([59,B.d,102,B.c],t.j) +B.en=new A.a([105,B.dj],t.r) +B.yr=new A.a([100,B.m,114,B.en],t.e) +B.DJ=new A.a([97,B.q,104,B.o],t.t) +B.FI=new A.a([103,B.bl],t.t) +B.J_=new A.a([110,B.FI],t.V) +B.c6=new A.a([97,B.J_],t.i) +B.nt=new A.a([114,B.M],t.V) +B.fT=new A.a([103,B.nt],t.i) +B.Em=new A.a([99,B.D,105,B.fT],t.e) +B.Gt=new A.a([65,B.q,72,B.o,97,B.Dc,98,B.pI,99,B.bg,100,B.pG,101,B.xl,102,B.e_,104,B.wB,105,B.pC,106,B.p,108,B.AA,111,B.Gk,114,B.JI,115,B.vM,116,B.yr,117,B.DJ,119,B.c6,122,B.Em],t.r) +B.qD=new A.a([68,B.m,111,B.t],t.e) +B.DC=new A.a([99,B.S,115,B.fD],t.V) +B.Ev=new A.a([59,B.d,99,B.c],t.j) +B.dR=new A.a([114,B.Ev],t.r) +B.ye=new A.a([97,B.a6,105,B.dR,111,B.cl,121,B.c],t.r) +B.xq=new A.a([68,B.m,114,B.c],t.r) +B.n1=new A.a([59,B.d,114,B.be,115,B.am],t.j) +B.ot=new A.a([114,B.B],t.e) +B.dp=new A.a([101,B.ot],t.t) +B.Co=new A.a([116,B.dp],t.V) +B.IE=new A.a([110,B.Co],t.i) +B.Fh=new A.a([59,B.d,105,B.IE,108,B.c,115,B.am],t.j) +B.qO=new A.a([59,B.d,115,B.aE,118,B.c],t.j) +B.zq=new A.a([121,B.qO],t.r) +B.CD=new A.a([116,B.zq],t.e) +B.rk=new A.a([51,B.c,52,B.c],t.r) +B.pp=new A.a([49,B.rk,59,B.d],t.j) +B.vc=new A.a([112,B.pp],t.r) +B.vW=new A.a([97,B.r,112,B.CD,115,B.vc],t.e) +B.pQ=new A.a([103,B.c,115,B.w],t.r) +B.mT=new A.a([59,B.d,115,B.x],t.j) +B.nv=new A.a([114,B.mT],t.r) +B.GC=new A.a([59,B.d,108,B.O,118,B.c],t.j) +B.u3=new A.a([105,B.GC],t.r) +B.jr=new A.a([97,B.nv,108,B.ae,115,B.u3],t.e) +B.yi=new A.a([105,B.P,111,B.cl],t.t) +B.bp=new A.a([116,B.e],t.e) +B.pY=new A.a([103,B.bp,108,B.Z],t.t) +B.D7=new A.a([116,B.pY],t.V) +B.IK=new A.a([110,B.D7],t.i) +B.wC=new A.a([97,B.IK],t.J) +B.xY=new A.a([105,B.V,108,B.wC],t.e) +B.cm=new A.a([108,B.B],t.e) +B.Is=new A.a([59,B.d,68,B.eQ],t.j) +B.kI=new A.a([118,B.Is],t.r) +B.ti=new A.a([97,B.cm,101,B.ax,105,B.kI],t.e) +B.yV=new A.a([115,B.x],t.e) +B.p0=new A.a([114,B.yV],t.t) +B.wb=new A.a([97,B.p0],t.V) +B.ez=new A.a([112,B.wb],t.i) +B.n0=new A.a([99,B.yi,115,B.xY,117,B.ti,118,B.ez],t.t) +B.vY=new A.a([68,B.m,97,B.q],t.t) +B.mD=new A.a([99,B.e,100,B.m,105,B.V],t.e) +B.DL=new A.a([97,B.c,104,B.c],t.r) +B.vO=new A.a([109,B.x,114,B.a4],t.e) +B.x3=new A.a([97,B.fy],t.i) +B.CC=new A.a([116,B.x3],t.J) +B.AH=new A.a([99,B.CC],t.O) +B.eF=new A.a([97,B.bl],t.t) +B.tQ=new A.a([105,B.eF],t.V) +B.CU=new A.a([116,B.tQ],t.i) +B.IS=new A.a([110,B.CU],t.J) +B.li=new A.a([101,B.IS],t.O) +B.IY=new A.a([110,B.li],t.l) +B.DX=new A.a([101,B.AH,111,B.IY],t.l) +B.uM=new A.a([99,B.x,105,B.ax,112,B.DX],t.e) +B.uB=new A.a([68,B.qD,97,B.DC,99,B.ye,100,B.m,101,B.c,102,B.xq,103,B.n1,108,B.Fh,109,B.vW,110,B.pQ,111,B.av,112,B.jr,113,B.n0,114,B.vY,115,B.mD,116,B.DL,117,B.vO,120,B.uM],t.r) +B.jx=new A.a([111,B.fv],t.i) +B.Ku=new A.a([100,B.jx],t.J) +B.G1=new A.a([103,B.Ku],t.O) +B.Jx=new A.a([110,B.G1],t.l) +B.em=new A.a([105,B.Jx],t.x) +B.Br=new A.a([108,B.em],t.Y) +B.AU=new A.a([108,B.Br],t.k) +B.JX=new A.a([109,B.eF],t.V) +B.xX=new A.a([105,B.R,108,B.c3],t.e) +B.jt=new A.a([105,B.a1,108,B.xX,114,B.c],t.r) +B.hj=new A.a([110,B.B],t.e) +B.DN=new A.a([97,B.t,108,B.c3,116,B.hj],t.e) +B.dd=new A.a([111,B.y],t.e) +B.DY=new A.a([97,B.cn,107,B.a7],t.r) +B.Hv=new A.a([112,B.y,114,B.DY],t.e) +B.fu=new A.a([116,B.c2],t.V) +B.oa=new A.a([114,B.fu],t.i) +B.wr=new A.a([97,B.oa],t.J) +B.qT=new A.a([50,B.c,51,B.c,52,B.c,53,B.c,54,B.c,56,B.c],t.r) +B.Er=new A.a([51,B.c,53,B.c],t.r) +B.xv=new A.a([52,B.c,53,B.c,56,B.c],t.r) +B.Ec=new A.a([53,B.c],t.r) +B.pF=new A.a([54,B.c,56,B.c],t.r) +B.pR=new A.a([56,B.c],t.r) +B.KP=new A.a([49,B.qT,50,B.Er,51,B.xv,52,B.Ec,53,B.pF,55,B.pR],t.e) +B.Dz=new A.a([99,B.KP,115,B.x],t.e) +B.py=new A.a([97,B.Dz,111,B.cq],t.t) +B.yk=new A.a([97,B.AU,99,B.D,101,B.JX,102,B.jt,105,B.a1,106,B.a1,108,B.DN,110,B.dd,111,B.Hv,112,B.wr,114,B.py,115,B.r],t.e) +B.uE=new A.a([99,B.S,109,B.hl,112,B.c],t.r) +B.wf=new A.a([97,B.U],t.t) +B.AT=new A.a([108,B.wf],t.V) +B.bs=new A.a([59,B.d,113,B.c,115,B.AT],t.j) +B.qX=new A.a([59,B.d,111,B.b6],t.j) +B.CE=new A.a([116,B.qX],t.r) +B.jO=new A.a([111,B.CE],t.e) +B.eO=new A.a([59,B.d,101,B.B],t.j) +B.xu=new A.a([59,B.d,99,B.ad,100,B.jO,108,B.eO],t.j) +B.kK=new A.a([59,B.d,108,B.c,113,B.bs,115,B.xu],t.j) +B.dD=new A.a([59,B.d,103,B.c],t.j) +B.bU=new A.a([101,B.x],t.e) +B.K2=new A.a([109,B.bU],t.t) +B.F5=new A.a([59,B.d,69,B.c,97,B.c,106,B.c],t.j) +B.bX=new A.a([114,B.d4],t.t) +B.tf=new A.a([59,B.d,112,B.bX],t.j) +B.vi=new A.a([112,B.tf],t.r) +B.vU=new A.a([59,B.d,113,B.at],t.j) +B.H=new A.a([105,B.V],t.e) +B.eN=new A.a([69,B.c,97,B.vi,101,B.vU,115,B.H],t.r) +B.pX=new A.a([59,B.d,101,B.c,108,B.c],t.j) +B.JL=new A.a([109,B.pX],t.r) +B.Eo=new A.a([99,B.e,105,B.JL],t.e) +B.fK=new A.a([99,B.c,105,B.e],t.r) +B.v7=new A.a([80,B.o],t.t) +B.mk=new A.a([101,B.ax],t.t) +B.cv=new A.a([117,B.mk],t.V) +B.eA=new A.a([112,B.bX],t.V) +B.Hy=new A.a([112,B.eA,114,B.e],t.e) +B.BA=new A.a([108,B.Z],t.V) +B.xw=new A.a([108,B.Z,113,B.BA],t.V) +B.A4=new A.a([113,B.xw],t.i) +B.K8=new A.a([97,B.Hy,100,B.m,101,B.A4,108,B.Z,115,B.H],t.t) +B.tt=new A.a([59,B.d,99,B.fK,100,B.m,108,B.v7,113,B.cv,114,B.K8],t.j) +B.f8=new A.a([113,B.ay],t.e) +B.la=new A.a([101,B.f8],t.t) +B.J9=new A.a([110,B.la],t.V) +B.Cy=new A.a([116,B.J9],t.i) +B.oF=new A.a([114,B.Cy],t.J) +B.e6=new A.a([101,B.oF,110,B.cf],t.e) +B.K7=new A.a([69,B.b6,97,B.uE,98,B.aH,99,B.a_,100,B.m,101,B.kK,102,B.e,103,B.dD,105,B.K2,106,B.p,108,B.F5,110,B.eN,111,B.A,114,B.be,115,B.Eo,116,B.tt,118,B.e6],t.r) +B.cc=new A.a([115,B.w],t.e) +B.nq=new A.a([114,B.cc],t.t) +B.fh=new A.a([108,B.t],t.e) +B.u_=new A.a([105,B.fh],t.t) +B.KG=new A.a([59,B.d,99,B.ar,119,B.c],t.j) +B.yt=new A.a([100,B.p,114,B.KG],t.r) +B.pn=new A.a([105,B.nq,108,B.y,109,B.u_,114,B.yt],t.e) +B.CB=new A.a([116,B.cb],t.e) +B.ob=new A.a([114,B.CB],t.t) +B.uj=new A.a([105,B.w],t.e) +B.fo=new A.a([108,B.uj],t.t) +B.Ag=new A.a([99,B.O],t.t) +B.zI=new A.a([97,B.ob,108,B.fo,114,B.Ag],t.V) +B.yd=new A.a([101,B.aM,119,B.aM],t.i) +B.z8=new A.a([115,B.yd],t.J) +B.Cz=new A.a([116,B.c_],t.t) +B.mc=new A.a([101,B.f4],t.l) +B.dm=new A.a([108,B.mc,114,B.ah],t.x) +B.Ih=new A.a([107,B.dm],t.Y) +B.A7=new A.a([97,B.q,109,B.Cz,111,B.Ih,112,B.y,114,B.ct],t.e) +B.E9=new A.a([99,B.e,108,B.I,116,B.aq],t.e) +B.HM=new A.a([117,B.cn],t.t) +B.rI=new A.a([104,B.bV],t.t) +B.KL=new A.a([98,B.HM,112,B.rI],t.V) +B.Fj=new A.a([65,B.q,97,B.pn,98,B.o,99,B.aJ,101,B.zI,102,B.e,107,B.z8,111,B.A7,115,B.E9,121,B.KL],t.e) +B.v5=new A.a([59,B.d,105,B.P,121,B.c],t.j) +B.Ap=new A.a([99,B.x],t.e) +B.mQ=new A.a([99,B.D,120,B.Ap],t.e) +B.Aa=new A.a([102,B.c,114,B.c],t.r) +B.zW=new A.a([105,B.U,110,B.t],t.e) +B.f6=new A.a([102,B.ei],t.t) +B.qx=new A.a([59,B.d,105,B.zW,110,B.f6,111,B.co],t.j) +B.dT=new A.a([114,B.t],t.e) +B.eK=new A.a([97,B.dT],t.t) +B.mY=new A.a([101,B.c,108,B.ba,112,B.eK],t.r) +B.Iw=new A.a([99,B.e,103,B.mY,116,B.ag],t.e) +B.mO=new A.a([97,B.Iw,111,B.y,112,B.b5],t.e) +B.pg=new A.a([59,B.d,116,B.bb],t.j) +B.J3=new A.a([110,B.pg],t.r) +B.tN=new A.a([105,B.J3],t.e) +B.Ao=new A.a([99,B.bf],t.t) +B.Eh=new A.a([103,B.dp,114,B.Ao],t.V) +B.rU=new A.a([104,B.T],t.e) +B.nP=new A.a([114,B.rU],t.t) +B.we=new A.a([97,B.nP],t.V) +B.dV=new A.a([114,B.bK],t.t) +B.Iy=new A.a([59,B.d,99,B.bf,101,B.Eh,108,B.we,112,B.dV],t.j) +B.Ds=new A.a([59,B.d,99,B.eH,102,B.tN,111,B.aR,116,B.Iy],t.j) +B.F8=new A.a([99,B.D,103,B.O,112,B.y,116,B.C],t.e) +B.rd=new A.a([59,B.d,69,B.c,100,B.m,115,B.a7,118,B.c],t.j) +B.Jw=new A.a([110,B.rd],t.r) +B.En=new A.a([99,B.e,105,B.Jw],t.e) +B.yp=new A.a([59,B.d,105,B.bk],t.j) +B.yv=new A.a([97,B.K,99,B.v5,101,B.mQ,102,B.Aa,103,B.a5,105,B.qx,106,B.a1,109,B.mO,110,B.Ds,111,B.F8,112,B.dV,113,B.cv,115,B.En,116,B.yp,117,B.e1],t.r) +B.eB=new A.a([97,B.fz],t.t) +B.BQ=new A.a([99,B.a_,102,B.e,109,B.eB,111,B.A,115,B.fI,117,B.hd],t.e) +B.wl=new A.a([97,B.a7],t.r) +B.vu=new A.a([112,B.wl],t.e) +B.vo=new A.a([112,B.vu],t.t) +B.nz=new A.a([114,B.dr],t.V) +B.JH=new A.a([97,B.vo,99,B.di,102,B.e,103,B.nz,104,B.p,106,B.p,111,B.A,115,B.r],t.e) +B.eI=new A.a([97,B.ac],t.t) +B.dY=new A.a([97,B.q,114,B.e,116,B.eI],t.e) +B.hm=new A.a([109,B.bc],t.i) +B.wN=new A.a([97,B.N],t.e) +B.nj=new A.a([114,B.wN],t.t) +B.n_=new A.a([59,B.d,100,B.c,108,B.z],t.j) +B.FS=new A.a([103,B.n_],t.r) +B.dk=new A.a([59,B.d,102,B.B],t.j) +B.vH=new A.a([59,B.d,98,B.dk,102,B.B,104,B.T,108,B.w,112,B.x,115,B.H,116,B.x],t.j) +B.nM=new A.a([114,B.vH],t.r) +B.a9=new A.a([59,B.d,115,B.c],t.j) +B.po=new A.a([59,B.d,97,B.ac,101,B.a9],t.j) +B.kP=new A.a([99,B.S,101,B.hm,103,B.nj,109,B.h1,110,B.FS,112,B.c,113,B.cu,114,B.nM,116,B.po],t.r) +B.rb=new A.a([101,B.c,107,B.c],t.r) +B.Aw=new A.a([99,B.rb],t.e) +B.uY=new A.a([100,B.c,117,B.c],t.r) +B.BD=new A.a([108,B.uY],t.e) +B.Dg=new A.a([101,B.c,115,B.BD],t.r) +B.DZ=new A.a([97,B.Aw,107,B.Dg],t.e) +B.fc=new A.a([97,B.q,98,B.aa,114,B.DZ],t.t) +B.EJ=new A.a([100,B.ac,105,B.x],t.e) +B.dF=new A.a([97,B.a6,101,B.EJ,117,B.bt,121,B.c],t.r) +B.dg=new A.a([111,B.bq],t.r) +B.hc=new A.a([117,B.dg],t.e) +B.aI=new A.a([104,B.o],t.t) +B.eU=new A.a([115,B.aI],t.V) +B.uX=new A.a([100,B.aI,117,B.eU],t.V) +B.ts=new A.a([99,B.C,113,B.hc,114,B.uX,115,B.ag],t.e) +B.pf=new A.a([59,B.d,116,B.eI],t.j) +B.ER=new A.a([119,B.pf],t.r) +B.jE=new A.a([111,B.ER],t.e) +B.p_=new A.a([114,B.jE],t.t) +B.dK=new A.a([114,B.p_],t.V) +B.Ji=new A.a([110,B.es],t.t) +B.jS=new A.a([111,B.Ji],t.V) +B.jL=new A.a([111,B.jS],t.i) +B.vv=new A.a([112,B.jL],t.J) +B.og=new A.a([114,B.vv],t.O) +B.eE=new A.a([97,B.og],t.l) +B.fG=new A.a([116,B.c8],t.O) +B.zK=new A.a([102,B.fG],t.l) +B.m6=new A.a([101,B.zK],t.x) +B.F1=new A.a([119,B.a9],t.r) +B.kb=new A.a([111,B.F1],t.e) +B.nm=new A.a([114,B.kb],t.t) +B.nK=new A.a([114,B.nm],t.V) +B.d5=new A.a([111,B.hj],t.t) +B.jW=new A.a([111,B.d5],t.V) +B.vl=new A.a([112,B.jW],t.i) +B.nO=new A.a([114,B.vl],t.J) +B.eJ=new A.a([97,B.nO],t.O) +B.Ge=new A.a([103,B.c7],t.J) +B.tZ=new A.a([105,B.Ge],t.O) +B.I1=new A.a([117,B.tZ],t.l) +B.f7=new A.a([113,B.I1],t.x) +B.ju=new A.a([97,B.nK,104,B.eJ,115,B.f7],t.i) +B.CA=new A.a([116,B.ju],t.J) +B.rA=new A.a([104,B.CA],t.O) +B.FJ=new A.a([103,B.rA],t.l) +B.tX=new A.a([105,B.FJ],t.x) +B.m3=new A.a([101,B.fE],t.J) +B.kV=new A.a([101,B.m3],t.O) +B.nE=new A.a([114,B.kV],t.l) +B.eb=new A.a([104,B.nE],t.x) +B.DO=new A.a([97,B.dK,104,B.eE,108,B.m6,114,B.tX,116,B.eb],t.i) +B.Cv=new A.a([116,B.DO],t.J) +B.qZ=new A.a([59,B.d,111,B.bq],t.j) +B.C7=new A.a([116,B.qZ],t.r) +B.jv=new A.a([111,B.C7],t.e) +B.bd=new A.a([112,B.eA],t.i) +B.FW=new A.a([103,B.bp],t.t) +B.nf=new A.a([103,B.bp,113,B.FW],t.t) +B.A0=new A.a([113,B.nf],t.V) +B.tb=new A.a([97,B.bd,100,B.m,101,B.A0,103,B.bp,115,B.H],t.t) +B.Fs=new A.a([59,B.d,99,B.ad,100,B.jv,103,B.eO,115,B.tb],t.j) +B.xk=new A.a([59,B.d,102,B.Cv,103,B.c,113,B.bs,115,B.Fs],t.j) +B.d3=new A.a([105,B.eT,108,B.db,114,B.c],t.r) +B.c4=new A.a([59,B.d,69,B.c],t.j) +B.uV=new A.a([100,B.c,117,B.b6],t.r) +B.dX=new A.a([114,B.uV],t.e) +B.fj=new A.a([108,B.T],t.e) +B.kt=new A.a([97,B.dX,98,B.fj],t.t) +B.IF=new A.a([110,B.b1],t.t) +B.nI=new A.a([114,B.IF],t.V) +B.d6=new A.a([111,B.nI],t.i) +B.oU=new A.a([114,B.a2],t.e) +B.wi=new A.a([97,B.oU],t.t) +B.ap=new A.a([114,B.ab],t.e) +B.Gs=new A.a([59,B.d,97,B.q,99,B.d6,104,B.wi,116,B.ap],t.j) +B.rG=new A.a([104,B.z],t.e) +B.At=new A.a([99,B.rG],t.t) +B.t6=new A.a([59,B.d,97,B.At],t.j) +B.CN=new A.a([116,B.t6],t.r) +B.z0=new A.a([115,B.CN],t.e) +B.h5=new A.a([117,B.z0],t.t) +B.yg=new A.a([105,B.aR,111,B.h5],t.V) +B.f1=new A.a([110,B.R,114,B.e],t.e) +B.fw=new A.a([116,B.a4],t.e) +B.yY=new A.a([115,B.fw],t.t) +B.vh=new A.a([112,B.yY],t.V) +B.wk=new A.a([97,B.vh],t.i) +B.El=new A.a([108,B.dy,109,B.wk,114,B.ah],t.J) +B.FH=new A.a([103,B.El],t.O) +B.vs=new A.a([112,B.eM],t.Y) +B.e4=new A.a([97,B.e,102,B.c,108,B.ae],t.r) +B.ku=new A.a([97,B.ax,98,B.o],t.t) +B.tp=new A.a([59,B.d,101,B.hi,102,B.c],t.j) +B.Gw=new A.a([97,B.f1,98,B.aa,110,B.FH,111,B.vs,112,B.e4,116,B.aj,119,B.ku,122,B.tp],t.r) +B.n9=new A.a([59,B.d,108,B.t],t.j) +B.nn=new A.a([114,B.n9],t.r) +B.wS=new A.a([97,B.nn],t.e) +B.oV=new A.a([114,B.br],t.r) +B.wY=new A.a([97,B.oV],t.e) +B.EN=new A.a([97,B.q,99,B.d6,104,B.wY,109,B.c,116,B.ap],t.r) +B.rg=new A.a([59,B.d,101,B.c,103,B.c],t.j) +B.JW=new A.a([109,B.rg],t.r) +B.fP=new A.a([98,B.c,117,B.dg],t.r) +B.GB=new A.a([97,B.bh,99,B.e,104,B.c,105,B.JW,113,B.fP,116,B.aq],t.r) +B.dL=new A.a([114,B.a8],t.t) +B.to=new A.a([59,B.d,101,B.c,102,B.c],t.j) +B.C_=new A.a([80,B.o,105,B.to],t.r) +B.ng=new A.a([59,B.d,99,B.fK,100,B.m,104,B.dL,105,B.cy,108,B.M,113,B.cv,114,B.C_],t.j) +B.uW=new A.a([100,B.eU,117,B.aI],t.V) +B.oW=new A.a([114,B.uW],t.i) +B.rh=new A.a([65,B.dY,66,B.M,69,B.dD,72,B.o,97,B.kP,98,B.fc,99,B.dF,100,B.ts,101,B.xk,102,B.d3,103,B.c4,104,B.kt,106,B.p,108,B.Gs,109,B.yg,110,B.eN,111,B.Gw,112,B.wS,114,B.EN,115,B.GB,116,B.ng,117,B.oW,118,B.e6],t.r) +B.xE=new A.a([59,B.d,101,B.eV],t.j) +B.w4=new A.a([101,B.c,116,B.xE],t.r) +B.n4=new A.a([59,B.d,100,B.b_,108,B.bT,117,B.w],t.j) +B.kn=new A.a([111,B.n4],t.r) +B.Cm=new A.a([116,B.kn],t.e) +B.mS=new A.a([59,B.d,115,B.Cm],t.j) +B.Ii=new A.a([107,B.b1],t.t) +B.uI=new A.a([99,B.e,108,B.w4,112,B.mS,114,B.Ii],t.r) +B.n3=new A.a([111,B.cx,121,B.c],t.r) +B.Kj=new A.a([100,B.c6],t.J) +B.l7=new A.a([101,B.Kj],t.O) +B.oe=new A.a([114,B.l7],t.l) +B.HW=new A.a([117,B.oe],t.x) +B.zb=new A.a([115,B.HW],t.Y) +B.wL=new A.a([97,B.zb],t.k) +B.dH=new A.a([114,B.a4],t.e) +B.pb=new A.a([59,B.d,97,B.ax,99,B.ar,100,B.m],t.j) +B.r4=new A.a([59,B.d,117,B.c],t.j) +B.nd=new A.a([59,B.d,98,B.c,100,B.r4],t.j) +B.zg=new A.a([115,B.nd],t.r) +B.I0=new A.a([117,B.zg],t.e) +B.Du=new A.a([99,B.dH,100,B.pb,110,B.I0],t.r) +B.w1=new A.a([99,B.w,100,B.e],t.e) +B.lO=new A.a([101,B.cm],t.t) +B.vQ=new A.a([100,B.lO,112,B.y],t.e) +B.k_=new A.a([111,B.B],t.e) +B.vz=new A.a([112,B.k_],t.t) +B.xt=new A.a([99,B.e,116,B.vz],t.e) +B.K0=new A.a([109,B.au],t.t) +B.tJ=new A.a([105,B.K0],t.V) +B.D_=new A.a([116,B.tJ],t.i) +B.n6=new A.a([59,B.d,108,B.D_,109,B.au],t.j) +B.pq=new A.a([68,B.ca,97,B.uI,99,B.n3,100,B.I,101,B.wL,102,B.e,104,B.a4,105,B.Du,108,B.w1,110,B.ev,111,B.vQ,112,B.c,115,B.xt,117,B.n6],t.r) +B.Gr=new A.a([103,B.c,116,B.a7],t.r) +B.KC=new A.a([101,B.f3,108,B.c,116,B.a7],t.r) +B.uN=new A.a([68,B.I,100,B.I],t.V) +B.uJ=new A.a([59,B.d,69,B.c,105,B.a2,111,B.B,112,B.bX],t.j) +B.AR=new A.a([108,B.a9],t.r) +B.t5=new A.a([59,B.d,97,B.AR],t.j) +B.nX=new A.a([114,B.t5],t.r) +B.HQ=new A.a([117,B.nX],t.e) +B.ID=new A.a([98,B.ff,99,B.S,110,B.R,112,B.uJ,116,B.HQ],t.r) +B.vA=new A.a([112,B.al],t.r) +B.JR=new A.a([109,B.vA],t.e) +B.IB=new A.a([115,B.w,117,B.JR],t.e) +B.h3=new A.a([112,B.c,114,B.O],t.r) +B.FX=new A.a([103,B.am],t.r) +B.Jh=new A.a([110,B.FX],t.e) +B.jp=new A.a([97,B.h3,101,B.ao,111,B.Jh,117,B.w,121,B.c],t.r) +B.qV=new A.a([59,B.d,111,B.fN],t.j) +B.FD=new A.a([104,B.T,114,B.qV],t.r) +B.b8=new A.a([114,B.FD],t.e) +B.Fd=new A.a([101,B.o,105,B.V],t.e) +B.CK=new A.a([116,B.a9],t.r) +B.z9=new A.a([115,B.CK],t.e) +B.tU=new A.a([105,B.z9],t.t) +B.C3=new A.a([59,B.d,65,B.q,97,B.b8,100,B.m,113,B.ha,115,B.Fd,120,B.tU],t.j) +B.Gu=new A.a([59,B.d,113,B.bs,115,B.c],t.j) +B.Gp=new A.a([69,B.c,101,B.Gu,115,B.H,116,B.bq],t.r) +B.Dd=new A.a([65,B.q,97,B.q,112,B.o],t.t) +B.qP=new A.a([59,B.d,115,B.br,118,B.c],t.j) +B.KS=new A.a([59,B.d,102,B.fF,113,B.bs,115,B.a9],t.j) +B.ef=new A.a([105,B.al],t.r) +B.EL=new A.a([59,B.d,114,B.ef],t.j) +B.zE=new A.a([65,B.q,69,B.c,97,B.q,100,B.e,101,B.KS,115,B.H,116,B.EL],t.r) +B.e5=new A.a([97,B.c,98,B.c,99,B.c],t.r) +B.kA=new A.a([59,B.d,69,B.c,100,B.m,118,B.e5],t.j) +B.Jf=new A.a([110,B.kA],t.r) +B.C6=new A.a([59,B.d,118,B.e5],t.j) +B.ub=new A.a([105,B.C6],t.r) +B.EG=new A.a([59,B.d,105,B.Jf,110,B.ub],t.j) +B.pU=new A.a([112,B.y,116,B.EG],t.r) +B.fr=new A.a([108,B.bU],t.t) +B.fn=new A.a([108,B.fr],t.V) +B.pN=new A.a([59,B.d,97,B.fn,115,B.x,116,B.c],t.j) +B.oY=new A.a([114,B.pN],t.r) +B.fe=new A.a([108,B.c2],t.V) +B.bv=new A.a([117,B.z],t.e) +B.Ex=new A.a([59,B.d,99,B.aw],t.j) +B.E5=new A.a([59,B.d,99,B.bv,101,B.Ex],t.j) +B.Fb=new A.a([97,B.oY,111,B.fe,114,B.E5],t.r) +B.KH=new A.a([59,B.d,99,B.c,119,B.c],t.j) +B.p2=new A.a([114,B.KH],t.r) +B.oR=new A.a([114,B.p2],t.e) +B.of=new A.a([114,B.ef],t.e) +B.n7=new A.a([65,B.q,97,B.oR,105,B.fR,116,B.of],t.t) +B.Gx=new A.a([59,B.d,99,B.bv,101,B.c,114,B.c],t.j) +B.xh=new A.a([97,B.fn],t.i) +B.nr=new A.a([114,B.xh],t.J) +B.x0=new A.a([97,B.nr],t.O) +B.Ez=new A.a([109,B.aK,112,B.x0],t.t) +B.Ce=new A.a([116,B.Ez],t.V) +B.dU=new A.a([114,B.Ce],t.i) +B.kq=new A.a([111,B.dU],t.J) +B.JM=new A.a([109,B.eP],t.r) +B.KM=new A.a([98,B.z,112,B.z],t.e) +B.HJ=new A.a([117,B.KM],t.t) +B.z2=new A.a([115,B.HJ],t.V) +B.ci=new A.a([113,B.at],t.r) +B.xF=new A.a([59,B.d,101,B.ci],t.j) +B.D6=new A.a([116,B.xF],t.r) +B.kU=new A.a([101,B.D6],t.e) +B.h0=new A.a([59,B.d,69,B.c,101,B.c,115,B.kU],t.j) +B.AB=new A.a([99,B.aw],t.r) +B.uZ=new A.a([98,B.h0,99,B.AB,112,B.h0],t.r) +B.q3=new A.a([99,B.Gx,104,B.kq,105,B.JM,109,B.aK,112,B.o,113,B.z2,117,B.uZ],t.r) +B.bm=new A.a([116,B.aw],t.r) +B.zR=new A.a([102,B.bm],t.e) +B.dq=new A.a([101,B.zR],t.t) +B.rD=new A.a([104,B.bm],t.e) +B.FG=new A.a([103,B.rD],t.t) +B.el=new A.a([105,B.FG],t.V) +B.kH=new A.a([108,B.dq,114,B.el],t.V) +B.mb=new A.a([101,B.kH],t.i) +B.BB=new A.a([108,B.mb],t.J) +B.FU=new A.a([103,B.BB],t.O) +B.Jn=new A.a([110,B.FU],t.l) +B.x_=new A.a([97,B.Jn],t.x) +B.tB=new A.a([105,B.x_],t.Y) +B.Dy=new A.a([103,B.x,105,B.bk,108,B.R,114,B.tB],t.e) +B.Ka=new A.a([59,B.d,101,B.dH,115,B.w],t.j) +B.Ed=new A.a([59,B.d,109,B.Ka],t.j) +B.w6=new A.a([101,B.c,116,B.c],t.r) +B.JA=new A.a([110,B.f6],t.V) +B.EM=new A.a([59,B.d,114,B.bb],t.j) +B.Dr=new A.a([65,B.q,101,B.c,116,B.EM],t.r) +B.nW=new A.a([114,B.bb],t.t) +B.kv=new A.a([65,B.q,116,B.nW],t.t) +B.qM=new A.a([68,B.I,72,B.M,97,B.w,100,B.I,103,B.w6,105,B.JA,108,B.Dr,114,B.kv,115,B.H],t.e) +B.lF=new A.a([101,B.o],t.t) +B.rr=new A.a([65,B.q,97,B.b8,110,B.lF],t.t) +B.re=new A.a([71,B.Gr,76,B.KC,82,B.ah,86,B.uN,97,B.ID,98,B.IB,99,B.jp,100,B.I,101,B.C3,102,B.e,103,B.Gp,104,B.Dd,105,B.qP,106,B.p,108,B.zE,109,B.aK,111,B.pU,112,B.Fb,114,B.n7,115,B.q3,116,B.Dy,117,B.Ed,118,B.qM,119,B.rr],t.r) +B.DA=new A.a([99,B.S,115,B.t],t.e) +B.yD=new A.a([105,B.dR,121,B.c],t.r) +B.B3=new A.a([108,B.a2],t.e) +B.kg=new A.a([111,B.B3],t.t) +B.Fl=new A.a([97,B.eZ,98,B.ck,105,B.aD,111,B.t,115,B.kg],t.e) +B.Hu=new A.a([99,B.ar,114,B.c],t.r) +B.uv=new A.a([111,B.N,114,B.be,116,B.c],t.r) +B.Fr=new A.a([98,B.o,109,B.c],t.r) +B.pr=new A.a([105,B.e,114,B.dh],t.e) +B.Fy=new A.a([97,B.q,99,B.pr,105,B.aP,116,B.c],t.r) +B.Dv=new A.a([99,B.a6,100,B.c,110,B.ae],t.r) +B.tk=new A.a([97,B.r,101,B.fS,105,B.Dv],t.e) +B.bY=new A.a([114,B.w],t.e) +B.qH=new A.a([97,B.e,101,B.bY,108,B.ae],t.e) +B.qW=new A.a([59,B.d,111,B.y],t.j) +B.os=new A.a([114,B.qW],t.r) +B.xj=new A.a([59,B.d,101,B.os,102,B.c,109,B.c],t.j) +B.G0=new A.a([103,B.dd],t.t) +B.DM=new A.a([59,B.d,97,B.q,100,B.xj,105,B.G0,111,B.e,115,B.fi,118,B.c],t.j) +B.q0=new A.a([99,B.e,108,B.I,111,B.x],t.e) +B.t3=new A.a([59,B.d,97,B.B],t.j) +B.z3=new A.a([115,B.t3],t.r) +B.ln=new A.a([101,B.z3],t.e) +B.xO=new A.a([108,B.aQ,109,B.ln],t.t) +B.tA=new A.a([105,B.xO],t.V) +B.Ky=new A.a([83,B.c,97,B.DA,99,B.yD,100,B.Fl,101,B.a1,102,B.Hu,103,B.uv,104,B.Fr,105,B.U,108,B.Fy,109,B.tk,111,B.A,112,B.qH,114,B.DM,115,B.q0,116,B.tA,117,B.an,118,B.ct],t.r) +B.na=new A.a([59,B.d,108,B.fr],t.j) +B.xW=new A.a([105,B.V,108,B.c],t.r) +B.pM=new A.a([59,B.d,97,B.na,115,B.xW,116,B.c],t.j) +B.ni=new A.a([114,B.pM],t.r) +B.IP=new A.a([110,B.T],t.e) +B.lV=new A.a([101,B.IP],t.t) +B.t9=new A.a([99,B.U,105,B.bK,109,B.ac,112,B.c,116,B.lV],t.r) +B.oE=new A.a([114,B.t9],t.e) +B.JU=new A.a([109,B.eG],t.t) +B.Iz=new A.a([105,B.a7,109,B.JU,111,B.aP],t.r) +B.kh=new A.a([111,B.aa],t.t) +B.zT=new A.a([102,B.kh],t.V) +B.rV=new A.a([104,B.zT],t.i) +B.Ar=new A.a([99,B.rV],t.J) +B.F9=new A.a([59,B.d,116,B.Ar,118,B.c],t.j) +B.Kz=new A.a([59,B.d,104,B.c],t.j) +B.Io=new A.a([107,B.Kz],t.r) +B.tq=new A.a([99,B.Io,107,B.aD],t.e) +B.Jd=new A.a([110,B.tq],t.t) +B.Dj=new A.a([111,B.c,117,B.c],t.r) +B.F0=new A.a([119,B.a4],t.e) +B.Eu=new A.a([59,B.d,97,B.bj,98,B.c,99,B.ar,100,B.Dj,101,B.c,109,B.N,115,B.H,116,B.F0],t.j) +B.z4=new A.a([115,B.Eu],t.r) +B.pJ=new A.a([97,B.Jd,117,B.z4],t.e) +B.IT=new A.a([110,B.fu],t.i) +B.yu=new A.a([105,B.IT,112,B.y,117,B.bx],t.e) +B.zr=new A.a([121,B.bS],t.t) +B.Bp=new A.a([108,B.zr],t.V) +B.oX=new A.a([114,B.Bp],t.i) +B.HF=new A.a([117,B.oX],t.J) +B.Fu=new A.a([97,B.bd,101,B.f8,115,B.H],t.t) +B.et=new A.a([59,B.d,97,B.bd,99,B.HF,101,B.ay,110,B.Fu,115,B.H],t.j) +B.Ew=new A.a([59,B.d,99,B.et],t.j) +B.l2=new A.a([101,B.a9],t.r) +B.K1=new A.a([109,B.l2],t.e) +B.e8=new A.a([69,B.c,97,B.w,115,B.H],t.r) +B.Ia=new A.a([117,B.bW],t.t) +B.js=new A.a([97,B.fq,108,B.ba,115,B.Ia],t.V) +B.pl=new A.a([59,B.d,116,B.a4],t.j) +B.Dx=new A.a([100,B.c,102,B.js,112,B.pl],t.r) +B.o3=new A.a([114,B.bU],t.t) +B.kO=new A.a([59,B.d,69,B.c,97,B.w,99,B.bv,101,B.Ew,105,B.K1,110,B.e8,111,B.Dx,115,B.H,117,B.o3],t.j) +B.AD=new A.a([99,B.cc],t.t) +B.Jg=new A.a([110,B.AD],t.V) +B.DT=new A.a([97,B.ni,99,B.D,101,B.oE,102,B.e,104,B.Iz,105,B.F9,108,B.pJ,109,B.c,111,B.yu,114,B.kO,115,B.fL,117,B.Jg],t.r) +B.ut=new A.a([105,B.d5],t.V) +B.J8=new A.a([110,B.ut],t.i) +B.oB=new A.a([114,B.J8],t.J) +B.Fe=new A.a([101,B.oB,105,B.U],t.t) +B.C9=new A.a([116,B.Fe],t.V) +B.yK=new A.a([115,B.bm],t.e) +B.r8=new A.a([97,B.C9,101,B.yK,111,B.t],t.e) +B.vS=new A.a([102,B.e,105,B.U,111,B.A,112,B.b7,115,B.r,117,B.r8],t.e) +B.zj=new A.a([101,B.c,117,B.aO],t.r) +B.u6=new A.a([105,B.ad],t.e) +B.ro=new A.a([59,B.d,100,B.c,101,B.c,108,B.z],t.j) +B.Gb=new A.a([103,B.ro],t.r) +B.yB=new A.a([59,B.d,97,B.w,98,B.dk,99,B.c,102,B.B,104,B.T,108,B.w,112,B.x,115,B.H,116,B.x,119,B.c],t.j) +B.nV=new A.a([114,B.yB],t.r) +B.xf=new A.a([97,B.cm],t.t) +B.Gq=new A.a([59,B.d,110,B.xf],t.j) +B.k4=new A.a([111,B.Gq],t.r) +B.ps=new A.a([97,B.ac,105,B.k4],t.e) +B.t8=new A.a([99,B.zj,100,B.u6,101,B.hm,110,B.Gb,113,B.cu,114,B.nV,116,B.ps],t.e) +B.Kw=new A.a([100,B.aI],t.V) +B.qA=new A.a([99,B.C,108,B.Kw,113,B.hc,115,B.ag],t.e) +B.vL=new A.a([59,B.d,105,B.aP,112,B.eK,115,B.c],t.j) +B.Bz=new A.a([108,B.vL],t.r) +B.DE=new A.a([97,B.Bz,99,B.t,103,B.c],t.r) +B.pz=new A.a([97,B.dX,111,B.a7],t.r) +B.DK=new A.a([97,B.dG,104,B.eJ],t.J) +B.D1=new A.a([116,B.DK],t.O) +B.zP=new A.a([102,B.D1],t.l) +B.l9=new A.a([101,B.zP],t.x) +B.rL=new A.a([104,B.fG],t.l) +B.G5=new A.a([103,B.rL],t.x) +B.tH=new A.a([105,B.G5],t.Y) +B.Ft=new A.a([97,B.dK,104,B.eE,108,B.l9,114,B.tH,115,B.f7,116,B.eb],t.i) +B.CV=new A.a([116,B.Ft],t.J) +B.rv=new A.a([104,B.CV],t.O) +B.ta=new A.a([103,B.rv,110,B.R,115,B.em],t.e) +B.w0=new A.a([97,B.q,104,B.o,109,B.c],t.r) +B.kk=new A.a([111,B.h5],t.V) +B.JT=new A.a([109,B.aK],t.t) +B.GA=new A.a([97,B.f1,98,B.aa,112,B.e4,116,B.aj],t.e) +B.mC=new A.a([59,B.d,103,B.t],t.j) +B.oi=new A.a([114,B.mC],t.r) +B.d9=new A.a([111,B.fe],t.i) +B.E3=new A.a([97,B.oi,112,B.d9],t.e) +B.ri=new A.a([97,B.bh,99,B.e,104,B.c,113,B.fP],t.r) +B.bo=new A.a([116,B.ap],t.t) +B.vK=new A.a([59,B.d,101,B.c,102,B.c,108,B.bo],t.j) +B.u5=new A.a([105,B.vK],t.r) +B.uS=new A.a([104,B.dL,105,B.cy,114,B.u5],t.e) +B.HL=new A.a([117,B.aI],t.V) +B.By=new A.a([108,B.HL],t.i) +B.Iq=new A.a([65,B.dY,66,B.M,72,B.o,97,B.t8,98,B.fc,99,B.dF,100,B.qA,101,B.DE,102,B.d3,104,B.pz,105,B.ta,108,B.w0,109,B.kk,110,B.JT,111,B.GA,112,B.E3,114,B.M,115,B.ri,116,B.uS,117,B.By,120,B.c],t.r) +B.Gf=new A.a([59,B.d,100,B.ac],t.j) +B.yb=new A.a([59,B.d,69,B.c,97,B.h3,99,B.bv,101,B.Gf,105,B.P,110,B.e8,112,B.d9,115,B.H,121,B.c],t.j) +B.BS=new A.a([59,B.d,98,B.c,101,B.c],t.j) +B.Ch=new A.a([116,B.BS],t.r) +B.jP=new A.a([111,B.Ch],t.e) +B.fO=new A.a([119,B.o],t.t) +B.zV=new A.a([105,B.hh,110,B.c],t.r) +B.JZ=new A.a([109,B.zV],t.e) +B.kz=new A.a([65,B.q,97,B.b8,99,B.t,109,B.ab,115,B.fO,116,B.JZ,120,B.t],t.e) +B.r_=new A.a([59,B.d,111,B.cq],t.j) +B.oH=new A.a([114,B.r_],t.r) +B.Do=new A.a([104,B.p,121,B.c],t.r) +B.y3=new A.a([97,B.bY,99,B.Do,111,B.dU,121,B.c],t.r) +B.Gy=new A.a([59,B.d,102,B.c,118,B.c],t.j) +B.ww=new A.a([97,B.Gy],t.r) +B.K6=new A.a([109,B.ww],t.e) +B.zk=new A.a([59,B.d,100,B.m,101,B.at,103,B.c4,108,B.c4,110,B.z,112,B.Q,114,B.M],t.j) +B.y_=new A.a([103,B.K6,109,B.zk],t.r) +B.JJ=new A.a([109,B.as],t.i) +B.CL=new A.a([116,B.JJ],t.J) +B.lA=new A.a([101,B.CL],t.O) +B.zi=new A.a([115,B.lA],t.l) +B.BL=new A.a([108,B.zi],t.x) +B.rH=new A.a([104,B.w],t.e) +B.Ic=new A.a([108,B.BL,115,B.rH],t.t) +B.BX=new A.a([100,B.c,108,B.z],t.r) +B.xB=new A.a([59,B.d,101,B.a9],t.j) +B.E6=new A.a([97,B.Ic,101,B.ez,105,B.BX,116,B.xB],t.r) +B.C8=new A.a([116,B.p],t.t) +B.ec=new A.a([59,B.d,97,B.e],t.j) +B.mZ=new A.a([59,B.d,98,B.ec],t.j) +B.t1=new A.a([102,B.C8,108,B.mZ,112,B.y],t.r) +B.lR=new A.a([101,B.cb],t.e) +B.ys=new A.a([100,B.lR,114,B.c],t.r) +B.wh=new A.a([97,B.ys],t.e) +B.eu=new A.a([112,B.a9],t.r) +B.pK=new A.a([97,B.eu,117,B.eu],t.e) +B.l6=new A.a([101,B.bm],t.e) +B.hr=new A.a([59,B.d,101,B.c,115,B.l6],t.j) +B.KK=new A.a([98,B.hr,112,B.hr],t.r) +B.I8=new A.a([117,B.KK],t.e) +B.Fv=new A.a([101,B.c,102,B.c],t.r) +B.nG=new A.a([114,B.Fv],t.e) +B.pm=new A.a([59,B.d,97,B.nG,102,B.c],t.j) +B.w2=new A.a([99,B.pK,115,B.I8,117,B.pm],t.r) +B.JY=new A.a([109,B.N],t.e) +B.Cd=new A.a([116,B.JY],t.t) +B.tF=new A.a([105,B.bl],t.t) +B.xe=new A.a([97,B.bW],t.t) +B.qy=new A.a([99,B.e,101,B.Cd,109,B.tF,116,B.xe],t.e) +B.o4=new A.a([114,B.dj],t.r) +B.rM=new A.a([104,B.ab],t.e) +B.AO=new A.a([101,B.c5,112,B.rM],t.t) +B.CX=new A.a([116,B.AO],t.V) +B.rT=new A.a([104,B.CX],t.i) +B.FF=new A.a([103,B.rT],t.J) +B.ul=new A.a([105,B.FF],t.O) +B.C1=new A.a([97,B.ul,110,B.B],t.e) +B.zY=new A.a([97,B.o4,114,B.C1],t.e) +B.h9=new A.a([117,B.fh],t.t) +B.cr=new A.a([69,B.c,101,B.c],t.r) +B.dx=new A.a([101,B.ci],t.e) +B.yc=new A.a([59,B.d,101,B.ci,110,B.dx],t.j) +B.Da=new A.a([116,B.yc],t.r) +B.ht=new A.a([98,B.c,112,B.c],t.r) +B.fJ=new A.a([101,B.Da,105,B.V,117,B.ht],t.e) +B.xM=new A.a([59,B.d,69,B.c,100,B.m,101,B.am,109,B.h9,110,B.cr,112,B.Q,114,B.M,115,B.fJ],t.j) +B.Ay=new A.a([99,B.et],t.r) +B.yC=new A.a([111,B.t,115,B.h4],t.e) +B.Dh=new A.a([111,B.x,117,B.bt],t.e) +B.zc=new A.a([115,B.Dh],t.t) +B.mF=new A.a([49,B.c,50,B.c,51,B.c,59,B.d,69,B.c,100,B.yC,101,B.am,104,B.zc,108,B.M,109,B.h9,110,B.cr,112,B.Q,115,B.fJ],t.j) +B.tv=new A.a([98,B.xM,99,B.Ay,109,B.c,110,B.R,112,B.mF],t.r) +B.rs=new A.a([65,B.q,97,B.b8,110,B.fO],t.t) +B.Ek=new A.a([97,B.K,98,B.bh,99,B.yb,100,B.jP,101,B.kz,102,B.oH,104,B.y3,105,B.y_,108,B.M,109,B.E6,111,B.t1,112,B.wh,113,B.w2,114,B.M,115,B.qy,116,B.zY,117,B.tv,119,B.rs,122,B.a1],t.r) +B.FY=new A.a([103,B.aE],t.t) +B.BY=new A.a([114,B.FY,117,B.c],t.r) +B.Bg=new A.a([108,B.dN],t.V) +B.Ir=new A.a([52,B.c,102,B.d7],t.r) +B.lp=new A.a([101,B.Ir],t.e) +B.qN=new A.a([59,B.d,115,B.f0,118,B.c],t.j) +B.x9=new A.a([97,B.qN],t.r) +B.Gn=new A.a([114,B.lp,116,B.x9],t.e) +B.DG=new A.a([97,B.bd,115,B.H],t.t) +B.Ie=new A.a([107,B.DG],t.V) +B.uA=new A.a([99,B.Ie,110,B.cc],t.t) +B.DF=new A.a([97,B.w,115,B.H],t.e) +B.jq=new A.a([101,B.Gn,105,B.uA,107,B.DF,111,B.dI],t.t) +B.ne=new A.a([59,B.d,98,B.ec,100,B.c],t.j) +B.yT=new A.a([115,B.ne],t.r) +B.lj=new A.a([101,B.yT],t.e) +B.tu=new A.a([108,B.aQ,109,B.lj,110,B.t],t.e) +B.qU=new A.a([59,B.d,111,B.aa],t.j) +B.rt=new A.a([59,B.d,98,B.m,99,B.ar,102,B.qU],t.j) +B.y1=new A.a([101,B.C,112,B.rt,115,B.C],t.r) +B.yH=new A.a([59,B.d,100,B.b_,108,B.dq,113,B.c,114,B.el],t.j) +B.lN=new A.a([101,B.yH],t.r) +B.Bw=new A.a([108,B.lN],t.e) +B.FZ=new A.a([103,B.Bw],t.t) +B.JC=new A.a([110,B.FZ],t.V) +B.tl=new A.a([97,B.JC,100,B.m,101,B.c,109,B.as,112,B.Q,115,B.bt,116,B.c0],t.r) +B.p6=new A.a([122,B.ek],t.V) +B.l_=new A.a([101,B.p6],t.i) +B.Ad=new A.a([97,B.aQ,105,B.tl,112,B.l_],t.e) +B.mM=new A.a([99,B.fY,104,B.p,116,B.aq],t.e) +B.pZ=new A.a([120,B.t],t.e) +B.Kf=new A.a([100,B.dm],t.Y) +B.wO=new A.a([97,B.Kf],t.k) +B.lv=new A.a([101,B.wO],t._) +B.rO=new A.a([104,B.lv],t.Q) +B.yh=new A.a([105,B.pZ,111,B.rO],t.t) +B.uD=new A.a([97,B.BY,98,B.aa,99,B.aN,100,B.m,101,B.Bg,102,B.e,104,B.jq,105,B.tu,111,B.y1,112,B.b7,114,B.Ad,115,B.mM,119,B.yh],t.e) +B.Hr=new A.a([99,B.S,114,B.e],t.e) +B.uy=new A.a([97,B.q,98,B.ck,104,B.o],t.t) +B.ks=new A.a([97,B.bZ,98,B.fj],t.t) +B.xG=new A.a([59,B.d,101,B.e],t.j) +B.J5=new A.a([110,B.xG],t.r) +B.nl=new A.a([114,B.J5],t.e) +B.eq=new A.a([111,B.nl,114,B.bJ],t.t) +B.xr=new A.a([99,B.eq,116,B.ap],t.t) +B.Hz=new A.a([97,B.r,108,B.c],t.r) +B.zy=new A.a([59,B.d,104,B.c,108,B.O],t.j) +B.up=new A.a([105,B.zy],t.r) +B.vC=new A.a([112,B.c8],t.O) +B.yE=new A.a([97,B.G,100,B.de,104,B.eD,108,B.ae,115,B.up,117,B.vC],t.e) +B.BV=new A.a([99,B.eq,105,B.bw,116,B.ap],t.t) +B.yz=new A.a([100,B.m,105,B.bk,114,B.en],t.e) +B.KT=new A.a([97,B.q,109,B.x],t.e) +B.qJ=new A.a([65,B.q,72,B.o,97,B.Hr,98,B.dO,99,B.a_,100,B.uy,102,B.e_,103,B.a5,104,B.ks,108,B.xr,109,B.Hz,111,B.av,112,B.yE,114,B.BV,115,B.r,116,B.yz,117,B.KT,119,B.c6],t.e) +B.oJ=new A.a([114,B.a7],t.r) +B.wv=new A.a([97,B.oJ],t.e) +B.FM=new A.a([103,B.dT],t.t) +B.wd=new A.a([97,B.ew],t.V) +B.rx=new A.a([104,B.aL],t.V) +B.Cl=new A.a([116,B.rx],t.i) +B.kp=new A.a([111,B.Cl],t.J) +B.vB=new A.a([112,B.fw],t.t) +B.jJ=new A.a([111,B.vB],t.V) +B.uR=new A.a([104,B.ab,105,B.c,114,B.jJ],t.r) +B.Kx=new A.a([59,B.d,104,B.a4],t.j) +B.IN=new A.a([110,B.dx],t.t) +B.D9=new A.a([116,B.IN],t.V) +B.my=new A.a([101,B.D9],t.i) +B.f_=new A.a([115,B.my],t.J) +B.KJ=new A.a([98,B.f_,112,B.f_],t.O) +B.uG=new A.a([105,B.fW,117,B.KJ],t.V) +B.lI=new A.a([101,B.co],t.t) +B.l3=new A.a([101,B.bM],t.i) +B.AY=new A.a([108,B.l3],t.J) +B.G8=new A.a([103,B.AY],t.O) +B.JF=new A.a([110,B.G8],t.l) +B.wm=new A.a([97,B.JF],t.x) +B.uq=new A.a([105,B.wm],t.Y) +B.FE=new A.a([104,B.lI,114,B.uq],t.V) +B.Gh=new A.a([101,B.c5,107,B.wd,110,B.kp,112,B.uR,114,B.Kx,115,B.uG,116,B.FE],t.r) +B.zB=new A.a([110,B.FM,114,B.Gh],t.e) +B.BU=new A.a([59,B.d,98,B.o,101,B.ay],t.j) +B.nb=new A.a([98,B.o,116,B.c],t.r) +B.qI=new A.a([101,B.BU,108,B.fo,114,B.nb],t.r) +B.I7=new A.a([117,B.ht],t.e) +B.yS=new A.a([115,B.I7],t.t) +B.nS=new A.a([114,B.bJ],t.t) +B.hk=new A.a([110,B.cr],t.e) +B.KI=new A.a([98,B.hk,112,B.hk],t.t) +B.kC=new A.a([99,B.e,117,B.KI],t.e) +B.wU=new A.a([97,B.R],t.e) +B.p4=new A.a([122,B.wU],t.t) +B.FP=new A.a([103,B.p4],t.V) +B.u1=new A.a([105,B.FP],t.i) +B.Fm=new A.a([65,B.q,66,B.wv,68,B.I,97,B.zB,99,B.D,100,B.I,101,B.qI,102,B.e,108,B.bo,110,B.yS,111,B.A,112,B.nS,114,B.bo,115,B.kC,122,B.u1],t.e) +B.lY=new A.a([101,B.at],t.r) +B.rf=new A.a([98,B.o,103,B.lY],t.e) +B.l0=new A.a([101,B.bY],t.t) +B.EK=new A.a([100,B.rf,105,B.l0],t.t) +B.xz=new A.a([59,B.d,101,B.eB],t.j) +B.E8=new A.a([99,B.aJ,101,B.EK,102,B.e,111,B.A,112,B.c,114,B.xz,115,B.r],t.r) +B.cg=new A.a([65,B.q,97,B.q],t.t) +B.r2=new A.a([102,B.c,108,B.ae],t.r) +B.E_=new A.a([100,B.m,112,B.r2,116,B.c0],t.e) +B.yw=new A.a([99,B.e,113,B.cj],t.e) +B.pT=new A.a([112,B.Q,116,B.ap],t.t) +B.uF=new A.a([99,B.dl,100,B.bo,102,B.e,104,B.cg,105,B.c,108,B.cg,109,B.au,110,B.c1,111,B.E_,114,B.cg,115,B.yw,117,B.pT,118,B.a8,119,B.b4],t.r) +B.vI=new A.a([117,B.aO,121,B.c],t.r) +B.AF=new A.a([99,B.vI],t.e) +B.Dq=new A.a([99,B.D,109,B.x],t.e) +B.Gi=new A.a([97,B.AF,99,B.a_,101,B.N,102,B.e,105,B.p,111,B.A,115,B.r,117,B.Dq],t.e) +B.w5=new A.a([101,B.bn,116,B.C],t.e) +B.A9=new A.a([106,B.c],t.r) +B.C2=new A.a([106,B.c,110,B.A9],t.r) +B.vJ=new A.a([97,B.K,99,B.bg,100,B.m,101,B.w5,102,B.e,104,B.p,105,B.fT,111,B.A,115,B.r,119,B.C2],t.e) +B.kS=new A.a([65,B.mX,66,B.A8,67,B.rZ,68,B.C0,69,B.ym,70,B.kT,71,B.Dw,72,B.y8,73,B.KF,74,B.px,75,B.E7,76,B.Gg,77,B.Gj,78,B.uO,79,B.xi,80,B.xZ,81,B.r5,82,B.vZ,83,B.KE,84,B.uL,85,B.y4,86,B.F7,87,B.p9,88,B.rq,89,B.mP,90,B.uK,97,B.kD,98,B.pS,99,B.pL,100,B.Gt,101,B.uB,102,B.yk,103,B.K7,104,B.Fj,105,B.yv,106,B.BQ,107,B.JH,108,B.rh,109,B.pq,110,B.re,111,B.Ky,112,B.DT,113,B.vS,114,B.Iq,115,B.Ek,116,B.uD,117,B.qJ,118,B.Fm,119,B.E8,120,B.uF,121,B.Gi,122,B.vJ],t.e) +B.by=new A.ec(2,"severe") +B.hv=new A.ec(1,"warning") +B.hu=new A.ec(0,"info") +B.pd=new A.a([B.by,"error",B.hv,"warning",B.hu,"info"],t.ha) +B.dZ=new A.a([B.by,"\x1b[31m",B.hv,"\x1b[35m",B.hu,"\x1b[32m"],t.ha) +B.KY={li:0,dt:1,dd:2} +B.jd=s(["li"],t.s) +B.cX=s(["dt","dd"],t.s) +B.qF=new A.r(B.KY,[B.jd,B.cX,B.cX],A.Y("r>")) +B.ra=new A.a([0,"\ufffd",13,"\r",128,"\u20ac",129,"\x81",130,"\u201a",131,"\u0192",132,"\u201e",133,"\u2026",134,"\u2020",135,"\u2021",136,"\u02c6",137,"\u2030",138,"\u0160",139,"\u2039",140,"\u0152",141,"\x8d",142,"\u017d",143,"\x8f",144,"\x90",145,"\u2018",146,"\u2019",147,"\u201c",148,"\u201d",149,"\u2022",150,"\u2013",151,"\u2014",152,"\u02dc",153,"\u2122",154,"\u0161",155,"\u203a",156,"\u0153",157,"\x9d",158,"\u017e",159,"\u0178"],t.mj) +B.rn=new A.a([8,"\\b",9,"\\t",10,"\\n",11,"\\v",12,"\\f",13,"\\r",34,'\\"',39,"\\'",92,"\\\\"],t.mj) +B.L0={altglyph:0,altglyphdef:1,altglyphitem:2,animatecolor:3,animatemotion:4,animatetransform:5,clippath:6,feblend:7,fecolormatrix:8,fecomponenttransfer:9,fecomposite:10,feconvolvematrix:11,fediffuselighting:12,fedisplacementmap:13,fedistantlight:14,feflood:15,fefunca:16,fefuncb:17,fefuncg:18,fefuncr:19,fegaussianblur:20,feimage:21,femerge:22,femergenode:23,femorphology:24,feoffset:25,fepointlight:26,fespecularlighting:27,fespotlight:28,fetile:29,feturbulence:30,foreignobject:31,glyphref:32,lineargradient:33,radialgradient:34,textpath:35} +B.rp=new A.r(B.L0,["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","textPath"],t.o) +B.L8={"xlink:actuate":0,"xlink:arcrole":1,"xlink:href":2,"xlink:role":3,"xlink:show":4,"xlink:title":5,"xlink:type":6,"xml:base":7,"xml:lang":8,"xml:space":9,xmlns:10,"xmlns:xlink":11} +B.ib=new A.aN("xlink","actuate","http://www.w3.org/1999/xlink") +B.i5=new A.aN("xlink","arcrole","http://www.w3.org/1999/xlink") +B.i2=new A.aN("xlink","href","http://www.w3.org/1999/xlink") +B.i8=new A.aN("xlink","role","http://www.w3.org/1999/xlink") +B.i3=new A.aN("xlink","show","http://www.w3.org/1999/xlink") +B.i9=new A.aN("xlink","title","http://www.w3.org/1999/xlink") +B.ia=new A.aN("xlink","type","http://www.w3.org/1999/xlink") +B.i1=new A.aN("xml","base","http://www.w3.org/XML/1998/namespace") +B.i4=new A.aN("xml","lang","http://www.w3.org/XML/1998/namespace") +B.i0=new A.aN("xml","space","http://www.w3.org/XML/1998/namespace") +B.i6=new A.aN(null,"xmlns","http://www.w3.org/2000/xmlns/") +B.i7=new A.aN("xmlns","xlink","http://www.w3.org/2000/xmlns/") +B.vG=new A.r(B.L8,[B.ib,B.i5,B.i2,B.i8,B.i3,B.i9,B.ia,B.i1,B.i4,B.i0,B.i6,B.i7],A.Y("r")) +B.L7={"437":0,"850":1,"852":2,"855":3,"857":4,"860":5,"861":6,"862":7,"863":8,"865":9,"866":10,"869":11,ansix341968:12,ansix341986:13,arabic:14,ascii:15,asmo708:16,big5:17,big5hkscs:18,chinese:19,cp037:20,cp1026:21,cp154:22,cp367:23,cp424:24,cp437:25,cp500:26,cp775:27,cp819:28,cp850:29,cp852:30,cp855:31,cp857:32,cp860:33,cp861:34,cp862:35,cp863:36,cp864:37,cp865:38,cp866:39,cp869:40,cp936:41,cpgr:42,cpis:43,csascii:44,csbig5:45,cseuckr:46,cseucpkdfmtjapanese:47,csgb2312:48,cshproman8:49,csibm037:50,csibm1026:51,csibm424:52,csibm500:53,csibm855:54,csibm857:55,csibm860:56,csibm861:57,csibm863:58,csibm864:59,csibm865:60,csibm866:61,csibm869:62,csiso2022jp:63,csiso2022jp2:64,csiso2022kr:65,csiso58gb231280:66,csisolatin1:67,csisolatin2:68,csisolatin3:69,csisolatin4:70,csisolatin5:71,csisolatin6:72,csisolatinarabic:73,csisolatincyrillic:74,csisolatingreek:75,csisolatinhebrew:76,cskoi8r:77,csksc56011987:78,cspc775baltic:79,cspc850multilingual:80,cspc862latinhebrew:81,cspc8codepage437:82,cspcp852:83,csptcp154:84,csshiftjis:85,csunicode11utf7:86,cyrillic:87,cyrillicasian:88,ebcdiccpbe:89,ebcdiccpca:90,ebcdiccpch:91,ebcdiccphe:92,ebcdiccpnl:93,ebcdiccpus:94,ebcdiccpwt:95,ecma114:96,ecma118:97,elot928:98,eucjp:99,euckr:100,extendedunixcodepackedformatforjapanese:101,gb18030:102,gb2312:103,gb231280:104,gbk:105,greek:106,greek8:107,hebrew:108,hproman8:109,hzgb2312:110,ibm037:111,ibm1026:112,ibm367:113,ibm424:114,ibm437:115,ibm500:116,ibm775:117,ibm819:118,ibm850:119,ibm852:120,ibm855:121,ibm857:122,ibm860:123,ibm861:124,ibm862:125,ibm863:126,ibm864:127,ibm865:128,ibm866:129,ibm869:130,iso2022jp:131,iso2022jp2:132,iso2022kr:133,iso646irv1991:134,iso646us:135,iso88591:136,iso885910:137,iso8859101992:138,iso885911987:139,iso885913:140,iso885914:141,iso8859141998:142,iso885915:143,iso885916:144,iso8859162001:145,iso88592:146,iso885921987:147,iso88593:148,iso885931988:149,iso88594:150,iso885941988:151,iso88595:152,iso885951988:153,iso88596:154,iso885961987:155,iso88597:156,iso885971987:157,iso88598:158,iso885981988:159,iso88599:160,iso885991989:161,isoceltic:162,isoir100:163,isoir101:164,isoir109:165,isoir110:166,isoir126:167,isoir127:168,isoir138:169,isoir144:170,isoir148:171,isoir149:172,isoir157:173,isoir199:174,isoir226:175,isoir58:176,isoir6:177,koi8r:178,koi8u:179,korean:180,ksc5601:181,ksc56011987:182,ksc56011989:183,l1:184,l10:185,l2:186,l3:187,l4:188,l5:189,l6:190,l8:191,latin1:192,latin10:193,latin2:194,latin3:195,latin4:196,latin5:197,latin6:198,latin8:199,latin9:200,ms936:201,mskanji:202,pt154:203,ptcp154:204,r8:205,roman8:206,shiftjis:207,tis620:208,unicode11utf7:209,us:210,usascii:211,utf16:212,utf16be:213,utf16le:214,utf8:215,windows1250:216,windows1251:217,windows1252:218,windows1253:219,windows1254:220,windows1255:221,windows1256:222,windows1257:223,windows1258:224,windows936:225,"x-x-big5":226} +B.vX=new A.r(B.L7,["cp437","cp850","cp852","cp855","cp857","cp860","cp861","cp862","cp863","cp865","cp866","cp869","ascii","ascii","iso8859-6","ascii","iso8859-6","big5","big5hkscs","gbk","cp037","cp1026","ptcp154","ascii","cp424","cp437","cp500","cp775","windows-1252","cp850","cp852","cp855","cp857","cp860","cp861","cp862","cp863","cp864","cp865","cp866","cp869","gbk","cp869","cp861","ascii","big5","cp949","euc_jp","gbk","hp-roman8","cp037","cp1026","cp424","cp500","cp855","cp857","cp860","cp861","cp863","cp864","cp865","cp866","cp869","iso2022_jp","iso2022_jp_2","iso2022_kr","gbk","windows-1252","iso8859-2","iso8859-3","iso8859-4","windows-1254","iso8859-10","iso8859-6","iso8859-5","iso8859-7","iso8859-8","koi8-r","cp949","cp775","cp850","cp862","cp437","cp852","ptcp154","shift_jis","utf-7","iso8859-5","ptcp154","cp500","cp037","cp500","cp424","cp037","cp037","cp037","iso8859-6","iso8859-7","iso8859-7","euc_jp","cp949","euc_jp","gb18030","gbk","gbk","gbk","iso8859-7","iso8859-7","iso8859-8","hp-roman8","hz","cp037","cp1026","ascii","cp424","cp437","cp500","cp775","windows-1252","cp850","cp852","cp855","cp857","cp860","cp861","cp862","cp863","cp864","cp865","cp866","cp869","iso2022_jp","iso2022_jp_2","iso2022_kr","ascii","ascii","windows-1252","iso8859-10","iso8859-10","windows-1252","iso8859-13","iso8859-14","iso8859-14","iso8859-15","iso8859-16","iso8859-16","iso8859-2","iso8859-2","iso8859-3","iso8859-3","iso8859-4","iso8859-4","iso8859-5","iso8859-5","iso8859-6","iso8859-6","iso8859-7","iso8859-7","iso8859-8","iso8859-8","windows-1254","windows-1254","iso8859-14","windows-1252","iso8859-2","iso8859-3","iso8859-4","iso8859-7","iso8859-6","iso8859-8","iso8859-5","windows-1254","cp949","iso8859-10","iso8859-14","iso8859-16","gbk","ascii","koi8-r","koi8-u","cp949","cp949","cp949","cp949","windows-1252","iso8859-16","iso8859-2","iso8859-3","iso8859-4","windows-1254","iso8859-10","iso8859-14","windows-1252","iso8859-16","iso8859-2","iso8859-3","iso8859-4","windows-1254","iso8859-10","iso8859-14","iso8859-15","gbk","shift_jis","ptcp154","ptcp154","hp-roman8","hp-roman8","shift_jis","cp874","utf-7","ascii","ascii","utf-16","utf-16-be","utf-16-le","utf-8","cp1250","cp1251","cp1252","cp1253","cp1254","cp1255","cp1256","cp1257","cp1258","gbk","big5"],t.o) +B.Ac=new A.r(B.aS,[],t.o) +B.bi=new A.r(B.aS,[],A.Y("r")) +B.fa=new A.r(B.aS,[],A.Y("r")) +B.KW={AElig:0,"AElig;":1,AMP:2,"AMP;":3,Aacute:4,"Aacute;":5,"Abreve;":6,Acirc:7,"Acirc;":8,"Acy;":9,"Afr;":10,Agrave:11,"Agrave;":12,"Alpha;":13,"Amacr;":14,"And;":15,"Aogon;":16,"Aopf;":17,"ApplyFunction;":18,Aring:19,"Aring;":20,"Ascr;":21,"Assign;":22,Atilde:23,"Atilde;":24,Auml:25,"Auml;":26,"Backslash;":27,"Barv;":28,"Barwed;":29,"Bcy;":30,"Because;":31,"Bernoullis;":32,"Beta;":33,"Bfr;":34,"Bopf;":35,"Breve;":36,"Bscr;":37,"Bumpeq;":38,"CHcy;":39,COPY:40,"COPY;":41,"Cacute;":42,"Cap;":43,"CapitalDifferentialD;":44,"Cayleys;":45,"Ccaron;":46,Ccedil:47,"Ccedil;":48,"Ccirc;":49,"Cconint;":50,"Cdot;":51,"Cedilla;":52,"CenterDot;":53,"Cfr;":54,"Chi;":55,"CircleDot;":56,"CircleMinus;":57,"CirclePlus;":58,"CircleTimes;":59,"ClockwiseContourIntegral;":60,"CloseCurlyDoubleQuote;":61,"CloseCurlyQuote;":62,"Colon;":63,"Colone;":64,"Congruent;":65,"Conint;":66,"ContourIntegral;":67,"Copf;":68,"Coproduct;":69,"CounterClockwiseContourIntegral;":70,"Cross;":71,"Cscr;":72,"Cup;":73,"CupCap;":74,"DD;":75,"DDotrahd;":76,"DJcy;":77,"DScy;":78,"DZcy;":79,"Dagger;":80,"Darr;":81,"Dashv;":82,"Dcaron;":83,"Dcy;":84,"Del;":85,"Delta;":86,"Dfr;":87,"DiacriticalAcute;":88,"DiacriticalDot;":89,"DiacriticalDoubleAcute;":90,"DiacriticalGrave;":91,"DiacriticalTilde;":92,"Diamond;":93,"DifferentialD;":94,"Dopf;":95,"Dot;":96,"DotDot;":97,"DotEqual;":98,"DoubleContourIntegral;":99,"DoubleDot;":100,"DoubleDownArrow;":101,"DoubleLeftArrow;":102,"DoubleLeftRightArrow;":103,"DoubleLeftTee;":104,"DoubleLongLeftArrow;":105,"DoubleLongLeftRightArrow;":106,"DoubleLongRightArrow;":107,"DoubleRightArrow;":108,"DoubleRightTee;":109,"DoubleUpArrow;":110,"DoubleUpDownArrow;":111,"DoubleVerticalBar;":112,"DownArrow;":113,"DownArrowBar;":114,"DownArrowUpArrow;":115,"DownBreve;":116,"DownLeftRightVector;":117,"DownLeftTeeVector;":118,"DownLeftVector;":119,"DownLeftVectorBar;":120,"DownRightTeeVector;":121,"DownRightVector;":122,"DownRightVectorBar;":123,"DownTee;":124,"DownTeeArrow;":125,"Downarrow;":126,"Dscr;":127,"Dstrok;":128,"ENG;":129,ETH:130,"ETH;":131,Eacute:132,"Eacute;":133,"Ecaron;":134,Ecirc:135,"Ecirc;":136,"Ecy;":137,"Edot;":138,"Efr;":139,Egrave:140,"Egrave;":141,"Element;":142,"Emacr;":143,"EmptySmallSquare;":144,"EmptyVerySmallSquare;":145,"Eogon;":146,"Eopf;":147,"Epsilon;":148,"Equal;":149,"EqualTilde;":150,"Equilibrium;":151,"Escr;":152,"Esim;":153,"Eta;":154,Euml:155,"Euml;":156,"Exists;":157,"ExponentialE;":158,"Fcy;":159,"Ffr;":160,"FilledSmallSquare;":161,"FilledVerySmallSquare;":162,"Fopf;":163,"ForAll;":164,"Fouriertrf;":165,"Fscr;":166,"GJcy;":167,GT:168,"GT;":169,"Gamma;":170,"Gammad;":171,"Gbreve;":172,"Gcedil;":173,"Gcirc;":174,"Gcy;":175,"Gdot;":176,"Gfr;":177,"Gg;":178,"Gopf;":179,"GreaterEqual;":180,"GreaterEqualLess;":181,"GreaterFullEqual;":182,"GreaterGreater;":183,"GreaterLess;":184,"GreaterSlantEqual;":185,"GreaterTilde;":186,"Gscr;":187,"Gt;":188,"HARDcy;":189,"Hacek;":190,"Hat;":191,"Hcirc;":192,"Hfr;":193,"HilbertSpace;":194,"Hopf;":195,"HorizontalLine;":196,"Hscr;":197,"Hstrok;":198,"HumpDownHump;":199,"HumpEqual;":200,"IEcy;":201,"IJlig;":202,"IOcy;":203,Iacute:204,"Iacute;":205,Icirc:206,"Icirc;":207,"Icy;":208,"Idot;":209,"Ifr;":210,Igrave:211,"Igrave;":212,"Im;":213,"Imacr;":214,"ImaginaryI;":215,"Implies;":216,"Int;":217,"Integral;":218,"Intersection;":219,"InvisibleComma;":220,"InvisibleTimes;":221,"Iogon;":222,"Iopf;":223,"Iota;":224,"Iscr;":225,"Itilde;":226,"Iukcy;":227,Iuml:228,"Iuml;":229,"Jcirc;":230,"Jcy;":231,"Jfr;":232,"Jopf;":233,"Jscr;":234,"Jsercy;":235,"Jukcy;":236,"KHcy;":237,"KJcy;":238,"Kappa;":239,"Kcedil;":240,"Kcy;":241,"Kfr;":242,"Kopf;":243,"Kscr;":244,"LJcy;":245,LT:246,"LT;":247,"Lacute;":248,"Lambda;":249,"Lang;":250,"Laplacetrf;":251,"Larr;":252,"Lcaron;":253,"Lcedil;":254,"Lcy;":255,"LeftAngleBracket;":256,"LeftArrow;":257,"LeftArrowBar;":258,"LeftArrowRightArrow;":259,"LeftCeiling;":260,"LeftDoubleBracket;":261,"LeftDownTeeVector;":262,"LeftDownVector;":263,"LeftDownVectorBar;":264,"LeftFloor;":265,"LeftRightArrow;":266,"LeftRightVector;":267,"LeftTee;":268,"LeftTeeArrow;":269,"LeftTeeVector;":270,"LeftTriangle;":271,"LeftTriangleBar;":272,"LeftTriangleEqual;":273,"LeftUpDownVector;":274,"LeftUpTeeVector;":275,"LeftUpVector;":276,"LeftUpVectorBar;":277,"LeftVector;":278,"LeftVectorBar;":279,"Leftarrow;":280,"Leftrightarrow;":281,"LessEqualGreater;":282,"LessFullEqual;":283,"LessGreater;":284,"LessLess;":285,"LessSlantEqual;":286,"LessTilde;":287,"Lfr;":288,"Ll;":289,"Lleftarrow;":290,"Lmidot;":291,"LongLeftArrow;":292,"LongLeftRightArrow;":293,"LongRightArrow;":294,"Longleftarrow;":295,"Longleftrightarrow;":296,"Longrightarrow;":297,"Lopf;":298,"LowerLeftArrow;":299,"LowerRightArrow;":300,"Lscr;":301,"Lsh;":302,"Lstrok;":303,"Lt;":304,"Map;":305,"Mcy;":306,"MediumSpace;":307,"Mellintrf;":308,"Mfr;":309,"MinusPlus;":310,"Mopf;":311,"Mscr;":312,"Mu;":313,"NJcy;":314,"Nacute;":315,"Ncaron;":316,"Ncedil;":317,"Ncy;":318,"NegativeMediumSpace;":319,"NegativeThickSpace;":320,"NegativeThinSpace;":321,"NegativeVeryThinSpace;":322,"NestedGreaterGreater;":323,"NestedLessLess;":324,"NewLine;":325,"Nfr;":326,"NoBreak;":327,"NonBreakingSpace;":328,"Nopf;":329,"Not;":330,"NotCongruent;":331,"NotCupCap;":332,"NotDoubleVerticalBar;":333,"NotElement;":334,"NotEqual;":335,"NotEqualTilde;":336,"NotExists;":337,"NotGreater;":338,"NotGreaterEqual;":339,"NotGreaterFullEqual;":340,"NotGreaterGreater;":341,"NotGreaterLess;":342,"NotGreaterSlantEqual;":343,"NotGreaterTilde;":344,"NotHumpDownHump;":345,"NotHumpEqual;":346,"NotLeftTriangle;":347,"NotLeftTriangleBar;":348,"NotLeftTriangleEqual;":349,"NotLess;":350,"NotLessEqual;":351,"NotLessGreater;":352,"NotLessLess;":353,"NotLessSlantEqual;":354,"NotLessTilde;":355,"NotNestedGreaterGreater;":356,"NotNestedLessLess;":357,"NotPrecedes;":358,"NotPrecedesEqual;":359,"NotPrecedesSlantEqual;":360,"NotReverseElement;":361,"NotRightTriangle;":362,"NotRightTriangleBar;":363,"NotRightTriangleEqual;":364,"NotSquareSubset;":365,"NotSquareSubsetEqual;":366,"NotSquareSuperset;":367,"NotSquareSupersetEqual;":368,"NotSubset;":369,"NotSubsetEqual;":370,"NotSucceeds;":371,"NotSucceedsEqual;":372,"NotSucceedsSlantEqual;":373,"NotSucceedsTilde;":374,"NotSuperset;":375,"NotSupersetEqual;":376,"NotTilde;":377,"NotTildeEqual;":378,"NotTildeFullEqual;":379,"NotTildeTilde;":380,"NotVerticalBar;":381,"Nscr;":382,Ntilde:383,"Ntilde;":384,"Nu;":385,"OElig;":386,Oacute:387,"Oacute;":388,Ocirc:389,"Ocirc;":390,"Ocy;":391,"Odblac;":392,"Ofr;":393,Ograve:394,"Ograve;":395,"Omacr;":396,"Omega;":397,"Omicron;":398,"Oopf;":399,"OpenCurlyDoubleQuote;":400,"OpenCurlyQuote;":401,"Or;":402,"Oscr;":403,Oslash:404,"Oslash;":405,Otilde:406,"Otilde;":407,"Otimes;":408,Ouml:409,"Ouml;":410,"OverBar;":411,"OverBrace;":412,"OverBracket;":413,"OverParenthesis;":414,"PartialD;":415,"Pcy;":416,"Pfr;":417,"Phi;":418,"Pi;":419,"PlusMinus;":420,"Poincareplane;":421,"Popf;":422,"Pr;":423,"Precedes;":424,"PrecedesEqual;":425,"PrecedesSlantEqual;":426,"PrecedesTilde;":427,"Prime;":428,"Product;":429,"Proportion;":430,"Proportional;":431,"Pscr;":432,"Psi;":433,QUOT:434,"QUOT;":435,"Qfr;":436,"Qopf;":437,"Qscr;":438,"RBarr;":439,REG:440,"REG;":441,"Racute;":442,"Rang;":443,"Rarr;":444,"Rarrtl;":445,"Rcaron;":446,"Rcedil;":447,"Rcy;":448,"Re;":449,"ReverseElement;":450,"ReverseEquilibrium;":451,"ReverseUpEquilibrium;":452,"Rfr;":453,"Rho;":454,"RightAngleBracket;":455,"RightArrow;":456,"RightArrowBar;":457,"RightArrowLeftArrow;":458,"RightCeiling;":459,"RightDoubleBracket;":460,"RightDownTeeVector;":461,"RightDownVector;":462,"RightDownVectorBar;":463,"RightFloor;":464,"RightTee;":465,"RightTeeArrow;":466,"RightTeeVector;":467,"RightTriangle;":468,"RightTriangleBar;":469,"RightTriangleEqual;":470,"RightUpDownVector;":471,"RightUpTeeVector;":472,"RightUpVector;":473,"RightUpVectorBar;":474,"RightVector;":475,"RightVectorBar;":476,"Rightarrow;":477,"Ropf;":478,"RoundImplies;":479,"Rrightarrow;":480,"Rscr;":481,"Rsh;":482,"RuleDelayed;":483,"SHCHcy;":484,"SHcy;":485,"SOFTcy;":486,"Sacute;":487,"Sc;":488,"Scaron;":489,"Scedil;":490,"Scirc;":491,"Scy;":492,"Sfr;":493,"ShortDownArrow;":494,"ShortLeftArrow;":495,"ShortRightArrow;":496,"ShortUpArrow;":497,"Sigma;":498,"SmallCircle;":499,"Sopf;":500,"Sqrt;":501,"Square;":502,"SquareIntersection;":503,"SquareSubset;":504,"SquareSubsetEqual;":505,"SquareSuperset;":506,"SquareSupersetEqual;":507,"SquareUnion;":508,"Sscr;":509,"Star;":510,"Sub;":511,"Subset;":512,"SubsetEqual;":513,"Succeeds;":514,"SucceedsEqual;":515,"SucceedsSlantEqual;":516,"SucceedsTilde;":517,"SuchThat;":518,"Sum;":519,"Sup;":520,"Superset;":521,"SupersetEqual;":522,"Supset;":523,THORN:524,"THORN;":525,"TRADE;":526,"TSHcy;":527,"TScy;":528,"Tab;":529,"Tau;":530,"Tcaron;":531,"Tcedil;":532,"Tcy;":533,"Tfr;":534,"Therefore;":535,"Theta;":536,"ThickSpace;":537,"ThinSpace;":538,"Tilde;":539,"TildeEqual;":540,"TildeFullEqual;":541,"TildeTilde;":542,"Topf;":543,"TripleDot;":544,"Tscr;":545,"Tstrok;":546,Uacute:547,"Uacute;":548,"Uarr;":549,"Uarrocir;":550,"Ubrcy;":551,"Ubreve;":552,Ucirc:553,"Ucirc;":554,"Ucy;":555,"Udblac;":556,"Ufr;":557,Ugrave:558,"Ugrave;":559,"Umacr;":560,"UnderBar;":561,"UnderBrace;":562,"UnderBracket;":563,"UnderParenthesis;":564,"Union;":565,"UnionPlus;":566,"Uogon;":567,"Uopf;":568,"UpArrow;":569,"UpArrowBar;":570,"UpArrowDownArrow;":571,"UpDownArrow;":572,"UpEquilibrium;":573,"UpTee;":574,"UpTeeArrow;":575,"Uparrow;":576,"Updownarrow;":577,"UpperLeftArrow;":578,"UpperRightArrow;":579,"Upsi;":580,"Upsilon;":581,"Uring;":582,"Uscr;":583,"Utilde;":584,Uuml:585,"Uuml;":586,"VDash;":587,"Vbar;":588,"Vcy;":589,"Vdash;":590,"Vdashl;":591,"Vee;":592,"Verbar;":593,"Vert;":594,"VerticalBar;":595,"VerticalLine;":596,"VerticalSeparator;":597,"VerticalTilde;":598,"VeryThinSpace;":599,"Vfr;":600,"Vopf;":601,"Vscr;":602,"Vvdash;":603,"Wcirc;":604,"Wedge;":605,"Wfr;":606,"Wopf;":607,"Wscr;":608,"Xfr;":609,"Xi;":610,"Xopf;":611,"Xscr;":612,"YAcy;":613,"YIcy;":614,"YUcy;":615,Yacute:616,"Yacute;":617,"Ycirc;":618,"Ycy;":619,"Yfr;":620,"Yopf;":621,"Yscr;":622,"Yuml;":623,"ZHcy;":624,"Zacute;":625,"Zcaron;":626,"Zcy;":627,"Zdot;":628,"ZeroWidthSpace;":629,"Zeta;":630,"Zfr;":631,"Zopf;":632,"Zscr;":633,aacute:634,"aacute;":635,"abreve;":636,"ac;":637,"acE;":638,"acd;":639,acirc:640,"acirc;":641,acute:642,"acute;":643,"acy;":644,aelig:645,"aelig;":646,"af;":647,"afr;":648,agrave:649,"agrave;":650,"alefsym;":651,"aleph;":652,"alpha;":653,"amacr;":654,"amalg;":655,amp:656,"amp;":657,"and;":658,"andand;":659,"andd;":660,"andslope;":661,"andv;":662,"ang;":663,"ange;":664,"angle;":665,"angmsd;":666,"angmsdaa;":667,"angmsdab;":668,"angmsdac;":669,"angmsdad;":670,"angmsdae;":671,"angmsdaf;":672,"angmsdag;":673,"angmsdah;":674,"angrt;":675,"angrtvb;":676,"angrtvbd;":677,"angsph;":678,"angst;":679,"angzarr;":680,"aogon;":681,"aopf;":682,"ap;":683,"apE;":684,"apacir;":685,"ape;":686,"apid;":687,"apos;":688,"approx;":689,"approxeq;":690,aring:691,"aring;":692,"ascr;":693,"ast;":694,"asymp;":695,"asympeq;":696,atilde:697,"atilde;":698,auml:699,"auml;":700,"awconint;":701,"awint;":702,"bNot;":703,"backcong;":704,"backepsilon;":705,"backprime;":706,"backsim;":707,"backsimeq;":708,"barvee;":709,"barwed;":710,"barwedge;":711,"bbrk;":712,"bbrktbrk;":713,"bcong;":714,"bcy;":715,"bdquo;":716,"becaus;":717,"because;":718,"bemptyv;":719,"bepsi;":720,"bernou;":721,"beta;":722,"beth;":723,"between;":724,"bfr;":725,"bigcap;":726,"bigcirc;":727,"bigcup;":728,"bigodot;":729,"bigoplus;":730,"bigotimes;":731,"bigsqcup;":732,"bigstar;":733,"bigtriangledown;":734,"bigtriangleup;":735,"biguplus;":736,"bigvee;":737,"bigwedge;":738,"bkarow;":739,"blacklozenge;":740,"blacksquare;":741,"blacktriangle;":742,"blacktriangledown;":743,"blacktriangleleft;":744,"blacktriangleright;":745,"blank;":746,"blk12;":747,"blk14;":748,"blk34;":749,"block;":750,"bne;":751,"bnequiv;":752,"bnot;":753,"bopf;":754,"bot;":755,"bottom;":756,"bowtie;":757,"boxDL;":758,"boxDR;":759,"boxDl;":760,"boxDr;":761,"boxH;":762,"boxHD;":763,"boxHU;":764,"boxHd;":765,"boxHu;":766,"boxUL;":767,"boxUR;":768,"boxUl;":769,"boxUr;":770,"boxV;":771,"boxVH;":772,"boxVL;":773,"boxVR;":774,"boxVh;":775,"boxVl;":776,"boxVr;":777,"boxbox;":778,"boxdL;":779,"boxdR;":780,"boxdl;":781,"boxdr;":782,"boxh;":783,"boxhD;":784,"boxhU;":785,"boxhd;":786,"boxhu;":787,"boxminus;":788,"boxplus;":789,"boxtimes;":790,"boxuL;":791,"boxuR;":792,"boxul;":793,"boxur;":794,"boxv;":795,"boxvH;":796,"boxvL;":797,"boxvR;":798,"boxvh;":799,"boxvl;":800,"boxvr;":801,"bprime;":802,"breve;":803,brvbar:804,"brvbar;":805,"bscr;":806,"bsemi;":807,"bsim;":808,"bsime;":809,"bsol;":810,"bsolb;":811,"bsolhsub;":812,"bull;":813,"bullet;":814,"bump;":815,"bumpE;":816,"bumpe;":817,"bumpeq;":818,"cacute;":819,"cap;":820,"capand;":821,"capbrcup;":822,"capcap;":823,"capcup;":824,"capdot;":825,"caps;":826,"caret;":827,"caron;":828,"ccaps;":829,"ccaron;":830,ccedil:831,"ccedil;":832,"ccirc;":833,"ccups;":834,"ccupssm;":835,"cdot;":836,cedil:837,"cedil;":838,"cemptyv;":839,cent:840,"cent;":841,"centerdot;":842,"cfr;":843,"chcy;":844,"check;":845,"checkmark;":846,"chi;":847,"cir;":848,"cirE;":849,"circ;":850,"circeq;":851,"circlearrowleft;":852,"circlearrowright;":853,"circledR;":854,"circledS;":855,"circledast;":856,"circledcirc;":857,"circleddash;":858,"cire;":859,"cirfnint;":860,"cirmid;":861,"cirscir;":862,"clubs;":863,"clubsuit;":864,"colon;":865,"colone;":866,"coloneq;":867,"comma;":868,"commat;":869,"comp;":870,"compfn;":871,"complement;":872,"complexes;":873,"cong;":874,"congdot;":875,"conint;":876,"copf;":877,"coprod;":878,copy:879,"copy;":880,"copysr;":881,"crarr;":882,"cross;":883,"cscr;":884,"csub;":885,"csube;":886,"csup;":887,"csupe;":888,"ctdot;":889,"cudarrl;":890,"cudarrr;":891,"cuepr;":892,"cuesc;":893,"cularr;":894,"cularrp;":895,"cup;":896,"cupbrcap;":897,"cupcap;":898,"cupcup;":899,"cupdot;":900,"cupor;":901,"cups;":902,"curarr;":903,"curarrm;":904,"curlyeqprec;":905,"curlyeqsucc;":906,"curlyvee;":907,"curlywedge;":908,curren:909,"curren;":910,"curvearrowleft;":911,"curvearrowright;":912,"cuvee;":913,"cuwed;":914,"cwconint;":915,"cwint;":916,"cylcty;":917,"dArr;":918,"dHar;":919,"dagger;":920,"daleth;":921,"darr;":922,"dash;":923,"dashv;":924,"dbkarow;":925,"dblac;":926,"dcaron;":927,"dcy;":928,"dd;":929,"ddagger;":930,"ddarr;":931,"ddotseq;":932,deg:933,"deg;":934,"delta;":935,"demptyv;":936,"dfisht;":937,"dfr;":938,"dharl;":939,"dharr;":940,"diam;":941,"diamond;":942,"diamondsuit;":943,"diams;":944,"die;":945,"digamma;":946,"disin;":947,"div;":948,divide:949,"divide;":950,"divideontimes;":951,"divonx;":952,"djcy;":953,"dlcorn;":954,"dlcrop;":955,"dollar;":956,"dopf;":957,"dot;":958,"doteq;":959,"doteqdot;":960,"dotminus;":961,"dotplus;":962,"dotsquare;":963,"doublebarwedge;":964,"downarrow;":965,"downdownarrows;":966,"downharpoonleft;":967,"downharpoonright;":968,"drbkarow;":969,"drcorn;":970,"drcrop;":971,"dscr;":972,"dscy;":973,"dsol;":974,"dstrok;":975,"dtdot;":976,"dtri;":977,"dtrif;":978,"duarr;":979,"duhar;":980,"dwangle;":981,"dzcy;":982,"dzigrarr;":983,"eDDot;":984,"eDot;":985,eacute:986,"eacute;":987,"easter;":988,"ecaron;":989,"ecir;":990,ecirc:991,"ecirc;":992,"ecolon;":993,"ecy;":994,"edot;":995,"ee;":996,"efDot;":997,"efr;":998,"eg;":999,egrave:1000,"egrave;":1001,"egs;":1002,"egsdot;":1003,"el;":1004,"elinters;":1005,"ell;":1006,"els;":1007,"elsdot;":1008,"emacr;":1009,"empty;":1010,"emptyset;":1011,"emptyv;":1012,"emsp13;":1013,"emsp14;":1014,"emsp;":1015,"eng;":1016,"ensp;":1017,"eogon;":1018,"eopf;":1019,"epar;":1020,"eparsl;":1021,"eplus;":1022,"epsi;":1023,"epsilon;":1024,"epsiv;":1025,"eqcirc;":1026,"eqcolon;":1027,"eqsim;":1028,"eqslantgtr;":1029,"eqslantless;":1030,"equals;":1031,"equest;":1032,"equiv;":1033,"equivDD;":1034,"eqvparsl;":1035,"erDot;":1036,"erarr;":1037,"escr;":1038,"esdot;":1039,"esim;":1040,"eta;":1041,eth:1042,"eth;":1043,euml:1044,"euml;":1045,"euro;":1046,"excl;":1047,"exist;":1048,"expectation;":1049,"exponentiale;":1050,"fallingdotseq;":1051,"fcy;":1052,"female;":1053,"ffilig;":1054,"fflig;":1055,"ffllig;":1056,"ffr;":1057,"filig;":1058,"fjlig;":1059,"flat;":1060,"fllig;":1061,"fltns;":1062,"fnof;":1063,"fopf;":1064,"forall;":1065,"fork;":1066,"forkv;":1067,"fpartint;":1068,frac12:1069,"frac12;":1070,"frac13;":1071,frac14:1072,"frac14;":1073,"frac15;":1074,"frac16;":1075,"frac18;":1076,"frac23;":1077,"frac25;":1078,frac34:1079,"frac34;":1080,"frac35;":1081,"frac38;":1082,"frac45;":1083,"frac56;":1084,"frac58;":1085,"frac78;":1086,"frasl;":1087,"frown;":1088,"fscr;":1089,"gE;":1090,"gEl;":1091,"gacute;":1092,"gamma;":1093,"gammad;":1094,"gap;":1095,"gbreve;":1096,"gcirc;":1097,"gcy;":1098,"gdot;":1099,"ge;":1100,"gel;":1101,"geq;":1102,"geqq;":1103,"geqslant;":1104,"ges;":1105,"gescc;":1106,"gesdot;":1107,"gesdoto;":1108,"gesdotol;":1109,"gesl;":1110,"gesles;":1111,"gfr;":1112,"gg;":1113,"ggg;":1114,"gimel;":1115,"gjcy;":1116,"gl;":1117,"glE;":1118,"gla;":1119,"glj;":1120,"gnE;":1121,"gnap;":1122,"gnapprox;":1123,"gne;":1124,"gneq;":1125,"gneqq;":1126,"gnsim;":1127,"gopf;":1128,"grave;":1129,"gscr;":1130,"gsim;":1131,"gsime;":1132,"gsiml;":1133,gt:1134,"gt;":1135,"gtcc;":1136,"gtcir;":1137,"gtdot;":1138,"gtlPar;":1139,"gtquest;":1140,"gtrapprox;":1141,"gtrarr;":1142,"gtrdot;":1143,"gtreqless;":1144,"gtreqqless;":1145,"gtrless;":1146,"gtrsim;":1147,"gvertneqq;":1148,"gvnE;":1149,"hArr;":1150,"hairsp;":1151,"half;":1152,"hamilt;":1153,"hardcy;":1154,"harr;":1155,"harrcir;":1156,"harrw;":1157,"hbar;":1158,"hcirc;":1159,"hearts;":1160,"heartsuit;":1161,"hellip;":1162,"hercon;":1163,"hfr;":1164,"hksearow;":1165,"hkswarow;":1166,"hoarr;":1167,"homtht;":1168,"hookleftarrow;":1169,"hookrightarrow;":1170,"hopf;":1171,"horbar;":1172,"hscr;":1173,"hslash;":1174,"hstrok;":1175,"hybull;":1176,"hyphen;":1177,iacute:1178,"iacute;":1179,"ic;":1180,icirc:1181,"icirc;":1182,"icy;":1183,"iecy;":1184,iexcl:1185,"iexcl;":1186,"iff;":1187,"ifr;":1188,igrave:1189,"igrave;":1190,"ii;":1191,"iiiint;":1192,"iiint;":1193,"iinfin;":1194,"iiota;":1195,"ijlig;":1196,"imacr;":1197,"image;":1198,"imagline;":1199,"imagpart;":1200,"imath;":1201,"imof;":1202,"imped;":1203,"in;":1204,"incare;":1205,"infin;":1206,"infintie;":1207,"inodot;":1208,"int;":1209,"intcal;":1210,"integers;":1211,"intercal;":1212,"intlarhk;":1213,"intprod;":1214,"iocy;":1215,"iogon;":1216,"iopf;":1217,"iota;":1218,"iprod;":1219,iquest:1220,"iquest;":1221,"iscr;":1222,"isin;":1223,"isinE;":1224,"isindot;":1225,"isins;":1226,"isinsv;":1227,"isinv;":1228,"it;":1229,"itilde;":1230,"iukcy;":1231,iuml:1232,"iuml;":1233,"jcirc;":1234,"jcy;":1235,"jfr;":1236,"jmath;":1237,"jopf;":1238,"jscr;":1239,"jsercy;":1240,"jukcy;":1241,"kappa;":1242,"kappav;":1243,"kcedil;":1244,"kcy;":1245,"kfr;":1246,"kgreen;":1247,"khcy;":1248,"kjcy;":1249,"kopf;":1250,"kscr;":1251,"lAarr;":1252,"lArr;":1253,"lAtail;":1254,"lBarr;":1255,"lE;":1256,"lEg;":1257,"lHar;":1258,"lacute;":1259,"laemptyv;":1260,"lagran;":1261,"lambda;":1262,"lang;":1263,"langd;":1264,"langle;":1265,"lap;":1266,laquo:1267,"laquo;":1268,"larr;":1269,"larrb;":1270,"larrbfs;":1271,"larrfs;":1272,"larrhk;":1273,"larrlp;":1274,"larrpl;":1275,"larrsim;":1276,"larrtl;":1277,"lat;":1278,"latail;":1279,"late;":1280,"lates;":1281,"lbarr;":1282,"lbbrk;":1283,"lbrace;":1284,"lbrack;":1285,"lbrke;":1286,"lbrksld;":1287,"lbrkslu;":1288,"lcaron;":1289,"lcedil;":1290,"lceil;":1291,"lcub;":1292,"lcy;":1293,"ldca;":1294,"ldquo;":1295,"ldquor;":1296,"ldrdhar;":1297,"ldrushar;":1298,"ldsh;":1299,"le;":1300,"leftarrow;":1301,"leftarrowtail;":1302,"leftharpoondown;":1303,"leftharpoonup;":1304,"leftleftarrows;":1305,"leftrightarrow;":1306,"leftrightarrows;":1307,"leftrightharpoons;":1308,"leftrightsquigarrow;":1309,"leftthreetimes;":1310,"leg;":1311,"leq;":1312,"leqq;":1313,"leqslant;":1314,"les;":1315,"lescc;":1316,"lesdot;":1317,"lesdoto;":1318,"lesdotor;":1319,"lesg;":1320,"lesges;":1321,"lessapprox;":1322,"lessdot;":1323,"lesseqgtr;":1324,"lesseqqgtr;":1325,"lessgtr;":1326,"lesssim;":1327,"lfisht;":1328,"lfloor;":1329,"lfr;":1330,"lg;":1331,"lgE;":1332,"lhard;":1333,"lharu;":1334,"lharul;":1335,"lhblk;":1336,"ljcy;":1337,"ll;":1338,"llarr;":1339,"llcorner;":1340,"llhard;":1341,"lltri;":1342,"lmidot;":1343,"lmoust;":1344,"lmoustache;":1345,"lnE;":1346,"lnap;":1347,"lnapprox;":1348,"lne;":1349,"lneq;":1350,"lneqq;":1351,"lnsim;":1352,"loang;":1353,"loarr;":1354,"lobrk;":1355,"longleftarrow;":1356,"longleftrightarrow;":1357,"longmapsto;":1358,"longrightarrow;":1359,"looparrowleft;":1360,"looparrowright;":1361,"lopar;":1362,"lopf;":1363,"loplus;":1364,"lotimes;":1365,"lowast;":1366,"lowbar;":1367,"loz;":1368,"lozenge;":1369,"lozf;":1370,"lpar;":1371,"lparlt;":1372,"lrarr;":1373,"lrcorner;":1374,"lrhar;":1375,"lrhard;":1376,"lrm;":1377,"lrtri;":1378,"lsaquo;":1379,"lscr;":1380,"lsh;":1381,"lsim;":1382,"lsime;":1383,"lsimg;":1384,"lsqb;":1385,"lsquo;":1386,"lsquor;":1387,"lstrok;":1388,lt:1389,"lt;":1390,"ltcc;":1391,"ltcir;":1392,"ltdot;":1393,"lthree;":1394,"ltimes;":1395,"ltlarr;":1396,"ltquest;":1397,"ltrPar;":1398,"ltri;":1399,"ltrie;":1400,"ltrif;":1401,"lurdshar;":1402,"luruhar;":1403,"lvertneqq;":1404,"lvnE;":1405,"mDDot;":1406,macr:1407,"macr;":1408,"male;":1409,"malt;":1410,"maltese;":1411,"map;":1412,"mapsto;":1413,"mapstodown;":1414,"mapstoleft;":1415,"mapstoup;":1416,"marker;":1417,"mcomma;":1418,"mcy;":1419,"mdash;":1420,"measuredangle;":1421,"mfr;":1422,"mho;":1423,micro:1424,"micro;":1425,"mid;":1426,"midast;":1427,"midcir;":1428,middot:1429,"middot;":1430,"minus;":1431,"minusb;":1432,"minusd;":1433,"minusdu;":1434,"mlcp;":1435,"mldr;":1436,"mnplus;":1437,"models;":1438,"mopf;":1439,"mp;":1440,"mscr;":1441,"mstpos;":1442,"mu;":1443,"multimap;":1444,"mumap;":1445,"nGg;":1446,"nGt;":1447,"nGtv;":1448,"nLeftarrow;":1449,"nLeftrightarrow;":1450,"nLl;":1451,"nLt;":1452,"nLtv;":1453,"nRightarrow;":1454,"nVDash;":1455,"nVdash;":1456,"nabla;":1457,"nacute;":1458,"nang;":1459,"nap;":1460,"napE;":1461,"napid;":1462,"napos;":1463,"napprox;":1464,"natur;":1465,"natural;":1466,"naturals;":1467,nbsp:1468,"nbsp;":1469,"nbump;":1470,"nbumpe;":1471,"ncap;":1472,"ncaron;":1473,"ncedil;":1474,"ncong;":1475,"ncongdot;":1476,"ncup;":1477,"ncy;":1478,"ndash;":1479,"ne;":1480,"neArr;":1481,"nearhk;":1482,"nearr;":1483,"nearrow;":1484,"nedot;":1485,"nequiv;":1486,"nesear;":1487,"nesim;":1488,"nexist;":1489,"nexists;":1490,"nfr;":1491,"ngE;":1492,"nge;":1493,"ngeq;":1494,"ngeqq;":1495,"ngeqslant;":1496,"nges;":1497,"ngsim;":1498,"ngt;":1499,"ngtr;":1500,"nhArr;":1501,"nharr;":1502,"nhpar;":1503,"ni;":1504,"nis;":1505,"nisd;":1506,"niv;":1507,"njcy;":1508,"nlArr;":1509,"nlE;":1510,"nlarr;":1511,"nldr;":1512,"nle;":1513,"nleftarrow;":1514,"nleftrightarrow;":1515,"nleq;":1516,"nleqq;":1517,"nleqslant;":1518,"nles;":1519,"nless;":1520,"nlsim;":1521,"nlt;":1522,"nltri;":1523,"nltrie;":1524,"nmid;":1525,"nopf;":1526,not:1527,"not;":1528,"notin;":1529,"notinE;":1530,"notindot;":1531,"notinva;":1532,"notinvb;":1533,"notinvc;":1534,"notni;":1535,"notniva;":1536,"notnivb;":1537,"notnivc;":1538,"npar;":1539,"nparallel;":1540,"nparsl;":1541,"npart;":1542,"npolint;":1543,"npr;":1544,"nprcue;":1545,"npre;":1546,"nprec;":1547,"npreceq;":1548,"nrArr;":1549,"nrarr;":1550,"nrarrc;":1551,"nrarrw;":1552,"nrightarrow;":1553,"nrtri;":1554,"nrtrie;":1555,"nsc;":1556,"nsccue;":1557,"nsce;":1558,"nscr;":1559,"nshortmid;":1560,"nshortparallel;":1561,"nsim;":1562,"nsime;":1563,"nsimeq;":1564,"nsmid;":1565,"nspar;":1566,"nsqsube;":1567,"nsqsupe;":1568,"nsub;":1569,"nsubE;":1570,"nsube;":1571,"nsubset;":1572,"nsubseteq;":1573,"nsubseteqq;":1574,"nsucc;":1575,"nsucceq;":1576,"nsup;":1577,"nsupE;":1578,"nsupe;":1579,"nsupset;":1580,"nsupseteq;":1581,"nsupseteqq;":1582,"ntgl;":1583,ntilde:1584,"ntilde;":1585,"ntlg;":1586,"ntriangleleft;":1587,"ntrianglelefteq;":1588,"ntriangleright;":1589,"ntrianglerighteq;":1590,"nu;":1591,"num;":1592,"numero;":1593,"numsp;":1594,"nvDash;":1595,"nvHarr;":1596,"nvap;":1597,"nvdash;":1598,"nvge;":1599,"nvgt;":1600,"nvinfin;":1601,"nvlArr;":1602,"nvle;":1603,"nvlt;":1604,"nvltrie;":1605,"nvrArr;":1606,"nvrtrie;":1607,"nvsim;":1608,"nwArr;":1609,"nwarhk;":1610,"nwarr;":1611,"nwarrow;":1612,"nwnear;":1613,"oS;":1614,oacute:1615,"oacute;":1616,"oast;":1617,"ocir;":1618,ocirc:1619,"ocirc;":1620,"ocy;":1621,"odash;":1622,"odblac;":1623,"odiv;":1624,"odot;":1625,"odsold;":1626,"oelig;":1627,"ofcir;":1628,"ofr;":1629,"ogon;":1630,ograve:1631,"ograve;":1632,"ogt;":1633,"ohbar;":1634,"ohm;":1635,"oint;":1636,"olarr;":1637,"olcir;":1638,"olcross;":1639,"oline;":1640,"olt;":1641,"omacr;":1642,"omega;":1643,"omicron;":1644,"omid;":1645,"ominus;":1646,"oopf;":1647,"opar;":1648,"operp;":1649,"oplus;":1650,"or;":1651,"orarr;":1652,"ord;":1653,"order;":1654,"orderof;":1655,ordf:1656,"ordf;":1657,ordm:1658,"ordm;":1659,"origof;":1660,"oror;":1661,"orslope;":1662,"orv;":1663,"oscr;":1664,oslash:1665,"oslash;":1666,"osol;":1667,otilde:1668,"otilde;":1669,"otimes;":1670,"otimesas;":1671,ouml:1672,"ouml;":1673,"ovbar;":1674,"par;":1675,para:1676,"para;":1677,"parallel;":1678,"parsim;":1679,"parsl;":1680,"part;":1681,"pcy;":1682,"percnt;":1683,"period;":1684,"permil;":1685,"perp;":1686,"pertenk;":1687,"pfr;":1688,"phi;":1689,"phiv;":1690,"phmmat;":1691,"phone;":1692,"pi;":1693,"pitchfork;":1694,"piv;":1695,"planck;":1696,"planckh;":1697,"plankv;":1698,"plus;":1699,"plusacir;":1700,"plusb;":1701,"pluscir;":1702,"plusdo;":1703,"plusdu;":1704,"pluse;":1705,plusmn:1706,"plusmn;":1707,"plussim;":1708,"plustwo;":1709,"pm;":1710,"pointint;":1711,"popf;":1712,pound:1713,"pound;":1714,"pr;":1715,"prE;":1716,"prap;":1717,"prcue;":1718,"pre;":1719,"prec;":1720,"precapprox;":1721,"preccurlyeq;":1722,"preceq;":1723,"precnapprox;":1724,"precneqq;":1725,"precnsim;":1726,"precsim;":1727,"prime;":1728,"primes;":1729,"prnE;":1730,"prnap;":1731,"prnsim;":1732,"prod;":1733,"profalar;":1734,"profline;":1735,"profsurf;":1736,"prop;":1737,"propto;":1738,"prsim;":1739,"prurel;":1740,"pscr;":1741,"psi;":1742,"puncsp;":1743,"qfr;":1744,"qint;":1745,"qopf;":1746,"qprime;":1747,"qscr;":1748,"quaternions;":1749,"quatint;":1750,"quest;":1751,"questeq;":1752,quot:1753,"quot;":1754,"rAarr;":1755,"rArr;":1756,"rAtail;":1757,"rBarr;":1758,"rHar;":1759,"race;":1760,"racute;":1761,"radic;":1762,"raemptyv;":1763,"rang;":1764,"rangd;":1765,"range;":1766,"rangle;":1767,raquo:1768,"raquo;":1769,"rarr;":1770,"rarrap;":1771,"rarrb;":1772,"rarrbfs;":1773,"rarrc;":1774,"rarrfs;":1775,"rarrhk;":1776,"rarrlp;":1777,"rarrpl;":1778,"rarrsim;":1779,"rarrtl;":1780,"rarrw;":1781,"ratail;":1782,"ratio;":1783,"rationals;":1784,"rbarr;":1785,"rbbrk;":1786,"rbrace;":1787,"rbrack;":1788,"rbrke;":1789,"rbrksld;":1790,"rbrkslu;":1791,"rcaron;":1792,"rcedil;":1793,"rceil;":1794,"rcub;":1795,"rcy;":1796,"rdca;":1797,"rdldhar;":1798,"rdquo;":1799,"rdquor;":1800,"rdsh;":1801,"real;":1802,"realine;":1803,"realpart;":1804,"reals;":1805,"rect;":1806,reg:1807,"reg;":1808,"rfisht;":1809,"rfloor;":1810,"rfr;":1811,"rhard;":1812,"rharu;":1813,"rharul;":1814,"rho;":1815,"rhov;":1816,"rightarrow;":1817,"rightarrowtail;":1818,"rightharpoondown;":1819,"rightharpoonup;":1820,"rightleftarrows;":1821,"rightleftharpoons;":1822,"rightrightarrows;":1823,"rightsquigarrow;":1824,"rightthreetimes;":1825,"ring;":1826,"risingdotseq;":1827,"rlarr;":1828,"rlhar;":1829,"rlm;":1830,"rmoust;":1831,"rmoustache;":1832,"rnmid;":1833,"roang;":1834,"roarr;":1835,"robrk;":1836,"ropar;":1837,"ropf;":1838,"roplus;":1839,"rotimes;":1840,"rpar;":1841,"rpargt;":1842,"rppolint;":1843,"rrarr;":1844,"rsaquo;":1845,"rscr;":1846,"rsh;":1847,"rsqb;":1848,"rsquo;":1849,"rsquor;":1850,"rthree;":1851,"rtimes;":1852,"rtri;":1853,"rtrie;":1854,"rtrif;":1855,"rtriltri;":1856,"ruluhar;":1857,"rx;":1858,"sacute;":1859,"sbquo;":1860,"sc;":1861,"scE;":1862,"scap;":1863,"scaron;":1864,"sccue;":1865,"sce;":1866,"scedil;":1867,"scirc;":1868,"scnE;":1869,"scnap;":1870,"scnsim;":1871,"scpolint;":1872,"scsim;":1873,"scy;":1874,"sdot;":1875,"sdotb;":1876,"sdote;":1877,"seArr;":1878,"searhk;":1879,"searr;":1880,"searrow;":1881,sect:1882,"sect;":1883,"semi;":1884,"seswar;":1885,"setminus;":1886,"setmn;":1887,"sext;":1888,"sfr;":1889,"sfrown;":1890,"sharp;":1891,"shchcy;":1892,"shcy;":1893,"shortmid;":1894,"shortparallel;":1895,shy:1896,"shy;":1897,"sigma;":1898,"sigmaf;":1899,"sigmav;":1900,"sim;":1901,"simdot;":1902,"sime;":1903,"simeq;":1904,"simg;":1905,"simgE;":1906,"siml;":1907,"simlE;":1908,"simne;":1909,"simplus;":1910,"simrarr;":1911,"slarr;":1912,"smallsetminus;":1913,"smashp;":1914,"smeparsl;":1915,"smid;":1916,"smile;":1917,"smt;":1918,"smte;":1919,"smtes;":1920,"softcy;":1921,"sol;":1922,"solb;":1923,"solbar;":1924,"sopf;":1925,"spades;":1926,"spadesuit;":1927,"spar;":1928,"sqcap;":1929,"sqcaps;":1930,"sqcup;":1931,"sqcups;":1932,"sqsub;":1933,"sqsube;":1934,"sqsubset;":1935,"sqsubseteq;":1936,"sqsup;":1937,"sqsupe;":1938,"sqsupset;":1939,"sqsupseteq;":1940,"squ;":1941,"square;":1942,"squarf;":1943,"squf;":1944,"srarr;":1945,"sscr;":1946,"ssetmn;":1947,"ssmile;":1948,"sstarf;":1949,"star;":1950,"starf;":1951,"straightepsilon;":1952,"straightphi;":1953,"strns;":1954,"sub;":1955,"subE;":1956,"subdot;":1957,"sube;":1958,"subedot;":1959,"submult;":1960,"subnE;":1961,"subne;":1962,"subplus;":1963,"subrarr;":1964,"subset;":1965,"subseteq;":1966,"subseteqq;":1967,"subsetneq;":1968,"subsetneqq;":1969,"subsim;":1970,"subsub;":1971,"subsup;":1972,"succ;":1973,"succapprox;":1974,"succcurlyeq;":1975,"succeq;":1976,"succnapprox;":1977,"succneqq;":1978,"succnsim;":1979,"succsim;":1980,"sum;":1981,"sung;":1982,sup1:1983,"sup1;":1984,sup2:1985,"sup2;":1986,sup3:1987,"sup3;":1988,"sup;":1989,"supE;":1990,"supdot;":1991,"supdsub;":1992,"supe;":1993,"supedot;":1994,"suphsol;":1995,"suphsub;":1996,"suplarr;":1997,"supmult;":1998,"supnE;":1999,"supne;":2000,"supplus;":2001,"supset;":2002,"supseteq;":2003,"supseteqq;":2004,"supsetneq;":2005,"supsetneqq;":2006,"supsim;":2007,"supsub;":2008,"supsup;":2009,"swArr;":2010,"swarhk;":2011,"swarr;":2012,"swarrow;":2013,"swnwar;":2014,szlig:2015,"szlig;":2016,"target;":2017,"tau;":2018,"tbrk;":2019,"tcaron;":2020,"tcedil;":2021,"tcy;":2022,"tdot;":2023,"telrec;":2024,"tfr;":2025,"there4;":2026,"therefore;":2027,"theta;":2028,"thetasym;":2029,"thetav;":2030,"thickapprox;":2031,"thicksim;":2032,"thinsp;":2033,"thkap;":2034,"thksim;":2035,thorn:2036,"thorn;":2037,"tilde;":2038,times:2039,"times;":2040,"timesb;":2041,"timesbar;":2042,"timesd;":2043,"tint;":2044,"toea;":2045,"top;":2046,"topbot;":2047,"topcir;":2048,"topf;":2049,"topfork;":2050,"tosa;":2051,"tprime;":2052,"trade;":2053,"triangle;":2054,"triangledown;":2055,"triangleleft;":2056,"trianglelefteq;":2057,"triangleq;":2058,"triangleright;":2059,"trianglerighteq;":2060,"tridot;":2061,"trie;":2062,"triminus;":2063,"triplus;":2064,"trisb;":2065,"tritime;":2066,"trpezium;":2067,"tscr;":2068,"tscy;":2069,"tshcy;":2070,"tstrok;":2071,"twixt;":2072,"twoheadleftarrow;":2073,"twoheadrightarrow;":2074,"uArr;":2075,"uHar;":2076,uacute:2077,"uacute;":2078,"uarr;":2079,"ubrcy;":2080,"ubreve;":2081,ucirc:2082,"ucirc;":2083,"ucy;":2084,"udarr;":2085,"udblac;":2086,"udhar;":2087,"ufisht;":2088,"ufr;":2089,ugrave:2090,"ugrave;":2091,"uharl;":2092,"uharr;":2093,"uhblk;":2094,"ulcorn;":2095,"ulcorner;":2096,"ulcrop;":2097,"ultri;":2098,"umacr;":2099,uml:2100,"uml;":2101,"uogon;":2102,"uopf;":2103,"uparrow;":2104,"updownarrow;":2105,"upharpoonleft;":2106,"upharpoonright;":2107,"uplus;":2108,"upsi;":2109,"upsih;":2110,"upsilon;":2111,"upuparrows;":2112,"urcorn;":2113,"urcorner;":2114,"urcrop;":2115,"uring;":2116,"urtri;":2117,"uscr;":2118,"utdot;":2119,"utilde;":2120,"utri;":2121,"utrif;":2122,"uuarr;":2123,uuml:2124,"uuml;":2125,"uwangle;":2126,"vArr;":2127,"vBar;":2128,"vBarv;":2129,"vDash;":2130,"vangrt;":2131,"varepsilon;":2132,"varkappa;":2133,"varnothing;":2134,"varphi;":2135,"varpi;":2136,"varpropto;":2137,"varr;":2138,"varrho;":2139,"varsigma;":2140,"varsubsetneq;":2141,"varsubsetneqq;":2142,"varsupsetneq;":2143,"varsupsetneqq;":2144,"vartheta;":2145,"vartriangleleft;":2146,"vartriangleright;":2147,"vcy;":2148,"vdash;":2149,"vee;":2150,"veebar;":2151,"veeeq;":2152,"vellip;":2153,"verbar;":2154,"vert;":2155,"vfr;":2156,"vltri;":2157,"vnsub;":2158,"vnsup;":2159,"vopf;":2160,"vprop;":2161,"vrtri;":2162,"vscr;":2163,"vsubnE;":2164,"vsubne;":2165,"vsupnE;":2166,"vsupne;":2167,"vzigzag;":2168,"wcirc;":2169,"wedbar;":2170,"wedge;":2171,"wedgeq;":2172,"weierp;":2173,"wfr;":2174,"wopf;":2175,"wp;":2176,"wr;":2177,"wreath;":2178,"wscr;":2179,"xcap;":2180,"xcirc;":2181,"xcup;":2182,"xdtri;":2183,"xfr;":2184,"xhArr;":2185,"xharr;":2186,"xi;":2187,"xlArr;":2188,"xlarr;":2189,"xmap;":2190,"xnis;":2191,"xodot;":2192,"xopf;":2193,"xoplus;":2194,"xotime;":2195,"xrArr;":2196,"xrarr;":2197,"xscr;":2198,"xsqcup;":2199,"xuplus;":2200,"xutri;":2201,"xvee;":2202,"xwedge;":2203,yacute:2204,"yacute;":2205,"yacy;":2206,"ycirc;":2207,"ycy;":2208,yen:2209,"yen;":2210,"yfr;":2211,"yicy;":2212,"yopf;":2213,"yscr;":2214,"yucy;":2215,yuml:2216,"yuml;":2217,"zacute;":2218,"zcaron;":2219,"zcy;":2220,"zdot;":2221,"zeetrf;":2222,"zeta;":2223,"zfr;":2224,"zhcy;":2225,"zigrarr;":2226,"zopf;":2227,"zscr;":2228,"zwj;":2229,"zwnj;":2230} +B.fs=new A.r(B.KW,["\xc6","\xc6","&","&","\xc1","\xc1","\u0102","\xc2","\xc2","\u0410","\ud835\udd04","\xc0","\xc0","\u0391","\u0100","\u2a53","\u0104","\ud835\udd38","\u2061","\xc5","\xc5","\ud835\udc9c","\u2254","\xc3","\xc3","\xc4","\xc4","\u2216","\u2ae7","\u2306","\u0411","\u2235","\u212c","\u0392","\ud835\udd05","\ud835\udd39","\u02d8","\u212c","\u224e","\u0427","\xa9","\xa9","\u0106","\u22d2","\u2145","\u212d","\u010c","\xc7","\xc7","\u0108","\u2230","\u010a","\xb8","\xb7","\u212d","\u03a7","\u2299","\u2296","\u2295","\u2297","\u2232","\u201d","\u2019","\u2237","\u2a74","\u2261","\u222f","\u222e","\u2102","\u2210","\u2233","\u2a2f","\ud835\udc9e","\u22d3","\u224d","\u2145","\u2911","\u0402","\u0405","\u040f","\u2021","\u21a1","\u2ae4","\u010e","\u0414","\u2207","\u0394","\ud835\udd07","\xb4","\u02d9","\u02dd","`","\u02dc","\u22c4","\u2146","\ud835\udd3b","\xa8","\u20dc","\u2250","\u222f","\xa8","\u21d3","\u21d0","\u21d4","\u2ae4","\u27f8","\u27fa","\u27f9","\u21d2","\u22a8","\u21d1","\u21d5","\u2225","\u2193","\u2913","\u21f5","\u0311","\u2950","\u295e","\u21bd","\u2956","\u295f","\u21c1","\u2957","\u22a4","\u21a7","\u21d3","\ud835\udc9f","\u0110","\u014a","\xd0","\xd0","\xc9","\xc9","\u011a","\xca","\xca","\u042d","\u0116","\ud835\udd08","\xc8","\xc8","\u2208","\u0112","\u25fb","\u25ab","\u0118","\ud835\udd3c","\u0395","\u2a75","\u2242","\u21cc","\u2130","\u2a73","\u0397","\xcb","\xcb","\u2203","\u2147","\u0424","\ud835\udd09","\u25fc","\u25aa","\ud835\udd3d","\u2200","\u2131","\u2131","\u0403",">",">","\u0393","\u03dc","\u011e","\u0122","\u011c","\u0413","\u0120","\ud835\udd0a","\u22d9","\ud835\udd3e","\u2265","\u22db","\u2267","\u2aa2","\u2277","\u2a7e","\u2273","\ud835\udca2","\u226b","\u042a","\u02c7","^","\u0124","\u210c","\u210b","\u210d","\u2500","\u210b","\u0126","\u224e","\u224f","\u0415","\u0132","\u0401","\xcd","\xcd","\xce","\xce","\u0418","\u0130","\u2111","\xcc","\xcc","\u2111","\u012a","\u2148","\u21d2","\u222c","\u222b","\u22c2","\u2063","\u2062","\u012e","\ud835\udd40","\u0399","\u2110","\u0128","\u0406","\xcf","\xcf","\u0134","\u0419","\ud835\udd0d","\ud835\udd41","\ud835\udca5","\u0408","\u0404","\u0425","\u040c","\u039a","\u0136","\u041a","\ud835\udd0e","\ud835\udd42","\ud835\udca6","\u0409","<","<","\u0139","\u039b","\u27ea","\u2112","\u219e","\u013d","\u013b","\u041b","\u27e8","\u2190","\u21e4","\u21c6","\u2308","\u27e6","\u2961","\u21c3","\u2959","\u230a","\u2194","\u294e","\u22a3","\u21a4","\u295a","\u22b2","\u29cf","\u22b4","\u2951","\u2960","\u21bf","\u2958","\u21bc","\u2952","\u21d0","\u21d4","\u22da","\u2266","\u2276","\u2aa1","\u2a7d","\u2272","\ud835\udd0f","\u22d8","\u21da","\u013f","\u27f5","\u27f7","\u27f6","\u27f8","\u27fa","\u27f9","\ud835\udd43","\u2199","\u2198","\u2112","\u21b0","\u0141","\u226a","\u2905","\u041c","\u205f","\u2133","\ud835\udd10","\u2213","\ud835\udd44","\u2133","\u039c","\u040a","\u0143","\u0147","\u0145","\u041d","\u200b","\u200b","\u200b","\u200b","\u226b","\u226a","\n","\ud835\udd11","\u2060","\xa0","\u2115","\u2aec","\u2262","\u226d","\u2226","\u2209","\u2260","\u2242\u0338","\u2204","\u226f","\u2271","\u2267\u0338","\u226b\u0338","\u2279","\u2a7e\u0338","\u2275","\u224e\u0338","\u224f\u0338","\u22ea","\u29cf\u0338","\u22ec","\u226e","\u2270","\u2278","\u226a\u0338","\u2a7d\u0338","\u2274","\u2aa2\u0338","\u2aa1\u0338","\u2280","\u2aaf\u0338","\u22e0","\u220c","\u22eb","\u29d0\u0338","\u22ed","\u228f\u0338","\u22e2","\u2290\u0338","\u22e3","\u2282\u20d2","\u2288","\u2281","\u2ab0\u0338","\u22e1","\u227f\u0338","\u2283\u20d2","\u2289","\u2241","\u2244","\u2247","\u2249","\u2224","\ud835\udca9","\xd1","\xd1","\u039d","\u0152","\xd3","\xd3","\xd4","\xd4","\u041e","\u0150","\ud835\udd12","\xd2","\xd2","\u014c","\u03a9","\u039f","\ud835\udd46","\u201c","\u2018","\u2a54","\ud835\udcaa","\xd8","\xd8","\xd5","\xd5","\u2a37","\xd6","\xd6","\u203e","\u23de","\u23b4","\u23dc","\u2202","\u041f","\ud835\udd13","\u03a6","\u03a0","\xb1","\u210c","\u2119","\u2abb","\u227a","\u2aaf","\u227c","\u227e","\u2033","\u220f","\u2237","\u221d","\ud835\udcab","\u03a8",'"','"',"\ud835\udd14","\u211a","\ud835\udcac","\u2910","\xae","\xae","\u0154","\u27eb","\u21a0","\u2916","\u0158","\u0156","\u0420","\u211c","\u220b","\u21cb","\u296f","\u211c","\u03a1","\u27e9","\u2192","\u21e5","\u21c4","\u2309","\u27e7","\u295d","\u21c2","\u2955","\u230b","\u22a2","\u21a6","\u295b","\u22b3","\u29d0","\u22b5","\u294f","\u295c","\u21be","\u2954","\u21c0","\u2953","\u21d2","\u211d","\u2970","\u21db","\u211b","\u21b1","\u29f4","\u0429","\u0428","\u042c","\u015a","\u2abc","\u0160","\u015e","\u015c","\u0421","\ud835\udd16","\u2193","\u2190","\u2192","\u2191","\u03a3","\u2218","\ud835\udd4a","\u221a","\u25a1","\u2293","\u228f","\u2291","\u2290","\u2292","\u2294","\ud835\udcae","\u22c6","\u22d0","\u22d0","\u2286","\u227b","\u2ab0","\u227d","\u227f","\u220b","\u2211","\u22d1","\u2283","\u2287","\u22d1","\xde","\xde","\u2122","\u040b","\u0426","\t","\u03a4","\u0164","\u0162","\u0422","\ud835\udd17","\u2234","\u0398","\u205f\u200a","\u2009","\u223c","\u2243","\u2245","\u2248","\ud835\udd4b","\u20db","\ud835\udcaf","\u0166","\xda","\xda","\u219f","\u2949","\u040e","\u016c","\xdb","\xdb","\u0423","\u0170","\ud835\udd18","\xd9","\xd9","\u016a","_","\u23df","\u23b5","\u23dd","\u22c3","\u228e","\u0172","\ud835\udd4c","\u2191","\u2912","\u21c5","\u2195","\u296e","\u22a5","\u21a5","\u21d1","\u21d5","\u2196","\u2197","\u03d2","\u03a5","\u016e","\ud835\udcb0","\u0168","\xdc","\xdc","\u22ab","\u2aeb","\u0412","\u22a9","\u2ae6","\u22c1","\u2016","\u2016","\u2223","|","\u2758","\u2240","\u200a","\ud835\udd19","\ud835\udd4d","\ud835\udcb1","\u22aa","\u0174","\u22c0","\ud835\udd1a","\ud835\udd4e","\ud835\udcb2","\ud835\udd1b","\u039e","\ud835\udd4f","\ud835\udcb3","\u042f","\u0407","\u042e","\xdd","\xdd","\u0176","\u042b","\ud835\udd1c","\ud835\udd50","\ud835\udcb4","\u0178","\u0416","\u0179","\u017d","\u0417","\u017b","\u200b","\u0396","\u2128","\u2124","\ud835\udcb5","\xe1","\xe1","\u0103","\u223e","\u223e\u0333","\u223f","\xe2","\xe2","\xb4","\xb4","\u0430","\xe6","\xe6","\u2061","\ud835\udd1e","\xe0","\xe0","\u2135","\u2135","\u03b1","\u0101","\u2a3f","&","&","\u2227","\u2a55","\u2a5c","\u2a58","\u2a5a","\u2220","\u29a4","\u2220","\u2221","\u29a8","\u29a9","\u29aa","\u29ab","\u29ac","\u29ad","\u29ae","\u29af","\u221f","\u22be","\u299d","\u2222","\xc5","\u237c","\u0105","\ud835\udd52","\u2248","\u2a70","\u2a6f","\u224a","\u224b","'","\u2248","\u224a","\xe5","\xe5","\ud835\udcb6","*","\u2248","\u224d","\xe3","\xe3","\xe4","\xe4","\u2233","\u2a11","\u2aed","\u224c","\u03f6","\u2035","\u223d","\u22cd","\u22bd","\u2305","\u2305","\u23b5","\u23b6","\u224c","\u0431","\u201e","\u2235","\u2235","\u29b0","\u03f6","\u212c","\u03b2","\u2136","\u226c","\ud835\udd1f","\u22c2","\u25ef","\u22c3","\u2a00","\u2a01","\u2a02","\u2a06","\u2605","\u25bd","\u25b3","\u2a04","\u22c1","\u22c0","\u290d","\u29eb","\u25aa","\u25b4","\u25be","\u25c2","\u25b8","\u2423","\u2592","\u2591","\u2593","\u2588","=\u20e5","\u2261\u20e5","\u2310","\ud835\udd53","\u22a5","\u22a5","\u22c8","\u2557","\u2554","\u2556","\u2553","\u2550","\u2566","\u2569","\u2564","\u2567","\u255d","\u255a","\u255c","\u2559","\u2551","\u256c","\u2563","\u2560","\u256b","\u2562","\u255f","\u29c9","\u2555","\u2552","\u2510","\u250c","\u2500","\u2565","\u2568","\u252c","\u2534","\u229f","\u229e","\u22a0","\u255b","\u2558","\u2518","\u2514","\u2502","\u256a","\u2561","\u255e","\u253c","\u2524","\u251c","\u2035","\u02d8","\xa6","\xa6","\ud835\udcb7","\u204f","\u223d","\u22cd","\\","\u29c5","\u27c8","\u2022","\u2022","\u224e","\u2aae","\u224f","\u224f","\u0107","\u2229","\u2a44","\u2a49","\u2a4b","\u2a47","\u2a40","\u2229\ufe00","\u2041","\u02c7","\u2a4d","\u010d","\xe7","\xe7","\u0109","\u2a4c","\u2a50","\u010b","\xb8","\xb8","\u29b2","\xa2","\xa2","\xb7","\ud835\udd20","\u0447","\u2713","\u2713","\u03c7","\u25cb","\u29c3","\u02c6","\u2257","\u21ba","\u21bb","\xae","\u24c8","\u229b","\u229a","\u229d","\u2257","\u2a10","\u2aef","\u29c2","\u2663","\u2663",":","\u2254","\u2254",",","@","\u2201","\u2218","\u2201","\u2102","\u2245","\u2a6d","\u222e","\ud835\udd54","\u2210","\xa9","\xa9","\u2117","\u21b5","\u2717","\ud835\udcb8","\u2acf","\u2ad1","\u2ad0","\u2ad2","\u22ef","\u2938","\u2935","\u22de","\u22df","\u21b6","\u293d","\u222a","\u2a48","\u2a46","\u2a4a","\u228d","\u2a45","\u222a\ufe00","\u21b7","\u293c","\u22de","\u22df","\u22ce","\u22cf","\xa4","\xa4","\u21b6","\u21b7","\u22ce","\u22cf","\u2232","\u2231","\u232d","\u21d3","\u2965","\u2020","\u2138","\u2193","\u2010","\u22a3","\u290f","\u02dd","\u010f","\u0434","\u2146","\u2021","\u21ca","\u2a77","\xb0","\xb0","\u03b4","\u29b1","\u297f","\ud835\udd21","\u21c3","\u21c2","\u22c4","\u22c4","\u2666","\u2666","\xa8","\u03dd","\u22f2","\xf7","\xf7","\xf7","\u22c7","\u22c7","\u0452","\u231e","\u230d","$","\ud835\udd55","\u02d9","\u2250","\u2251","\u2238","\u2214","\u22a1","\u2306","\u2193","\u21ca","\u21c3","\u21c2","\u2910","\u231f","\u230c","\ud835\udcb9","\u0455","\u29f6","\u0111","\u22f1","\u25bf","\u25be","\u21f5","\u296f","\u29a6","\u045f","\u27ff","\u2a77","\u2251","\xe9","\xe9","\u2a6e","\u011b","\u2256","\xea","\xea","\u2255","\u044d","\u0117","\u2147","\u2252","\ud835\udd22","\u2a9a","\xe8","\xe8","\u2a96","\u2a98","\u2a99","\u23e7","\u2113","\u2a95","\u2a97","\u0113","\u2205","\u2205","\u2205","\u2004","\u2005","\u2003","\u014b","\u2002","\u0119","\ud835\udd56","\u22d5","\u29e3","\u2a71","\u03b5","\u03b5","\u03f5","\u2256","\u2255","\u2242","\u2a96","\u2a95","=","\u225f","\u2261","\u2a78","\u29e5","\u2253","\u2971","\u212f","\u2250","\u2242","\u03b7","\xf0","\xf0","\xeb","\xeb","\u20ac","!","\u2203","\u2130","\u2147","\u2252","\u0444","\u2640","\ufb03","\ufb00","\ufb04","\ud835\udd23","\ufb01","fj","\u266d","\ufb02","\u25b1","\u0192","\ud835\udd57","\u2200","\u22d4","\u2ad9","\u2a0d","\xbd","\xbd","\u2153","\xbc","\xbc","\u2155","\u2159","\u215b","\u2154","\u2156","\xbe","\xbe","\u2157","\u215c","\u2158","\u215a","\u215d","\u215e","\u2044","\u2322","\ud835\udcbb","\u2267","\u2a8c","\u01f5","\u03b3","\u03dd","\u2a86","\u011f","\u011d","\u0433","\u0121","\u2265","\u22db","\u2265","\u2267","\u2a7e","\u2a7e","\u2aa9","\u2a80","\u2a82","\u2a84","\u22db\ufe00","\u2a94","\ud835\udd24","\u226b","\u22d9","\u2137","\u0453","\u2277","\u2a92","\u2aa5","\u2aa4","\u2269","\u2a8a","\u2a8a","\u2a88","\u2a88","\u2269","\u22e7","\ud835\udd58","`","\u210a","\u2273","\u2a8e","\u2a90",">",">","\u2aa7","\u2a7a","\u22d7","\u2995","\u2a7c","\u2a86","\u2978","\u22d7","\u22db","\u2a8c","\u2277","\u2273","\u2269\ufe00","\u2269\ufe00","\u21d4","\u200a","\xbd","\u210b","\u044a","\u2194","\u2948","\u21ad","\u210f","\u0125","\u2665","\u2665","\u2026","\u22b9","\ud835\udd25","\u2925","\u2926","\u21ff","\u223b","\u21a9","\u21aa","\ud835\udd59","\u2015","\ud835\udcbd","\u210f","\u0127","\u2043","\u2010","\xed","\xed","\u2063","\xee","\xee","\u0438","\u0435","\xa1","\xa1","\u21d4","\ud835\udd26","\xec","\xec","\u2148","\u2a0c","\u222d","\u29dc","\u2129","\u0133","\u012b","\u2111","\u2110","\u2111","\u0131","\u22b7","\u01b5","\u2208","\u2105","\u221e","\u29dd","\u0131","\u222b","\u22ba","\u2124","\u22ba","\u2a17","\u2a3c","\u0451","\u012f","\ud835\udd5a","\u03b9","\u2a3c","\xbf","\xbf","\ud835\udcbe","\u2208","\u22f9","\u22f5","\u22f4","\u22f3","\u2208","\u2062","\u0129","\u0456","\xef","\xef","\u0135","\u0439","\ud835\udd27","\u0237","\ud835\udd5b","\ud835\udcbf","\u0458","\u0454","\u03ba","\u03f0","\u0137","\u043a","\ud835\udd28","\u0138","\u0445","\u045c","\ud835\udd5c","\ud835\udcc0","\u21da","\u21d0","\u291b","\u290e","\u2266","\u2a8b","\u2962","\u013a","\u29b4","\u2112","\u03bb","\u27e8","\u2991","\u27e8","\u2a85","\xab","\xab","\u2190","\u21e4","\u291f","\u291d","\u21a9","\u21ab","\u2939","\u2973","\u21a2","\u2aab","\u2919","\u2aad","\u2aad\ufe00","\u290c","\u2772","{","[","\u298b","\u298f","\u298d","\u013e","\u013c","\u2308","{","\u043b","\u2936","\u201c","\u201e","\u2967","\u294b","\u21b2","\u2264","\u2190","\u21a2","\u21bd","\u21bc","\u21c7","\u2194","\u21c6","\u21cb","\u21ad","\u22cb","\u22da","\u2264","\u2266","\u2a7d","\u2a7d","\u2aa8","\u2a7f","\u2a81","\u2a83","\u22da\ufe00","\u2a93","\u2a85","\u22d6","\u22da","\u2a8b","\u2276","\u2272","\u297c","\u230a","\ud835\udd29","\u2276","\u2a91","\u21bd","\u21bc","\u296a","\u2584","\u0459","\u226a","\u21c7","\u231e","\u296b","\u25fa","\u0140","\u23b0","\u23b0","\u2268","\u2a89","\u2a89","\u2a87","\u2a87","\u2268","\u22e6","\u27ec","\u21fd","\u27e6","\u27f5","\u27f7","\u27fc","\u27f6","\u21ab","\u21ac","\u2985","\ud835\udd5d","\u2a2d","\u2a34","\u2217","_","\u25ca","\u25ca","\u29eb","(","\u2993","\u21c6","\u231f","\u21cb","\u296d","\u200e","\u22bf","\u2039","\ud835\udcc1","\u21b0","\u2272","\u2a8d","\u2a8f","[","\u2018","\u201a","\u0142","<","<","\u2aa6","\u2a79","\u22d6","\u22cb","\u22c9","\u2976","\u2a7b","\u2996","\u25c3","\u22b4","\u25c2","\u294a","\u2966","\u2268\ufe00","\u2268\ufe00","\u223a","\xaf","\xaf","\u2642","\u2720","\u2720","\u21a6","\u21a6","\u21a7","\u21a4","\u21a5","\u25ae","\u2a29","\u043c","\u2014","\u2221","\ud835\udd2a","\u2127","\xb5","\xb5","\u2223","*","\u2af0","\xb7","\xb7","\u2212","\u229f","\u2238","\u2a2a","\u2adb","\u2026","\u2213","\u22a7","\ud835\udd5e","\u2213","\ud835\udcc2","\u223e","\u03bc","\u22b8","\u22b8","\u22d9\u0338","\u226b\u20d2","\u226b\u0338","\u21cd","\u21ce","\u22d8\u0338","\u226a\u20d2","\u226a\u0338","\u21cf","\u22af","\u22ae","\u2207","\u0144","\u2220\u20d2","\u2249","\u2a70\u0338","\u224b\u0338","\u0149","\u2249","\u266e","\u266e","\u2115","\xa0","\xa0","\u224e\u0338","\u224f\u0338","\u2a43","\u0148","\u0146","\u2247","\u2a6d\u0338","\u2a42","\u043d","\u2013","\u2260","\u21d7","\u2924","\u2197","\u2197","\u2250\u0338","\u2262","\u2928","\u2242\u0338","\u2204","\u2204","\ud835\udd2b","\u2267\u0338","\u2271","\u2271","\u2267\u0338","\u2a7e\u0338","\u2a7e\u0338","\u2275","\u226f","\u226f","\u21ce","\u21ae","\u2af2","\u220b","\u22fc","\u22fa","\u220b","\u045a","\u21cd","\u2266\u0338","\u219a","\u2025","\u2270","\u219a","\u21ae","\u2270","\u2266\u0338","\u2a7d\u0338","\u2a7d\u0338","\u226e","\u2274","\u226e","\u22ea","\u22ec","\u2224","\ud835\udd5f","\xac","\xac","\u2209","\u22f9\u0338","\u22f5\u0338","\u2209","\u22f7","\u22f6","\u220c","\u220c","\u22fe","\u22fd","\u2226","\u2226","\u2afd\u20e5","\u2202\u0338","\u2a14","\u2280","\u22e0","\u2aaf\u0338","\u2280","\u2aaf\u0338","\u21cf","\u219b","\u2933\u0338","\u219d\u0338","\u219b","\u22eb","\u22ed","\u2281","\u22e1","\u2ab0\u0338","\ud835\udcc3","\u2224","\u2226","\u2241","\u2244","\u2244","\u2224","\u2226","\u22e2","\u22e3","\u2284","\u2ac5\u0338","\u2288","\u2282\u20d2","\u2288","\u2ac5\u0338","\u2281","\u2ab0\u0338","\u2285","\u2ac6\u0338","\u2289","\u2283\u20d2","\u2289","\u2ac6\u0338","\u2279","\xf1","\xf1","\u2278","\u22ea","\u22ec","\u22eb","\u22ed","\u03bd","#","\u2116","\u2007","\u22ad","\u2904","\u224d\u20d2","\u22ac","\u2265\u20d2",">\u20d2","\u29de","\u2902","\u2264\u20d2","<\u20d2","\u22b4\u20d2","\u2903","\u22b5\u20d2","\u223c\u20d2","\u21d6","\u2923","\u2196","\u2196","\u2927","\u24c8","\xf3","\xf3","\u229b","\u229a","\xf4","\xf4","\u043e","\u229d","\u0151","\u2a38","\u2299","\u29bc","\u0153","\u29bf","\ud835\udd2c","\u02db","\xf2","\xf2","\u29c1","\u29b5","\u03a9","\u222e","\u21ba","\u29be","\u29bb","\u203e","\u29c0","\u014d","\u03c9","\u03bf","\u29b6","\u2296","\ud835\udd60","\u29b7","\u29b9","\u2295","\u2228","\u21bb","\u2a5d","\u2134","\u2134","\xaa","\xaa","\xba","\xba","\u22b6","\u2a56","\u2a57","\u2a5b","\u2134","\xf8","\xf8","\u2298","\xf5","\xf5","\u2297","\u2a36","\xf6","\xf6","\u233d","\u2225","\xb6","\xb6","\u2225","\u2af3","\u2afd","\u2202","\u043f","%",".","\u2030","\u22a5","\u2031","\ud835\udd2d","\u03c6","\u03d5","\u2133","\u260e","\u03c0","\u22d4","\u03d6","\u210f","\u210e","\u210f","+","\u2a23","\u229e","\u2a22","\u2214","\u2a25","\u2a72","\xb1","\xb1","\u2a26","\u2a27","\xb1","\u2a15","\ud835\udd61","\xa3","\xa3","\u227a","\u2ab3","\u2ab7","\u227c","\u2aaf","\u227a","\u2ab7","\u227c","\u2aaf","\u2ab9","\u2ab5","\u22e8","\u227e","\u2032","\u2119","\u2ab5","\u2ab9","\u22e8","\u220f","\u232e","\u2312","\u2313","\u221d","\u221d","\u227e","\u22b0","\ud835\udcc5","\u03c8","\u2008","\ud835\udd2e","\u2a0c","\ud835\udd62","\u2057","\ud835\udcc6","\u210d","\u2a16","?","\u225f",'"','"',"\u21db","\u21d2","\u291c","\u290f","\u2964","\u223d\u0331","\u0155","\u221a","\u29b3","\u27e9","\u2992","\u29a5","\u27e9","\xbb","\xbb","\u2192","\u2975","\u21e5","\u2920","\u2933","\u291e","\u21aa","\u21ac","\u2945","\u2974","\u21a3","\u219d","\u291a","\u2236","\u211a","\u290d","\u2773","}","]","\u298c","\u298e","\u2990","\u0159","\u0157","\u2309","}","\u0440","\u2937","\u2969","\u201d","\u201d","\u21b3","\u211c","\u211b","\u211c","\u211d","\u25ad","\xae","\xae","\u297d","\u230b","\ud835\udd2f","\u21c1","\u21c0","\u296c","\u03c1","\u03f1","\u2192","\u21a3","\u21c1","\u21c0","\u21c4","\u21cc","\u21c9","\u219d","\u22cc","\u02da","\u2253","\u21c4","\u21cc","\u200f","\u23b1","\u23b1","\u2aee","\u27ed","\u21fe","\u27e7","\u2986","\ud835\udd63","\u2a2e","\u2a35",")","\u2994","\u2a12","\u21c9","\u203a","\ud835\udcc7","\u21b1","]","\u2019","\u2019","\u22cc","\u22ca","\u25b9","\u22b5","\u25b8","\u29ce","\u2968","\u211e","\u015b","\u201a","\u227b","\u2ab4","\u2ab8","\u0161","\u227d","\u2ab0","\u015f","\u015d","\u2ab6","\u2aba","\u22e9","\u2a13","\u227f","\u0441","\u22c5","\u22a1","\u2a66","\u21d8","\u2925","\u2198","\u2198","\xa7","\xa7",";","\u2929","\u2216","\u2216","\u2736","\ud835\udd30","\u2322","\u266f","\u0449","\u0448","\u2223","\u2225","\xad","\xad","\u03c3","\u03c2","\u03c2","\u223c","\u2a6a","\u2243","\u2243","\u2a9e","\u2aa0","\u2a9d","\u2a9f","\u2246","\u2a24","\u2972","\u2190","\u2216","\u2a33","\u29e4","\u2223","\u2323","\u2aaa","\u2aac","\u2aac\ufe00","\u044c","/","\u29c4","\u233f","\ud835\udd64","\u2660","\u2660","\u2225","\u2293","\u2293\ufe00","\u2294","\u2294\ufe00","\u228f","\u2291","\u228f","\u2291","\u2290","\u2292","\u2290","\u2292","\u25a1","\u25a1","\u25aa","\u25aa","\u2192","\ud835\udcc8","\u2216","\u2323","\u22c6","\u2606","\u2605","\u03f5","\u03d5","\xaf","\u2282","\u2ac5","\u2abd","\u2286","\u2ac3","\u2ac1","\u2acb","\u228a","\u2abf","\u2979","\u2282","\u2286","\u2ac5","\u228a","\u2acb","\u2ac7","\u2ad5","\u2ad3","\u227b","\u2ab8","\u227d","\u2ab0","\u2aba","\u2ab6","\u22e9","\u227f","\u2211","\u266a","\xb9","\xb9","\xb2","\xb2","\xb3","\xb3","\u2283","\u2ac6","\u2abe","\u2ad8","\u2287","\u2ac4","\u27c9","\u2ad7","\u297b","\u2ac2","\u2acc","\u228b","\u2ac0","\u2283","\u2287","\u2ac6","\u228b","\u2acc","\u2ac8","\u2ad4","\u2ad6","\u21d9","\u2926","\u2199","\u2199","\u292a","\xdf","\xdf","\u2316","\u03c4","\u23b4","\u0165","\u0163","\u0442","\u20db","\u2315","\ud835\udd31","\u2234","\u2234","\u03b8","\u03d1","\u03d1","\u2248","\u223c","\u2009","\u2248","\u223c","\xfe","\xfe","\u02dc","\xd7","\xd7","\u22a0","\u2a31","\u2a30","\u222d","\u2928","\u22a4","\u2336","\u2af1","\ud835\udd65","\u2ada","\u2929","\u2034","\u2122","\u25b5","\u25bf","\u25c3","\u22b4","\u225c","\u25b9","\u22b5","\u25ec","\u225c","\u2a3a","\u2a39","\u29cd","\u2a3b","\u23e2","\ud835\udcc9","\u0446","\u045b","\u0167","\u226c","\u219e","\u21a0","\u21d1","\u2963","\xfa","\xfa","\u2191","\u045e","\u016d","\xfb","\xfb","\u0443","\u21c5","\u0171","\u296e","\u297e","\ud835\udd32","\xf9","\xf9","\u21bf","\u21be","\u2580","\u231c","\u231c","\u230f","\u25f8","\u016b","\xa8","\xa8","\u0173","\ud835\udd66","\u2191","\u2195","\u21bf","\u21be","\u228e","\u03c5","\u03d2","\u03c5","\u21c8","\u231d","\u231d","\u230e","\u016f","\u25f9","\ud835\udcca","\u22f0","\u0169","\u25b5","\u25b4","\u21c8","\xfc","\xfc","\u29a7","\u21d5","\u2ae8","\u2ae9","\u22a8","\u299c","\u03f5","\u03f0","\u2205","\u03d5","\u03d6","\u221d","\u2195","\u03f1","\u03c2","\u228a\ufe00","\u2acb\ufe00","\u228b\ufe00","\u2acc\ufe00","\u03d1","\u22b2","\u22b3","\u0432","\u22a2","\u2228","\u22bb","\u225a","\u22ee","|","|","\ud835\udd33","\u22b2","\u2282\u20d2","\u2283\u20d2","\ud835\udd67","\u221d","\u22b3","\ud835\udccb","\u2acb\ufe00","\u228a\ufe00","\u2acc\ufe00","\u228b\ufe00","\u299a","\u0175","\u2a5f","\u2227","\u2259","\u2118","\ud835\udd34","\ud835\udd68","\u2118","\u2240","\u2240","\ud835\udccc","\u22c2","\u25ef","\u22c3","\u25bd","\ud835\udd35","\u27fa","\u27f7","\u03be","\u27f8","\u27f5","\u27fc","\u22fb","\u2a00","\ud835\udd69","\u2a01","\u2a02","\u27f9","\u27f6","\ud835\udccd","\u2a06","\u2a04","\u25b3","\u22c1","\u22c0","\xfd","\xfd","\u044f","\u0177","\u044b","\xa5","\xa5","\ud835\udd36","\u0457","\ud835\udd6a","\ud835\udcce","\u044e","\xff","\xff","\u017a","\u017e","\u0437","\u017c","\u2128","\u03b6","\ud835\udd37","\u0436","\u21dd","\ud835\udd6b","\ud835\udccf","\u200d","\u200c"],t.o) +B.L_={attributename:0,attributetype:1,basefrequency:2,baseprofile:3,calcmode:4,clippathunits:5,contentscripttype:6,contentstyletype:7,diffuseconstant:8,edgemode:9,externalresourcesrequired:10,filterres:11,filterunits:12,glyphref:13,gradienttransform:14,gradientunits:15,kernelmatrix:16,kernelunitlength:17,keypoints:18,keysplines:19,keytimes:20,lengthadjust:21,limitingconeangle:22,markerheight:23,markerunits:24,markerwidth:25,maskcontentunits:26,maskunits:27,numoctaves:28,pathlength:29,patterncontentunits:30,patterntransform:31,patternunits:32,pointsatx:33,pointsaty:34,pointsatz:35,preservealpha:36,preserveaspectratio:37,primitiveunits:38,refx:39,refy:40,repeatcount:41,repeatdur:42,requiredextensions:43,requiredfeatures:44,specularconstant:45,specularexponent:46,spreadmethod:47,startoffset:48,stddeviation:49,stitchtiles:50,surfacescale:51,systemlanguage:52,tablevalues:53,targetx:54,targety:55,textlength:56,viewbox:57,viewtarget:58,xchannelselector:59,ychannelselector:60,zoomandpan:61} +B.DI=new A.r(B.L_,["attributeName","attributeType","baseFrequency","baseProfile","calcMode","clipPathUnits","contentScriptType","contentStyleType","diffuseConstant","edgeMode","externalResourcesRequired","filterRes","filterUnits","glyphRef","gradientTransform","gradientUnits","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","numOctaves","pathLength","patternContentUnits","patternTransform","patternUnits","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","specularConstant","specularExponent","spreadMethod","startOffset","stdDeviation","stitchTiles","surfaceScale","systemLanguage","tableValues","targetX","targetY","textLength","viewBox","viewTarget","xChannelSelector","yChannelSelector","zoomAndPan"],t.o) +B.L1={"null-character":0,"invalid-codepoint":1,"incorrectly-placed-solidus":2,"incorrect-cr-newline-entity":3,"illegal-windows-1252-entity":4,"cant-convert-numeric-entity":5,"illegal-codepoint-for-numeric-entity":6,"numeric-entity-without-semicolon":7,"expected-numeric-entity-but-got-eof":8,"expected-numeric-entity":9,"named-entity-without-semicolon":10,"expected-named-entity":11,"attributes-in-end-tag":12,"self-closing-flag-on-end-tag":13,"expected-tag-name-but-got-right-bracket":14,"expected-tag-name-but-got-question-mark":15,"expected-tag-name":16,[u.g]:17,"expected-closing-tag-but-got-eof":18,"expected-closing-tag-but-got-char":19,"eof-in-tag-name":20,"expected-attribute-name-but-got-eof":21,"eof-in-attribute-name":22,"invalid-character-in-attribute-name":23,"duplicate-attribute":24,"expected-end-of-tag-name-but-got-eof":25,"expected-attribute-value-but-got-eof":26,[u.F]:27,"equals-in-unquoted-attribute-value":28,[u.V]:29,"invalid-character-after-attribute-name":30,[u.H]:31,"eof-in-attribute-value-double-quote":32,"eof-in-attribute-value-single-quote":33,"eof-in-attribute-value-no-quotes":34,"unexpected-EOF-after-solidus-in-tag":35,[u.B]:36,"expected-dashes-or-doctype":37,[u.x]:38,"unexpected-space-after-double-dash-in-comment":39,"incorrect-comment":40,"eof-in-comment":41,"eof-in-comment-end-dash":42,[u.K]:43,"eof-in-comment-double-dash":44,"eof-in-comment-end-space-state":45,"eof-in-comment-end-bang-state":46,"unexpected-char-in-comment":47,"need-space-after-doctype":48,[u.f]:49,"expected-doctype-name-but-got-eof":50,"eof-in-doctype-name":51,"eof-in-doctype":52,[u.p]:53,"unexpected-end-of-doctype":54,"unexpected-char-in-doctype":55,"eof-in-innerhtml":56,"unexpected-doctype":57,"non-html-root":58,"expected-doctype-but-got-eof":59,"unknown-doctype":60,"expected-doctype-but-got-chars":61,"expected-doctype-but-got-start-tag":62,"expected-doctype-but-got-end-tag":63,"end-tag-after-implied-root":64,"expected-named-closing-tag-but-got-eof":65,"two-heads-are-not-better-than-one":66,"unexpected-end-tag":67,"unexpected-start-tag-out-of-my-head":68,"unexpected-start-tag":69,"missing-end-tag":70,"missing-end-tags":71,"unexpected-start-tag-implies-end-tag":72,"unexpected-start-tag-treated-as":73,"deprecated-tag":74,"unexpected-start-tag-ignored":75,"expected-one-end-tag-but-got-another":76,"end-tag-too-early":77,"end-tag-too-early-named":78,"end-tag-too-early-ignored":79,"adoption-agency-1.1":80,"adoption-agency-1.2":81,"adoption-agency-1.3":82,"unexpected-end-tag-treated-as":83,"no-end-tag":84,"unexpected-implied-end-tag-in-table":85,"unexpected-implied-end-tag-in-table-body":86,"unexpected-char-implies-table-voodoo":87,"unexpected-hidden-input-in-table":88,"unexpected-form-in-table":89,[u.M]:90,"unexpected-end-tag-implies-table-voodoo":91,"unexpected-cell-in-table-body":92,"unexpected-cell-end-tag":93,"unexpected-end-tag-in-table-body":94,"unexpected-implied-end-tag-in-table-row":95,"unexpected-end-tag-in-table-row":96,"unexpected-select-in-select":97,"unexpected-input-in-select":98,"unexpected-start-tag-in-select":99,"unexpected-end-tag-in-select":100,[u.a]:101,[u.r]:102,"unexpected-char-after-body":103,"unexpected-start-tag-after-body":104,"unexpected-end-tag-after-body":105,"unexpected-char-in-frameset":106,"unexpected-start-tag-in-frameset":107,[u.q]:108,"unexpected-end-tag-in-frameset":109,"unexpected-char-after-frameset":110,"unexpected-start-tag-after-frameset":111,"unexpected-end-tag-after-frameset":112,"unexpected-end-tag-after-body-innerhtml":113,"expected-eof-but-got-char":114,"expected-eof-but-got-start-tag":115,"expected-eof-but-got-end-tag":116,"eof-in-table":117,"eof-in-select":118,"eof-in-frameset":119,"eof-in-script-in-script":120,"eof-in-foreign-lands":121,"non-void-element-with-trailing-solidus":122,[u.G]:123,"unexpected-end-tag-before-html":124,"undefined-error":125} +B.fX=new A.r(B.L1,["Null character in input stream, replaced with U+FFFD.","Invalid codepoint in stream.","Solidus (/) incorrectly placed in tag.","Incorrect CR newline entity, replaced with LF.","Entity used with illegal number (windows-1252 reference).","Numeric entity couldn't be converted to character (codepoint U+%(charAsInt)08x).","Numeric entity represents an illegal codepoint: U+%(charAsInt)08x.","Numeric entity didn't end with ';'.","Numeric entity expected. Got end of file instead.","Numeric entity expected but none found.","Named entity didn't end with ';'.","Named entity expected. Got none.","End tag contains unexpected attributes.","End tag contains unexpected self-closing flag.","Expected tag name. Got '>' instead.","Expected tag name. Got '?' instead. (HTML doesn't support processing instructions.)","Expected tag name. Got something else instead","Expected closing tag. Got '>' instead. Ignoring ''.","Expected closing tag. Unexpected end of file.","Expected closing tag. Unexpected character '%(data)s' found.","Unexpected end of file in the tag name.","Unexpected end of file. Expected attribute name instead.","Unexpected end of file in attribute name.","Invalid character in attribute name","Dropped duplicate attribute on tag.","Unexpected end of file. Expected = or end of tag.","Unexpected end of file. Expected attribute value.","Expected attribute value. Got '>' instead.","Unexpected = in unquoted attribute","Unexpected character in unquoted attribute","Unexpected character after attribute name.","Unexpected character after attribute value.",'Unexpected end of file in attribute value (".',"Unexpected end of file in attribute value (').","Unexpected end of file in attribute value.","Unexpected end of file in tag. Expected >","Unexpected character after / in tag. Expected >","Expected '--' or 'DOCTYPE'. Not found.","Unexpected ! after -- in comment","Unexpected space after -- in comment","Incorrect comment.","Unexpected end of file in comment.","Unexpected end of file in comment (-)","Unexpected '-' after '--' found in comment.","Unexpected end of file in comment (--).","Unexpected end of file in comment.","Unexpected end of file in comment.","Unexpected character in comment found.","No space after literal string 'DOCTYPE'.","Unexpected > character. Expected DOCTYPE name.","Unexpected end of file. Expected DOCTYPE name.","Unexpected end of file in DOCTYPE name.","Unexpected end of file in DOCTYPE.","Expected space or '>'. Got '%(data)s'","Unexpected end of DOCTYPE.","Unexpected character in DOCTYPE.","XXX innerHTML EOF","Unexpected DOCTYPE. Ignored.","html needs to be the first start tag.","Unexpected End of file. Expected DOCTYPE.","Erroneous DOCTYPE.","Unexpected non-space characters. Expected DOCTYPE.","Unexpected start tag (%(name)s). Expected DOCTYPE.","Unexpected end tag (%(name)s). Expected DOCTYPE.","Unexpected end tag (%(name)s) after the (implied) root element.","Unexpected end of file. Expected end tag (%(name)s).","Unexpected start tag head in existing head. Ignored.","Unexpected end tag (%(name)s). Ignored.","Unexpected start tag (%(name)s) that can be in head. Moved.","Unexpected start tag (%(name)s).","Missing end tag (%(name)s).","Missing end tags (%(name)s).","Unexpected start tag (%(startName)s) implies end tag (%(endName)s).","Unexpected start tag (%(originalName)s). Treated as %(newName)s.","Unexpected start tag %(name)s. Don't use it!","Unexpected start tag %(name)s. Ignored.","Unexpected end tag (%(gotName)s). Missing end tag (%(expectedName)s).","End tag (%(name)s) seen too early. Expected other end tag.","Unexpected end tag (%(gotName)s). Expected end tag (%(expectedName)s).","End tag (%(name)s) seen too early. Ignored.","End tag (%(name)s) violates step 1, paragraph 1 of the adoption agency algorithm.","End tag (%(name)s) violates step 1, paragraph 2 of the adoption agency algorithm.","End tag (%(name)s) violates step 1, paragraph 3 of the adoption agency algorithm.","Unexpected end tag (%(originalName)s). Treated as %(newName)s.","This element (%(name)s) has no end tag.","Unexpected implied end tag (%(name)s) in the table phase.","Unexpected implied end tag (%(name)s) in the table body phase.","Unexpected non-space characters in table context caused voodoo mode.","Unexpected input with type hidden in table context.","Unexpected form in table context.","Unexpected start tag (%(name)s) in table context caused voodoo mode.","Unexpected end tag (%(name)s) in table context caused voodoo mode.","Unexpected table cell start tag (%(name)s) in the table body phase.","Got table cell end tag (%(name)s) while required end tags are missing.","Unexpected end tag (%(name)s) in the table body phase. Ignored.","Unexpected implied end tag (%(name)s) in the table row phase.","Unexpected end tag (%(name)s) in the table row phase. Ignored.","Unexpected select start tag in the select phase treated as select end tag.","Unexpected input start tag in the select phase.","Unexpected start tag token (%(name)s in the select phase. Ignored.","Unexpected end tag (%(name)s) in the select phase. Ignored.","Unexpected table element start tag (%(name)s) in the select in table phase.","Unexpected table element end tag (%(name)s) in the select in table phase.","Unexpected non-space characters in the after body phase.","Unexpected start tag token (%(name)s) in the after body phase.","Unexpected end tag token (%(name)s) in the after body phase.","Unexpected characters in the frameset phase. Characters ignored.","Unexpected start tag token (%(name)s) in the frameset phase. Ignored.","Unexpected end tag token (frameset) in the frameset phase (innerHTML).","Unexpected end tag token (%(name)s) in the frameset phase. Ignored.","Unexpected non-space characters in the after frameset phase. Ignored.","Unexpected start tag (%(name)s) in the after frameset phase. Ignored.","Unexpected end tag (%(name)s) in the after frameset phase. Ignored.","Unexpected end tag after body(innerHtml)","Unexpected non-space characters. Expected end of file.","Unexpected start tag (%(name)s). Expected end of file.","Unexpected end tag (%(name)s). Expected end of file.","Unexpected end of file. Expected table content.","Unexpected end of file. Expected select content.","Unexpected end of file. Expected frameset content.","Unexpected end of file. Expected script content.","Unexpected end of file. Expected foreign content","Trailing solidus not allowed on element %(name)s","Element %(name)s not allowed in a non-html context","Unexpected end tag (%(name)s) before html.","Undefined error (this sucks and should be fixed)"],t.o) +B.hx=new A.no(!1) +B.cG=new A.ae('"',1,"DOUBLE_QUOTE") +B.Mf=new A.l("",B.cG) +B.LP=new A.l("http://www.w3.org/1999/xhtml","address") +B.hI=new A.l("http://www.w3.org/1999/xhtml","applet") +B.LJ=new A.l("http://www.w3.org/1999/xhtml","area") +B.Me=new A.l("http://www.w3.org/1999/xhtml","article") +B.LV=new A.l("http://www.w3.org/1999/xhtml","aside") +B.LQ=new A.l("http://www.w3.org/1999/xhtml","base") +B.Lz=new A.l("http://www.w3.org/1999/xhtml","basefont") +B.Lu=new A.l("http://www.w3.org/1999/xhtml","bgsound") +B.Lh=new A.l("http://www.w3.org/1999/xhtml","blockquote") +B.LA=new A.l("http://www.w3.org/1999/xhtml","body") +B.Ln=new A.l("http://www.w3.org/1999/xhtml","br") +B.hF=new A.l("http://www.w3.org/1999/xhtml","button") +B.hE=new A.l("http://www.w3.org/1999/xhtml","caption") +B.M7=new A.l("http://www.w3.org/1999/xhtml","center") +B.M6=new A.l("http://www.w3.org/1999/xhtml","col") +B.Ld=new A.l("http://www.w3.org/1999/xhtml","colgroup") +B.Mb=new A.l("http://www.w3.org/1999/xhtml","command") +B.LL=new A.l("http://www.w3.org/1999/xhtml","dd") +B.LS=new A.l("http://www.w3.org/1999/xhtml","details") +B.Le=new A.l("http://www.w3.org/1999/xhtml","dir") +B.Lm=new A.l("http://www.w3.org/1999/xhtml","div") +B.LR=new A.l("http://www.w3.org/1999/xhtml","dl") +B.Lb=new A.l("http://www.w3.org/1999/xhtml","dt") +B.Lo=new A.l("http://www.w3.org/1999/xhtml","embed") +B.M9=new A.l("http://www.w3.org/1999/xhtml","fieldset") +B.La=new A.l("http://www.w3.org/1999/xhtml","figure") +B.M8=new A.l("http://www.w3.org/1999/xhtml","footer") +B.M0=new A.l("http://www.w3.org/1999/xhtml","form") +B.Lf=new A.l("http://www.w3.org/1999/xhtml","frame") +B.LO=new A.l("http://www.w3.org/1999/xhtml","frameset") +B.M_=new A.l("http://www.w3.org/1999/xhtml","h1") +B.Lg=new A.l("http://www.w3.org/1999/xhtml","h2") +B.Lk=new A.l("http://www.w3.org/1999/xhtml","h3") +B.LM=new A.l("http://www.w3.org/1999/xhtml","h4") +B.LN=new A.l("http://www.w3.org/1999/xhtml","h5") +B.LU=new A.l("http://www.w3.org/1999/xhtml","h6") +B.M5=new A.l("http://www.w3.org/1999/xhtml","head") +B.LH=new A.l("http://www.w3.org/1999/xhtml","header") +B.M3=new A.l("http://www.w3.org/1999/xhtml","hr") +B.cA=new A.l("http://www.w3.org/1999/xhtml","html") +B.Li=new A.l("http://www.w3.org/1999/xhtml","iframe") +B.LG=new A.l("http://www.w3.org/1999/xhtml","image") +B.Lc=new A.l("http://www.w3.org/1999/xhtml","img") +B.Mg=new A.l("http://www.w3.org/1999/xhtml","input") +B.Ll=new A.l("http://www.w3.org/1999/xhtml","isindex") +B.M4=new A.l("http://www.w3.org/1999/xhtml","li") +B.LB=new A.l("http://www.w3.org/1999/xhtml","link") +B.Ly=new A.l("http://www.w3.org/1999/xhtml","listing") +B.hD=new A.l("http://www.w3.org/1999/xhtml","marquee") +B.M2=new A.l("http://www.w3.org/1999/xhtml","men") +B.Lj=new A.l("http://www.w3.org/1999/xhtml","meta") +B.LT=new A.l("http://www.w3.org/1999/xhtml","nav") +B.Mc=new A.l("http://www.w3.org/1999/xhtml","noembed") +B.LI=new A.l("http://www.w3.org/1999/xhtml","noframes") +B.Lq=new A.l("http://www.w3.org/1999/xhtml","noscript") +B.hy=new A.l("http://www.w3.org/1999/xhtml","object") +B.hN=new A.l("http://www.w3.org/1999/xhtml","ol") +B.Lr=new A.l("http://www.w3.org/1999/xhtml","p") +B.LK=new A.l("http://www.w3.org/1999/xhtml","param") +B.Lw=new A.l("http://www.w3.org/1999/xhtml","plaintext") +B.Lx=new A.l("http://www.w3.org/1999/xhtml","pre") +B.LY=new A.l("http://www.w3.org/1999/xhtml","script") +B.Lp=new A.l("http://www.w3.org/1999/xhtml","section") +B.Ls=new A.l("http://www.w3.org/1999/xhtml","select") +B.M1=new A.l("http://www.w3.org/1999/xhtml","style") +B.cz=new A.l("http://www.w3.org/1999/xhtml","table") +B.Lt=new A.l("http://www.w3.org/1999/xhtml","tbody") +B.hB=new A.l("http://www.w3.org/1999/xhtml","td") +B.Mh=new A.l("http://www.w3.org/1999/xhtml","textarea") +B.LF=new A.l("http://www.w3.org/1999/xhtml","tfoot") +B.hJ=new A.l("http://www.w3.org/1999/xhtml","th") +B.Md=new A.l("http://www.w3.org/1999/xhtml","thead") +B.LC=new A.l("http://www.w3.org/1999/xhtml","title") +B.LE=new A.l("http://www.w3.org/1999/xhtml","tr") +B.hC=new A.l("http://www.w3.org/1999/xhtml","ul") +B.LX=new A.l("http://www.w3.org/1999/xhtml","wbr") +B.LW=new A.l("http://www.w3.org/1999/xhtml","xmp") +B.cB=new A.l("http://www.w3.org/2000/svg","foreignObject") +B.cC=new A.aO([B.LP,B.hI,B.LJ,B.Me,B.LV,B.LQ,B.Lz,B.Lu,B.Lh,B.LA,B.Ln,B.hF,B.hE,B.M7,B.M6,B.Ld,B.Mb,B.LL,B.LS,B.Le,B.Lm,B.LR,B.Lb,B.Lo,B.M9,B.La,B.M8,B.M0,B.Lf,B.LO,B.M_,B.Lg,B.Lk,B.LM,B.LN,B.LU,B.M5,B.LH,B.M3,B.cA,B.Li,B.LG,B.Lc,B.Mg,B.Ll,B.M4,B.LB,B.Ly,B.hD,B.M2,B.Lj,B.LT,B.Mc,B.LI,B.Lq,B.hy,B.hN,B.Lr,B.LK,B.Lw,B.Lx,B.LY,B.Lp,B.Ls,B.M1,B.cz,B.Lt,B.hB,B.Mh,B.LF,B.hJ,B.Md,B.LC,B.LE,B.hC,B.LX,B.LW,B.cB],t.m) +B.Mi=new A.aO([B.hF],t.m) +B.L6={h1:0,h2:1,h3:2,h4:3,h5:4,h6:5,p:6,div:7,li:8,blockquote:9,pre:10,tr:11,figure:12} +B.Mj=new A.bf(B.L6,13,t.d) +B.Mk=new A.aO([38,62,34,39,61,60,96,32,10,13,9,12],A.Y("aO")) +B.hW=new A.bm(0,"ATTRIBUTE") +B.aB=new A.aO([B.hW],t.fr) +B.bA=new A.bm(1,"CDATA") +B.bD=new A.bm(2,"COMMENT") +B.cH=new A.bm(3,"DECLARATION") +B.cI=new A.bm(4,"DOCUMENT_TYPE") +B.aT=new A.bm(7,"ELEMENT") +B.bB=new A.bm(10,"PROCESSING") +B.bC=new A.bm(11,"TEXT") +B.hO=new A.aO([B.bA,B.bD,B.cH,B.cI,B.aT,B.bB,B.bC],t.fr) +B.hA=new A.l("http://www.w3.org/1998/Math/MathML","mi") +B.hH=new A.l("http://www.w3.org/1998/Math/MathML","mo") +B.hM=new A.l("http://www.w3.org/1998/Math/MathML","mn") +B.hz=new A.l("http://www.w3.org/1998/Math/MathML","ms") +B.hL=new A.l("http://www.w3.org/1998/Math/MathML","mtext") +B.hP=new A.aO([B.hA,B.hH,B.hM,B.hz,B.hL],t.m) +B.KV={style:0,script:1,xmp:2,iframe:3,noembed:4,noframes:5,noscript:6} +B.Ml=new A.bf(B.KV,7,t.d) +B.KZ={table:0,tbody:1,tfoot:2,thead:3,tr:4} +B.hQ=new A.bf(B.KZ,5,t.d) +B.L9={script:0,form:1,iframe:2,object:3,embed:4,input:5,button:6,link:7,style:8,video:9,audio:10,source:11,track:12,use:13} +B.hR=new A.bf(B.L9,14,t.d) +B.cD=new A.bf(B.aS,0,A.Y("bf<+(e,e)>")) +B.Mm=new A.aO([B.hN,B.hC],t.m) +B.bz=new A.aO([B.bA,B.bD,B.aT,B.bB,B.bC],t.fr) +B.L5={em:0,i:1} +B.Mn=new A.bf(B.L5,2,t.d) +B.LZ=new A.l("http://www.w3.org/1999/xhtml","optgroup") +B.Ma=new A.l("http://www.w3.org/1999/xhtml","option") +B.Mo=new A.aO([B.LZ,B.Ma],t.m) +B.L2={strong:0,b:1,th:2} +B.Mp=new A.bf(B.L2,3,t.d) +B.Mq=new A.aO([B.cA,B.cz],t.m) +B.LD=new A.l("http://www.w3.org/1998/Math/MathML","annotation-xml") +B.hK=new A.l("http://www.w3.org/2000/svg","desc") +B.hG=new A.l("http://www.w3.org/2000/svg","title") +B.cE=new A.aO([B.hI,B.hE,B.cA,B.hD,B.hy,B.cz,B.hB,B.hJ,B.hA,B.hH,B.hM,B.hz,B.hL,B.LD,B.cB,B.hK,B.hG],t.m) +B.L4={after:0,before:1,"first-letter":2,"first-line":3} +B.Mr=new A.bf(B.L4,4,t.d) +B.Lv=new A.l("http://www.w3.org/1998/Math/MathML","annotaion-xml") +B.Ms=new A.aO([B.Lv,B.cB,B.hK,B.hG],t.m) +B.KX={h1:0,h2:1,h3:2,h4:3,h5:4,h6:5} +B.hS=new A.bf(B.KX,6,t.d) +B.hT=new A.d3("") +B.hU=new A.cf("_throwNoParent") +B.Mt=new A.cf("call") +B.Mu=A.c7("zE") +B.Mv=A.c7("zF") +B.Mw=A.c7("vH") +B.Mx=A.c7("vI") +B.My=A.c7("vO") +B.Mz=A.c7("iP") +B.MA=A.c7("vP") +B.MB=A.c7("p") +B.MC=A.c7("qi") +B.MD=A.c7("qj") +B.ME=A.c7("wO") +B.MF=A.c7("jX") +B.hV=new A.k3(!1) +B.MG=new A.ae("'",0,"SINGLE_QUOTE") +B.MH=new A.bm(5,"DOCUMENT") +B.hX=new A.bm(6,"DOCUMENT_FRAGMENT") +B.aC=new A.h7(0,"none") +B.hY=new A.h7(1,"zipCrypto") +B.hZ=new A.h7(2,"aes")})();(function staticFields(){$.oM=null +$.bF=A.i([],A.Y("y

")) +$.rJ=null +$.rc=null +$.rb=null +$.uq=null +$.ub=null +$.uC=null +$.ps=null +$.pC=null +$.qQ=null +$.oR=A.i([],A.Y("y?>")) +$.eF=null +$.hD=null +$.hE=null +$.qH=!1 +$.am=B.a3 +$.tg=null +$.th=null +$.ti=null +$.tj=null +$.qn=A.oy("_lastQuoRemDigits") +$.qo=A.oy("_lastQuoRemUsed") +$.h9=A.oy("_lastRemUsed") +$.qp=A.oy("_lastRem_nsh") +$.t1="" +$.t2=null +$.aL=A.i([4294967295,2147483647,1073741823,536870911,268435455,134217727,67108863,33554431,16777215,8388607,4194303,2097151,1048575,524287,262143,131071,65535,32767,16383,8191,4095,2047,1023,511,255,127,63,31,15,7,3,1,0],t.Z) +$.eE=A.tm() +$.cY=null +$.tV=null +$.pa=null})();(function lazyInitializers(){var s=hunkHelpers.lazyFinal +s($,"zG","qZ",()=>A.z2("_$dart_dartClosure")) +s($,"Af","v8",()=>A.i([new J.iT()],A.Y("y"))) +s($,"zR","uP",()=>A.cD(A.nN({ +toString:function(){return"$receiver$"}}))) +s($,"zS","uQ",()=>A.cD(A.nN({$method$:null, +toString:function(){return"$receiver$"}}))) +s($,"zT","uR",()=>A.cD(A.nN(null))) +s($,"zU","uS",()=>A.cD(function(){var $argumentsExpr$="$arguments$" +try{null.$method$($argumentsExpr$)}catch(r){return r.message}}())) +s($,"zX","uV",()=>A.cD(A.nN(void 0))) +s($,"zY","uW",()=>A.cD(function(){var $argumentsExpr$="$arguments$" +try{(void 0).$method$($argumentsExpr$)}catch(r){return r.message}}())) +s($,"zW","uU",()=>A.cD(A.rZ(null))) +s($,"zV","uT",()=>A.cD(function(){try{null.$method$}catch(r){return r.message}}())) +s($,"A_","uY",()=>A.cD(A.rZ(void 0))) +s($,"zZ","uX",()=>A.cD(function(){try{(void 0).$method$}catch(r){return r.message}}())) +s($,"A0","r0",()=>A.wZ()) +s($,"Aa","v4",()=>A.mL(4096)) +s($,"A8","v2",()=>new A.p_().$0()) +s($,"A9","v3",()=>new A.oZ().$0()) +s($,"A1","uZ",()=>A.w3(A.hC(A.i([-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-1,-2,-2,-2,-2,-2,62,-2,62,-2,63,52,53,54,55,56,57,58,59,60,61,-2,-2,-2,-1,-2,-2,-2,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-2,-2,-2,-2,63,-2,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,-2,-2,-2,-2,-2],t.Z)))) +s($,"A7","c8",()=>A.kx(0)) +s($,"A5","dR",()=>A.kx(1)) +s($,"A6","v1",()=>A.kx(2)) +s($,"A4","r1",()=>$.dR().bT(0)) +s($,"A2","v_",()=>A.kx(1e4)) +s($,"A3","v0",()=>A.mL(8)) +s($,"Ac","lA",()=>A.ly(B.MB)) +s($,"zB","dc",()=>A.mL(0)) +s($,"zD","uK",()=>A.mL(0)) +s($,"zC","uJ",()=>A.w2(0)) +s($,"zI","uM",()=>A.iw(B.jm)) +s($,"zH","uL",()=>A.iw(B.iV)) +s($,"Ai","pT",()=>new A.lL($.r_())) +s($,"zN","uN",()=>new A.jA(A.a4("/",!0),A.a4("[^/]$",!0),A.a4("^/",!0))) +s($,"zP","lz",()=>new A.k7(A.a4("[/\\\\]",!0),A.a4("[^/\\\\]$",!0),A.a4("^(\\\\\\\\[^\\\\]+\\\\[^\\\\/]+|[a-zA-Z]:[/\\\\])",!0),A.a4("^[/\\\\](?![/\\\\])",!0))) +s($,"zO","hF",()=>new A.k1(A.a4("/",!0),A.a4("(^[a-zA-Z][-+.a-zA-Z\\d]*://|[^/])$",!0),A.a4("[a-zA-Z][-+.a-zA-Z\\d]*://[^/]*",!0),A.a4("^/",!0))) +s($,"zM","r_",()=>A.wM()) +s($,"zQ","uO",()=>new A.jf("newline expected")) +s($,"Ad","v6",()=>A.tU(!1)) +s($,"Ae","v7",()=>A.tU(!0)) +s($,"Ah","r2",()=>A.a4("[&<\\u0001-\\u0008\\u000b\\u000c\\u000e-\\u001f\\u007f-\\u0084\\u0086-\\u009f]|]]>",!0)) +s($,"Ag","v9",()=>A.a4("['&<\\n\\r\\t\\u0001-\\u0008\\u000b\\u000c\\u000e-\\u001f\\u007f-\\u0084\\u0086-\\u009f]",!0)) +s($,"Ab","v5",()=>A.a4('["&<\\n\\r\\t\\u0001-\\u0008\\u000b\\u000c\\u000e-\\u001f\\u007f-\\u0084\\u0086-\\u009f]',!0)) +s($,"Ak","va",()=>new A.k8(new A.pt(),5,A.aC(t.j7,A.Y("n")),A.Y("k8>")))})();(function nativeSupport(){!function(){var s=function(a){var m={} +m[a]=1 +return Object.keys(hunkHelpers.convertToFastObject(m))[0]} +v.getIsolateTag=function(a){return s("___dart_"+a+v.isolateTag)} +var r="___dart_isolate_tags_" +var q=Object[r]||(Object[r]=Object.create(null)) +var p="_ZxYxX" +for(var o=0;;o++){var n=s(p+"_"+o+"_") +if(!(n in q)){q[n]=1 +v.isolateTag=n +break}}v.dispatchPropertyName=v.getIsolateTag("dispatch_record")}() +hunkHelpers.setOrUpdateInterceptorsByTag({ArrayBuffer:A.du,SharedArrayBuffer:A.du,ArrayBufferView:A.fu,DataView:A.j6,Float32Array:A.j7,Float64Array:A.j8,Int16Array:A.j9,Int32Array:A.ja,Int8Array:A.jb,Uint16Array:A.jc,Uint32Array:A.fv,Uint8ClampedArray:A.fw,CanvasPixelArray:A.fw,Uint8Array:A.dv}) +hunkHelpers.setOrUpdateLeafTags({ArrayBuffer:true,SharedArrayBuffer:true,ArrayBufferView:false,DataView:true,Float32Array:true,Float64Array:true,Int16Array:true,Int32Array:true,Int8Array:true,Uint16Array:true,Uint32Array:true,Uint8ClampedArray:true,CanvasPixelArray:true,Uint8Array:false}) +A.aW.$nativeSuperclassTag="ArrayBufferView" +A.hh.$nativeSuperclassTag="ArrayBufferView" +A.hi.$nativeSuperclassTag="ArrayBufferView" +A.ft.$nativeSuperclassTag="ArrayBufferView" +A.hj.$nativeSuperclassTag="ArrayBufferView" +A.hk.$nativeSuperclassTag="ArrayBufferView" +A.by.$nativeSuperclassTag="ArrayBufferView"})() +Function.prototype.$1=function(a){return this(a)} +Function.prototype.$2=function(a,b){return this(a,b)} +Function.prototype.$0=function(){return this()} +Function.prototype.$2$0=function(){return this()} +Function.prototype.$1$1=function(a){return this(a)} +Function.prototype.$3=function(a,b,c){return this(a,b,c)} +Function.prototype.$4=function(a,b,c,d){return this(a,b,c,d)} +Function.prototype.$1$0=function(){return this()} +Function.prototype.$5=function(a,b,c,d,e){return this(a,b,c,d,e)} +Function.prototype.$8=function(a,b,c,d,e,f,g,h){return this(a,b,c,d,e,f,g,h)} +convertAllToFastObject(w) +convertToFastObject($);(function(a){if(typeof document==="undefined"){a(null) +return}if(typeof document.currentScript!="undefined"){a(document.currentScript) +return}var s=document.scripts +function onLoad(b){for(var q=0;qe?5487-9_=2<@Sd)H0kx-?vfhKL!5cGz22sC9yteM&{!G8Vhlnz!7oEoW7 z?LPbYxp6wv$4OV*`Ah%@z1*QoT*%^5?ln#Ac~mE69SU`KcK=n z&skE!!n5$e?tR+dF{9q)2E4N*gt|;Zl!ZcQ#p%4NB$Fe(hXqHx$2s^e$9ywY>RqwI z;;8D0#t8c&U|@Np2&srRH<+yi|LCnHkX^ICsC;ccpg*AMN>eEL$wo1ACIVa+;*|Nw zj8B}fn|p|}`~cXxTZlInBP@nP*YhoedI17-3f`RsjbmaxCO)>1x>NI4J-1;ksqZz^ zlU=j7q29fso=!#0-@f{=p`PrTy$$u=74>vNYyL{TJ-^O;w={PA$SJ@X$x>Bcp49eR znQSG`=4W51lyMN8@xKMVAn*c6;p9UyT9BW70XCrF6E6OehR+RfL>oRY#LJ@L3;1Ph z536Y6`n}88Fg&Zz6f)bY!rnvk><5R4jw@C{-#NcDuSCIcVo5Ti>BJirOqS-81(@7q9TmzFb23vD^7B%43lh^) z6#^0qDvL^s6;e`j^Cu@VNlmV06q?-4Y|Usk`2@3TmZ7PF0SGAMDR6-q1_nkZh8SYT z7Ul@ClA^@SoYW#N8yf}v;LNI21v3Txp!|HGYZMF=f)woRxQa^>i%KerQq#ChOwGAe JRbBnvxB%OmGZX*- diff --git a/example/assets/reading_lab.epub b/example/assets/reading_lab.epub new file mode 100644 index 0000000000000000000000000000000000000000..6daf05c731ad0ea625087c18e6e01cbe7963246f GIT binary patch literal 39459 zcmeHPPmj|^6c3bEXe)$}5FEISd}_tUUgs|xIfjKUEdq8UNI$^D9>=4#J;olBgi|kk zgi5X0V{d!{`Vo5Ug&QY60TKtqfxemi&n^{JkIz|6HnwNp%zN{DGrwe{U+?}`=Pp;~ zFF{{!t1DH`Ly39J04}#?#(f%a8A_9>0Yas$7BcaKFD-y?1ce z@25iTI_r&j6uw2Jl_ORtF-E`OEQXGGH|LJU{qRJ(R%ZYwZ2?=3| zCw!g^yT;G`yVV;yMzh|R5voD(NRjX-1*>u&yx;+6S=Sf{aRfKOpIP)mDbtQ+jYcDr z`)Oc`Y-rVXcG{NmT7?ScnEF)GX@idMb&Xk@w8$b|-}fvQF%|6GvQ67k?TF)hon_C2 z`^(PVl%|uc$g4w|!Pu%1laghQwbo*8Lvk50w;wX{qpnRJENf4n%{uckMy1Hy-qbjG zEDN6tZFT-=Rx_f>uz<;OS)v~=u4m6PJ`82<_KE@En)o6Hh!P*Be+qK)-JLr--|LpM znh+*y9w!|$n(%<-Qv1Lqi?#cSH#SI^v7l>6;hFmKbD$bmeK~*{Gd!t*E$oPdE$pzd zwBXtthZ2DIS&Zt(r`eJtv1SXd|C=pveCe!{r;yA9yz3guJy#DJJO=-@-)iWP9m?xzkSeB#}CkBy+5p z`9&1~8PTgPI6(3Y=1|pGftRKGwdNh49EC>H$|!1jB{(^X0McC#+IwfOGa+YY=I)V*1(HzWg_LJxz!F#%L){3rY6v^n-6o@uWssv50syiV2K>l02qSMA8uOOlac6oe^vz&{2LQMQV~gk}5kAHhpr$ zSeg?K;Q`2b+9}x5iNj)-#c8N0fn&jiHss_o6Uoqx87x=H5Eh&1HAGb}?J_8O*j?s5&E%XNG%H}JXK z#OHDgpUZ80F5kfC@-9A??Hz$&DCZFf z1A^=hs1C&u^n~UTLiy3Eg3%ojGo^WykclWjZYVK{>OiUC zX)8+3=Sjht1OcxM;j^k+4MsfV% z{im~)iYk}ZY&<$ssT}U#?mgB9SRzf42Aj=$*Pg$)2u)SFu-5#SbMxj>cxK{_H=Evi zeemiHh&QRC{9eBP{ASUVjim+JN#`V`0H@Z!a@+LcmHd!U8#Hne`E0P I*Wc9DKQ>6`ApigX literal 0 HcmV?d00001 diff --git a/example/assets/the_garden_letter.epub b/example/assets/the_garden_letter.epub index 40de6dabefe214a35101669539e9395f044eff1b..28288180a1638a7dbd4a87da5286a857a4d25027 100644 GIT binary patch delta 146 zcmdlkwpVP!2{ulvDE*9VMh1rL%@^597&R5R6m0a9@>449xNP(@N^*1T0=$`7L>ORT zU9nK68c?~~=4=jqMn;9rGdM*V5r$0O#$_o3R|8as&$*|BSP8a aJzSR3a1}sRA`HkNWU>IaI@?N4kQe||AQig+ diff --git a/example/ios/Flutter/Debug.xcconfig b/example/ios/Flutter/Debug.xcconfig index 592ceee..ec97fc6 100644 --- a/example/ios/Flutter/Debug.xcconfig +++ b/example/ios/Flutter/Debug.xcconfig @@ -1 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig" #include "Generated.xcconfig" diff --git a/example/ios/Flutter/Release.xcconfig b/example/ios/Flutter/Release.xcconfig index 592ceee..c4855bf 100644 --- a/example/ios/Flutter/Release.xcconfig +++ b/example/ios/Flutter/Release.xcconfig @@ -1 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig" #include "Generated.xcconfig" diff --git a/example/ios/Podfile b/example/ios/Podfile new file mode 100644 index 0000000..2dbf7d7 --- /dev/null +++ b/example/ios/Podfile @@ -0,0 +1,43 @@ +# Uncomment this line to define a global platform for your project +platform :ios, '13.0' + +# CocoaPods analytics sends network stats synchronously affecting flutter build latency. +ENV['COCOAPODS_DISABLE_STATS'] = 'true' + +project 'Runner', { + 'Debug' => :debug, + 'Profile' => :release, + 'Release' => :release, +} + +def flutter_root + generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'Generated.xcconfig'), __FILE__) + unless File.exist?(generated_xcode_build_settings_path) + raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure flutter pub get is executed first" + end + + File.foreach(generated_xcode_build_settings_path) do |line| + matches = line.match(/FLUTTER_ROOT\=(.*)/) + return matches[1].strip if matches + end + raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Generated.xcconfig, then run flutter pub get" +end + +require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root) + +flutter_ios_podfile_setup + +target 'Runner' do + use_frameworks! + + flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__)) + target 'RunnerTests' do + inherit! :search_paths + end +end + +post_install do |installer| + installer.pods_project.targets.each do |target| + flutter_additional_ios_build_settings(target) + end +end diff --git a/example/lib/main.dart b/example/lib/main.dart index 1f75dcc..f4a7f00 100644 --- a/example/lib/main.dart +++ b/example/lib/main.dart @@ -1,3 +1,4 @@ +import 'package:file_selector/file_selector.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:papyrus_reader/papyrus_reader.dart'; @@ -7,9 +8,10 @@ void main() { } final class PapyrusReaderDemoApp extends StatefulWidget { - const PapyrusReaderDemoApp({this.memory, super.key}); + const PapyrusReaderDemoApp({this.memory, this.registry, super.key}); final DemoReaderMemory? memory; + final ReaderEngineRegistry? registry; @override State createState() => _PapyrusReaderDemoAppState(); @@ -43,6 +45,7 @@ final class _PapyrusReaderDemoAppState extends State { }); }, memory: _memory, + registry: widget.registry, ), ); } @@ -84,6 +87,7 @@ final class _DemoLibrary extends StatelessWidget { required this.isDark, required this.toggleTheme, required this.memory, + this.registry, }); static const documents = [ @@ -98,12 +102,23 @@ final class _DemoLibrary extends StatelessWidget { icon: Icons.auto_stories_rounded, actionLabel: 'Read EPUB', ), + _DemoDocument( + id: 'reading-lab', + title: 'The Reading Lab', + author: 'Papyrus Studio', + description: + 'Long chapters with rich text for testing page turns, reflow and resume.', + format: ReaderFormat.epub, + assetPath: 'assets/reading_lab.epub', + icon: Icons.chrome_reader_mode_rounded, + actionLabel: 'Explore layouts', + ), _DemoDocument( id: 'tiny-pdf', title: 'A Tiny PDF', author: 'Papyrus Studio', description: - 'One valid, pocket-sized page for trying fixed document reading.', + 'Three pocket-sized pages for trying navigation and PDF resume.', format: ReaderFormat.pdf, assetPath: 'assets/a_tiny_pdf.pdf', icon: Icons.picture_as_pdf_rounded, @@ -114,6 +129,7 @@ final class _DemoLibrary extends StatelessWidget { final bool isDark; final VoidCallback toggleTheme; final DemoReaderMemory memory; + final ReaderEngineRegistry? registry; @override Widget build(BuildContext context) { @@ -123,6 +139,11 @@ final class _DemoLibrary extends StatelessWidget { appBar: AppBar( title: const Text('Papyrus Reader'), actions: [ + IconButton( + tooltip: 'Open a book', + icon: const Icon(Icons.folder_open_rounded), + onPressed: () => _openFile(context), + ), IconButton( tooltip: isDark ? 'Use light theme' : 'Use dark theme', onPressed: toggleTheme, @@ -251,6 +272,7 @@ final class _DemoLibrary extends StatelessWidget { MaterialPageRoute( builder: (context) => PapyrusReader( document: readerDocument, + registry: registry, initialLocator: memory.locatorFor(demo.id), initialPreferences: memory.preferencesFor(demo.id), onBack: () => Navigator.of(context).pop(), @@ -262,6 +284,58 @@ final class _DemoLibrary extends StatelessWidget { ); } + Future _openFile(BuildContext context) async { + try { + final file = await openFile( + acceptedTypeGroups: const [ + XTypeGroup( + label: 'Books', + extensions: ['epub', 'pdf'], + mimeTypes: ['application/epub+zip', 'application/pdf'], + uniformTypeIdentifiers: [ + 'org.idpf.epub-container', + 'com.adobe.pdf', + ], + ), + ], + ); + if (file == null || !context.mounted) return; + final extension = file.name.split('.').last.toLowerCase(); + if (extension != 'epub' && extension != 'pdf') { + throw const FormatException('Choose an EPUB or PDF document.'); + } + final id = + 'file:${file.name}:${await file.length()}:${await file.lastModified()}'; + if (!context.mounted) return; + final document = ReaderDocument( + id: id, + title: file.name, + format: extension == 'epub' ? ReaderFormat.epub : ReaderFormat.pdf, + loadBytes: file.readAsBytes, + ); + Navigator.of(context).push( + MaterialPageRoute( + builder: (context) => PapyrusReader( + document: document, + registry: registry, + initialLocator: memory.locatorFor(id), + initialPreferences: memory.preferencesFor(id), + onLocatorChanged: (locator) => memory.saveLocator(id, locator), + onPreferencesChanged: (preferences) => + memory.savePreferences(id, preferences), + onBack: () => Navigator.of(context).pop(), + ), + ), + ); + } catch (error) { + if (context.mounted) { + ScaffoldMessenger.of(context).showSnackBar( + SnackBar(content: Text('Could not open the file: $error')), + ); + } + } + } + Future _loadAsset(String path) async { final data = await rootBundle.load(path); diff --git a/example/linux/flutter/generated_plugin_registrant.cc b/example/linux/flutter/generated_plugin_registrant.cc index f6f23bf..7299b5c 100644 --- a/example/linux/flutter/generated_plugin_registrant.cc +++ b/example/linux/flutter/generated_plugin_registrant.cc @@ -6,9 +6,13 @@ #include "generated_plugin_registrant.h" +#include #include void fl_register_plugins(FlPluginRegistry* registry) { + g_autoptr(FlPluginRegistrar) file_selector_linux_registrar = + fl_plugin_registry_get_registrar_for_plugin(registry, "FileSelectorPlugin"); + file_selector_plugin_register_with_registrar(file_selector_linux_registrar); g_autoptr(FlPluginRegistrar) url_launcher_linux_registrar = fl_plugin_registry_get_registrar_for_plugin(registry, "UrlLauncherPlugin"); url_launcher_plugin_register_with_registrar(url_launcher_linux_registrar); diff --git a/example/linux/flutter/generated_plugins.cmake b/example/linux/flutter/generated_plugins.cmake index df8d2f7..886932b 100644 --- a/example/linux/flutter/generated_plugins.cmake +++ b/example/linux/flutter/generated_plugins.cmake @@ -3,6 +3,7 @@ # list(APPEND FLUTTER_PLUGIN_LIST + file_selector_linux url_launcher_linux ) diff --git a/example/macos/Flutter/Flutter-Debug.xcconfig b/example/macos/Flutter/Flutter-Debug.xcconfig index c2efd0b..4b81f9b 100644 --- a/example/macos/Flutter/Flutter-Debug.xcconfig +++ b/example/macos/Flutter/Flutter-Debug.xcconfig @@ -1 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig" #include "ephemeral/Flutter-Generated.xcconfig" diff --git a/example/macos/Flutter/Flutter-Release.xcconfig b/example/macos/Flutter/Flutter-Release.xcconfig index c2efd0b..5caa9d1 100644 --- a/example/macos/Flutter/Flutter-Release.xcconfig +++ b/example/macos/Flutter/Flutter-Release.xcconfig @@ -1 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig" #include "ephemeral/Flutter-Generated.xcconfig" diff --git a/example/macos/Flutter/GeneratedPluginRegistrant.swift b/example/macos/Flutter/GeneratedPluginRegistrant.swift index aeb0eb5..4388b7e 100644 --- a/example/macos/Flutter/GeneratedPluginRegistrant.swift +++ b/example/macos/Flutter/GeneratedPluginRegistrant.swift @@ -5,10 +5,12 @@ import FlutterMacOS import Foundation +import file_selector_macos import pdfium_flutter import url_launcher_macos func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { + FileSelectorPlugin.register(with: registry.registrar(forPlugin: "FileSelectorPlugin")) PDFiumFlutterPlugin.register(with: registry.registrar(forPlugin: "PDFiumFlutterPlugin")) UrlLauncherPlugin.register(with: registry.registrar(forPlugin: "UrlLauncherPlugin")) } diff --git a/example/macos/Podfile b/example/macos/Podfile new file mode 100644 index 0000000..c727d8f --- /dev/null +++ b/example/macos/Podfile @@ -0,0 +1,48 @@ +platform :osx, '12.0' + +# CocoaPods analytics sends network stats synchronously affecting flutter build latency. +ENV['COCOAPODS_DISABLE_STATS'] = 'true' + +project 'Runner', { + 'Debug' => :debug, + 'Profile' => :release, + 'Release' => :release, +} + +def flutter_root + generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'ephemeral', 'Flutter-Generated.xcconfig'), __FILE__) + unless File.exist?(generated_xcode_build_settings_path) + raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure \"flutter pub get\" is executed first" + end + + File.foreach(generated_xcode_build_settings_path) do |line| + matches = line.match(/FLUTTER_ROOT\=(.*)/) + return matches[1].strip if matches + end + raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Flutter-Generated.xcconfig, then run \"flutter pub get\"" +end + +require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root) + +flutter_macos_podfile_setup + +target 'Runner' do + use_frameworks! + + flutter_install_all_macos_pods File.dirname(File.realpath(__FILE__)) + target 'RunnerTests' do + inherit! :search_paths + end +end + +post_install do |installer| + installer.pods_project.targets.each do |target| + flutter_additional_macos_build_settings(target) + target.build_configurations.each do |config| + deployment = config.build_settings['MACOSX_DEPLOYMENT_TARGET'] || '12.0' + if Gem::Version.new(deployment) < Gem::Version.new('12.0') + config.build_settings['MACOSX_DEPLOYMENT_TARGET'] = '12.0' + end + end + end +end diff --git a/example/macos/Podfile.lock b/example/macos/Podfile.lock new file mode 100644 index 0000000..5e1f9eb --- /dev/null +++ b/example/macos/Podfile.lock @@ -0,0 +1,35 @@ +PODS: + - file_selector_macos (0.0.1): + - FlutterMacOS + - FlutterMacOS (1.0.0) + - pdfium_flutter (0.1.5): + - Flutter + - FlutterMacOS + - url_launcher_macos (0.0.1): + - FlutterMacOS + +DEPENDENCIES: + - file_selector_macos (from `Flutter/ephemeral/.symlinks/plugins/file_selector_macos/macos`) + - FlutterMacOS (from `Flutter/ephemeral`) + - pdfium_flutter (from `Flutter/ephemeral/.symlinks/plugins/pdfium_flutter/darwin`) + - url_launcher_macos (from `Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos`) + +EXTERNAL SOURCES: + file_selector_macos: + :path: Flutter/ephemeral/.symlinks/plugins/file_selector_macos/macos + FlutterMacOS: + :path: Flutter/ephemeral + pdfium_flutter: + :path: Flutter/ephemeral/.symlinks/plugins/pdfium_flutter/darwin + url_launcher_macos: + :path: Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos + +SPEC CHECKSUMS: + file_selector_macos: 9e9e068e90ebee155097d00e89ae91edb2374db7 + FlutterMacOS: d0db08ddef1a9af05a5ec4b724367152bb0500b1 + pdfium_flutter: e5a6e881af0b182d5b0465ebad23a8a20caa28d4 + url_launcher_macos: f87a979182d112f911de6820aefddaf56ee9fbfd + +PODFILE CHECKSUM: ce552befa68f57b849fe24b017f3db61d5a65e10 + +COCOAPODS: 1.17.0 diff --git a/example/macos/Runner.xcodeproj/project.pbxproj b/example/macos/Runner.xcodeproj/project.pbxproj index 1bcbba9..d81a37b 100644 --- a/example/macos/Runner.xcodeproj/project.pbxproj +++ b/example/macos/Runner.xcodeproj/project.pbxproj @@ -21,12 +21,14 @@ /* End PBXAggregateTarget section */ /* Begin PBXBuildFile section */ + 13597345A5CA0AE2228D1C3D /* Pods_RunnerTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D6D6E77DBB1617AA722CA732 /* Pods_RunnerTests.framework */; }; 331C80D8294CF71000263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C80D7294CF71000263BE5 /* RunnerTests.swift */; }; 335BBD1B22A9A15E00E9071D /* GeneratedPluginRegistrant.swift in Sources */ = {isa = PBXBuildFile; fileRef = 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */; }; 33CC10F12044A3C60003C045 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC10F02044A3C60003C045 /* AppDelegate.swift */; }; 33CC10F32044A3C60003C045 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F22044A3C60003C045 /* Assets.xcassets */; }; 33CC10F62044A3C60003C045 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F42044A3C60003C045 /* MainMenu.xib */; }; 33CC11132044BFA00003C045 /* MainFlutterWindow.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */; }; + 59D8C755B7676FAEC403DF1A /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 67CEDD788E4936C71A0C0003 /* Pods_Runner.framework */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -60,11 +62,13 @@ /* End PBXCopyFilesBuildPhase section */ /* Begin PBXFileReference section */ + 07A035574FD9341A7163E6AC /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = ""; }; + 1A0B2D79FEFDA189A06CE1BB /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = ""; }; 331C80D5294CF71000263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 331C80D7294CF71000263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; 333000ED22D3DE5D00554162 /* Warnings.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Warnings.xcconfig; sourceTree = ""; }; 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GeneratedPluginRegistrant.swift; sourceTree = ""; }; - 33CC10ED2044A3C60003C045 /* papyrus_reader_example.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "papyrus_reader_example.app"; sourceTree = BUILT_PRODUCTS_DIR; }; + 33CC10ED2044A3C60003C045 /* papyrus_reader_example.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = papyrus_reader_example.app; sourceTree = BUILT_PRODUCTS_DIR; }; 33CC10F02044A3C60003C045 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; 33CC10F22044A3C60003C045 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Assets.xcassets; path = Runner/Assets.xcassets; sourceTree = ""; }; 33CC10F52044A3C60003C045 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = ""; }; @@ -76,8 +80,14 @@ 33E51913231747F40026EE4D /* DebugProfile.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = DebugProfile.entitlements; sourceTree = ""; }; 33E51914231749380026EE4D /* Release.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = Release.entitlements; sourceTree = ""; }; 33E5194F232828860026EE4D /* AppInfo.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = AppInfo.xcconfig; sourceTree = ""; }; + 49D12EF61E047B6385236497 /* Pods-RunnerTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.debug.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.debug.xcconfig"; sourceTree = ""; }; + 67CEDD788E4936C71A0C0003 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Release.xcconfig; sourceTree = ""; }; + 8013070A816FFEADA059F195 /* Pods-RunnerTests.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.profile.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.profile.xcconfig"; sourceTree = ""; }; 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Debug.xcconfig; sourceTree = ""; }; + 992D4367870FCCA4F7089224 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = ""; }; + C806DE37B721419A9762609A /* Pods-RunnerTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.release.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.release.xcconfig"; sourceTree = ""; }; + D6D6E77DBB1617AA722CA732 /* Pods_RunnerTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_RunnerTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -85,6 +95,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 13597345A5CA0AE2228D1C3D /* Pods_RunnerTests.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -92,6 +103,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 59D8C755B7676FAEC403DF1A /* Pods_Runner.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -125,6 +137,7 @@ 331C80D6294CF71000263BE5 /* RunnerTests */, 33CC10EE2044A3C60003C045 /* Products */, D73912EC22F37F3D000D13A0 /* Frameworks */, + 5EF9122BB5DDB189D2C2E11B /* Pods */, ); sourceTree = ""; }; @@ -172,9 +185,25 @@ path = Runner; sourceTree = ""; }; + 5EF9122BB5DDB189D2C2E11B /* Pods */ = { + isa = PBXGroup; + children = ( + 1A0B2D79FEFDA189A06CE1BB /* Pods-Runner.debug.xcconfig */, + 07A035574FD9341A7163E6AC /* Pods-Runner.release.xcconfig */, + 992D4367870FCCA4F7089224 /* Pods-Runner.profile.xcconfig */, + 49D12EF61E047B6385236497 /* Pods-RunnerTests.debug.xcconfig */, + C806DE37B721419A9762609A /* Pods-RunnerTests.release.xcconfig */, + 8013070A816FFEADA059F195 /* Pods-RunnerTests.profile.xcconfig */, + ); + name = Pods; + path = Pods; + sourceTree = ""; + }; D73912EC22F37F3D000D13A0 /* Frameworks */ = { isa = PBXGroup; children = ( + 67CEDD788E4936C71A0C0003 /* Pods_Runner.framework */, + D6D6E77DBB1617AA722CA732 /* Pods_RunnerTests.framework */, ); name = Frameworks; sourceTree = ""; @@ -186,6 +215,7 @@ isa = PBXNativeTarget; buildConfigurationList = 331C80DE294CF71000263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; buildPhases = ( + 486CF6E85D98C787CCA1E5AE /* [CP] Check Pods Manifest.lock */, 331C80D1294CF70F00263BE5 /* Sources */, 331C80D2294CF70F00263BE5 /* Frameworks */, 331C80D3294CF70F00263BE5 /* Resources */, @@ -204,11 +234,13 @@ isa = PBXNativeTarget; buildConfigurationList = 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */; buildPhases = ( + BCC713718085C01E0FE42F8A /* [CP] Check Pods Manifest.lock */, 33CC10E92044A3C60003C045 /* Sources */, 33CC10EA2044A3C60003C045 /* Frameworks */, 33CC10EB2044A3C60003C045 /* Resources */, 33CC110E2044A8840003C045 /* Bundle Framework */, 3399D490228B24CF009A79C7 /* ShellScript */, + F3A7E6C7CF7D9A8AE455CF78 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -329,6 +361,67 @@ shellPath = /bin/sh; shellScript = "\"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh && touch Flutter/ephemeral/tripwire"; }; + 486CF6E85D98C787CCA1E5AE /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-RunnerTests-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + BCC713718085C01E0FE42F8A /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + F3A7E6C7CF7D9A8AE455CF78 /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist", + ); + name = "[CP] Embed Pods Frameworks"; + outputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; /* End PBXShellScriptBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ @@ -380,6 +473,7 @@ /* Begin XCBuildConfiguration section */ 331C80DB294CF71000263BE5 /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 49D12EF61E047B6385236497 /* Pods-RunnerTests.debug.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CURRENT_PROJECT_VERSION = 1; @@ -394,6 +488,7 @@ }; 331C80DC294CF71000263BE5 /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = C806DE37B721419A9762609A /* Pods-RunnerTests.release.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CURRENT_PROJECT_VERSION = 1; @@ -408,6 +503,7 @@ }; 331C80DD294CF71000263BE5 /* Profile */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 8013070A816FFEADA059F195 /* Pods-RunnerTests.profile.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CURRENT_PROJECT_VERSION = 1; @@ -461,7 +557,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; @@ -543,7 +639,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = macosx; @@ -593,7 +689,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.15; + MACOSX_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; diff --git a/example/macos/Runner.xcworkspace/contents.xcworkspacedata b/example/macos/Runner.xcworkspace/contents.xcworkspacedata index 1d526a1..21a3cc1 100644 --- a/example/macos/Runner.xcworkspace/contents.xcworkspacedata +++ b/example/macos/Runner.xcworkspace/contents.xcworkspacedata @@ -4,4 +4,7 @@ + + diff --git a/example/macos/Runner/DebugProfile.entitlements b/example/macos/Runner/DebugProfile.entitlements index dddb8a3..0ceee8d 100644 --- a/example/macos/Runner/DebugProfile.entitlements +++ b/example/macos/Runner/DebugProfile.entitlements @@ -8,5 +8,7 @@ com.apple.security.network.server + com.apple.security.files.user-selected.read-only + diff --git a/example/macos/Runner/Release.entitlements b/example/macos/Runner/Release.entitlements index 852fa1a..18aff0c 100644 --- a/example/macos/Runner/Release.entitlements +++ b/example/macos/Runner/Release.entitlements @@ -4,5 +4,7 @@ com.apple.security.app-sandbox + com.apple.security.files.user-selected.read-only + diff --git a/example/pubspec.lock b/example/pubspec.lock index d649998..7da3cfa 100644 --- a/example/pubspec.lock +++ b/example/pubspec.lock @@ -65,6 +65,14 @@ packages: url: "https://pub.dev" source: hosted version: "1.19.1" + cross_file: + dependency: transitive + description: + name: cross_file + sha256: f141ea4f277af142a0356955707f6556f37b03947d39d55585981a06ca437bd6 + url: "https://pub.dev" + source: hosted + version: "0.3.5+5" crypto: dependency: transitive description: @@ -113,6 +121,70 @@ packages: url: "https://pub.dev" source: hosted version: "2.2.0" + file_selector: + dependency: "direct main" + description: + name: file_selector + sha256: bd15e43e9268db636b53eeaca9f56324d1622af30e5c34d6e267649758c84d9a + url: "https://pub.dev" + source: hosted + version: "1.1.0" + file_selector_android: + dependency: transitive + description: + name: file_selector_android + sha256: "89243030ea4b3463fb402b44d5eeacc4ccb1c46a88870cb2a5080d693200c1ed" + url: "https://pub.dev" + source: hosted + version: "0.5.2+6" + file_selector_ios: + dependency: transitive + description: + name: file_selector_ios + sha256: "97269e5307a0ab813b1fa2430bada0a96e0afb74848417f8676f64ba5de0051c" + url: "https://pub.dev" + source: hosted + version: "0.5.3+6" + file_selector_linux: + dependency: transitive + description: + name: file_selector_linux + sha256: da76400e7872ce7637ffdce12749ec24169c25f6195c28372208e65a24bcd2ab + url: "https://pub.dev" + source: hosted + version: "0.9.4+1" + file_selector_macos: + dependency: transitive + description: + name: file_selector_macos + sha256: d57c62362766b5e7ae739448650b66c6aab7a68ba7ecc65e04018652645ae0f4 + url: "https://pub.dev" + source: hosted + version: "0.9.5+1" + file_selector_platform_interface: + dependency: transitive + description: + name: file_selector_platform_interface + sha256: "35e0bd61ebcdb91a3505813b055b09b79dfdc7d0aee9c09a7ba59ae4bb13dc85" + url: "https://pub.dev" + source: hosted + version: "2.7.0" + file_selector_web: + dependency: transitive + description: + name: file_selector_web + sha256: "73181fbc5257776d8ecaa6a94ab3c8e920ad143b9132a6d984a9271dfc6928d3" + url: "https://pub.dev" + source: hosted + version: "0.9.5" + file_selector_windows: + dependency: transitive + description: + name: file_selector_windows + sha256: fbefc5fb92c6d3cbe8d284a2cd971b593bb07d2cd6da8557b81a862250b4acec + url: "https://pub.dev" + source: hosted + version: "0.9.3+6" flutter: dependency: "direct main" description: flutter @@ -252,10 +324,10 @@ packages: dependency: transitive description: name: matcher - sha256: dc0b7dc7651697ea4ff3e69ef44b0407ea32c487a39fff6a4004fa585e901861 + sha256: "12956d0ad8390bbcc63ca2e1469c0619946ccb52809807067a7020d57e647aa6" url: "https://pub.dev" source: hosted - version: "0.12.19" + version: "0.12.18" material_color_utilities: dependency: transitive description: @@ -268,10 +340,10 @@ packages: dependency: transitive description: name: meta - sha256: "1741988757a65eb6b36abe716829688cf01910bbf91c34354ff7ec1c3de2b349" + sha256: "23f08335362185a5ea2ad3a4e597f1375e78bce8a040df5c600c8d3552ef2394" url: "https://pub.dev" source: hosted - version: "1.18.0" + version: "1.17.0" objective_c: dependency: transitive description: @@ -371,18 +443,18 @@ packages: dependency: transitive description: name: pdfrx - sha256: "85a87117ae6358e0ef2cc90d4db9f5e689eabbd7f19ab98c97164584d0be4a4a" + sha256: acce61944c31bd36f0c3031b1bbf41f59d0b0d4e5e27614fbdc74ff093d55464 url: "https://pub.dev" source: hosted - version: "2.4.8" + version: "2.4.7" pdfrx_engine: dependency: transitive description: name: pdfrx_engine - sha256: "4399846809a75aed03881d8b8a19e5e70addd4b46b22fd94a0effd8859258f07" + sha256: "8043527245e4c35a2a3b7df8494c066b9efa97fe031945951e46b378318b3d5f" url: "https://pub.dev" source: hosted - version: "0.4.7" + version: "0.4.5" petitparser: dependency: transitive description: @@ -496,10 +568,10 @@ packages: dependency: transitive description: name: test_api - sha256: "949a932224383300f01be9221c39180316445ecb8e7547f70a41a35bf421fb9e" + sha256: "93167629bfc610f71560ab9312acdda4959de4df6fac7492c89ff0d3886f6636" url: "https://pub.dev" source: hosted - version: "0.7.11" + version: "0.7.9" typed_data: dependency: transitive description: diff --git a/example/pubspec.yaml b/example/pubspec.yaml index 962e47c..9373186 100644 --- a/example/pubspec.yaml +++ b/example/pubspec.yaml @@ -28,6 +28,7 @@ environment: # the latest version available on pub.dev. To see which dependencies have newer # versions available, run `flutter pub outdated`. dependencies: + file_selector: ^1.1.0 flutter: sdk: flutter @@ -59,6 +60,7 @@ flutter: uses-material-design: true assets: - assets/the_garden_letter.epub + - assets/reading_lab.epub - assets/a_tiny_pdf.pdf # To add assets to your application, add an assets section, like this: diff --git a/example/test/widget_test.dart b/example/test/widget_test.dart index 62c72eb..289a675 100644 --- a/example/test/widget_test.dart +++ b/example/test/widget_test.dart @@ -2,13 +2,17 @@ import 'package:flutter/material.dart'; import 'package:flutter_test/flutter_test.dart'; import 'package:papyrus_reader/papyrus_reader.dart'; import 'package:papyrus_reader_example/main.dart'; +import 'package:papyrus_reader/src/engine/epub/worker/epub_processor.dart'; +import 'package:papyrus_reader/src/engine/epub/worker/epub_worker.dart'; void main() { testWidgets('chooses a document, changes theme, and reopens the reader', ( tester, ) async { final memory = DemoReaderMemory(); - await tester.pumpWidget(PapyrusReaderDemoApp(memory: memory)); + await tester.pumpWidget( + PapyrusReaderDemoApp(memory: memory, registry: testRegistry()), + ); expect(find.text('Papyrus Reader'), findsOneWidget); expect(find.text('A small library, thoughtfully read.'), findsOneWidget); @@ -68,7 +72,7 @@ void main() { }); testWidgets('opens the bundled PDF reader', (tester) async { - await tester.pumpWidget(const PapyrusReaderDemoApp()); + await tester.pumpWidget(PapyrusReaderDemoApp(registry: testRegistry())); final readPdf = find.widgetWithText(FilledButton, 'Read PDF'); await tester.scrollUntilVisible(readPdf, 300); @@ -79,3 +83,23 @@ void main() { expect(find.byType(PapyrusReader), findsOneWidget); }); } + +ReaderEngineRegistry testRegistry() => ReaderEngineRegistry([ + ReaderEngineRegistration( + formats: const {ReaderFormat.epub}, + factory: () => EpubReaderEngine(workerFactory: () async => _TestWorker()), + ), + ReaderEngineRegistration( + formats: const {ReaderFormat.pdf}, + factory: PdfReaderEngine.new, + ), +]); + +final class _TestWorker implements EpubWorker { + final EpubProcessor processor = EpubProcessor(); + @override + Future> request(String command, Object? argument) => + processor.dispatch(command, argument); + @override + void dispose() {} +} diff --git a/example/windows/flutter/generated_plugin_registrant.cc b/example/windows/flutter/generated_plugin_registrant.cc index 4f78848..043a96f 100644 --- a/example/windows/flutter/generated_plugin_registrant.cc +++ b/example/windows/flutter/generated_plugin_registrant.cc @@ -6,9 +6,12 @@ #include "generated_plugin_registrant.h" +#include #include void RegisterPlugins(flutter::PluginRegistry* registry) { + FileSelectorWindowsRegisterWithRegistrar( + registry->GetRegistrarForPlugin("FileSelectorWindows")); UrlLauncherWindowsRegisterWithRegistrar( registry->GetRegistrarForPlugin("UrlLauncherWindows")); } diff --git a/example/windows/flutter/generated_plugins.cmake b/example/windows/flutter/generated_plugins.cmake index a962892..4660c63 100644 --- a/example/windows/flutter/generated_plugins.cmake +++ b/example/windows/flutter/generated_plugins.cmake @@ -3,6 +3,7 @@ # list(APPEND FLUTTER_PLUGIN_LIST + file_selector_windows url_launcher_windows ) diff --git a/lib/papyrus_reader.dart b/lib/papyrus_reader.dart index f966bdd..b7909d8 100644 --- a/lib/papyrus_reader.dart +++ b/lib/papyrus_reader.dart @@ -18,6 +18,7 @@ export 'src/engine/epub/epub_reader_engine.dart'; export 'src/engine/pdf/pdf_facade.dart' show PdfFacade, + DisposablePdfFacade, PdfFacadeError, PdfFacadeException, PdfFacadeFactory, diff --git a/lib/src/controller/reader_controller.dart b/lib/src/controller/reader_controller.dart index ea2b0db..442004b 100644 --- a/lib/src/controller/reader_controller.dart +++ b/lib/src/controller/reader_controller.dart @@ -27,7 +27,7 @@ final class ReaderController extends ChangeNotifier { ReaderEngine? _engine; ReaderSnapshot _snapshot; - Future _loadQueue = Future.value(); + final Set _loadingEngines = {}; int _latestLoadId = 0; bool _isDisposed = false; @@ -53,6 +53,10 @@ final class ReaderController extends ChangeNotifier { ); } + for (final candidate in _loadingEngines.toList()) { + candidate.dispose(); + } + _loadingEngines.clear(); final request = _ReaderLoadRequest( id: ++_latestLoadId, document: document, @@ -67,23 +71,20 @@ final class ReaderController extends ChangeNotifier { ), ); - final operation = _loadQueue.then((_) => _performLoad(request)); - _loadQueue = operation.then( - (_) {}, - onError: (Object _, StackTrace _) {}, - ); - - return operation; + // Give the shell a chance to paint loading chrome. A newer request owns an + // independent engine and never waits for an obsolete file read. + return Future.microtask(() => _performLoad(request)); } Future _performLoad(_ReaderLoadRequest request) async { - if (_isDisposed) { + if (!_canPublish(request)) { return; } ReaderEngine? candidate; try { candidate = _registry.resolve(request.document.format); + _loadingEngines.add(candidate); await candidate.load( request.document, @@ -95,16 +96,20 @@ final class ReaderController extends ChangeNotifier { _selectEngine(candidate); _publish(candidate.snapshot); } else { - candidate.dispose(); + if (_loadingEngines.remove(candidate)) candidate.dispose(); } } on ReaderException catch (error) { - if (candidate != null && !identical(candidate, _engine)) { + if (candidate != null && + _loadingEngines.remove(candidate) && + !identical(candidate, _engine)) { candidate.dispose(); } _publishLoadError(request, error); rethrow; } catch (error, stackTrace) { - if (candidate != null && !identical(candidate, _engine)) { + if (candidate != null && + _loadingEngines.remove(candidate) && + !identical(candidate, _engine)) { candidate.dispose(); } final readerError = ReaderException( @@ -115,6 +120,8 @@ final class ReaderController extends ChangeNotifier { _publishLoadError(request, readerError); Error.throwWithStackTrace(readerError, stackTrace); + } finally { + _loadingEngines.remove(candidate); } } @@ -256,6 +263,10 @@ final class ReaderController extends ChangeNotifier { _isDisposed = true; _latestLoadId++; + for (final candidate in _loadingEngines) { + candidate.dispose(); + } + _loadingEngines.clear(); final engine = _engine; _engine = null; engine?.removeListener(_syncFromEngine); diff --git a/lib/src/domain/reader_locator.dart b/lib/src/domain/reader_locator.dart index 662d873..4a632bd 100644 --- a/lib/src/domain/reader_locator.dart +++ b/lib/src/domain/reader_locator.dart @@ -27,6 +27,8 @@ final class EpubReaderLocator extends ReaderLocator { required int spineIndex, required double localProgression, required double totalProgression, + int? textOffset, + String? anchor, }) { if (cfi.trim().isEmpty) { throw ArgumentError.value(cfi, 'cfi', 'must not be empty'); @@ -40,12 +42,21 @@ final class EpubReaderLocator extends ReaderLocator { } _validateProgressionArgument(localProgression, 'localProgression'); _validateProgressionArgument(totalProgression, 'totalProgression'); + if (textOffset != null && textOffset < 0) { + throw ArgumentError.value( + textOffset, + 'textOffset', + 'must be non-negative', + ); + } return EpubReaderLocator._( cfi: cfi, spineIndex: spineIndex, localProgression: localProgression, totalProgression: totalProgression, + textOffset: textOffset, + anchor: anchor, ); } @@ -54,6 +65,8 @@ final class EpubReaderLocator extends ReaderLocator { required this.spineIndex, required this.localProgression, required this.totalProgression, + this.textOffset, + this.anchor, }); factory EpubReaderLocator._fromJson(Map json) { @@ -68,12 +81,24 @@ final class EpubReaderLocator extends ReaderLocator { 'EPUB locator spineIndex must be a non-negative integer.', ); } + final textOffset = json['textOffset']; + final anchor = json['anchor']; + if (textOffset != null && (textOffset is! int || textOffset < 0)) { + throw const FormatException( + 'EPUB textOffset must be a non-negative integer.', + ); + } + if (anchor != null && anchor is! String) { + throw const FormatException('EPUB anchor must be a string.'); + } return EpubReaderLocator._( cfi: cfi, spineIndex: spineIndex, localProgression: _readProgression(json, 'localProgression'), totalProgression: _readProgression(json, 'totalProgression'), + textOffset: textOffset as int?, + anchor: anchor as String?, ); } @@ -81,6 +106,8 @@ final class EpubReaderLocator extends ReaderLocator { final int spineIndex; final double localProgression; final double totalProgression; + final int? textOffset; + final String? anchor; @override Map toJson() { @@ -97,6 +124,8 @@ final class EpubReaderLocator extends ReaderLocator { 'spineIndex': spineIndex, 'localProgression': localProgression, 'totalProgression': totalProgression, + if (textOffset != null) 'textOffset': textOffset, + if (anchor != null) 'anchor': anchor, }; } @@ -107,11 +136,19 @@ final class EpubReaderLocator extends ReaderLocator { cfi == other.cfi && spineIndex == other.spineIndex && localProgression == other.localProgression && + textOffset == other.textOffset && + anchor == other.anchor && totalProgression == other.totalProgression; @override - int get hashCode => - Object.hash(cfi, spineIndex, localProgression, totalProgression); + int get hashCode => Object.hash( + cfi, + spineIndex, + localProgression, + totalProgression, + textOffset, + anchor, + ); } final class PdfReaderLocator extends ReaderLocator { diff --git a/lib/src/domain/reader_snapshot.dart b/lib/src/domain/reader_snapshot.dart index 068f08c..0c45750 100644 --- a/lib/src/domain/reader_snapshot.dart +++ b/lib/src/domain/reader_snapshot.dart @@ -22,6 +22,8 @@ sealed class ReaderSnapshot { ReaderCapabilities? get capabilities; ReaderException? get error; + + String? get locationLabel => null; } final class ReaderIdleSnapshot extends ReaderSnapshot { @@ -85,11 +87,15 @@ final class ReaderReadySnapshot extends ReaderSnapshot { required this.capabilities, this.locator, List toc = const [], + this.locationLabel, }) : toc = List.unmodifiable(toc); @override ReaderStatus get status => ReaderStatus.ready; + @override + final String? locationLabel; + @override final ReaderDocument document; diff --git a/lib/src/engine/epub/epub_content_renderer.dart b/lib/src/engine/epub/epub_content_renderer.dart index cf87c32..d4271a6 100644 --- a/lib/src/engine/epub/epub_content_renderer.dart +++ b/lib/src/engine/epub/epub_content_renderer.dart @@ -35,6 +35,20 @@ final class FlutterHtmlEpubContentRenderer implements EpubContentRenderer { ), child: Html( data: xhtml, + style: { + 'body': Style( + color: preferences.foregroundColor, + backgroundColor: preferences.backgroundColor, + fontFamily: preferences.fontFamily, + fontSize: FontSize(preferences.fontSize), + lineHeight: LineHeight(preferences.lineHeight), + letterSpacing: preferences.letterSpacing, + margin: Margins.zero, + ), + 'p': Style( + margin: Margins.only(bottom: preferences.paragraphSpacing), + ), + }, shrinkWrap: true, doNotRenderTheseTags: const { 'script', @@ -61,6 +75,7 @@ final class EpubScrollViewport extends StatefulWidget { required this.restorationRevision, required this.renderer, required this.onProgressChanged, + this.controller, }); final String xhtml; @@ -69,6 +84,7 @@ final class EpubScrollViewport extends StatefulWidget { final int restorationRevision; final EpubContentRenderer renderer; final ValueChanged onProgressChanged; + final ScrollController? controller; @override State createState() => _EpubScrollViewportState(); @@ -81,7 +97,7 @@ final class _EpubScrollViewportState extends State { @override void initState() { super.initState(); - _controller = ScrollController(); + _controller = widget.controller ?? ScrollController(); _restoreProgress(); } @@ -133,7 +149,7 @@ final class _EpubScrollViewportState extends State { @override void dispose() { - _controller.dispose(); + if (widget.controller == null) _controller.dispose(); super.dispose(); } diff --git a/lib/src/engine/epub/epub_reader_engine.dart b/lib/src/engine/epub/epub_reader_engine.dart index 38823d9..c5c9d5e 100644 --- a/lib/src/engine/epub/epub_reader_engine.dart +++ b/lib/src/engine/epub/epub_reader_engine.dart @@ -1,10 +1,4 @@ -import 'dart:convert'; -import 'dart:typed_data'; - -import 'package:epub_pro/epub_pro.dart'; import 'package:flutter/widgets.dart'; -import 'package:html/dom.dart' as html_dom; -import 'package:html/parser.dart' as html_parser; import '../../domain/reader_capabilities.dart'; import '../../domain/reader_document.dart'; @@ -17,20 +11,55 @@ import '../../domain/reader_types.dart'; import '../reader_engine.dart'; import 'epub_content_renderer.dart'; import 'epub_paginator.dart'; +import 'epub_rich_layout.dart'; +import 'epub_viewport.dart'; +import 'worker/epub_worker.dart'; + +typedef EpubWorkerFactory = Future Function(); final class EpubReaderEngine extends ReaderEngine { EpubReaderEngine({ - EpubContentRenderer renderer = const FlutterHtmlEpubContentRenderer(), + this.renderer, EpubPaginator? paginator, - }) : _renderer = renderer, - _paginator = paginator ?? EpubPaginator(); + EpubWorkerFactory workerFactory = createEpubWorker, + }) : _paginator = paginator ?? EpubPaginator(), + _workerFactory = workerFactory; - final EpubContentRenderer _renderer; + final EpubContentRenderer? renderer; final EpubPaginator _paginator; + final EpubWorkerFactory _workerFactory; + EpubWorker? _worker; + EpubWorker? _openingWorker; + ReaderDocument? _document; + ReaderPreferences _preferences = const ReaderPreferences(); + EpubReaderLocator? _locator; + String _currentChapterHtml = ''; + List _toc = const []; + List _blocks = const []; + Map _anchors = const {}; + int _chapterCount = 0; + int _contentLength = 0; + int _restorationRevision = 0; + int _contentRevision = 0; + int _navigationGeneration = 0; + bool _disposed = false; + int _visiblePage = 1; + int _pageCount = 0; + + /// The mounted viewport handles local page/scroll turns. The engine crosses + /// the spine only when that viewport reports a boundary. + Future Function(int direction)? moveWithinChapter; + + String get currentChapterHtml => _currentChapterHtml; + List get blocks => _blocks; + int get restorationRevision => _restorationRevision; + int get contentRevision => _contentRevision; + int get contentLength => _contentLength; + EpubReaderLocator get locator => _locator!; + ReaderPreferences get preferences => _preferences; @override Set get supportedFormats => const {ReaderFormat.epub}; - @override ReaderCapabilities get capabilities => const ReaderCapabilities( supportsPagination: true, @@ -38,341 +67,168 @@ final class EpubReaderEngine extends ReaderEngine { supportsTextCustomization: true, supportsColumnMode: true, ); - @override ReaderSnapshot snapshot = const ReaderIdleSnapshot(); - EpubBookRef? _book; - List _spine = const []; - ReaderDocument? _document; - ReaderPreferences _preferences = const ReaderPreferences(); - EpubReaderLocator? _locator; - String _currentChapterHtml = ''; - List _toc = const []; - int _restorationRevision = 0; - - String get currentChapterHtml => _currentChapterHtml; - @override Future load( ReaderDocument document, { ReaderLocator? initialLocator, required ReaderPreferences preferences, }) async { - if (document.format != ReaderFormat.epub) { - throw const ReaderException( - ReaderErrorCode.invalidDocument, - 'The EPUB engine can only load EPUB documents.', - ); - } - if (initialLocator != null && initialLocator is! EpubReaderLocator) { + if (document.format != ReaderFormat.epub || + (initialLocator != null && initialLocator is! EpubReaderLocator)) { throw const ReaderException( ReaderErrorCode.invalidDocument, - 'The initial locator is not an EPUB locator.', + 'The EPUB document or initial locator has the wrong format.', ); } - + final generation = ++_navigationGeneration; + EpubWorker? candidate; try { - final Uint8List bytes = await document.loadBytes(); - final book = await EpubReader.openBook(bytes); - _rejectFixedLayout(book); - final chapters = book.getChapters(); - final spine = _flattenSpine(chapters); - if (spine.isEmpty) { - throw const FormatException('The EPUB has no readable spine items.'); - } - + final bytes = await document.loadBytes(); + _requireCurrent(generation); + candidate = await _workerFactory(); + _requireCurrent(generation); + _openingWorker = candidate; + final metadata = await candidate.open(bytes); + _requireCurrent(generation); + final count = metadata['count'] as int; final restored = initialLocator as EpubReaderLocator?; - if (restored != null && restored.spineIndex >= spine.length) { + if (restored != null && restored.spineIndex >= count) { throw const ReaderException( ReaderErrorCode.invalidDocument, 'The EPUB locator is outside the document spine.', ); } - - final locator = restored ?? _locatorFor(0, spine); - final toc = _buildToc(chapters, spine); - final chapterHtml = await _readChapterFrom( - book, - spine[locator.spineIndex], - ); - - _book = book; - _spine = spine; + final target = restored ?? _locatorFor(0, count: count); + final chapter = await candidate.chapter(target.spineIndex); + _requireCurrent(generation); + final old = _worker; + _worker = candidate; + _openingWorker = null; + old?.dispose(); _document = document; _preferences = preferences; - _locator = locator; - _toc = toc; - _currentChapterHtml = chapterHtml; - _paginator.clear(); - _restorationRevision++; + _chapterCount = count; + _toc = [ + for (final entry in metadata['toc'] as List) + _tocEntry(Map.from(entry as Map), count), + ]; + _setChapter(chapter, target); _publish(); } on ReaderException { + if (!identical(candidate, _worker)) candidate?.dispose(); rethrow; } catch (error) { + if (!identical(candidate, _worker)) candidate?.dispose(); throw ReaderException( ReaderErrorCode.invalidDocument, 'The EPUB document is invalid or malformed.', cause: error, ); + } finally { + if (identical(candidate, _openingWorker)) _openingWorker = null; } } - void _rejectFixedLayout(EpubBookRef book) { - final metadata = book.schema?.package?.metadata; - final fixed = metadata?.metaItems.any( - (item) => - (item.property == 'rendition:layout' || - item.name == 'rendition:layout') && - (item.content == 'pre-paginated' || - item.attributes['content'] == 'pre-paginated'), + ReaderTocEntry _tocEntry(Map entry, int count) { + final index = entry['index'] as int; + return ReaderTocEntry( + title: entry['title'] as String, + locator: _locatorFor( + index, + count: count, + anchor: entry['anchor'] as String?, + ), + children: [ + for (final child in entry['children'] as List) + _tocEntry(Map.from(child as Map), count), + ], ); - if (fixed ?? false) { - throw const ReaderException( - ReaderErrorCode.unsupportedFixedLayout, - 'Fixed-layout EPUB documents are not supported.', - ); - } - } - - List _flattenSpine(List chapters) { - final result = []; - final paths = {}; - - void visit(EpubChapterRef chapter) { - final path = chapter.contentFileName?.split('#').first; - if (path != null && paths.add(path)) { - result.add(chapter); - } - for (final child in chapter.subChapters) { - visit(child); - } - } - - for (final chapter in chapters) { - visit(chapter); - } - return result; } - List _buildToc( - List chapters, - List spine, - ) { - ReaderTocEntry convert(EpubChapterRef chapter) { - final target = chapter.contentFileName?.split('#').first; - final index = spine.indexWhere( - (item) => item.contentFileName?.split('#').first == target, - ); - return ReaderTocEntry( - title: chapter.title?.trim().isNotEmpty == true - ? chapter.title!.trim() - : 'Chapter', - locator: _locatorFor(index < 0 ? 0 : index, spine), - children: chapter.subChapters.map(convert).toList(), - ); - } - - return chapters.map(convert).toList(); - } - - Future _readChapter(int index) async { - return _readChapterFrom(_book!, _spine[index]); - } - - Future _readChapterFrom( - EpubBookRef book, - EpubChapterRef chapter, - ) async { - final raw = await chapter.readHtmlContent(); - - return _sanitize(raw, chapter, book); - } - - Future _sanitize( - String raw, - EpubChapterRef chapter, - EpubBookRef book, - ) async { - final document = html_parser.parse(raw); - const blockedTags = { - 'script', - 'form', - 'iframe', - 'object', - 'embed', - 'input', - 'button', - 'link', - 'style', - 'video', - 'audio', - 'source', - 'track', - 'use', - }; - for (final tag in blockedTags) { - for (final element in document.querySelectorAll(tag).toList()) { - element.remove(); - } - } - - for (final element in document.querySelectorAll('*').toList()) { - _sanitizeAttributes(element); - if (element.localName != 'img') { - continue; - } - - final source = element.attributes['src']?.trim(); - final uri = source == null ? null : Uri.tryParse(source); - if (source == null || - source.isEmpty || - source.startsWith('//') || - uri == null || - uri.hasScheme) { - element.remove(); - continue; - } - - final resolved = _resolvePath( - chapter.contentFileName ?? '', - Uri.decodeComponent(uri.path), - ); - final image = book.content?.images.entries - .where((entry) => _normalized(entry.key) == _normalized(resolved)) - .map((entry) => entry.value) - .firstOrNull; - if (image == null) { - element.remove(); - continue; - } - - final bytes = await image.readContent(); - final mime = image.contentMimeType ?? 'application/octet-stream'; - if (!mime.toLowerCase().startsWith('image/')) { - element.remove(); - continue; - } - element.attributes['src'] = 'data:$mime;base64,${base64Encode(bytes)}'; - } - return document.outerHtml; - } - - void _sanitizeAttributes(html_dom.Element element) { - for (final name in element.attributes.keys.toList()) { - final normalizedName = name.toString().toLowerCase(); - if (normalizedName.startsWith('on') || normalizedName == 'srcset') { - element.attributes.remove(name); - } - } - - final style = element.attributes['style']; - if (style != null) { - final declarations = style - .split(';') - .map((declaration) => declaration.trim()) - .where( - (declaration) => - declaration.isNotEmpty && - !RegExp( - r'(?:url\s*\(|@import|expression\s*\()', - caseSensitive: false, - ).hasMatch(declaration), - ) - .toList(); - if (declarations.isEmpty) { - element.attributes.remove('style'); - } else { - element.attributes['style'] = declarations.join('; '); - } - } - - for (final attribute in const ['poster', 'background']) { - element.attributes.remove(attribute); - } - if (element.localName != 'img') { - element.attributes.remove('src'); - } - - final href = element.attributes['href']; - if (href == null) { - return; - } - if (element.localName != 'a' || !_isSafeLink(href)) { - element.attributes.remove('href'); - } - } - - bool _isSafeLink(String href) { - final normalized = href - .replaceAll(RegExp(r'[\u0000-\u0020]+'), '') - .toLowerCase(); - return !normalized.startsWith('javascript:') && - !normalized.startsWith('data:') && - !normalized.startsWith('vbscript:') && - !normalized.startsWith('file:'); - } - - String _resolvePath(String chapterPath, String relative) { - final parts = chapterPath.split('/')..removeLast(); - for (final part in relative.split('/')) { - if (part == '..') { - if (parts.isNotEmpty) { - parts.removeLast(); - } - } else if (part != '.' && part.isNotEmpty) { - parts.add(part); - } - } - return parts.join('/'); - } - - String _normalized(String path) => - path.replaceFirst(RegExp(r'^OEBPS/'), '').replaceFirst(RegExp(r'^/'), ''); - EpubReaderLocator _locatorFor( - int index, [ - List? candidateSpine, - ]) { - final spine = candidateSpine ?? _spine; - + int index, { + int? count, + double local = 0, + int? textOffset, + String? anchor, + }) { return EpubReaderLocator( - cfi: 'epubcfi(/6/${(index + 1) * 2}!/4/1:0)', + cfi: 'epubcfi(/6/${(index + 1) * 2}!/4/1:${textOffset ?? 0})', spineIndex: index, - localProgression: 0, - totalProgression: _totalProgression(index, 0, spineCount: spine.length), + localProgression: local, + totalProgression: ((index + local) / (count ?? _chapterCount)).clamp( + 0, + 1, + ), + textOffset: textOffset, + anchor: anchor, ); } - double _totalProgression( - int spineIndex, - double localProgression, { - int? spineCount, - }) { - final count = spineCount ?? _spine.length; - if (count == 0) { - return 0; - } + void _setChapter(Map chapter, EpubReaderLocator target) { + _currentChapterHtml = chapter['html'] as String; + _blocks = [ + for (final block in chapter['blocks'] as List) + EpubContentBlock(Map.from(block as Map)), + ]; + _anchors = (chapter['anchors'] as Map).cast(); + _contentLength = chapter['length'] as int; + final offset = target.anchor == null + ? target.textOffset + : _anchors[target.anchor] ?? target.textOffset; + _locator = offset == null + ? target + : _locatorFor( + target.spineIndex, + local: target.localProgression, + textOffset: offset.clamp(0, _contentLength), + ); + _paginator.clear(); + _contentRevision++; + _pageCount = 0; + _restorationRevision++; + } - return ((spineIndex + localProgression) / count).clamp(0, 1); + void _requireCurrent(int generation) { + if (_disposed || generation != _navigationGeneration) { + throw const ReaderException( + ReaderErrorCode.engineUnavailable, + 'The document was closed or replaced.', + ); + } } @override Future goTo(ReaderLocator locator) async { if (locator is! EpubReaderLocator || - locator.spineIndex >= _spine.length || - _document == null) { + locator.spineIndex >= _chapterCount || + _worker == null) { throw const ReaderException( ReaderErrorCode.invalidDocument, 'The locator is not valid for the current EPUB.', ); } - final chapterHtml = await _readChapter(locator.spineIndex); - - _locator = locator; - _currentChapterHtml = chapterHtml; - _paginator.clear(); - _restorationRevision++; + final generation = ++_navigationGeneration; + if (locator.spineIndex == _locator?.spineIndex) { + final offset = locator.anchor == null + ? locator.textOffset + : _anchors[locator.anchor] ?? locator.textOffset; + _locator = offset == null + ? locator + : _locatorFor( + locator.spineIndex, + local: locator.localProgression, + textOffset: offset.clamp(0, _contentLength), + ); + _restorationRevision++; + } else { + final chapter = await _worker!.chapter(locator.spineIndex); + _requireCurrent(generation); + _setChapter(chapter, locator); + } _publish(); } @@ -385,56 +241,67 @@ final class EpubReaderEngine extends ReaderEngine { 'must be between 0 and 1', ); } - if (_document == null || _spine.isEmpty) { + if (_worker == null) { throw const ReaderException( ReaderErrorCode.engineUnavailable, 'No EPUB document is loaded.', ); } - - final scaledProgress = progress * _spine.length; - final spineIndex = progress == 1 - ? _spine.length - 1 - : scaledProgress.floor(); - final localProgression = progress == 1 ? 1.0 : scaledProgress - spineIndex; - final locator = EpubReaderLocator( - cfi: - 'epubcfi(/6/${(spineIndex + 1) * 2}!/4/1:${(localProgression * 1000000).round()})', - spineIndex: spineIndex, - localProgression: localProgression, - totalProgression: progress, - ); - - await goTo(locator); + final scaled = progress * _chapterCount; + final index = progress == 1 ? _chapterCount - 1 : scaled.floor(); + await goTo(_locatorFor(index, local: progress == 1 ? 1 : scaled - index)); } @override Future goNext() => _move(1); - @override Future goPrevious() => _move(-1); - - Future _move(int delta) async { - final current = _locator; - if (current == null) { + Future _move(int direction) async { + if (_locator == null) { throw const ReaderException( ReaderErrorCode.engineUnavailable, 'No EPUB document is loaded.', ); } - final next = current.spineIndex + delta; - if (next < 0 || next >= _spine.length) { + if (await moveWithinChapter?.call(direction) ?? false) return; + final index = _locator!.spineIndex + direction; + if (index < 0 || index >= _chapterCount) { throw const ReaderException( ReaderErrorCode.navigationBoundary, - 'There is no chapter in that direction.', + 'There is no page in that direction.', ); } - await goTo(_locatorFor(next)); + await goTo(_locatorFor(index, local: direction < 0 ? 1 : 0)); + } + + void viewportPositionChanged( + double local, { + int? textOffset, + int? pageNumber, + }) { + if (_disposed || _locator == null) return; + final next = _locatorFor( + _locator!.spineIndex, + local: local.clamp(0, 1), + textOffset: textOffset, + ); + if (pageNumber != null) _visiblePage = pageNumber; + if (next == _locator) return; + _locator = next; + _publish(); + } + + void viewportPaginationChanged(int count, int visiblePage) { + if (_disposed || (_pageCount == count && _visiblePage == visiblePage)) { + return; + } + _pageCount = count; + _visiblePage = visiblePage; + _publish(); } @override Future currentLocator() async => _locator; - @override Future updatePreferences(ReaderPreferences preferences) async { if (_document == null) { @@ -443,18 +310,23 @@ final class EpubReaderEngine extends ReaderEngine { 'No EPUB document is loaded.', ); } + if (_preferences == preferences) return; _preferences = preferences; _restorationRevision++; _publish(); } void _publish() { + if (_disposed) return; snapshot = ReaderReadySnapshot( document: _document!, preferences: _preferences, capabilities: capabilities, locator: _locator, toc: _toc, + locationLabel: + 'Chapter ${_locator!.spineIndex + 1} of $_chapterCount' + '${_pageCount > 0 ? ' · Page $_visiblePage of $_pageCount' : ''}', ); notifyListeners(); } @@ -467,286 +339,19 @@ final class EpubReaderEngine extends ReaderEngine { 'The EPUB viewport is not ready.', ); } - if (_preferences.layoutMode == ReaderLayoutMode.scroll) { - return EpubScrollViewport( - xhtml: _currentChapterHtml, - preferences: _preferences, - localProgression: _locator!.localProgression, - restorationRevision: _restorationRevision, - renderer: _renderer, - onProgressChanged: _scrollProgressChanged, - ); - } - - final blocks = _textBlocks(_currentChapterHtml); - return LayoutBuilder( - builder: (context, constraints) { - final viewport = Size( - constraints.maxWidth.isFinite ? constraints.maxWidth : 600, - constraints.maxHeight.isFinite ? constraints.maxHeight : 800, - ); - final pages = _paginator.paginate( - blocks, - viewport: viewport, - preferences: _preferences, - ); - return _PaginatedEpubViewport( - pages: pages, - preferences: _preferences, - locator: _locator!, - onPageChanged: (pageIndex) { - _paginatedPageChanged(pageIndex, pages.length); - }, - ); - }, - ); - } - - void _scrollProgressChanged(double localProgression) { - final current = _locator; - if (current == null) { - return; - } - _locator = EpubReaderLocator( - cfi: - 'epubcfi(/6/${(current.spineIndex + 1) * 2}!/4/1:${(localProgression * 1000000).round()})', - spineIndex: current.spineIndex, - localProgression: localProgression, - totalProgression: _totalProgression(current.spineIndex, localProgression), - ); - _publish(); - } - - void _paginatedPageChanged(int pageIndex, int pageCount) { - final current = _locator; - if (current == null || pageCount <= 1) { - return; - } - final localProgression = pageIndex / (pageCount - 1); - _locator = EpubReaderLocator( - cfi: 'epubcfi(/6/${(current.spineIndex + 1) * 2}!/4/1:$pageIndex)', - spineIndex: current.spineIndex, - localProgression: localProgression, - totalProgression: _totalProgression(current.spineIndex, localProgression), - ); - _publish(); - } - - List _textBlocks(String html) { - final document = html_parser.parse(html); - final body = document.body; - if (body == null) { - return const []; - } - - return _EpubTextBlockCollector().collect(body); - } -} - -final class _EpubTextBlockCollector { - static const _lineBreak = '\u0000'; - static const _blockTags = { - 'h1', - 'h2', - 'h3', - 'h4', - 'h5', - 'h6', - 'p', - 'li', - 'blockquote', - 'pre', - 'div', - 'td', - 'th', - }; - - final List _blocks = []; - - List collect(html_dom.Element root) { - final buffer = StringBuffer(); - _visitChildren(root, buffer); - _flush(buffer); - - return List.unmodifiable(_blocks); - } - - void _visitChildren(html_dom.Node parent, StringBuffer buffer) { - for (final node in parent.nodes) { - if (node is html_dom.Text) { - buffer.write(node.data); - continue; - } - if (node is! html_dom.Element) { - continue; - } - - final tag = node.localName; - if (tag == 'br') { - buffer.write(_lineBreak); - } else if (_blockTags.contains(tag)) { - _flush(buffer); - _visitBlock(node); - } else { - _visitChildren(node, buffer); - } - } - } - - void _visitBlock(html_dom.Element element) { - if (element.localName == 'pre') { - final buffer = StringBuffer(); - _visitPreformatted(element, buffer); - _add(_normalizePreformatted(buffer.toString())); - return; - } - - final buffer = StringBuffer(); - _visitChildren(element, buffer); - _flush(buffer); - } - - void _visitPreformatted(html_dom.Node parent, StringBuffer buffer) { - for (final node in parent.nodes) { - if (node is html_dom.Text) { - buffer.write(node.data); - } else if (node is html_dom.Element && node.localName == 'br') { - buffer.write('\n'); - } else if (node is html_dom.Element) { - _visitPreformatted(node, buffer); - } - } - } - - void _flush(StringBuffer buffer) { - _add(_normalize(buffer.toString())); - buffer.clear(); - } - - void _add(String value) { - if (value.isNotEmpty) { - _blocks.add(value); - } - } - - String _normalize(String value) { - final lines = value - .split(_lineBreak) - .map((line) => line.replaceAll(RegExp(r'\s+'), ' ').trim()) - .toList(); - while (lines.isNotEmpty && lines.first.isEmpty) { - lines.removeAt(0); - } - while (lines.isNotEmpty && lines.last.isEmpty) { - lines.removeLast(); - } - - return lines.join('\n'); - } - - String _normalizePreformatted(String value) { - return value.replaceAll('\r\n', '\n').replaceAll('\r', '\n').trim(); - } -} - -final class _PaginatedEpubViewport extends StatefulWidget { - const _PaginatedEpubViewport({ - required this.pages, - required this.preferences, - required this.locator, - required this.onPageChanged, - }); - - final List> pages; - final ReaderPreferences preferences; - final EpubReaderLocator locator; - final ValueChanged onPageChanged; - - @override - State<_PaginatedEpubViewport> createState() => _PaginatedEpubViewportState(); -} - -final class _PaginatedEpubViewportState extends State<_PaginatedEpubViewport> { - late PageController _controller; - - int get _targetPage => - ((widget.pages.length - 1) * widget.locator.localProgression) - .round() - .clamp(0, widget.pages.length - 1); - - @override - void initState() { - super.initState(); - _controller = PageController(initialPage: _targetPage); - } - - @override - void didUpdateWidget(covariant _PaginatedEpubViewport oldWidget) { - super.didUpdateWidget(oldWidget); - final oldTarget = - ((oldWidget.pages.length - 1) * oldWidget.locator.localProgression) - .round() - .clamp(0, oldWidget.pages.length - 1); - if (oldTarget == _targetPage && - oldWidget.locator.spineIndex == widget.locator.spineIndex && - oldWidget.preferences == widget.preferences) { - return; - } - WidgetsBinding.instance.addPostFrameCallback((_) { - if (mounted && _controller.hasClients) { - _controller.jumpToPage(_targetPage); - } - }); + return EpubViewport(engine: this); } @override void dispose() { - _controller.dispose(); + if (_disposed) return; + _disposed = true; + _navigationGeneration++; + _openingWorker?.dispose(); + _worker?.dispose(); + _worker = null; + _openingWorker = null; + moveWithinChapter = null; super.dispose(); } - - @override - Widget build(BuildContext context) { - return ColoredBox( - color: widget.preferences.backgroundColor, - child: PageView( - controller: _controller, - onPageChanged: widget.onPageChanged, - children: [ - for (final page in widget.pages) - Padding( - padding: widget.preferences.pageMargins, - child: ListView( - physics: const NeverScrollableScrollPhysics(), - children: [ - for (final block in page) - Padding( - padding: EdgeInsets.only( - bottom: widget.preferences.paragraphSpacing, - ), - child: Text( - block, - style: TextStyle( - color: widget.preferences.foregroundColor, - fontFamily: widget.preferences.fontFamily, - fontSize: widget.preferences.fontSize, - height: widget.preferences.lineHeight, - letterSpacing: widget.preferences.letterSpacing, - ), - ), - ), - ], - ), - ), - ], - ), - ); - } -} - -extension on Iterable { - T? get firstOrNull { - final iterator = this.iterator; - return iterator.moveNext() ? iterator.current : null; - } } diff --git a/lib/src/engine/epub/epub_rich_layout.dart b/lib/src/engine/epub/epub_rich_layout.dart new file mode 100644 index 0000000..46a2232 --- /dev/null +++ b/lib/src/engine/epub/epub_rich_layout.dart @@ -0,0 +1,217 @@ +import 'dart:math' as math; +import 'dart:typed_data'; + +import 'package:flutter/widgets.dart'; + +import '../../domain/reader_preferences.dart'; + +final class EpubContentBlock { + EpubContentBlock(Map json) + : kind = json['kind'] as String, + offset = json['offset'] as int, + length = json['length'] as int, + paragraphEnd = json['paragraphEnd'] as bool? ?? true, + runs = [ + for (final run in json['runs'] as List? ?? const []) + Map.from(run as Map), + ], + image = json['src'] == null + ? null + : UriData.parse(json['src'] as String).contentAsBytes(), + imageLabel = json['alt'] as String? ?? 'Illustration', + aspect = (json['aspect'] as num?)?.toDouble() ?? 1.5; + + final String kind; + final int offset; + final int length; + final bool paragraphEnd; + final List> runs; + final Uint8List? image; + final String imageLabel; + final double aspect; + + TextStyle style(ReaderPreferences preferences) { + final heading = kind.startsWith('h') + ? int.tryParse(kind.substring(1)) + : null; + return TextStyle( + inherit: false, + color: preferences.foregroundColor, + fontFamily: kind == 'pre' ? 'monospace' : preferences.fontFamily, + fontSize: + preferences.fontSize * + (heading == null ? 1 : math.max(1.1, 1.8 - heading * .12)), + fontWeight: heading == null ? FontWeight.normal : FontWeight.w600, + fontStyle: kind == 'blockquote' ? FontStyle.italic : FontStyle.normal, + height: preferences.lineHeight, + letterSpacing: preferences.letterSpacing, + ); + } + + TextSpan span(ReaderPreferences preferences, {int start = 0, int? end}) { + final children = []; + var position = 0; + for (final run in runs) { + final text = run['text'] as String; + final from = math.max(0, start - position); + final to = math.min(text.length, (end ?? length) - position); + if (to > from) { + children.add( + TextSpan( + text: text.substring(from, to), + style: TextStyle( + fontWeight: run['bold'] == true ? FontWeight.bold : null, + fontStyle: run['italic'] == true ? FontStyle.italic : null, + fontFamily: run['code'] == true ? 'monospace' : null, + decoration: TextDecoration.combine([ + if (run['underline'] == true) TextDecoration.underline, + if (run['strike'] == true) TextDecoration.lineThrough, + ]), + ), + ), + ); + } + position += text.length; + } + return TextSpan(style: style(preferences), children: children); + } +} + +final class EpubPageFragment { + const EpubPageFragment(this.block, this.start, this.end, this.height); + final EpubContentBlock block; + final int start; + final int end; + final double height; + int get offset => block.offset + start; + double spacing(ReaderPreferences preferences) => + block.paragraphEnd && end == block.length + ? preferences.paragraphSpacing + : 0; +} + +final class EpubRichPage { + const EpubRichPage(this.fragments); + final List fragments; + int get offset => fragments.isEmpty ? 0 : fragments.first.offset; +} + +/// Measures each paragraph once and cuts at actual line boundaries. Long +/// paragraphs never trigger repeated binary-search layouts or surrogate splits. +Future> layoutEpubChapter( + List blocks, { + required Size contentSize, + required ReaderPreferences preferences, + required TextScaler textScaler, + required TextDirection direction, + required bool Function() cancelled, +}) async { + final width = math.max(1.0, contentSize.width); + final height = math.max(1.0, contentSize.height); + final pages = []; + var fragments = []; + var used = 0.0; + final stopwatch = Stopwatch()..start(); + void finish() { + if (fragments.isEmpty) return; + pages.add(EpubRichPage(List.unmodifiable(fragments))); + fragments = []; + used = 0; + } + + for (final block in blocks) { + if (cancelled()) return const []; + final spacing = block.paragraphEnd ? preferences.paragraphSpacing : 0.0; + if (block.image != null) { + final imageHeight = math.min(width / block.aspect, height * .65); + if (used + imageHeight + spacing > height) finish(); + fragments.add(EpubPageFragment(block, 0, 1, imageHeight)); + used += imageHeight + spacing; + } else { + final span = block.span(preferences); + final painter = TextPainter( + text: span, + textDirection: direction, + textScaler: textScaler, + )..layout(maxWidth: width); + final lines = painter.computeLineMetrics(); + final text = span.toPlainText(); + var start = 0; + var segmentHeight = 0.0; + for (var lineIndex = 0; lineIndex < lines.length; lineIndex++) { + final line = lines[lineIndex]; + final top = line.baseline - line.ascent; + final bottom = line.baseline + line.descent; + // Ascent/descent exclude part of the line-height leading on Skia fonts. + // Count the complete line box so several paragraphs cannot overfill a + // page even when the glyph bounds are shorter than their line boxes. + final lineHeight = line.height; + if (used + segmentHeight + lineHeight + spacing > height && + (used > 0 || segmentHeight > 0)) { + final position = painter.getPositionForOffset( + Offset(line.left + line.width / 2, (top + bottom) / 2), + ); + // Query inside the line: x=0 can resolve to the previous line's end + // on Skia, even when the y coordinate belongs to the following line. + final boundary = painter + .getLineBoundary( + TextPosition( + offset: position.offset, + affinity: TextAffinity.downstream, + ), + ) + .start; + if (boundary > start) { + fragments.add( + EpubPageFragment(block, start, boundary, segmentHeight), + ); + start = boundary; + } + finish(); + segmentHeight = 0; + } + segmentHeight += lineHeight; + } + if (start < text.length) { + fragments.add( + EpubPageFragment(block, start, text.length, segmentHeight), + ); + used += segmentHeight + spacing; + } + painter.dispose(); + } + if (stopwatch.elapsedMilliseconds >= 4) { + await Future.delayed(Duration.zero); + stopwatch.reset(); + } + } + finish(); + if (pages.isEmpty) pages.add(const EpubRichPage([])); + return List.unmodifiable(pages); +} + +Widget buildEpubFragment( + EpubPageFragment fragment, + ReaderPreferences preferences, +) { + final block = fragment.block; + if (block.image != null) { + return SizedBox( + height: fragment.height, + child: Image.memory( + block.image!, + fit: BoxFit.contain, + semanticLabel: block.imageLabel, + errorBuilder: (_, _, _) => Center( + child: Text( + block.imageLabel, + style: TextStyle(color: preferences.foregroundColor), + ), + ), + ), + ); + } + return Text.rich( + block.span(preferences, start: fragment.start, end: fragment.end), + ); +} diff --git a/lib/src/engine/epub/epub_viewport.dart b/lib/src/engine/epub/epub_viewport.dart new file mode 100644 index 0000000..c6a2c5c --- /dev/null +++ b/lib/src/engine/epub/epub_viewport.dart @@ -0,0 +1,477 @@ +import 'dart:async'; +import 'dart:math' as math; + +import 'package:flutter/material.dart'; + +import '../../domain/reader_types.dart'; +import 'epub_reader_engine.dart'; +import 'epub_rich_layout.dart'; +import 'epub_content_renderer.dart'; + +final class EpubViewport extends StatefulWidget { + const EpubViewport({required this.engine, super.key}); + final EpubReaderEngine engine; + @override + State createState() => _EpubViewportState(); +} + +final class _EpubViewportState extends State { + final PageController _pagesController = PageController(); + final ScrollController _scrollController = ScrollController(); + Future>? _layout; + List _pages = const []; + Object? _layoutKey; + int _layoutGeneration = 0; + int _restoration = -1; + int _pageIndex = 0; + int _columns = 1; + double _drag = 0; + int _startPage = 0; + double _startScroll = 0; + bool _restoring = false; + bool _busy = false; + Completer? _layoutReady; + List _scrollOffsets = const []; + + @override + void initState() { + super.initState(); + widget.engine.addListener(_changed); + widget.engine.moveWithinChapter = _move; + _scrollController.addListener(_scrollChanged); + PaintingBinding.instance.systemFonts.addListener(_fontsChanged); + } + + void _fontsChanged() { + if (!mounted) return; + setState(() => _layoutKey = null); + } + + @override + void didUpdateWidget(covariant EpubViewport oldWidget) { + super.didUpdateWidget(oldWidget); + if (oldWidget.engine != widget.engine) { + oldWidget.engine.removeListener(_changed); + oldWidget.engine.moveWithinChapter = null; + widget.engine.addListener(_changed); + widget.engine.moveWithinChapter = _move; + _layoutKey = null; + } + } + + void _changed() { + if (mounted && _restoration != widget.engine.restorationRevision) { + setState(() {}); + } + } + + int _target(List pages) { + final locator = widget.engine.locator; + final offset = locator.textOffset; + if (offset != null) { + for (var i = pages.length - 1; i >= 0; i--) { + if (pages[i].offset <= offset) return i; + } + return 0; + } + return ((pages.length - 1) * locator.localProgression).round().clamp( + 0, + pages.length - 1, + ); + } + + void _restore(List pages, double width) { + _pages = pages; + if (_restoration == widget.engine.restorationRevision) return; + _restoration = widget.engine.restorationRevision; + final target = _target(pages); + _pageIndex = target ~/ _columns; + WidgetsBinding.instance.addPostFrameCallback((_) { + if (!mounted || !identical(_pages, pages)) return; + _restoring = true; + if (widget.engine.preferences.layoutMode == ReaderLayoutMode.paginated) { + if (_pagesController.hasClients) { + _pagesController.jumpToPage(_pageIndex); + } + } else if (_scrollController.hasClients && _scrollOffsets.isNotEmpty) { + var pixels = _scrollOffsets[target]; + final offset = widget.engine.locator.textOffset; + if (offset != null) { + pixels += widget.engine.preferences.pageMargins.top; + for (final fragment in pages[target].fragments) { + if (fragment.offset >= offset || + fragment.block.offset + fragment.end > offset) { + break; + } + pixels += + fragment.height + fragment.spacing(widget.engine.preferences); + } + } else { + pixels = + _scrollController.position.maxScrollExtent * + widget.engine.locator.localProgression; + } + _scrollController.jumpTo( + pixels.clamp(0, _scrollController.position.maxScrollExtent), + ); + } + _restoring = false; + _busy = false; + if (_layoutReady?.isCompleted == false) _layoutReady!.complete(); + widget.engine.viewportPaginationChanged(pages.length, target + 1); + }); + } + + Future _move(int direction) async { + while (_busy && mounted) { + final ready = _layoutReady; + if (ready == null) return true; + await ready.future; + } + if (!mounted || (_pages.isEmpty && widget.engine.renderer == null)) { + return true; + } + if (widget.engine.preferences.layoutMode == ReaderLayoutMode.scroll) { + if (!_scrollController.hasClients) return true; + final position = _scrollController.position; + final next = + (position.pixels + direction * position.viewportDimension * .85) + .clamp(0.0, position.maxScrollExtent); + if ((next - position.pixels).abs() < 1) return false; + _scrollController.jumpTo(next); + return true; + } + final count = (_pages.length / _columns).ceil(); + final next = _pageIndex + direction; + if (next < 0 || next >= count) return false; + _pageIndex = next; + if (_pagesController.hasClients) _pagesController.jumpToPage(next); + _publishPage(next); + return true; + } + + void _publishPage(int index) { + if (_restoring || _pages.isEmpty) return; + _pageIndex = index; + final page = (index * _columns).clamp(0, _pages.length - 1); + widget.engine.viewportPositionChanged( + _pages.length <= _columns ? 0 : page / (_pages.length - _columns), + textOffset: _pages[page].offset, + pageNumber: page + 1, + ); + } + + void _scrollChanged() { + if (_restoring || !_scrollController.hasClients || _pages.isEmpty) return; + final pixels = _scrollController.position.pixels; + var index = 0; + for (var i = 1; i < _scrollOffsets.length; i++) { + if (_scrollOffsets[i] > pixels) break; + index = i; + } + var offset = _pages[index].offset; + var within = + pixels - + _scrollOffsets[index] - + widget.engine.preferences.pageMargins.top; + for (final fragment in _pages[index].fragments) { + if (within < 0) break; + offset = fragment.offset; + within -= fragment.height + fragment.spacing(widget.engine.preferences); + } + final max = _scrollController.position.maxScrollExtent; + widget.engine.viewportPositionChanged( + max <= 0 ? 0 : (pixels / max).clamp(0, 1), + textOffset: offset, + pageNumber: index + 1, + ); + } + + void _beyondChapter(int direction) { + unawaited( + (direction > 0 ? widget.engine.goNext() : widget.engine.goPrevious()) + .catchError((Object error, StackTrace stack) { + // At the book boundary the viewport remains in place. Other errors + // are visible without destroying the readable current chapter. + if (mounted && !error.toString().contains('navigationBoundary')) { + ScaffoldMessenger.maybeOf( + context, + )?.showSnackBar(SnackBar(content: Text(error.toString()))); + } + }), + ); + } + + @override + void dispose() { + _layoutGeneration++; + if (_layoutReady?.isCompleted == false) _layoutReady!.complete(); + widget.engine.removeListener(_changed); + PaintingBinding.instance.systemFonts.removeListener(_fontsChanged); + widget.engine.moveWithinChapter = null; + _pagesController.dispose(); + _scrollController.dispose(); + super.dispose(); + } + + @override + Widget build(BuildContext context) { + final preferences = widget.engine.preferences; + if (preferences.layoutMode == ReaderLayoutMode.scroll && + widget.engine.renderer != null) { + return EpubScrollViewport( + xhtml: widget.engine.currentChapterHtml, + preferences: preferences, + localProgression: widget.engine.locator.localProgression, + restorationRevision: widget.engine.restorationRevision, + renderer: widget.engine.renderer!, + controller: _scrollController, + onProgressChanged: (value) => + widget.engine.viewportPositionChanged(value), + ); + } + return ColoredBox( + color: preferences.backgroundColor, + child: LayoutBuilder( + builder: (context, constraints) { + final size = Size( + constraints.maxWidth.isFinite ? constraints.maxWidth : 600, + constraints.maxHeight.isFinite ? constraints.maxHeight : 800, + ); + final scaler = + MediaQuery.maybeTextScalerOf(context) ?? TextScaler.noScaling; + final direction = Directionality.of(context); + final canSpread = + size.width >= 900 && size.height >= 240 && scaler.scale(1) <= 1.8; + _columns = + preferences.layoutMode == ReaderLayoutMode.paginated && + canSpread && + preferences.columnMode != ReaderColumnMode.single + ? 2 + : 1; + final width = math.min(size.width, _columns == 2 ? 1400.0 : 800.0); + final columnWidth = width / _columns; + final contentSize = Size( + math.max(1, columnWidth - preferences.pageMargins.horizontal), + math.max(1, size.height - preferences.pageMargins.vertical), + ); + final key = ( + widget.engine.contentRevision, + contentSize, + preferences, + scaler, + direction, + _columns, + ); + if (_layoutKey != key) { + _layoutKey = key; + _restoration = -1; + _restoring = true; + final generation = ++_layoutGeneration; + _busy = true; + if (_layoutReady?.isCompleted == false) _layoutReady!.complete(); + _layoutReady = Completer(); + _layout = Future.delayed(Duration.zero).then( + (_) => layoutEpubChapter( + widget.engine.blocks, + contentSize: contentSize, + preferences: preferences, + textScaler: scaler, + direction: direction, + cancelled: () => !mounted || generation != _layoutGeneration, + ), + ); + } + return Center( + child: SizedBox( + width: width, + child: FutureBuilder>( + future: _layout, + builder: (context, snapshot) { + if (snapshot.hasError) { + if (_layoutReady?.isCompleted == false) { + _layoutReady!.complete(); + } + _busy = false; + return Center( + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + Text( + 'Could not lay out this chapter.', + style: TextStyle( + color: preferences.foregroundColor, + ), + ), + const SizedBox(height: 12), + FilledButton( + onPressed: () => setState(() => _layoutKey = null), + child: const Text('Try again'), + ), + ], + ), + ); + } + if (snapshot.connectionState != ConnectionState.done || + !snapshot.hasData || + snapshot.data!.isEmpty) { + return Center( + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + CircularProgressIndicator( + color: preferences.foregroundColor, + ), + const SizedBox(height: 12), + Text( + 'Preparing pages…', + style: TextStyle( + color: preferences.foregroundColor, + ), + ), + ], + ), + ); + } + final pages = snapshot.data!; + _restore(pages, width); + Widget content; + if (preferences.layoutMode == ReaderLayoutMode.scroll) { + final heights = [ + for (final page in pages) _pageHeight(page), + ]; + var cumulative = 0.0; + _scrollOffsets = [ + for (final height in heights) + (() { + final start = cumulative; + cumulative += height; + return start; + })(), + ]; + content = ListView.custom( + controller: _scrollController, + itemExtentBuilder: (index, _) => heights[index], + childrenDelegate: _EpubScrollDelegate( + (context, index) => _page(pages[index], scroll: true), + childCount: pages.length, + extent: cumulative, + ), + ); + } else { + content = PageView.builder( + controller: _pagesController, + onPageChanged: _publishPage, + itemCount: (pages.length / _columns).ceil(), + itemBuilder: (context, index) => Row( + crossAxisAlignment: CrossAxisAlignment.stretch, + children: [ + for (var column = 0; column < _columns; column++) + Expanded( + child: index * _columns + column < pages.length + ? _page(pages[index * _columns + column]) + : const SizedBox.shrink(), + ), + ], + ), + ); + } + // Pointer tracking does not claim the gesture arena from text + // selection, links or scrolling. Only a drag past a boundary turns. + return Listener( + onPointerDown: (_) { + _drag = 0; + _startPage = _pageIndex; + _startScroll = _scrollController.hasClients + ? _scrollController.offset + : 0; + }, + onPointerMove: (event) => _drag += + preferences.layoutMode == ReaderLayoutMode.scroll + ? event.delta.dy + : event.delta.dx, + onPointerUp: (_) { + if (_drag.abs() < 70) return; + if (preferences.layoutMode == ReaderLayoutMode.scroll && + _scrollController.hasClients) { + final p = _scrollController.position; + if (_drag < 0 && + _startScroll >= p.maxScrollExtent - 1) { + _beyondChapter(1); + } + if (_drag > 0 && _startScroll <= 1) _beyondChapter(-1); + } else { + if (_drag < 0 && + _startPage == + (pages.length / _columns).ceil() - 1) { + _beyondChapter(1); + } + if (_drag > 0 && _startPage == 0) _beyondChapter(-1); + } + }, + child: + Localizations.of( + context, + MaterialLocalizations, + ) == + null + ? content + : SelectionArea(child: content), + ); + }, + ), + ), + ); + }, + ), + ); + } + + double _pageHeight(EpubRichPage page) => + widget.engine.preferences.pageMargins.vertical + + page.fragments.fold( + 0, + (sum, fragment) => + sum + fragment.height + fragment.spacing(widget.engine.preferences), + ); + + Widget _page(EpubRichPage page, {bool scroll = false}) { + final preferences = widget.engine.preferences; + final children = [ + for (final fragment in page.fragments) + Padding( + padding: EdgeInsets.only(bottom: fragment.spacing(preferences)), + child: buildEpubFragment(fragment, preferences), + ), + ]; + return Padding( + padding: preferences.pageMargins, + child: scroll + ? Column( + crossAxisAlignment: CrossAxisAlignment.stretch, + children: children, + ) + // Oversized single lines remain reachable at extreme accessibility sizes. + : ListView( + physics: const ClampingScrollPhysics(), + children: children, + ), + ); + } +} + +final class _EpubScrollDelegate extends SliverChildBuilderDelegate { + _EpubScrollDelegate( + super.builder, { + required super.childCount, + required this.extent, + }); + final double extent; + @override + double estimateMaxScrollOffset( + int firstIndex, + int lastIndex, + double leadingScrollOffset, + double trailingScrollOffset, + ) => extent; +} diff --git a/lib/src/engine/epub/worker/epub_content.dart b/lib/src/engine/epub/worker/epub_content.dart new file mode 100644 index 0000000..e3ef8e0 --- /dev/null +++ b/lib/src/engine/epub/worker/epub_content.dart @@ -0,0 +1,159 @@ +import 'dart:math' as math; + +import 'package:characters/characters.dart'; +import 'package:html/dom.dart'; +import 'package:html/parser.dart' as parser; + +/// Serializable semantic runs. Offsets refer to this normalized content stream, +/// not screen pages; publisher layout and typography never enter the worker. +Map collectEpubContent(String html) { + final body = parser.parse(html).body; + final blocks = >[]; + final anchors = {}; + var offset = 0; + final runs = >[]; + String kind = 'p'; + var preformatted = false; + + void flush() { + if (runs.isEmpty) return; + final length = runs.fold( + 0, + (sum, run) => sum + (run['text'] as String).length, + ); + if (runs.any((run) => (run['text'] as String).trim().isNotEmpty)) { + final text = runs.map((run) => run['text'] as String).join(); + final boundaries = [0]; + var position = 0; + for (final grapheme in text.characters) { + position += grapheme.length; + boundaries.add(position); + } + var start = 0; + var boundaryIndex = 0; + while (start < length) { + var end = math.min(start + 4096, length); + if (end < length) { + final space = text.substring(start, end).lastIndexOf(RegExp(r'\s')); + if (space > 2048) end = start + space + 1; + while (boundaryIndex + 1 < boundaries.length && + boundaries[boundaryIndex + 1] <= end) { + boundaryIndex++; + } + end = boundaries[boundaryIndex]; + if (end <= start) end = boundaries[++boundaryIndex]; + } + var runOffset = 0; + final slice = >[]; + for (final run in runs) { + final value = run['text'] as String; + final from = math.max(0, start - runOffset); + final to = math.min(value.length, end - runOffset); + if (to > from) slice.add({...run, 'text': value.substring(from, to)}); + runOffset += value.length; + if (runOffset >= end) break; + } + blocks.add({ + 'kind': kind, + 'offset': offset + start, + 'length': end - start, + 'runs': slice, + 'paragraphEnd': end == length, + }); + start = end; + } + offset += length + 1; + } + runs.clear(); + } + + void text(String value, Map style) { + if (!preformatted) value = value.replaceAll(RegExp(r'\s+'), ' '); + if (runs.isEmpty && !preformatted) value = value.trimLeft(); + if (value.isNotEmpty) runs.add({'text': value, ...style}); + } + + void visit(Node node, Map inherited) { + if (node is Text) { + text(node.data, inherited); + return; + } + if (node is! Element) return; + final tag = node.localName ?? ''; + final isBlock = const { + 'h1', + 'h2', + 'h3', + 'h4', + 'h5', + 'h6', + 'p', + 'div', + 'li', + 'blockquote', + 'pre', + 'tr', + 'figure', + }.contains(tag); + final previousKind = kind; + final previousPre = preformatted; + if (isBlock) { + flush(); + kind = tag; + preformatted = tag == 'pre'; + } + final id = node.id.isEmpty ? node.attributes['name'] : node.id; + if (id != null && id.isNotEmpty) { + anchors[id] = + offset + + runs.fold(0, (sum, run) => sum + (run['text'] as String).length); + } + final style = {...inherited}; + if (const {'strong', 'b', 'th'}.contains(tag)) style['bold'] = true; + if (const {'em', 'i'}.contains(tag)) style['italic'] = true; + if (tag == 'u' || tag == 'a') style['underline'] = true; + if (tag == 's' || tag == 'del') style['strike'] = true; + if (tag == 'code' || tag == 'pre') style['code'] = true; + if (tag == 'br') runs.add({'text': '\n', ...style}); + if (tag == 'li') text('• ', style); + if (tag == 'td' || tag == 'th') { + if (runs.isNotEmpty) text(' | ', style); + } + if (tag == 'img') { + flush(); + final src = node.attributes['src']; + if (src != null) { + final width = double.tryParse(node.attributes['width'] ?? ''); + final height = double.tryParse(node.attributes['height'] ?? ''); + blocks.add({ + 'kind': 'image', + 'offset': offset, + 'length': 1, + 'src': src, + 'alt': node.attributes['alt'] ?? 'Illustration', + 'aspect': width != null && height != null && width > 0 && height > 0 + ? width / height + : 1.5, + }); + offset += 2; + } + } else { + for (final child in node.nodes) { + visit(child, style); + } + } + if (isBlock) { + flush(); + kind = previousKind; + preformatted = previousPre; + } + } + + if (body != null) { + for (final node in body.nodes) { + visit(node, const {}); + } + } + flush(); + return {'blocks': blocks, 'anchors': anchors, 'length': offset}; +} diff --git a/lib/src/engine/epub/worker/epub_processor.dart b/lib/src/engine/epub/worker/epub_processor.dart new file mode 100644 index 0000000..f74dce7 --- /dev/null +++ b/lib/src/engine/epub/worker/epub_processor.dart @@ -0,0 +1,324 @@ +import 'dart:convert'; +import 'dart:typed_data'; + +import 'package:epub_pro/epub_pro.dart'; +import 'package:html/dom.dart' as html_dom; +import 'package:html/parser.dart' as html_parser; + +import 'epub_content.dart'; + +/// Pure Dart document session, shared by native isolates and browser workers. +final class EpubProcessor { + EpubBookRef? _book; + List _spine = const []; + final Map> _chapters = {}; + + Future> dispatch( + String command, + Object? argument, + ) async { + if (command == 'open') return _open(argument as Uint8List); + if (command == 'chapter') return _chapter(argument as int); + throw ArgumentError('Unknown EPUB worker command: $command'); + } + + Future> _open(Uint8List bytes) async { + final book = await EpubReader.openBook(bytes); + final metadata = book.schema?.package?.metadata; + if (metadata?.metaItems.any( + (item) => + (item.property == 'rendition:layout' || + item.name == 'rendition:layout') && + (item.content == 'pre-paginated' || + item.attributes['content'] == 'pre-paginated'), + ) ?? + false) { + throw const EpubProcessingException( + 'unsupportedFixedLayout', + 'Fixed-layout EPUB documents are not supported.', + ); + } + final chapters = book.getChapters(); + final package = book.schema?.package; + final html = book.content?.html ?? {}; + final manifest = { + for (final item in package?.manifest?.items ?? []) + item.id: item, + }; + final spine = []; + for (final item in package?.spine?.items ?? []) { + if (!item.isLinear) continue; + final path = manifest[item.idRef]?.href; + if (path == null) continue; + // Keep missing manifest resources in order: opening that chapter should + // fail explicitly rather than silently skipping durable locator indices. + final content = html[path]; + spine.add( + EpubChapterRef( + contentFileName: path, + epubTextContentFileRef: content, + title: path, + ), + ); + } + if (spine.isEmpty) { + final seen = {}; + void visit(EpubChapterRef chapter) { + final path = chapter.contentFileName?.split('#').first; + if (path != null && seen.add(path)) spine.add(chapter); + for (final child in chapter.subChapters) { + visit(child); + } + } + + for (final chapter in chapters) { + visit(chapter); + } + } + if (spine.isEmpty) { + throw const FormatException('The EPUB has no readable spine.'); + } + Map toc(EpubChapterRef chapter) { + final path = chapter.contentFileName?.split('#').first; + final index = spine.indexWhere((item) => item.contentFileName == path); + return { + 'title': chapter.title ?? 'Chapter', + 'index': index < 0 ? 0 : index, + 'anchor': chapter.anchor, + 'children': chapter.subChapters.map(toc).toList(), + }; + } + + List> navigation(List points) { + final result = >[]; + for (final point in points) { + final uri = Uri.tryParse(point.content?.source ?? ''); + if (uri == null || uri.hasScheme) continue; + final path = Uri.decodeComponent(uri.path); + final index = spine.indexWhere((item) => item.contentFileName == path); + final children = navigation(point.childNavigationPoints); + if (index < 0) { + result.addAll(children); + continue; + } + final title = point.navigationLabels + .map((label) => label.text?.trim() ?? '') + .firstWhere((title) => title.isNotEmpty, orElse: () => 'Chapter'); + result.add({ + 'title': title, + 'index': index, + 'anchor': uri.hasFragment ? Uri.decodeComponent(uri.fragment) : null, + 'children': children, + }); + } + return result; + } + + final points = book.schema?.navigation?.navMap?.points; + final tableOfContents = points == null || points.isEmpty + ? chapters.map(toc).toList() + : navigation(points); + _book = book; + _spine = spine; + _chapters.clear(); + return {'count': spine.length, 'toc': tableOfContents}; + } + + Future> _chapter(int index) async { + final cached = _chapters.remove(index); + if (cached != null) { + _chapters[index] = cached; + return cached; + } + if (_book == null || index < 0 || index >= _spine.length) { + throw const FormatException('Chapter is outside the EPUB spine.'); + } + final chapter = _spine[index]; + final raw = await chapter.readHtmlContent(); + final sanitized = await _sanitize(raw, chapter, _book!); + final content = collectEpubContent(sanitized); + final result = {'html': sanitized, ...content}; + _chapters[index] = result; + // Bound by both count and encoded chapter size; a large chapter is returned + // but not retained in addition to its engine copy. + var size = _chapters.values.fold( + 0, + (sum, value) => sum + (value['html'] as String).length, + ); + while (_chapters.length > 3 || size > 4 * 1024 * 1024) { + final removed = _chapters.remove(_chapters.keys.first)!; + size -= (removed['html'] as String).length; + } + return result; + } + + Future _sanitize( + String raw, + EpubChapterRef chapter, + EpubBookRef book, + ) async { + final document = html_parser.parse(raw); + const blockedTags = { + 'script', + 'form', + 'iframe', + 'object', + 'embed', + 'input', + 'button', + 'link', + 'style', + 'video', + 'audio', + 'source', + 'track', + 'use', + }; + for (final tag in blockedTags) { + for (final element in document.querySelectorAll(tag).toList()) { + element.remove(); + } + } + + for (final element in document.querySelectorAll('*').toList()) { + _sanitizeAttributes(element); + if (element.localName != 'img') { + continue; + } + + final source = element.attributes['src']?.trim(); + final uri = source == null ? null : Uri.tryParse(source); + if (source == null || + source.isEmpty || + source.startsWith('//') || + uri == null || + uri.hasScheme) { + element.remove(); + continue; + } + + final resolved = _resolvePath( + chapter.contentFileName ?? '', + Uri.decodeComponent(uri.path), + ); + final image = book.content?.images.entries + .where((entry) => _normalized(entry.key) == _normalized(resolved)) + .map((entry) => entry.value) + .firstOrNull; + if (image == null) { + element.remove(); + continue; + } + + final bytes = await image.readContent(); + final mime = image.contentMimeType ?? 'application/octet-stream'; + if (!mime.toLowerCase().startsWith('image/')) { + element.remove(); + continue; + } + element.attributes['src'] = 'data:$mime;base64,${base64Encode(bytes)}'; + } + return document.outerHtml; + } + + void _sanitizeAttributes(html_dom.Element element) { + for (final name in element.attributes.keys.toList()) { + final normalizedName = name.toString().toLowerCase(); + if (normalizedName.startsWith('on') || normalizedName == 'srcset') { + element.attributes.remove(name); + } + } + + final style = element.attributes['style']; + if (style != null) { + final declarations = style + .split(';') + .map((declaration) => declaration.trim()) + .where( + (declaration) => + declaration.isNotEmpty && + !RegExp( + r'(?:url\s*\(|@import|expression\s*\()', + caseSensitive: false, + ).hasMatch(declaration), + ) + .toList(); + if (declarations.isEmpty) { + element.attributes.remove('style'); + } else { + element.attributes['style'] = declarations.join('; '); + } + } + + for (final attribute in const ['poster', 'background']) { + element.attributes.remove(attribute); + } + if (element.localName != 'img') { + element.attributes.remove('src'); + } + + final href = element.attributes['href']; + if (href == null) { + return; + } + if (element.localName != 'a' || !_isSafeLink(href)) { + element.attributes.remove('href'); + } + } + + bool _isSafeLink(String href) { + final normalized = href + .replaceAll(RegExp(r'[\u0000-\u0020]+'), '') + .toLowerCase(); + return !normalized.startsWith('javascript:') && + !normalized.startsWith('data:') && + !normalized.startsWith('vbscript:') && + !normalized.startsWith('file:'); + } + + String _resolvePath(String chapterPath, String relative) { + final parts = chapterPath.split('/')..removeLast(); + for (final part in relative.split('/')) { + if (part == '..') { + if (parts.isNotEmpty) { + parts.removeLast(); + } + } else if (part != '.' && part.isNotEmpty) { + parts.add(part); + } + } + return parts.join('/'); + } + + String _normalized(String path) => + path.replaceFirst(RegExp(r'^OEBPS/'), '').replaceFirst(RegExp(r'^/'), ''); +} + +final class EpubProcessingException implements Exception { + const EpubProcessingException(this.code, this.message); + final String code; + final String message; +} + +Future> processEpubMessage( + EpubProcessor processor, + Map message, +) async { + try { + return { + 'id': message['id'], + 'result': await processor.dispatch( + message['command'] as String, + message['argument'], + ), + }; + } on EpubProcessingException catch (error) { + return {'id': message['id'], 'error': error.code, 'message': error.message}; + } catch (_) { + return { + 'id': message['id'], + 'error': 'invalidDocument', + 'message': 'The EPUB document or chapter is invalid or malformed.', + }; + } +} diff --git a/lib/src/engine/epub/worker/epub_worker.dart b/lib/src/engine/epub/worker/epub_worker.dart new file mode 100644 index 0000000..5d4be92 --- /dev/null +++ b/lib/src/engine/epub/worker/epub_worker.dart @@ -0,0 +1,17 @@ +import 'dart:typed_data'; + +import 'epub_worker_native.dart' + if (dart.library.js_interop) 'epub_worker_web.dart' + as platform; + +abstract interface class EpubWorker { + Future> request(String command, Object? argument); + void dispose(); +} + +Future createEpubWorker() => platform.createWorker(); + +extension EpubWorkerCommands on EpubWorker { + Future> open(Uint8List bytes) => request('open', bytes); + Future> chapter(int index) => request('chapter', index); +} diff --git a/lib/src/engine/epub/worker/epub_worker_native.dart b/lib/src/engine/epub/worker/epub_worker_native.dart new file mode 100644 index 0000000..3dfebf8 --- /dev/null +++ b/lib/src/engine/epub/worker/epub_worker_native.dart @@ -0,0 +1,118 @@ +import 'dart:async'; +import 'dart:isolate'; + +import '../../../domain/reader_exception.dart'; +import 'epub_processor.dart'; +import 'epub_worker.dart'; + +Future createWorker() async { + final messages = ReceivePort(); + final worker = _NativeEpubWorker(messages); + try { + worker.isolate = await Isolate.spawn( + _run, + messages.sendPort, + onError: messages.sendPort, + onExit: messages.sendPort, + debugName: 'papyrus-epub', + ); + await worker._ready.future; + return worker; + } catch (_) { + worker.dispose(); + rethrow; + } +} + +void _run(SendPort host) { + final requests = ReceivePort(); + final processor = EpubProcessor(); + host.send(requests.sendPort); + Future queue = Future.value(); + requests.listen((dynamic message) { + queue = queue.then((_) async { + host.send( + await processEpubMessage( + processor, + Map.from(message as Map), + ), + ); + }); + }); +} + +final class _NativeEpubWorker implements EpubWorker { + _NativeEpubWorker(this.messages) { + messages.listen(_receive); + } + final ReceivePort messages; + final Completer _ready = Completer(); + final Map>> _pending = {}; + Isolate? isolate; + int _id = 0; + bool _disposed = false; + + void _receive(dynamic message) { + if (message is SendPort) { + _ready.complete(message); + return; + } + if (message is! Map) { + dispose(); + return; + } + final pending = _pending.remove(message['id']); + if (pending == null) return; + if (message['error'] != null) { + pending.completeError( + ReaderException( + message['error'] == 'unsupportedFixedLayout' + ? ReaderErrorCode.unsupportedFixedLayout + : ReaderErrorCode.invalidDocument, + message['message'] as String, + ), + ); + } else { + pending.complete(Map.from(message['result'] as Map)); + } + } + + @override + Future> request(String command, Object? argument) async { + if (_disposed) { + throw const ReaderException( + ReaderErrorCode.engineUnavailable, + 'The document was closed.', + ); + } + final port = await _ready.future; + if (_disposed) { + throw const ReaderException( + ReaderErrorCode.engineUnavailable, + 'The document was closed.', + ); + } + final id = ++_id; + final result = Completer>(); + _pending[id] = result; + port.send({'id': id, 'command': command, 'argument': argument}); + return result.future; + } + + @override + void dispose() { + if (_disposed) return; + _disposed = true; + isolate?.kill(priority: Isolate.immediate); + messages.close(); + const error = ReaderException( + ReaderErrorCode.engineUnavailable, + 'The document was closed.', + ); + if (!_ready.isCompleted) _ready.completeError(error); + for (final pending in _pending.values) { + pending.completeError(error); + } + _pending.clear(); + } +} diff --git a/lib/src/engine/epub/worker/epub_worker_web.dart b/lib/src/engine/epub/worker/epub_worker_web.dart new file mode 100644 index 0000000..4847b25 --- /dev/null +++ b/lib/src/engine/epub/worker/epub_worker_web.dart @@ -0,0 +1,105 @@ +import 'dart:async'; +import 'dart:convert'; +import 'dart:js_interop'; + +import 'package:flutter/services.dart'; +import 'package:web/web.dart' as web; + +import '../../../domain/reader_exception.dart'; +import 'epub_worker.dart'; + +Future createWorker() async { + final script = await rootBundle.loadString( + 'packages/papyrus_reader/assets/epub_worker.js', + ); + final url = web.URL.createObjectURL( + web.Blob([script.toJS].toJS, web.BlobPropertyBag(type: 'text/javascript')), + ); + try { + return _WebEpubWorker(web.Worker(url.toJS)); + } finally { + web.URL.revokeObjectURL(url); + } +} + +final class _WebEpubWorker implements EpubWorker { + _WebEpubWorker(this.worker) { + worker.onmessage = ((web.MessageEvent event) { + final message = + jsonDecode((event.data as JSString).toDart) as Map; + final result = _pending.remove(message['id']); + if (result == null) return; + if (message['error'] != null) { + result.completeError( + ReaderException( + message['error'] == 'unsupportedFixedLayout' + ? ReaderErrorCode.unsupportedFixedLayout + : ReaderErrorCode.invalidDocument, + message['message'] as String, + ), + ); + } else { + result.complete(Map.from(message['result'] as Map)); + } + }).toJS; + worker.onerror = ((web.Event event) { + _fail( + const ReaderException( + ReaderErrorCode.engineUnavailable, + 'The EPUB worker could not start. Check the application worker assets and Content Security Policy.', + ), + ); + }).toJS; + } + final web.Worker worker; + final Map>> _pending = {}; + int _id = 0; + bool _disposed = false; + + @override + Future> request(String command, Object? argument) { + if (_disposed) { + return Future.error( + const ReaderException( + ReaderErrorCode.engineUnavailable, + 'The document was closed.', + ), + ); + } + final id = ++_id; + final result = Completer>(); + _pending[id] = result; + if (argument is Uint8List) { + // Own a copy: transferring must not detach the host's cached book bytes. + final copy = Uint8List.fromList(argument); + final bytes = copy.toJS; + worker.postMessage( + {'id': id, 'command': command, 'bytes': bytes}.jsify(), + [copy.buffer.toJS].toJS, + ); + } else { + worker.postMessage( + {'id': id, 'command': command, 'argument': argument}.jsify(), + ); + } + return result.future; + } + + void _fail(ReaderException error) { + if (_disposed) return; + _disposed = true; + worker.terminate(); + for (final result in _pending.values) { + result.completeError(error); + } + _pending.clear(); + } + + @override + void dispose() => _fail( + const ReaderException( + ReaderErrorCode.engineUnavailable, + 'The document was closed.', + ), + ); +} diff --git a/lib/src/engine/pdf/pdf_facade.dart b/lib/src/engine/pdf/pdf_facade.dart index 4a93235..609b766 100644 --- a/lib/src/engine/pdf/pdf_facade.dart +++ b/lib/src/engine/pdf/pdf_facade.dart @@ -1,6 +1,8 @@ +import 'dart:async'; import 'dart:math'; -import 'dart:typed_data'; +import 'package:flutter/gestures.dart'; +import 'package:flutter/services.dart'; import 'package:flutter/widgets.dart'; import 'package:pdfrx/pdfrx.dart'; @@ -35,6 +37,7 @@ final class PdfViewportConfiguration { required this.brightness, required this.layoutMode, required this.onPageChanged, + this.onPositionChanged, }); final int pageIndex; @@ -43,6 +46,7 @@ final class PdfViewportConfiguration { final Brightness brightness; final ReaderLayoutMode layoutMode; final ValueChanged onPageChanged; + final void Function(int pageIndex, double pageOffset)? onPositionChanged; } abstract interface class PdfFacade { @@ -55,6 +59,10 @@ abstract interface class PdfFacade { Widget buildViewport(PdfViewportConfiguration configuration); } +abstract interface class DisposablePdfFacade { + void dispose(); +} + typedef PdfFacadeFactory = Future Function(Uint8List bytes); abstract interface class PdfMetadataDocument { @@ -80,21 +88,28 @@ Future createPdfrxFacade( key: PdfDocumentRefKey(sourceName, [bytes]), ); PdfMetadataDocument? metadataDocument; + VoidCallback? releaseDocument; try { - metadataDocument = - await metadataDocumentLoader?.call() ?? - _PdfrxMetadataDocument( - await reference.loadDocument((int current, [int? total]) {}), - ); + if (metadataDocumentLoader != null) { + metadataDocument = await metadataDocumentLoader(); + } else { + final shared = reference.resolveListenable(); + releaseDocument = shared.addListener(() {}); + await shared.load(); + if (shared.error != null) throw shared.error!; + metadataDocument = _PdfrxMetadataDocument(shared.document!); + } final outline = await metadataDocument.loadOutline(); - return _PdfrxFacade( + final facade = _PdfrxFacade( documentRef: reference, pageCount: metadataDocument.pageCount, - pageSizes: List.unmodifiable(metadataDocument.pageSizes), outline: List.unmodifiable(outline), + releaseDocument: releaseDocument, ); + releaseDocument = null; + return facade; } on PdfPasswordException catch (error) { throw PdfFacadeException(PdfFacadeError.encrypted, error); } on PdfFacadeException { @@ -102,7 +117,8 @@ Future createPdfrxFacade( } on Object catch (error) { throw PdfFacadeException(PdfFacadeError.invalid, error); } finally { - await metadataDocument?.dispose(); + if (metadataDocumentLoader != null) await metadataDocument?.dispose(); + releaseDocument?.call(); } } @@ -138,20 +154,31 @@ PdfFacadeOutlineEntry _convertOutline(PdfOutlineNode node) { ); } -final class _PdfrxFacade implements PdfFacade { +final class _PdfrxFacade implements PdfFacade, DisposablePdfFacade { _PdfrxFacade({ required PdfDocumentRef documentRef, required this.pageCount, - required List pageSizes, required this.outline, + VoidCallback? releaseDocument, }) : _documentRef = documentRef, - _pageSizes = pageSizes; + _releaseDocument = releaseDocument { + _controller.addListener(_positionChanged); + } final PdfDocumentRef _documentRef; - final List _pageSizes; final PdfViewerController _controller = PdfViewerController(); int _pageIndex = 0; double _pageOffset = 0; + final VoidCallback? _releaseDocument; + PdfViewportConfiguration? _configuration; + bool _restoring = false; + bool _scheduled = false; + bool _disposed = false; + Object? _viewKey; + int _viewerRevision = 0; + DateTime? _lastWheelTurn; + Offset? _touchStart; + int _touchPointers = 0; @override final int pageCount; @@ -163,73 +190,299 @@ final class _PdfrxFacade implements PdfFacade { Future showPage(int pageIndex, double pageOffset) async { _pageIndex = pageIndex; _pageOffset = pageOffset; - if (_controller.isReady) { - await _restorePage(); + if (_controller.isReady && !_restoring) { + _restoring = true; + try { + await _restorePage(); + } finally { + _restoring = false; + } } } + Rect get _spread => pdfSpreadRect( + _controller.layout, + _pageIndex, + _configuration!.facingPages, + ); + + double get _fitZoom => min( + (_controller.viewSize.width - 16) / _spread.width, + (_controller.viewSize.height - 16) / _spread.height, + ); + + bool get _atFit => + _controller.isReady && _controller.currentZoom <= _fitZoom * 1.02; + Future _restorePage() { - if (_pageOffset == 0) { - return _controller.goToPage( - pageNumber: _pageIndex + 1, + final config = _configuration; + if (config == null) return Future.value(); + final rect = _spread; + if (config.layoutMode == ReaderLayoutMode.paginated) { + return _controller.goTo( + _controller.calcMatrixForRect(rect, margin: 8), duration: Duration.zero, ); } - - final pageSize = _pageSizes[_pageIndex]; - final top = pageSize.height * (1 - _pageOffset); - return _controller.goToRectInsidePage( - pageNumber: _pageIndex + 1, - rect: PdfRect(0, max(1, top), pageSize.width, max(0, top - 1)), - anchor: PdfPageAnchor.top, + // Include pdfrx's document margins in the width fit. Fitting only the page + // makes scaled margins wider than the viewport and permits horizontal pan. + // Keep the page-local offset while refitting columns or available space. + final documentWidth = _controller.layout.documentSize.width; + final zoom = (_controller.viewSize.width / documentWidth).clamp(.1, 8.0); + final page = _controller.layout.pageLayouts[_pageIndex]; + return _controller.goTo( + _controller.calcMatrixFor( + Offset( + documentWidth / 2, + page.top + + page.height * _pageOffset + + _controller.viewSize.height / (2 * zoom), + ), + zoom: zoom, + ), duration: Duration.zero, ); } + void _turnSpread(int direction) { + final config = _configuration; + if (_disposed || _restoring || config == null || !_controller.isReady) { + return; + } + final step = config.facingPages ? 2 : 1; + final target = (_pageIndex ~/ step) * step + direction * step; + if (target < 0 || target >= pageCount) return; + unawaited( + showPage(target, 0).then((_) { + if (_disposed) return; + config.onPositionChanged?.call(target, 0); + if (config.onPositionChanged == null) config.onPageChanged(target); + }), + ); + } + @override Widget buildViewport(PdfViewportConfiguration configuration) { - _pageIndex = configuration.pageIndex; - - return applyPdfBrightness( - configuration.brightness, - PdfViewer( - _documentRef, - controller: _controller, - initialPageNumber: _pageIndex + 1, - params: buildPdfViewerParams( - configuration, - onViewerReady: (_, _) { - _restorePage(); - }, - onPageChanged: (pageIndex) { - _pageIndex = pageIndex; - _pageOffset = 0; - configuration.onPageChanged(_pageIndex); - }, - ), - ), + _configuration = configuration; + return LayoutBuilder( + builder: (context, constraints) { + final size = Size(constraints.maxWidth, constraints.maxHeight); + final key = (configuration.layoutMode, configuration.facingPages, size); + if (_viewKey != key) { + _viewKey = key; + _viewerRevision++; + _restoring = true; + } + final revision = _viewerRevision; + return applyPdfBrightness( + configuration.brightness, + Listener( + onPointerSignal: (event) { + if (configuration.layoutMode != ReaderLayoutMode.paginated || + event is! PointerScrollEvent || + _restoring || + !_atFit || + HardwareKeyboard.instance.isControlPressed || + HardwareKeyboard.instance.isMetaPressed) { + return; + } + final delta = + event.scrollDelta.dy.abs() >= event.scrollDelta.dx.abs() + ? event.scrollDelta.dy + : event.scrollDelta.dx; + if (delta.abs() < 10) return; + final now = DateTime.now(); + if (_lastWheelTurn != null && + now.difference(_lastWheelTurn!).inMilliseconds < 250) { + return; + } + _lastWheelTurn = now; + // Let pdfrx finish handling the wheel before snapping to the next row. + WidgetsBinding.instance.addPostFrameCallback((_) { + if (!_disposed && revision == _viewerRevision) { + _turnSpread(delta > 0 ? 1 : -1); + } + }); + WidgetsBinding.instance.scheduleFrame(); + }, + onPointerDown: (event) { + if (event.kind != PointerDeviceKind.touch) return; + _touchPointers++; + _touchStart = _touchPointers == 1 ? event.position : null; + }, + onPointerUp: (event) { + if (event.kind != PointerDeviceKind.touch) return; + final start = _touchStart; + _touchPointers = max(0, _touchPointers - 1); + _touchStart = null; + if (configuration.layoutMode == ReaderLayoutMode.paginated && + start != null && + !_restoring && + _atFit && + (event.position.dx - start.dx).abs() > 70) { + _turnSpread(event.position.dx < start.dx ? 1 : -1); + } + }, + onPointerCancel: (_) { + _touchPointers = 0; + _touchStart = null; + }, + child: PdfViewer( + _documentRef, + key: ValueKey(key), + controller: _controller, + initialPageNumber: _pageIndex + 1, + params: buildPdfViewerParams( + configuration, + viewportSize: size, + currentPageIndex: () => _pageIndex, + onViewerReady: (_, _) async { + if (_disposed || revision != _viewerRevision) return; + try { + await _restorePage(); + } finally { + if (!_disposed && revision == _viewerRevision) { + _restoring = false; + _positionChanged(); + } + } + }, + onPageChanged: (_) => _positionChanged(), + ), + ), + ), + ); + }, ); } + + void _positionChanged() { + if (_disposed || _restoring || _scheduled || !_controller.isReady) return; + _scheduled = true; + WidgetsBinding.instance.addPostFrameCallback((_) { + _scheduled = false; + if (_disposed || _restoring || !_controller.isReady) return; + final config = _configuration; + final index = config?.layoutMode == ReaderLayoutMode.paginated + ? _pageIndex + : ((_controller.pageNumber ?? 1) - 1).clamp(0, pageCount - 1); + final page = _controller.layout.pageLayouts[index]; + final offset = config?.layoutMode == ReaderLayoutMode.paginated && _atFit + ? 0.0 + : ((_controller.visibleRect.top - page.top) / page.height).clamp( + 0.0, + 1.0, + ); + _pageIndex = index; + _pageOffset = offset; + if (config?.onPositionChanged != null) { + config!.onPositionChanged!(index, offset); + } else { + config?.onPageChanged(index); + } + }); + WidgetsBinding.instance.scheduleFrame(); + } + + @override + void dispose() { + if (_disposed) return; + _disposed = true; + _controller.removeListener(_positionChanged); + _releaseDocument?.call(); + _configuration = null; + } } PdfViewerParams buildPdfViewerParams( PdfViewportConfiguration configuration, { PdfViewerReadyCallback? onViewerReady, ValueChanged? onPageChanged, + Size viewportSize = const Size(800, 600), + int Function()? currentPageIndex, }) { final paginated = configuration.layoutMode == ReaderLayoutMode.paginated; return PdfViewerParams( - backgroundColor: configuration.backgroundColor, + backgroundColor: configuration.brightness == Brightness.dark + ? Color.fromARGB( + (configuration.backgroundColor.a * 255).round(), + 255 - (configuration.backgroundColor.r * 255).round(), + 255 - (configuration.backgroundColor.g * 255).round(), + 255 - (configuration.backgroundColor.b * 255).round(), + ) + : configuration.backgroundColor, annotationRenderingMode: PdfAnnotationRenderingMode.annotationAndForms, - panAxis: PanAxis.vertical, - layoutPages: configuration.facingPages + panAxis: PanAxis.free, + layoutPages: paginated + ? (pages, params) => buildPaginatedPdfLayout( + [for (final page in pages) Size(page.width, page.height)], + viewportSize: viewportSize, + facingPages: configuration.facingPages, + margin: params.margin, + ) + : configuration.facingPages ? _facingLayout - : paginated - ? _paginatedLayout : null, - scrollPhysics: paginated - ? const PageScrollPhysics() - : const ClampingScrollPhysics(), + // Scroll physics operate on the entire document. Paginated panning is + // bounded to the active spread instead, with discrete wheel/touch turns. + scrollPhysics: paginated ? null : const ClampingScrollPhysics(), + sizeDelegateProvider: const PdfViewerSizeDelegateProviderLegacy( + minScale: .1, + useAlternativeFitScaleAsMinScale: false, + ), + normalizeMatrix: paginated + ? (matrix, viewSize, layout, controller) { + if (controller == null || !controller.isReady) return matrix; + final rect = pdfSpreadRect( + layout, + currentPageIndex?.call() ?? configuration.pageIndex, + configuration.facingPages, + ); + final fit = min( + (viewSize.width - 16) / rect.width, + (viewSize.height - 16) / rect.height, + ); + final zoom = matrix.zoom.clamp(fit.clamp(.1, 8.0), 8.0).toDouble(); + final visible = matrix.calcVisibleRect(viewSize); + double clampCenter( + double center, + double minEdge, + double maxEdge, + double half, + ) => maxEdge - minEdge <= half * 2 + ? (minEdge + maxEdge) / 2 + : center.clamp(minEdge + half, maxEdge - half); + return controller.calcMatrixFor( + Offset( + clampCenter( + visible.center.dx, + rect.left - 8, + rect.right + 8, + viewSize.width / (2 * zoom), + ), + clampCenter( + visible.center.dy, + rect.top - 8, + rect.bottom + 8, + viewSize.height / (2 * zoom), + ), + ), + zoom: zoom, + viewSize: viewSize, + ); + } + : null, + // Navigation belongs to the reader shortcuts; retain pdfrx copy/zoom keys. + onKey: (_, key, _) => + const [ + LogicalKeyboardKey.arrowLeft, + LogicalKeyboardKey.arrowRight, + LogicalKeyboardKey.pageUp, + LogicalKeyboardKey.pageDown, + LogicalKeyboardKey.space, + ].contains(key) + ? false + : null, onViewerReady: onViewerReady, onPageChanged: (pageNumber) { if (pageNumber != null) { @@ -240,47 +493,111 @@ PdfViewerParams buildPdfViewerParams( } Widget applyPdfBrightness(Brightness brightness, Widget child) { - if (brightness != Brightness.dark) { - return child; - } return ColorFiltered( - colorFilter: const ColorFilter.matrix([ - -1, - 0, - 0, - 0, - 255, - 0, - -1, - 0, - 0, - 255, - 0, - 0, - -1, - 0, - 255, - 0, - 0, - 0, - 1, - 0, - ]), + colorFilter: brightness == Brightness.dark + ? const ColorFilter.matrix([ + -1, + 0, + 0, + 0, + 255, + 0, + -1, + 0, + 0, + 255, + 0, + 0, + -1, + 0, + 255, + 0, + 0, + 0, + 1, + 0, + ]) + : const ColorFilter.matrix([ + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 0, + 1, + 0, + ]), child: child, ); } -PdfPageLayout _paginatedLayout(List pages, PdfViewerParams params) { - final layouts = []; - var y = params.margin; - var documentWidth = 0.0; +Rect pdfSpreadRect(PdfPageLayout layout, int index, bool facingPages) { + final first = facingPages ? (index ~/ 2) * 2 : index; + final rect = layout.pageLayouts[first]; + return facingPages && first + 1 < layout.pageLayouts.length + ? rect.expandToInclude(layout.pageLayouts[first + 1]) + : rect; +} - for (final page in pages) { - layouts.add(Rect.fromLTWH(params.margin, y, page.width, page.height)); - documentWidth = max(documentWidth, page.width + params.margin * 2); - y += page.height + params.margin; +/// Each spread gets a viewport-sized slot at fit scale, so spare space around +/// a short page cannot reveal the neighboring spread. +PdfPageLayout buildPaginatedPdfLayout( + List pages, { + required Size viewportSize, + required bool facingPages, + double margin = 8, +}) { + final step = facingPages ? 2 : 1; + final rows = <({int index, double width, double height})>[]; + var documentWidth = 0.0; + for (var index = 0; index < pages.length; index += step) { + final right = facingPages && index + 1 < pages.length + ? pages[index + 1] + : null; + final width = + pages[index].width + (right == null ? 0 : right.width + margin); + final height = max(pages[index].height, right?.height ?? 0); + rows.add((index: index, width: width, height: height)); + documentWidth = max(documentWidth, width + margin * 2); + } + final layouts = []; + var y = 0.0; + for (final row in rows) { + final zoom = min( + max(1, viewportSize.width - margin * 2) / row.width, + max(1, viewportSize.height - margin * 2) / row.height, + ); + final slotHeight = max(row.height + margin * 2, viewportSize.height / zoom); + final left = (documentWidth - row.width) / 2; + final top = y + (slotHeight - row.height) / 2; + layouts.add( + Rect.fromLTWH(left, top, pages[row.index].width, pages[row.index].height), + ); + if (facingPages && row.index + 1 < pages.length) { + final right = pages[row.index + 1]; + layouts.add( + Rect.fromLTWH( + left + pages[row.index].width + margin, + top, + right.width, + right.height, + ), + ); + } + y += slotHeight; } - return PdfPageLayout( pageLayouts: layouts, documentSize: Size(documentWidth, y), diff --git a/lib/src/engine/pdf/pdf_reader_engine.dart b/lib/src/engine/pdf/pdf_reader_engine.dart index 4a4ed60..8667dd4 100644 --- a/lib/src/engine/pdf/pdf_reader_engine.dart +++ b/lib/src/engine/pdf/pdf_reader_engine.dart @@ -36,6 +36,8 @@ final class PdfReaderEngine extends ReaderEngine { ReaderPreferences _preferences = const ReaderPreferences(); PdfReaderLocator? _locator; List _toc = const []; + bool _disposed = false; + bool _facingPages = false; @override Future load( @@ -56,12 +58,26 @@ final class PdfReaderEngine extends ReaderEngine { ); } + PdfFacade? candidate; try { final bytes = await document.loadBytes(); + if (_disposed) { + throw const ReaderException( + ReaderErrorCode.engineUnavailable, + 'The document was closed.', + ); + } final factory = _facadeFactory ?? (bytes) => createPdfrxFacade(bytes, sourceName: document.id); final facade = await factory(bytes); + candidate = facade; + if (_disposed) { + throw const ReaderException( + ReaderErrorCode.engineUnavailable, + 'The document was closed.', + ); + } if (facade.pageCount <= 0) { throw const PdfFacadeException(PdfFacadeError.invalid); } @@ -74,16 +90,34 @@ final class PdfReaderEngine extends ReaderEngine { ); } + final target = restored ?? _locatorFor(0, pageCount: facade.pageCount); + final toc = facade.outline + .map((entry) => _tocEntry(entry, facade.pageCount)) + .toList(); + await facade.showPage(target.pageIndex, target.pageOffset); + if (_disposed) { + throw const ReaderException( + ReaderErrorCode.engineUnavailable, + 'The document was closed.', + ); + } + final previous = _facade; _facade = facade; + if (previous != null && !identical(previous, facade)) _release(previous); _document = document; _preferences = preferences; - _locator = restored ?? _locatorFor(0); - _toc = facade.outline.map(_tocEntry).toList(); - await facade.showPage(_locator!.pageIndex, _locator!.pageOffset); + _locator = target; + _toc = toc; _publish(); } on ReaderException { + if (candidate != null && !identical(candidate, _facade)) { + _release(candidate); + } rethrow; } on PdfFacadeException catch (error) { + if (candidate != null && !identical(candidate, _facade)) { + _release(candidate); + } throw ReaderException( error.error == PdfFacadeError.encrypted ? ReaderErrorCode.encryptedDocument @@ -94,6 +128,9 @@ final class PdfReaderEngine extends ReaderEngine { cause: error.cause, ); } catch (error) { + if (candidate != null && !identical(candidate, _facade)) { + _release(candidate); + } throw ReaderException( ReaderErrorCode.invalidDocument, 'The PDF document is invalid or malformed.', @@ -102,22 +139,28 @@ final class PdfReaderEngine extends ReaderEngine { } } - ReaderTocEntry _tocEntry(PdfFacadeOutlineEntry entry) { - final index = entry.pageIndex.clamp(0, _facade!.pageCount - 1); + ReaderTocEntry _tocEntry(PdfFacadeOutlineEntry entry, int pageCount) { + final index = entry.pageIndex.clamp(0, pageCount - 1); return ReaderTocEntry( title: entry.title, - locator: _locatorFor(index), - children: entry.children.map(_tocEntry).toList(), + locator: _locatorFor(index, pageCount: pageCount), + children: entry.children + .map((child) => _tocEntry(child, pageCount)) + .toList(), ); } - PdfReaderLocator _locatorFor(int pageIndex, {double pageOffset = 0}) { - final last = (_facade?.pageCount ?? 1) - 1; + PdfReaderLocator _locatorFor( + int pageIndex, { + double pageOffset = 0, + int? pageCount, + }) { + final last = (pageCount ?? _facade?.pageCount ?? 1) - 1; return PdfReaderLocator( pageIndex: pageIndex, pageOffset: pageOffset, totalProgression: last <= 0 - ? 0 + ? pageOffset : ((pageIndex + pageOffset) / last).clamp(0, 1), ); } @@ -133,8 +176,8 @@ final class PdfReaderEngine extends ReaderEngine { 'The locator is not valid for the current PDF.', ); } - _locator = locator; await facade.showPage(locator.pageIndex, locator.pageOffset); + _locator = locator; _publish(); } @@ -157,6 +200,10 @@ final class PdfReaderEngine extends ReaderEngine { } final lastPageIndex = facade.pageCount - 1; + if (lastPageIndex == 0) { + await goTo(_locatorFor(0, pageOffset: progress)); + return; + } final scaledProgress = progress * lastPageIndex; final pageIndex = scaledProgress.floor(); final pageOffset = pageIndex == lastPageIndex @@ -181,7 +228,11 @@ final class PdfReaderEngine extends ReaderEngine { 'No PDF document is loaded.', ); } - final page = locator.pageIndex + delta; + final step = + _preferences.layoutMode == ReaderLayoutMode.paginated && _facingPages + ? 2 + : 1; + final page = (locator.pageIndex ~/ step) * step + delta * step; if (page < 0 || page >= facade.pageCount) { throw const ReaderException( ReaderErrorCode.navigationBoundary, @@ -207,11 +258,21 @@ final class PdfReaderEngine extends ReaderEngine { } void _visiblePageChanged(int pageIndex) { + _visiblePositionChanged(pageIndex, 0); + } + + void _visiblePositionChanged(int pageIndex, double pageOffset) { final facade = _facade; - if (facade == null || pageIndex < 0 || pageIndex >= facade.pageCount) { + if (_disposed || + facade == null || + pageIndex < 0 || + pageIndex >= facade.pageCount) { return; } - final next = _locatorFor(pageIndex); + final next = _locatorFor( + pageIndex, + pageOffset: (pageOffset.clamp(0, 1) * 10000).round() / 10000, + ); if (next == _locator) { return; } @@ -220,12 +281,14 @@ final class PdfReaderEngine extends ReaderEngine { } void _publish() { + if (_disposed) return; snapshot = ReaderReadySnapshot( document: _document!, preferences: _preferences, capabilities: capabilities, locator: _locator, toc: _toc, + locationLabel: 'Page ${_locator!.pageIndex + 1} of ${_facade!.pageCount}', ); notifyListeners(); } @@ -240,21 +303,42 @@ final class PdfReaderEngine extends ReaderEngine { 'The PDF viewport is not ready.', ); } - final facingPages = switch (_preferences.columnMode) { - ReaderColumnMode.double => true, - ReaderColumnMode.single => false, - ReaderColumnMode.automatic => - MediaQuery.maybeSizeOf(context)?.width.compareTo(900) == 1, - }; - return facade.buildViewport( - PdfViewportConfiguration( - pageIndex: locator.pageIndex, - facingPages: facingPages, - backgroundColor: _preferences.backgroundColor, - brightness: _preferences.brightness, - layoutMode: _preferences.layoutMode, - onPageChanged: _visiblePageChanged, - ), + return LayoutBuilder( + builder: (context, constraints) { + final facingPages = switch (_preferences.columnMode) { + ReaderColumnMode.double => constraints.maxWidth >= 600, + ReaderColumnMode.single => false, + ReaderColumnMode.automatic => constraints.maxWidth >= 1000, + }; + _facingPages = facingPages; + return facade.buildViewport( + PdfViewportConfiguration( + pageIndex: locator.pageIndex, + facingPages: facingPages, + backgroundColor: _preferences.backgroundColor, + brightness: _preferences.brightness, + layoutMode: _preferences.layoutMode, + onPageChanged: _visiblePageChanged, + onPositionChanged: _visiblePositionChanged, + ), + ); + }, ); } + + static void _release(PdfFacade facade) { + if (facade is DisposablePdfFacade) { + (facade as DisposablePdfFacade).dispose(); + } + } + + @override + void dispose() { + if (_disposed) return; + _disposed = true; + final facade = _facade; + _facade = null; + if (facade != null) _release(facade); + super.dispose(); + } } diff --git a/lib/src/presentation/papyrus_reader.dart b/lib/src/presentation/papyrus_reader.dart index f4bb030..fc39078 100644 --- a/lib/src/presentation/papyrus_reader.dart +++ b/lib/src/presentation/papyrus_reader.dart @@ -56,6 +56,8 @@ final class _PapyrusReaderState extends State { late ReaderController _controller; late bool _ownsController; ReaderSnapshot? _observedSnapshot; + Widget? _cachedViewport; + ReaderPreferences? _viewportPreferences; _ReaderPanel _panel = _ReaderPanel.none; double? _dragProgress; int _loadGeneration = 0; @@ -77,6 +79,7 @@ final class _PapyrusReaderState extends State { debugLabel: 'reader wide panel', ); FocusNode? _widePanelOpener; + final FocusNode _readerFocusNode = FocusNode(debugLabel: 'reader navigation'); bool get _isCommandBusy => _pendingCommands > 0; @@ -103,6 +106,7 @@ final class _PapyrusReaderState extends State { oldWidget.controller != widget.controller || oldWidget.registry != widget.registry; final documentChanged = oldWidget.document != widget.document; + if (documentChanged) _cachedViewport = null; if (controllerChanged || documentChanged) { _dismissCompactPanel(); _invalidateCommands(notify: false); @@ -135,6 +139,8 @@ final class _PapyrusReaderState extends State { void _detachController() { _loadGeneration++; + _cachedViewport = null; + _viewportPreferences = null; _controller.removeListener(_controllerChanged); if (_ownsController) { _controller.dispose(); @@ -247,28 +253,77 @@ final class _PapyrusReaderState extends State { _tocButtonFocusNode.dispose(); _settingsButtonFocusNode.dispose(); _widePanelFocusNode.dispose(); + _readerFocusNode.dispose(); _commandRevision.dispose(); super.dispose(); } @override Widget build(BuildContext context) { - final theme = widget.theme ?? ReaderThemeData.fromTheme(Theme.of(context)); final snapshot = _controller.snapshot; - - return Material( - color: theme.surfaceColor, - child: SafeArea( - child: switch (snapshot.status) { - ReaderStatus.idle => _buildEmpty(context, snapshot, theme), - ReaderStatus.loading => _buildLoading(context, snapshot, theme), - ReaderStatus.error => _buildError(context, snapshot, theme), - ReaderStatus.ready => _buildReady(context, snapshot, theme), - }, + final ambient = Theme.of(context); + final colors = snapshot.status == ReaderStatus.ready + ? ColorScheme.fromSeed( + seedColor: ambient.colorScheme.primary, + brightness: snapshot.preferences.brightness, + ) + : ambient.colorScheme; + final readerTheme = ambient.copyWith( + colorScheme: colors, + brightness: colors.brightness, + textTheme: ambient.textTheme.apply( + bodyColor: colors.onSurface, + displayColor: colors.onSurface, + ), + primaryTextTheme: ambient.primaryTextTheme.apply( + bodyColor: colors.onPrimary, + displayColor: colors.onPrimary, + ), + iconTheme: ambient.iconTheme.copyWith(color: colors.onSurface), + ); + final theme = widget.theme ?? ReaderThemeData.fromTheme(readerTheme); + return Theme( + data: readerTheme, + child: Builder( + builder: (context) => Material( + color: theme.surfaceColor, + child: SafeArea( + child: switch (snapshot.status) { + ReaderStatus.idle => _buildEmpty(context, snapshot, theme), + ReaderStatus.loading => _stateChrome( + _buildLoading(context, snapshot, theme), + theme, + ), + ReaderStatus.error => _stateChrome( + _buildError(context, snapshot, theme), + theme, + ), + ReaderStatus.ready => _buildReady(context, snapshot, theme), + }, + ), + ), ), ); } + Widget _stateChrome(Widget child, ReaderThemeData theme) { + return Column( + children: [ + if (widget.onBack != null) + Align( + alignment: AlignmentDirectional.centerStart, + child: _ReaderIconButton( + icon: Icons.arrow_back_rounded, + tooltip: 'Back', + onPressed: widget.onBack, + theme: theme, + ), + ), + Expanded(child: child), + ], + ); + } + ReaderStateContext _stateContext(ReaderSnapshot snapshot) { return ReaderStateContext( document: widget.document, @@ -411,10 +466,14 @@ final class _PapyrusReaderState extends State { const SingleActivator(LogicalKeyboardKey.pageUp): _goPrevious, const SingleActivator(LogicalKeyboardKey.arrowRight): _goNext, const SingleActivator(LogicalKeyboardKey.pageDown): _goNext, + const SingleActivator(LogicalKeyboardKey.space): _goNext, + const SingleActivator(LogicalKeyboardKey.space, shift: true): + _goPrevious, }, child: FocusTraversalGroup( policy: OrderedTraversalPolicy(), child: Focus( + focusNode: _readerFocusNode, autofocus: true, child: Column( children: [ @@ -443,11 +502,15 @@ final class _PapyrusReaderState extends State { isWide: isWide, ), ), - if (_isCommandBusy) - const LinearProgressIndicator( - key: ValueKey('reader-command-progress'), - minHeight: 2, - ), + SizedBox( + height: 2, + child: _isCommandBusy + ? const LinearProgressIndicator( + key: ValueKey('reader-command-progress'), + minHeight: 2, + ) + : null, + ), if (_commandError case final error?) _ReaderCommandError( message: error, @@ -463,7 +526,7 @@ final class _PapyrusReaderState extends State { child: _buildViewport(context, snapshot), ), ), - if (isWide) ...[ + if (isWide && _panel != _ReaderPanel.none) ...[ VerticalDivider(width: 1, color: theme.dividerColor), FocusTraversalOrder( order: const NumericFocusOrder(2), @@ -488,6 +551,7 @@ final class _PapyrusReaderState extends State { order: const NumericFocusOrder(4), child: _ReaderProgressControls( progress: _dragProgress ?? _progressOf(snapshot.locator), + locationLabel: snapshot.locationLabel, onProgressChanged: (value) { setState(() => _dragProgress = value); }, @@ -508,7 +572,12 @@ final class _PapyrusReaderState extends State { } Widget _buildViewport(BuildContext context, ReaderSnapshot snapshot) { - final viewport = _controller.buildViewport(context); + if (_cachedViewport == null || + _viewportPreferences != snapshot.preferences) { + _cachedViewport = _controller.buildViewport(context); + _viewportPreferences = snapshot.preferences; + } + final viewport = _cachedViewport!; final builder = widget.builders.viewport; return builder?.call( @@ -602,19 +671,80 @@ final class _PapyrusReaderState extends State { modalBarrierColor: Theme.of(context).bottomSheetTheme.modalBarrierColor, useSafeArea: true, isScrollControlled: true, - showDragHandle: true, + backgroundColor: Colors.transparent, + showDragHandle: false, constraints: BoxConstraints( maxWidth: theme.compactBreakpoint, - maxHeight: MediaQuery.sizeOf(context).height * 0.82, + maxHeight: math.max( + 160, + (MediaQuery.sizeOf(context).height - + MediaQuery.viewInsetsOf(context).bottom) * + 0.88, + ), ), builder: (sheetContext) { Widget buildPanel() { - return _panelWidget( - sheetContext, - _controller.snapshot, - panel, - theme, - () => Navigator.of(sheetContext).pop(), + // Captured route themes are a snapshot. Appearance can change while + // this sheet is open, so use the current reader theme on every update. + final preferences = _controller.preferences; + final colors = ColorScheme.fromSeed( + seedColor: Theme.of(this.context).colorScheme.primary, + brightness: preferences.brightness, + ); + final base = Theme.of(this.context); + final currentTheme = base.copyWith( + colorScheme: colors, + brightness: colors.brightness, + textTheme: base.textTheme.apply( + bodyColor: colors.onSurface, + displayColor: colors.onSurface, + ), + primaryTextTheme: base.primaryTextTheme.apply( + bodyColor: colors.onPrimary, + displayColor: colors.onPrimary, + ), + iconTheme: base.iconTheme.copyWith(color: colors.onSurface), + ); + final panelTheme = + widget.theme ?? ReaderThemeData.fromTheme(currentTheme); + return Theme( + data: currentTheme, + child: Builder( + builder: (context) => ClipRRect( + borderRadius: const BorderRadius.vertical( + top: Radius.circular(28), + ), + child: ColoredBox( + color: panelTheme.panelColor, + child: Column( + children: [ + SizedBox( + height: 32, + child: Center( + child: Container( + width: 32, + height: 4, + decoration: BoxDecoration( + color: colors.onSurfaceVariant, + borderRadius: BorderRadius.circular(2), + ), + ), + ), + ), + Expanded( + child: _panelWidget( + context, + _controller.snapshot, + panel, + panelTheme, + () => Navigator.of(sheetContext).pop(), + ), + ), + ], + ), + ), + ), + ), ); } @@ -736,6 +866,10 @@ final class _PapyrusReaderState extends State { final generation = _commandGeneration; final controller = _controller; + final restoreReadingFocus = + _readerFocusNode.hasFocus && + _panel == _ReaderPanel.none && + _compactPanelRoute == null; _pendingCommands++; _commandError = null; _commandRevision.value++; @@ -769,6 +903,16 @@ final class _PapyrusReaderState extends State { _pendingCommands = math.max(0, _pendingCommands - 1); _commandRevision.value++; setState(() {}); + if (restoreReadingFocus) { + WidgetsBinding.instance.addPostFrameCallback((_) { + if (mounted && + generation == _commandGeneration && + _panel == _ReaderPanel.none && + _compactPanelRoute == null) { + _readerFocusNode.requestFocus(); + } + }); + } }); } @@ -964,6 +1108,7 @@ final class _ReaderProgressControls extends StatelessWidget { required this.onNext, required this.enabled, required this.theme, + this.locationLabel, }); final double progress; @@ -973,6 +1118,7 @@ final class _ReaderProgressControls extends StatelessWidget { final VoidCallback onNext; final bool enabled; final ReaderThemeData theme; + final String? locationLabel; @override Widget build(BuildContext context) { @@ -987,47 +1133,61 @@ final class _ReaderProgressControls extends StatelessWidget { style: TextStyle(color: theme.onChromeColor), child: Padding( padding: const EdgeInsets.symmetric(horizontal: 8, vertical: 4), - child: Row( + child: Column( + mainAxisSize: MainAxisSize.min, children: [ - _ReaderIconButton( - icon: Icons.chevron_left_rounded, - tooltip: 'Previous', - onPressed: enabled ? onPrevious : null, - theme: theme, - ), - Expanded( - child: Semantics( - label: 'Reading progress', - value: '$percent percent', - slider: true, - child: SliderTheme( - data: SliderTheme.of(context).copyWith( - activeTrackColor: theme.progressColor, - thumbColor: theme.handleColor, + if (locationLabel != null) + Text( + locationLabel!, + maxLines: 1, + overflow: TextOverflow.ellipsis, + style: Theme.of(context).textTheme.labelMedium?.copyWith( + color: theme.onChromeColor, + ), + ), + Row( + children: [ + _ReaderIconButton( + icon: Icons.chevron_left_rounded, + tooltip: 'Previous', + onPressed: enabled ? onPrevious : null, + theme: theme, + ), + Expanded( + child: Semantics( + label: 'Reading progress', + value: '$percent percent', + slider: true, + child: SliderTheme( + data: SliderTheme.of(context).copyWith( + activeTrackColor: theme.progressColor, + thumbColor: theme.handleColor, + ), + child: Slider( + value: normalized, + onChanged: enabled ? onProgressChanged : null, + onChangeEnd: enabled ? onProgressChangeEnd : null, + ), + ), ), - child: Slider( - value: normalized, - onChanged: enabled ? onProgressChanged : null, - onChangeEnd: enabled ? onProgressChangeEnd : null, + ), + SizedBox( + width: 64, + child: Text( + '$percent%', + key: const ValueKey('reader-progress-label'), + textAlign: TextAlign.center, + maxLines: 1, + semanticsLabel: '$percent percent read', ), ), - ), - ), - SizedBox( - width: 64, - child: Text( - '$percent%', - key: const ValueKey('reader-progress-label'), - textAlign: TextAlign.center, - maxLines: 1, - semanticsLabel: '$percent percent read', - ), - ), - _ReaderIconButton( - icon: Icons.chevron_right_rounded, - tooltip: 'Next', - onPressed: enabled ? onNext : null, - theme: theme, + _ReaderIconButton( + icon: Icons.chevron_right_rounded, + tooltip: 'Next', + onPressed: enabled ? onNext : null, + theme: theme, + ), + ], ), ], ), @@ -1185,6 +1345,43 @@ final class _ReaderSettingsPanel extends StatelessWidget { padding: EdgeInsets.all(theme.panelPadding), children: [ if (capabilities.supportsTextCustomization) ...[ + DropdownButtonFormField( + key: ValueKey(('reader-font', preferences.fontFamily)), + initialValue: + const [ + null, + 'serif', + 'sans-serif', + 'monospace', + ].contains(preferences.fontFamily) + ? preferences.fontFamily ?? 'system' + : 'system', + isExpanded: true, + decoration: const InputDecoration( + labelText: 'Typeface', + border: OutlineInputBorder(), + ), + items: const [ + DropdownMenuItem(value: 'system', child: Text('System')), + DropdownMenuItem(value: 'serif', child: Text('Serif')), + DropdownMenuItem( + value: 'sans-serif', + child: Text('Sans serif'), + ), + DropdownMenuItem( + value: 'monospace', + child: Text('Monospace'), + ), + ], + onChanged: enabled + ? (value) => _update( + preferences.copyWith( + fontFamily: value == 'system' ? null : value, + ), + ) + : null, + ), + const SizedBox(height: 20), _SettingSlider( title: 'Font size', value: preferences.fontSize.clamp(8, 72), @@ -1230,6 +1427,7 @@ final class _ReaderSettingsPanel extends StatelessWidget { if (capabilities.supportsPagination || capabilities.supportsScrolling) ...[ DropdownButtonFormField( + key: ValueKey(('reader-mode', preferences.layoutMode)), initialValue: preferences.layoutMode, isExpanded: true, decoration: const InputDecoration( @@ -1260,6 +1458,7 @@ final class _ReaderSettingsPanel extends StatelessWidget { if (capabilities.supportsColumnMode) ...[ const SizedBox(height: 12), DropdownButtonFormField( + key: ValueKey(('reader-columns', preferences.columnMode)), initialValue: preferences.columnMode, isExpanded: true, decoration: const InputDecoration( @@ -1472,8 +1671,19 @@ final class _AppearancePreset extends StatelessWidget { @override Widget build(BuildContext context) { + final colors = Theme.of(context).colorScheme; return ChoiceChip( label: Text(label), + labelStyle: TextStyle( + color: selected ? colors.onSecondaryContainer : colors.onSurface, + ), + color: WidgetStateProperty.resolveWith( + (states) => states.contains(WidgetState.selected) + ? colors.secondaryContainer + : colors.surfaceContainerLow, + ), + checkmarkColor: colors.onSecondaryContainer, + side: BorderSide(color: colors.outlineVariant), selected: selected, avatar: CircleAvatar(backgroundColor: background), onSelected: enabled diff --git a/lib/src/presentation/reader_theme_data.dart b/lib/src/presentation/reader_theme_data.dart index 5b18518..7568516 100644 --- a/lib/src/presentation/reader_theme_data.dart +++ b/lib/src/presentation/reader_theme_data.dart @@ -13,8 +13,8 @@ final class ReaderThemeData { required this.dividerColor, this.compactBreakpoint = 720, this.sidePanelWidth = 320, - this.compactToolbarHeight = 64, - this.wideToolbarHeight = 72, + this.compactToolbarHeight = 56, + this.wideToolbarHeight = 64, this.minimumTargetSize = 48, this.panelPadding = 16, }); diff --git a/pubspec.lock b/pubspec.lock new file mode 100644 index 0000000..9d4e4c4 --- /dev/null +++ b/pubspec.lock @@ -0,0 +1,626 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + archive: + dependency: transitive + description: + name: archive + sha256: ace891da0862b0e4cabbb064ee3fd87b2728b898949fdb366d83fe98342c9f19 + url: "https://pub.dev" + source: hosted + version: "4.2.0" + args: + dependency: transitive + description: + name: args + sha256: d0481093c50b1da8910eb0bb301626d4d8eb7284aa739614d2b394ee09e3ea04 + url: "https://pub.dev" + source: hosted + version: "2.7.0" + async: + dependency: transitive + description: + name: async + sha256: e2eb0491ba5ddb6177742d2da23904574082139b07c1e33b8503b9f46f3e1a37 + url: "https://pub.dev" + source: hosted + version: "2.13.1" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + characters: + dependency: "direct main" + description: + name: characters + sha256: faf38497bda5ead2a8c7615f4f7939df04333478bf32e4173fcb06d428b5716b + url: "https://pub.dev" + source: hosted + version: "1.4.1" + clock: + dependency: transitive + description: + name: clock + sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b + url: "https://pub.dev" + source: hosted + version: "1.1.2" + code_assets: + dependency: transitive + description: + name: code_assets + sha256: bf394f466ba9205f1812a0433b392d6af280f155f56651eda7c18cc32ed493b8 + url: "https://pub.dev" + source: hosted + version: "1.2.1" + collection: + dependency: transitive + description: + name: collection + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" + url: "https://pub.dev" + source: hosted + version: "1.19.1" + crypto: + dependency: transitive + description: + name: crypto + sha256: c8ea0233063ba03258fbcf2ca4d6dadfefe14f02fab57702265467a19f27fadf + url: "https://pub.dev" + source: hosted + version: "3.0.7" + csslib: + dependency: transitive + description: + name: csslib + sha256: "09bad715f418841f976c77db72d5398dc1253c21fb9c0c7f0b0b985860b2d58e" + url: "https://pub.dev" + source: hosted + version: "1.0.2" + epub_pro: + dependency: "direct main" + description: + name: epub_pro + sha256: "2f405dcf31e45abf4e714acf99ca85e6bea61643160f5a51239f3077f6d3f06a" + url: "https://pub.dev" + source: hosted + version: "5.6.0" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44" + url: "https://pub.dev" + source: hosted + version: "1.3.3" + ffi: + dependency: transitive + description: + name: ffi + sha256: "6d7fd89431262d8f3125e81b50d3847a091d846eafcd4fdb88dd06f36d705a45" + url: "https://pub.dev" + source: hosted + version: "2.2.0" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_html: + dependency: "direct main" + description: + name: flutter_html + sha256: "38a2fd702ffdf3243fb7441ab58aa1bc7e6922d95a50db76534de8260638558d" + url: "https://pub.dev" + source: hosted + version: "3.0.0" + flutter_lints: + dependency: "direct dev" + description: + name: flutter_lints + sha256: "3105dc8492f6183fb076ccf1f351ac3d60564bff92e20bfc4af9cc1651f4e7e1" + url: "https://pub.dev" + source: hosted + version: "6.0.0" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + flutter_web_plugins: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + hooks: + dependency: transitive + description: + name: hooks + sha256: "9a62a50b50b769a737bc0a8ff381f333529df3ab746b2f6b02e83760231455ba" + url: "https://pub.dev" + source: hosted + version: "2.0.2" + html: + dependency: "direct main" + description: + name: html + sha256: "6d1264f2dffa1b1101c25a91dff0dc2daee4c18e87cd8538729773c073dbf602" + url: "https://pub.dev" + source: hosted + version: "0.15.6" + http: + dependency: transitive + description: + name: http + sha256: "87721a4a50b19c7f1d49001e51409bddc46303966ce89a65af4f4e6004896412" + url: "https://pub.dev" + source: hosted + version: "1.6.0" + http_parser: + dependency: transitive + description: + name: http_parser + sha256: "178d74305e7866013777bab2c3d8726205dc5a4dd935297175b19a23a2e66571" + url: "https://pub.dev" + source: hosted + version: "4.1.2" + image: + dependency: transitive + description: + name: image + sha256: "1976370a4df3091bb0f72409c187ad1f9132a818bc6b95ca59c0bae1c75c688e" + url: "https://pub.dev" + source: hosted + version: "4.9.2" + jni: + dependency: transitive + description: + name: jni + sha256: f038e58b4dc2c9037f50e233175086337e0b305e356d28211bf55f21c504cbd3 + url: "https://pub.dev" + source: hosted + version: "1.0.3" + jni_flutter: + dependency: transitive + description: + name: jni_flutter + sha256: "7b717011ea40d04fd47c2731d3d1d36eb99eba3435c2753d62489e8c3c9991d5" + url: "https://pub.dev" + source: hosted + version: "1.0.2" + jni_util: + dependency: transitive + description: + name: jni_util + sha256: "1ba86da04a5f2bf18fde2edb235587e70c5b0fc5bd4ba955f46b00942c3fc35f" + url: "https://pub.dev" + source: hosted + version: "1.0.0" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: "33e2e26bdd85a0112ec15400c8cbffea70d0f9c3407491f672a2fad47915e2de" + url: "https://pub.dev" + source: hosted + version: "11.0.2" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: "1dbc140bb5a23c75ea9c4811222756104fbcd1a27173f0c34ca01e16bea473c1" + url: "https://pub.dev" + source: hosted + version: "3.0.10" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "8d5a2d49f4a66b49744b23b018848400d23e54caf9463f4eb20df3eb8acb2eb1" + url: "https://pub.dev" + source: hosted + version: "3.0.2" + lints: + dependency: transitive + description: + name: lints + sha256: "12f842a479589fea194fe5c5a3095abc7be0c1f2ddfa9a0e76aed1dbd26a87df" + url: "https://pub.dev" + source: hosted + version: "6.1.0" + list_counter: + dependency: transitive + description: + name: list_counter + sha256: c447ae3dfcd1c55f0152867090e67e219d42fe6d4f2807db4bbe8b8d69912237 + url: "https://pub.dev" + source: hosted + version: "1.0.2" + logging: + dependency: transitive + description: + name: logging + sha256: c8245ada5f1717ed44271ed1c26b8ce85ca3228fd2ffdb75468ab01979309d61 + url: "https://pub.dev" + source: hosted + version: "1.3.0" + matcher: + dependency: transitive + description: + name: matcher + sha256: "12956d0ad8390bbcc63ca2e1469c0619946ccb52809807067a7020d57e647aa6" + url: "https://pub.dev" + source: hosted + version: "0.12.18" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: "9c337007e82b1889149c82ed242ed1cb24a66044e30979c44912381e9be4c48b" + url: "https://pub.dev" + source: hosted + version: "0.13.0" + meta: + dependency: transitive + description: + name: meta + sha256: "23f08335362185a5ea2ad3a4e597f1375e78bce8a040df5c600c8d3552ef2394" + url: "https://pub.dev" + source: hosted + version: "1.17.0" + objective_c: + dependency: transitive + description: + name: objective_c + sha256: b7fb95a6d9a4f009edd63dc5ac69f07420b23a16161c6dd8660290b59c602e8e + url: "https://pub.dev" + source: hosted + version: "9.5.0" + package_config: + dependency: transitive + description: + name: package_config + sha256: ffcf4cf3d6c0b74ac43708d9f56625506e8a68aa935abe9d267a7330f320eb5d + url: "https://pub.dev" + source: hosted + version: "3.0.0" + path: + dependency: transitive + description: + name: path + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" + url: "https://pub.dev" + source: hosted + version: "1.9.1" + path_provider: + dependency: transitive + description: + name: path_provider + sha256: a7f4874f987173da295a61c181b8ee71dab59b332a486b391babf26a1b884825 + url: "https://pub.dev" + source: hosted + version: "2.1.6" + path_provider_android: + dependency: transitive + description: + name: path_provider_android + sha256: "69cbd515a62b94d32a7944f086b2f82b4ac40a1d45bebfc00813a430ab2dabcd" + url: "https://pub.dev" + source: hosted + version: "2.3.1" + path_provider_foundation: + dependency: transitive + description: + name: path_provider_foundation + sha256: "2a376b7d6392d80cd3705782d2caa734ca4727776db0b6ec36ef3f1855197699" + url: "https://pub.dev" + source: hosted + version: "2.6.0" + path_provider_linux: + dependency: transitive + description: + name: path_provider_linux + sha256: "58c2005f147315b11e9b4a7bc889cd5203e250cba8e3f012dae259b4972b5c16" + url: "https://pub.dev" + source: hosted + version: "2.2.2" + path_provider_platform_interface: + dependency: transitive + description: + name: path_provider_platform_interface + sha256: "484838772624c3a4b94f1e44a3e19897fee738f2d5c4ce448443b0417f7c9dda" + url: "https://pub.dev" + source: hosted + version: "2.1.3" + path_provider_windows: + dependency: transitive + description: + name: path_provider_windows + sha256: bd6f00dbd873bfb70d0761682da2b3a2c2fccc2b9e84c495821639601d81afe7 + url: "https://pub.dev" + source: hosted + version: "2.3.0" + pdfium_dart: + dependency: transitive + description: + name: pdfium_dart + sha256: "86e95c66b09f3245b95c4924f2edce8d4f7c9786876e5c5ee8e36b104a94bbb0" + url: "https://pub.dev" + source: hosted + version: "0.2.5" + pdfium_flutter: + dependency: transitive + description: + name: pdfium_flutter + sha256: "0b115c0917aef9cf6bb9c4d47d0efc61d97f44844cd76287c921f997c26cf15d" + url: "https://pub.dev" + source: hosted + version: "0.2.3" + pdfrx: + dependency: "direct main" + description: + name: pdfrx + sha256: acce61944c31bd36f0c3031b1bbf41f59d0b0d4e5e27614fbdc74ff093d55464 + url: "https://pub.dev" + source: hosted + version: "2.4.7" + pdfrx_engine: + dependency: transitive + description: + name: pdfrx_engine + sha256: "8043527245e4c35a2a3b7df8494c066b9efa97fe031945951e46b378318b3d5f" + url: "https://pub.dev" + source: hosted + version: "0.4.5" + petitparser: + dependency: transitive + description: + name: petitparser + sha256: "91bd59303e9f769f108f8df05e371341b15d59e995e6806aefab827b58336675" + url: "https://pub.dev" + source: hosted + version: "7.0.2" + platform: + dependency: transitive + description: + name: platform + sha256: "5d6b1b0036a5f331ebc77c850ebc8506cbc1e9416c27e59b439f917a902a4984" + url: "https://pub.dev" + source: hosted + version: "3.1.6" + plugin_platform_interface: + dependency: transitive + description: + name: plugin_platform_interface + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" + url: "https://pub.dev" + source: hosted + version: "2.1.8" + posix: + dependency: transitive + description: + name: posix + sha256: bc1bad54ad2b735816e31f8d4600cfde6c7839975085ddfbca48b6c9f7c4044e + url: "https://pub.dev" + source: hosted + version: "6.5.2" + pub_semver: + dependency: transitive + description: + name: pub_semver + sha256: "5bfcf68ca79ef689f8990d1160781b4bad40a3bd5e5218ad4076ddb7f4081585" + url: "https://pub.dev" + source: hosted + version: "2.2.0" + record_use: + dependency: transitive + description: + name: record_use + sha256: "2551bd8eecfe95d14ae75f6021ad0248be5c27f138c2ec12fcb52b500b3ba1ed" + url: "https://pub.dev" + source: hosted + version: "0.6.0" + rxdart: + dependency: transitive + description: + name: rxdart + sha256: "5c3004a4a8dbb94bd4bf5412a4def4acdaa12e12f269737a5751369e12d1a962" + url: "https://pub.dev" + source: hosted + version: "0.28.0" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + source_span: + dependency: transitive + description: + name: source_span + sha256: "56a02f1f4cd1a2d96303c0144c93bd6d909eea6bee6bf5a0e0b685edbd4c47ab" + url: "https://pub.dev" + source: hosted + version: "1.10.2" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" + url: "https://pub.dev" + source: hosted + version: "1.12.1" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43" + url: "https://pub.dev" + source: hosted + version: "1.4.1" + synchronized: + dependency: transitive + description: + name: synchronized + sha256: "63896c27e81b28f8cb4e69ead0d3e8f03f1d1e5fc531a3e579cabed6a2c7c9e5" + url: "https://pub.dev" + source: hosted + version: "3.4.0+1" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e" + url: "https://pub.dev" + source: hosted + version: "1.2.2" + test_api: + dependency: transitive + description: + name: test_api + sha256: "93167629bfc610f71560ab9312acdda4959de4df6fac7492c89ff0d3886f6636" + url: "https://pub.dev" + source: hosted + version: "0.7.9" + typed_data: + dependency: transitive + description: + name: typed_data + sha256: f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + url_launcher: + dependency: transitive + description: + name: url_launcher + sha256: f6a7e5c4835bb4e3026a04793a4199ca2d14c739ec378fdfe23fc8075d0439f8 + url: "https://pub.dev" + source: hosted + version: "6.3.2" + url_launcher_android: + dependency: transitive + description: + name: url_launcher_android + sha256: "17bc677f0b301615530dd1d67e0a9828cafa2d0b6b6eae4cd3679b7eac4a273c" + url: "https://pub.dev" + source: hosted + version: "6.3.30" + url_launcher_ios: + dependency: transitive + description: + name: url_launcher_ios + sha256: "580fe5dfb51671ae38191d316e027f6b76272b026370708c2d898799750a02b0" + url: "https://pub.dev" + source: hosted + version: "6.4.1" + url_launcher_linux: + dependency: transitive + description: + name: url_launcher_linux + sha256: d5e14138b3bc193a0f63c10a53c94b91d399df0512b1f29b94a043db7482384a + url: "https://pub.dev" + source: hosted + version: "3.2.2" + url_launcher_macos: + dependency: transitive + description: + name: url_launcher_macos + sha256: "368adf46f71ad3c21b8f06614adb38346f193f3a59ba8fe9a2fd74133070ba18" + url: "https://pub.dev" + source: hosted + version: "3.2.5" + url_launcher_platform_interface: + dependency: transitive + description: + name: url_launcher_platform_interface + sha256: "552f8a1e663569be95a8190206a38187b531910283c3e982193e4f2733f01029" + url: "https://pub.dev" + source: hosted + version: "2.3.2" + url_launcher_web: + dependency: transitive + description: + name: url_launcher_web + sha256: "85c81589622fbc87c1c683aaea164d3604a7777495a79d91e39ffcdec39ddb34" + url: "https://pub.dev" + source: hosted + version: "2.4.3" + url_launcher_windows: + dependency: transitive + description: + name: url_launcher_windows + sha256: "712c70ab1b99744ff066053cbe3e80c73332b38d46e5e945c98689b2e66fc15f" + url: "https://pub.dev" + source: hosted + version: "3.1.5" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: d530bd74fea330e6e364cda7a85019c434070188383e1cd8d9777ee586914c5b + url: "https://pub.dev" + source: hosted + version: "2.2.0" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: "5f37239c4851efcef929cea7824e76df7f2f0970aef85d66bbc430afa40e72f0" + url: "https://pub.dev" + source: hosted + version: "15.3.0" + web: + dependency: "direct main" + description: + name: web + sha256: "868d88a33d8a87b18ffc05f9f030ba328ffefba92d6c127917a2ba740f9cfe4a" + url: "https://pub.dev" + source: hosted + version: "1.1.1" + word_count: + dependency: transitive + description: + name: word_count + sha256: "98ccd8ef6d614bcf11a7e6d39d43d08193a3a42d360104234018d1dfb86c413d" + url: "https://pub.dev" + source: hosted + version: "1.0.4" + xdg_directories: + dependency: transitive + description: + name: xdg_directories + sha256: "7a3f37b05d989967cdddcbb571f1ea834867ae2faa29725fd085180e0883aa15" + url: "https://pub.dev" + source: hosted + version: "1.1.0" + xml: + dependency: transitive + description: + name: xml + sha256: "971043b3a0d3da28727e40ed3e0b5d18b742fa5a68665cca88e74b7876d5e025" + url: "https://pub.dev" + source: hosted + version: "6.6.1" + yaml: + dependency: transitive + description: + name: yaml + sha256: b9da305ac7c39faa3f030eccd175340f968459dae4af175130b3fc47e40d76ce + url: "https://pub.dev" + source: hosted + version: "3.1.3" +sdks: + dart: ">=3.11.0 <4.0.0" + flutter: ">=3.41.0" diff --git a/pubspec.yaml b/pubspec.yaml index f557aee..190594e 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -9,14 +9,16 @@ environment: flutter: ">=3.35.0" dependencies: + characters: ^1.4.1 epub_pro: ^5.6.0 flutter: sdk: flutter flutter_html: ^3.0.0 # flutter_html 3.0.0 uses the private matches API removed in html 0.15.7. html: 0.15.6 - # 2.4.8 requires the PDF engine fixes for nullable native cache access. - pdfrx: ^2.4.8 + # 2.4.8 requires meta 1.18, conflicting with Flutter 3.41.2's SDK pin. + pdfrx: ^2.4.7 + web: ^1.1.1 dev_dependencies: flutter_test: @@ -28,6 +30,9 @@ dev_dependencies: # The following section is specific to Flutter packages. flutter: + assets: + - assets/epub_worker.js + - assets/epub_worker.NOTICES # To add assets to your package, add an assets section, like this: # assets: diff --git a/test/controller/reader_controller_test.dart b/test/controller/reader_controller_test.dart index 57f942b..4d6f4e3 100644 --- a/test/controller/reader_controller_test.dart +++ b/test/controller/reader_controller_test.dart @@ -222,7 +222,7 @@ void main() { expect(controller.buildViewport(FakeBuildContext()), isA()); }); - test('serializes overlapping loads and leaves the second ready', () async { + test('a new load completes without waiting for an obsolete load', () async { final firstDocument = makeDocument('first'); final secondDocument = makeDocument('second'); final firstGate = Completer(); @@ -254,11 +254,13 @@ void main() { expect(controller.snapshot.status, ReaderStatus.loading); expect(controller.snapshot.document, same(secondDocument)); - expect(secondEngine.loadedDocuments, isEmpty); - + await secondLoad; + expect(firstEngine.isDisposed, isTrue); + expect(controller.snapshot.document, same(secondDocument)); + expect(controller.snapshot.status, ReaderStatus.ready); + expect(firstEngine.activeLoadCount, 1); firstGate.complete(); await firstLoad; - await secondLoad; expect(firstEngine.loadedDocuments, [firstDocument]); expect(secondEngine.loadedDocuments, [secondDocument]); diff --git a/test/engine/epub_reader_engine_test.dart b/test/engine/epub_reader_engine_test.dart index 0f50843..d110964 100644 --- a/test/engine/epub_reader_engine_test.dart +++ b/test/engine/epub_reader_engine_test.dart @@ -6,6 +6,7 @@ import 'package:html/parser.dart' as html_parser; import 'package:papyrus_reader/papyrus_reader.dart'; import '../support/synthetic_epub.dart'; +import '../support/in_process_epub_worker.dart'; void main() { ReaderDocument document(Uint8List bytes, {String id = 'epub'}) { @@ -17,6 +18,39 @@ void main() { } group('EpubReaderEngine', () { + test('spine order is independent of a reordered TOC', () async { + final engine = testEpubEngine(); + await engine.load( + document(syntheticEpub(reversedToc: true)), + preferences: const ReaderPreferences(), + ); + expect(engine.currentChapterHtml, contains('Chapter One')); + expect( + (engine.snapshot.toc.first.locator as EpubReaderLocator).spineIndex, + 2, + ); + await engine.goNext(); + expect(engine.currentChapterHtml, contains('Chapter Two')); + await engine.goTo(engine.snapshot.toc.first.locator); + expect(engine.currentChapterHtml, contains('Chapter Three')); + }); + + test('TOC fragment anchors restore a position inside the chapter', () async { + final engine = testEpubEngine(); + await engine.load( + document( + syntheticEpub( + secondChapterBody: + '

Text before the target.

Part A

After the target.

', + ), + ), + preferences: const ReaderPreferences(), + ); + await engine.goTo(engine.snapshot.toc.first.children.single.locator); + final locator = await engine.currentLocator() as EpubReaderLocator; + expect(locator.spineIndex, 1); + expect(locator.textOffset, greaterThan(0)); + }); test( 'lazily loads a valid EPUB and builds nested table of contents', () async { @@ -29,7 +63,7 @@ void main() { return syntheticEpub(); }, ); - final engine = EpubReaderEngine(); + final engine = testEpubEngine(); expect(loads, 0); await engine.load(book, preferences: const ReaderPreferences()); @@ -46,7 +80,7 @@ void main() { ); test('restores, navigates, and publishes CFI locators', () async { - final engine = EpubReaderEngine(); + final engine = testEpubEngine(); final book = document(syntheticEpub()); final restored = EpubReaderLocator( cfi: 'epubcfi(/6/4!/4/1:0)', @@ -107,7 +141,7 @@ void main() { }); test('maps continuous progress across spine and local progress', () async { - final engine = EpubReaderEngine(); + final engine = testEpubEngine(); await engine.load( document(syntheticEpub()), preferences: const ReaderPreferences(), @@ -130,7 +164,7 @@ void main() { }); test('rejects invalid continuous progress', () async { - final engine = EpubReaderEngine(); + final engine = testEpubEngine(); await engine.load( document(syntheticEpub()), preferences: const ReaderPreferences(), @@ -145,7 +179,7 @@ void main() { }); test('rejects an out-of-bounds restored locator', () async { - final engine = EpubReaderEngine(); + final engine = testEpubEngine(); await expectLater( engine.load( @@ -169,7 +203,7 @@ void main() { }); test('maps malformed and fixed-layout books to stable errors', () async { - final malformed = EpubReaderEngine(); + final malformed = testEpubEngine(); await expectLater( malformed.load( document(Uint8List.fromList([1, 2, 3])), @@ -184,7 +218,7 @@ void main() { ), ); - final fixed = EpubReaderEngine(); + final fixed = testEpubEngine(); await expectLater( fixed.load( document(syntheticEpub(fixedLayout: true)), @@ -201,7 +235,7 @@ void main() { }); test('applies preference changes to the ready snapshot', () async { - final engine = EpubReaderEngine(); + final engine = testEpubEngine(); await engine.load( document(syntheticEpub()), preferences: const ReaderPreferences(), @@ -220,7 +254,7 @@ void main() { 'clears pagination cache when documents and chapters change', () async { final paginator = TrackingEpubPaginator(); - final engine = EpubReaderEngine(paginator: paginator); + final engine = testEpubEngine(paginator: paginator); await engine.load( document(syntheticEpub(), id: 'first'), @@ -240,7 +274,7 @@ void main() { 'failed chapter navigation preserves the ready chapter state', () async { final paginator = TrackingEpubPaginator(); - final engine = EpubReaderEngine(paginator: paginator); + final engine = testEpubEngine(paginator: paginator); await engine.load( document(syntheticEpub(corruptSecondChapter: true)), preferences: const ReaderPreferences(), @@ -261,7 +295,7 @@ void main() { test('failed initial chapter load leaves the engine idle', () async { final paginator = TrackingEpubPaginator(); - final engine = EpubReaderEngine(paginator: paginator); + final engine = testEpubEngine(paginator: paginator); final restored = EpubReaderLocator( cfi: 'epubcfi(/6/4!/4/1:0)', spineIndex: 1, @@ -292,7 +326,7 @@ void main() { 'failed replacement load preserves the ready document state', () async { final paginator = TrackingEpubPaginator(); - final engine = EpubReaderEngine(paginator: paginator); + final engine = testEpubEngine(paginator: paginator); await engine.load( document(syntheticEpub(), id: 'ready'), preferences: const ReaderPreferences(), @@ -330,7 +364,7 @@ void main() { test( 'sanitizes active content and resource-loading URLs with a DOM', () async { - final engine = EpubReaderEngine(); + final engine = testEpubEngine(); await engine.load( document(syntheticEpub(malicious: true)), preferences: const ReaderPreferences(), @@ -396,7 +430,7 @@ void main() { testWidgets( 'scroll viewport renders sanitized EPUB content and local image', (tester) async { - final engine = EpubReaderEngine(); + final engine = testEpubEngine(); await engine.load( document(syntheticEpub(malicious: true)), preferences: const ReaderPreferences( @@ -410,7 +444,7 @@ void main() { child: Builder(builder: engine.buildViewport), ), ); - await tester.pump(); + await tester.pumpAndSettle(); expect(find.text('Chapter One'), findsOneWidget); expect(find.byType(Image), findsOneWidget); @@ -422,7 +456,7 @@ void main() { testWidgets('paginated viewport splits content into bounded pages', ( tester, ) async { - final engine = EpubReaderEngine(); + final engine = testEpubEngine(); await engine.load( document(syntheticEpub(longChapter: true)), preferences: const ReaderPreferences( @@ -450,7 +484,7 @@ void main() { testWidgets('paginated text blocks preserve sanitized semantic content', ( tester, ) async { - final engine = EpubReaderEngine(); + final engine = testEpubEngine(); await engine.load( document( syntheticEpub( @@ -486,7 +520,7 @@ void main() { final blocks = tester .widgetList(find.byType(Text)) - .map((text) => text.data) + .map((text) => text.data ?? text.textSpan?.toPlainText()) .whereType() .toList(); @@ -496,17 +530,16 @@ void main() { 'Before nested', 'Inner block', 'After', - 'List one', - 'List two', + '• List one', + '• List two', 'Quoted words', 'line one\n line two', - 'Heading', - 'Cell value', + 'Heading | Cell value', ]); }); testWidgets('paginated viewport publishes page progression', (tester) async { - final engine = EpubReaderEngine(); + final engine = testEpubEngine(); await engine.load( document(syntheticEpub(longChapter: true)), preferences: const ReaderPreferences( @@ -537,7 +570,7 @@ void main() { testWidgets( 'paginated viewport restores and updates the visual page from locator progress', (tester) async { - final engine = EpubReaderEngine(); + final engine = testEpubEngine(); await engine.load( document(syntheticEpub(longChapter: true)), initialLocator: EpubReaderLocator( @@ -595,7 +628,7 @@ void main() { testWidgets( 'scroll viewport restores visual offset and publishes scroll progression', (tester) async { - final engine = EpubReaderEngine(); + final engine = testEpubEngine(); await engine.load( document(syntheticEpub(longChapter: true)), initialLocator: EpubReaderLocator( @@ -621,16 +654,11 @@ void main() { ); await tester.pumpAndSettle(); - final scrollView = tester.widget( - find.byType(SingleChildScrollView), - ); + final scrollView = tester.widget(find.byType(ListView)); final position = scrollView.controller!.position; expect(position.pixels, closeTo(position.maxScrollExtent * 0.5, 1)); - await tester.drag( - find.byType(SingleChildScrollView), - const Offset(0, -300), - ); + await tester.drag(find.byType(ListView), const Offset(0, -300)); await tester.pumpAndSettle(); final locator = await engine.currentLocator() as EpubReaderLocator; @@ -643,7 +671,7 @@ void main() { testWidgets('scroll viewport publishes the final ballistic progression', ( tester, ) async { - final engine = EpubReaderEngine(); + final engine = testEpubEngine(); await engine.load( document(syntheticEpub(longChapter: true)), preferences: const ReaderPreferences(layoutMode: ReaderLayoutMode.scroll), @@ -661,16 +689,10 @@ void main() { ); await tester.pumpAndSettle(); - final scrollView = tester.widget( - find.byType(SingleChildScrollView), - ); + final scrollView = tester.widget(find.byType(ListView)); final position = scrollView.controller!.position; - await tester.fling( - find.byType(SingleChildScrollView), - const Offset(0, -300), - 1800, - ); + await tester.fling(find.byType(ListView), const Offset(0, -300), 1800); await tester.pumpAndSettle(); final locator = await engine.currentLocator() as EpubReaderLocator; @@ -682,7 +704,7 @@ void main() { testWidgets( 'total progression stays continuous through the final spine items', (tester) async { - final engine = EpubReaderEngine(); + final engine = testEpubEngine(); await engine.load( document(syntheticEpub(longChapter: true)), preferences: const ReaderPreferences( @@ -704,10 +726,7 @@ void main() { await tester.pumpWidget(viewport()); await tester.pumpAndSettle(); - await tester.drag( - find.byType(SingleChildScrollView), - const Offset(0, -100000), - ); + await tester.drag(find.byType(ListView), const Offset(0, -100000)); await tester.pumpAndSettle(); var locator = await engine.currentLocator() as EpubReaderLocator; @@ -723,10 +742,7 @@ void main() { await tester.pumpWidget(viewport()); await tester.pumpAndSettle(); - await tester.drag( - find.byType(SingleChildScrollView), - const Offset(0, -100000), - ); + await tester.drag(find.byType(ListView), const Offset(0, -100000)); await tester.pumpAndSettle(); locator = await engine.currentLocator() as EpubReaderLocator; diff --git a/test/engine/epub_rich_layout_test.dart b/test/engine/epub_rich_layout_test.dart new file mode 100644 index 0000000..5db9772 --- /dev/null +++ b/test/engine/epub_rich_layout_test.dart @@ -0,0 +1,164 @@ +import 'package:flutter/material.dart'; +import 'package:flutter_test/flutter_test.dart'; +import 'package:papyrus_reader/papyrus_reader.dart'; +import 'package:papyrus_reader/src/engine/epub/epub_rich_layout.dart'; +import 'package:papyrus_reader/src/engine/epub/worker/epub_content.dart'; + +void main() { + TestWidgetsFlutterBinding.ensureInitialized(); + testWidgets('measured fragments match the rendered Material reader text', ( + tester, + ) async { + tester.view.physicalSize = const Size(1280, 850); + tester.view.devicePixelRatio = 1; + addTearDown(tester.view.resetPhysicalSize); + addTearDown(tester.view.resetDevicePixelRatio); + final content = collectEpubContent( + List.generate( + 25, + (index) => + '

Passage $index. Reading should feel calm on a small phone and a wide desktop. ' + 'A page turn keeps its place, while emphasis and meaning ' + 'remain part of the story. Resize the window or change the typeface to try reflow.

', + ).join(), + ); + final blocks = [ + for (final json in content['blocks'] as List) + EpubContentBlock(Map.from(json as Map)), + ]; + const preferences = ReaderPreferences(); + final pages = (await tester.runAsync( + () => layoutEpubChapter( + blocks, + contentSize: const Size(592, 662), + preferences: preferences, + textScaler: TextScaler.noScaling, + direction: TextDirection.ltr, + cancelled: () => false, + ), + ))!; + for (final page in pages) { + await tester.pumpWidget( + MaterialApp( + home: Scaffold( + body: Align( + alignment: Alignment.topLeft, + child: SizedBox( + width: 592, + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + for (final fragment in page.fragments) + Padding( + padding: EdgeInsets.only( + bottom: fragment.spacing(preferences), + ), + child: buildEpubFragment(fragment, preferences), + ), + ], + ), + ), + ), + ), + ), + ); + final textWidgets = find.byType(Text); + var height = 0.0; + for (var i = 0; i < page.fragments.length; i++) { + final rendered = tester.getSize(textWidgets.at(i)).height; + expect(rendered, closeTo(page.fragments[i].height, 1)); + height += rendered + page.fragments[i].spacing(preferences); + } + expect(height, lessThanOrEqualTo(663)); + } + }); + + test( + 'long rich paragraphs preserve every character across page boundaries', + () async { + final paragraph = List.filled( + 250, + 'A👩🏽‍🚀 café 中文 line of text. ', + ).join(); + final content = collectEpubContent('

$paragraph

'); + final blocks = [ + for (final json in content['blocks'] as List) + EpubContentBlock(Map.from(json as Map)), + ]; + final pages = await layoutEpubChapter( + blocks, + contentSize: const Size(260, 310), + preferences: const ReaderPreferences(), + textScaler: TextScaler.noScaling, + direction: TextDirection.ltr, + cancelled: () => false, + ); + expect(pages.length, greaterThan(3)); + final rendered = pages + .expand((page) => page.fragments) + .map( + (f) => f.block + .span(const ReaderPreferences(), start: f.start, end: f.end) + .toPlainText(), + ) + .join(); + expect(rendered, paragraph); + for (final page in pages) { + var used = 0.0; + for (final fragment in page.fragments) { + final painter = TextPainter( + text: fragment.block.span( + const ReaderPreferences(), + start: fragment.start, + end: fragment.end, + ), + textDirection: TextDirection.ltr, + )..layout(maxWidth: 260); + used += painter.height + fragment.spacing(const ReaderPreferences()); + painter.dispose(); + } + expect( + used, + lessThanOrEqualTo(311), + reason: 'Rendered content must fit its page', + ); + } + }, + ); + + test( + 'content offsets and styles survive reflow and anchored navigation', + () async { + final content = collectEpubContent( + '

Heading

Before italic bold

', + ); + final blocks = [ + for (final json in content['blocks'] as List) + EpubContentBlock(Map.from(json as Map)), + ]; + expect((content['anchors'] as Map)['target'], 15); + final paragraph = blocks.last.span(const ReaderPreferences()); + expect( + paragraph.children!.whereType().any( + (s) => s.style?.fontStyle == FontStyle.italic, + ), + isTrue, + ); + expect( + paragraph.children!.whereType().any( + (s) => s.style?.fontWeight == FontWeight.bold, + ), + isTrue, + ); + final locator = EpubReaderLocator( + cfi: 'epubcfi(/6/2)', + spineIndex: 0, + localProgression: .3, + totalProgression: .1, + textOffset: 15, + anchor: 'target', + ); + expect(ReaderLocator.fromJson(locator.toJson()), locator); + }, + ); +} diff --git a/test/engine/epub_worker_test.dart b/test/engine/epub_worker_test.dart new file mode 100644 index 0000000..3b5dbe9 --- /dev/null +++ b/test/engine/epub_worker_test.dart @@ -0,0 +1,55 @@ +import 'dart:typed_data'; + +import 'package:flutter_test/flutter_test.dart'; +import 'package:papyrus_reader/papyrus_reader.dart'; +import 'package:papyrus_reader/src/engine/epub/worker/epub_worker.dart'; + +import '../support/synthetic_epub.dart'; + +void main() { + TestWidgetsFlutterBinding.ensureInitialized(); + test( + 'native document worker opens and prepares chapters independently', + () async { + final worker = await createEpubWorker(); + addTearDown(worker.dispose); + final metadata = await worker.open(syntheticEpub()); + expect(metadata['count'], 3); + final first = await worker.chapter(0); + expect(first['html'], contains('Chapter One')); + expect(first['blocks'], isNotEmpty); + final second = await worker.chapter(1); + expect(second['html'], contains('Chapter Two')); + expect(await worker.chapter(0), first); + }, + ); + + test( + 'native worker errors stay typed and disposal rejects requests', + () async { + final worker = await createEpubWorker(); + await expectLater( + worker.open(Uint8List.fromList([1, 2, 3])), + throwsA( + isA().having( + (e) => e.code, + 'code', + ReaderErrorCode.invalidDocument, + ), + ), + ); + await expectLater( + worker.open(syntheticEpub(fixedLayout: true)), + throwsA( + isA().having( + (e) => e.code, + 'code', + ReaderErrorCode.unsupportedFixedLayout, + ), + ), + ); + worker.dispose(); + await expectLater(worker.chapter(0), throwsA(isA())); + }, + ); +} diff --git a/test/engine/pdf_reader_engine_test.dart b/test/engine/pdf_reader_engine_test.dart index 3dbb3ef..774a27f 100644 --- a/test/engine/pdf_reader_engine_test.dart +++ b/test/engine/pdf_reader_engine_test.dart @@ -1,3 +1,4 @@ +import 'dart:async'; import 'dart:typed_data'; import 'package:flutter/widgets.dart'; @@ -15,6 +16,114 @@ void main() { } group('PdfReaderEngine', () { + testWidgets('turns whole spreads only in paginated mode', (tester) async { + tester.view.physicalSize = const Size(1200, 800); + tester.view.devicePixelRatio = 1; + addTearDown(tester.view.resetPhysicalSize); + addTearDown(tester.view.resetDevicePixelRatio); + final facade = FakePdfFacade(pageCount: 5); + final engine = PdfReaderEngine(facadeFactory: (_) async => facade); + addTearDown(engine.dispose); + await engine.load(document(), preferences: const ReaderPreferences()); + await tester.pumpWidget( + Directionality( + textDirection: TextDirection.ltr, + child: Builder(builder: engine.buildViewport), + ), + ); + expect(facade.lastConfiguration!.facingPages, isTrue); + await engine.goNext(); + expect((await engine.currentLocator() as PdfReaderLocator).pageIndex, 2); + await engine.goNext(); + expect((await engine.currentLocator() as PdfReaderLocator).pageIndex, 4); + await engine.goPrevious(); + expect((await engine.currentLocator() as PdfReaderLocator).pageIndex, 2); + await engine.updatePreferences( + const ReaderPreferences(layoutMode: ReaderLayoutMode.scroll), + ); + await engine.goNext(); + expect((await engine.currentLocator() as PdfReaderLocator).pageIndex, 3); + }); + + test( + 'failed replacement retains the current PDF and releases its candidate', + () async { + final original = FakePdfFacade(pageCount: 3); + final invalid = FakePdfFacade(pageCount: 0); + var loads = 0; + final engine = PdfReaderEngine( + facadeFactory: (_) async => loads++ == 0 ? original : invalid, + ); + await engine.load(document(), preferences: const ReaderPreferences()); + await engine.goNext(); + await expectLater( + engine.load(document(), preferences: const ReaderPreferences()), + throwsA(isA()), + ); + expect((engine.snapshot.locator as PdfReaderLocator).pageIndex, 1); + expect(original.disposeCount, 0); + expect(invalid.disposeCount, 1); + await engine.goNext(); + expect(original.shownPages.last, 2); + engine.dispose(); + expect(original.disposeCount, 1); + }, + ); + + test('closing while a PDF opens releases the late document', () async { + final gate = Completer(); + final started = Completer(); + final facade = FakePdfFacade(pageCount: 1); + final engine = PdfReaderEngine( + facadeFactory: (_) { + started.complete(); + return gate.future; + }, + ); + final loading = engine.load( + document(), + preferences: const ReaderPreferences(), + ); + final assertion = expectLater(loading, throwsA(isA())); + await started.future; + engine.dispose(); + gate.complete(facade); + await assertion; + expect(facade.disposeCount, 1); + }); + + testWidgets('uses available width and records intra-page position', ( + tester, + ) async { + final facade = FakePdfFacade(pageCount: 1); + final engine = PdfReaderEngine(facadeFactory: (_) async => facade); + addTearDown(engine.dispose); + await engine.load( + document(), + preferences: const ReaderPreferences( + columnMode: ReaderColumnMode.double, + ), + ); + await tester.pumpWidget( + Directionality( + textDirection: TextDirection.ltr, + child: Center( + child: SizedBox( + width: 390, + child: Builder(builder: engine.buildViewport), + ), + ), + ), + ); + expect(facade.lastConfiguration!.facingPages, isFalse); + facade.lastConfiguration!.onPositionChanged!(0, 0.345678); + final locator = await engine.currentLocator() as PdfReaderLocator; + expect(locator.pageOffset, 0.3457); + expect(locator.totalProgression, 0.3457); + await engine.goToProgress(0.75); + expect(facade.shownOffsets.last, 0.75); + }); + test( 'loads outline and restores a page locator through the facade', () async { @@ -50,7 +159,9 @@ void main() { }, ); - test('navigates with bounds and publishes visible page changes', () async { + testWidgets('navigates with bounds and publishes visible page changes', ( + tester, + ) async { final facade = FakePdfFacade(pageCount: 3); final engine = PdfReaderEngine(facadeFactory: (_) async => facade); await engine.load( @@ -75,7 +186,12 @@ void main() { ), ); - engine.buildViewport(FakeBuildContext()); + await tester.pumpWidget( + Directionality( + textDirection: TextDirection.ltr, + child: Builder(builder: engine.buildViewport), + ), + ); facade.emitVisiblePage(2); expect((engine.snapshot.locator! as PdfReaderLocator).pageIndex, 2); expect( @@ -184,33 +300,37 @@ void main() { }, ); - test( - 'updates single/facing and light/dark viewport configuration', - () async { - final facade = FakePdfFacade(pageCount: 2); - final engine = PdfReaderEngine(facadeFactory: (_) async => facade); - await engine.load(document(), preferences: const ReaderPreferences()); - const updated = ReaderPreferences( - layoutMode: ReaderLayoutMode.scroll, - columnMode: ReaderColumnMode.double, - brightness: Brightness.dark, - backgroundColor: Color(0xff101010), - ); + testWidgets('updates single/facing and light/dark viewport configuration', ( + tester, + ) async { + final facade = FakePdfFacade(pageCount: 2); + final engine = PdfReaderEngine(facadeFactory: (_) async => facade); + await engine.load(document(), preferences: const ReaderPreferences()); + const updated = ReaderPreferences( + layoutMode: ReaderLayoutMode.scroll, + columnMode: ReaderColumnMode.double, + brightness: Brightness.dark, + backgroundColor: Color(0xff101010), + ); - await engine.updatePreferences(updated); + await engine.updatePreferences(updated); - expect(engine.snapshot.preferences, updated); - final viewport = engine.buildViewport(FakeBuildContext()); - expect(viewport, same(facade.viewport)); - expect(facade.lastConfiguration!.facingPages, isTrue); - expect( - facade.lastConfiguration!.backgroundColor, - const Color(0xff101010), - ); - expect(facade.lastConfiguration!.brightness, Brightness.dark); - expect(facade.lastConfiguration!.layoutMode, ReaderLayoutMode.scroll); - }, - ); + expect(engine.snapshot.preferences, updated); + await tester.pumpWidget( + Directionality( + textDirection: TextDirection.ltr, + child: Builder(builder: engine.buildViewport), + ), + ); + expect(find.byKey(const ValueKey('fake-pdf-viewport')), findsOneWidget); + expect(facade.lastConfiguration!.facingPages, isTrue); + expect( + facade.lastConfiguration!.backgroundColor, + const Color(0xff101010), + ); + expect(facade.lastConfiguration!.brightness, Brightness.dark); + expect(facade.lastConfiguration!.layoutMode, ReaderLayoutMode.scroll); + }); }); test( @@ -311,10 +431,12 @@ void main() { ), ); - expect(paginated.scrollPhysics, isA()); + expect(paginated.scrollPhysics, isNull); + expect(paginated.normalizeMatrix, isNotNull); expect(paginated.layoutPages, isNotNull); expect(continuous.scrollPhysics, isA()); expect(continuous.layoutPages, isNull); + expect(continuous.normalizeMatrix, isNull); expect(facing.layoutPages, isNotNull); }, ); @@ -335,6 +457,61 @@ void main() { expect(find.byKey(const ValueKey('pdf-child')), findsOneWidget); }); + test( + 'paginated slots expose only the current page or spread at fit zoom', + () { + for (final size in [ + const Size(390, 844), + const Size(1280, 700), + const Size(700, 360), + ]) { + for (final facing in [false, true]) { + final layout = buildPaginatedPdfLayout( + [const Size(300, 420), const Size(360, 600), const Size(300, 420)], + viewportSize: size, + facingPages: facing, + ); + final step = facing ? 2 : 1; + for (var index = 0; index < 3; index += step) { + final row = pdfSpreadRect(layout, index, facing); + final zoom = + ((size.width - 16) / row.width) < + ((size.height - 16) / row.height) + ? (size.width - 16) / row.width + : (size.height - 16) / row.height; + final visible = Rect.fromCenter( + center: row.center, + width: size.width / zoom, + height: size.height / zoom, + ); + for (var page = 0; page < 3; page++) { + if (page < index || page >= index + step) { + expect( + visible.overlaps(layout.pageLayouts[page]), + isFalse, + reason: 'A spare margin must not expose another spread', + ); + } + } + } + } + } + }, + ); + + testWidgets('appearance changes retain the PDF viewer element', ( + tester, + ) async { + const key = ValueKey('persistent-pdf'); + const child = SizedBox(key: key); + await tester.pumpWidget(applyPdfBrightness(Brightness.light, child)); + final before = tester.element(find.byKey(key)); + await tester.pumpWidget(applyPdfBrightness(Brightness.dark, child)); + expect(tester.element(find.byKey(key)), same(before)); + await tester.pumpWidget(applyPdfBrightness(Brightness.light, child)); + expect(tester.element(find.byKey(key)), same(before)); + }); + testWidgets('delegates PDF viewport construction to the facade', ( tester, ) async { @@ -398,7 +575,7 @@ final class FakePdfMetadataDocument implements PdfMetadataDocument { } } -final class FakePdfFacade implements PdfFacade { +final class FakePdfFacade implements PdfFacade, DisposablePdfFacade { FakePdfFacade({required this.pageCount, this.outline = const []}); @override @@ -412,6 +589,10 @@ final class FakePdfFacade implements PdfFacade { final List shownOffsets = []; PdfViewportConfiguration? lastConfiguration; int viewportBuildCount = 0; + int disposeCount = 0; + + @override + void dispose() => disposeCount++; @override Widget buildViewport(PdfViewportConfiguration configuration) { diff --git a/test/presentation/epub_reading_flow_test.dart b/test/presentation/epub_reading_flow_test.dart new file mode 100644 index 0000000..e4a8375 --- /dev/null +++ b/test/presentation/epub_reading_flow_test.dart @@ -0,0 +1,162 @@ +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import 'package:flutter_test/flutter_test.dart'; +import 'package:papyrus_reader/papyrus_reader.dart'; + +import '../support/in_process_epub_worker.dart'; +import '../support/synthetic_epub.dart'; + +void main() { + testWidgets('arrow navigation stays focused across consecutive chapters', ( + tester, + ) async { + final engine = testEpubEngine(); + final registry = ReaderEngineRegistry([ + ReaderEngineRegistration( + formats: const {ReaderFormat.epub}, + factory: () => engine, + ), + ]); + await tester.pumpWidget( + MaterialApp( + home: PapyrusReader( + registry: registry, + document: ReaderDocument( + id: 'keyboard', + format: ReaderFormat.epub, + loadBytes: () async => syntheticEpub(), + ), + ), + ), + ); + await tester.pumpAndSettle(); + await tester.sendKeyEvent(LogicalKeyboardKey.arrowRight); + await tester.pumpAndSettle(); + expect((await engine.currentLocator() as EpubReaderLocator).spineIndex, 1); + await tester.sendKeyEvent(LogicalKeyboardKey.arrowRight); + await tester.pumpAndSettle(); + expect((await engine.currentLocator() as EpubReaderLocator).spineIndex, 2); + await tester.sendKeyEvent(LogicalKeyboardKey.arrowLeft); + await tester.pumpAndSettle(); + expect((await engine.currentLocator() as EpubReaderLocator).spineIndex, 1); + await tester.sendKeyEvent(LogicalKeyboardKey.arrowLeft); + await tester.pumpAndSettle(); + expect((await engine.currentLocator() as EpubReaderLocator).spineIndex, 0); + }); + + testWidgets( + 'page controls, reflow and chapter boundaries preserve the reading position', + (tester) async { + tester.view.devicePixelRatio = 1; + tester.view.physicalSize = const Size(360, 640); + addTearDown(tester.view.resetPhysicalSize); + addTearDown(tester.view.resetDevicePixelRatio); + final engine = testEpubEngine(); + await engine.load( + ReaderDocument( + id: 'long', + format: ReaderFormat.epub, + loadBytes: () async => syntheticEpub(longChapter: true), + ), + preferences: const ReaderPreferences(), + ); + await tester.pumpWidget( + MaterialApp( + home: Scaffold(body: Builder(builder: engine.buildViewport)), + ), + ); + await tester.pumpAndSettle(); + + await engine.goNext(); + await tester.pumpAndSettle(); + final secondPage = await engine.currentLocator() as EpubReaderLocator; + expect( + secondPage.spineIndex, + 0, + reason: 'Next turns a page instead of skipping a chapter', + ); + expect(secondPage.textOffset, greaterThan(0)); + await engine.updatePreferences(const ReaderPreferences(fontSize: 25)); + await tester.pumpAndSettle(); + expect( + (await engine.currentLocator() as EpubReaderLocator).textOffset, + secondPage.textOffset, + ); + + tester.view.physicalSize = const Size(1280, 800); + await tester.pumpAndSettle(); + expect( + (await engine.currentLocator() as EpubReaderLocator).textOffset, + secondPage.textOffset, + ); + expect(tester.takeException(), isNull); + await tester.binding.handleSystemMessage({'type': 'fontsChange'}); + await tester.pumpAndSettle(); + expect( + (await engine.currentLocator() as EpubReaderLocator).textOffset, + secondPage.textOffset, + reason: 'Late font loading must remeasure without losing position', + ); + await engine.goToProgress(1 / 3); + await tester.pumpAndSettle(); + await engine.goPrevious(); + await tester.pumpAndSettle(); + final previousChapterEnd = + await engine.currentLocator() as EpubReaderLocator; + expect(previousChapterEnd.spineIndex, 0); + expect(previousChapterEnd.localProgression, 1); + await engine.goNext(); + await tester.pumpAndSettle(); + expect( + (await engine.currentLocator() as EpubReaderLocator).spineIndex, + 1, + ); + }, + ); + + testWidgets( + 'single column stays readable beside a desktop panel and at large text sizes', + (tester) async { + final engine = testEpubEngine(); + await engine.load( + ReaderDocument( + id: 'long', + format: ReaderFormat.epub, + loadBytes: () async => syntheticEpub(longChapter: true), + ), + preferences: const ReaderPreferences(), + ); + for (final size in [ + const Size(320, 480), + const Size(700, 360), + const Size(1200, 800), + ]) { + tester.view.devicePixelRatio = 1; + tester.view.physicalSize = size; + await tester.pumpWidget( + MaterialApp( + builder: (context, child) => MediaQuery( + data: MediaQuery.of( + context, + ).copyWith(textScaler: const TextScaler.linear(2)), + child: child!, + ), + home: Scaffold( + body: Row( + children: [ + Expanded(child: Builder(builder: engine.buildViewport)), + if (size.width > 1000) const SizedBox(width: 320), + ], + ), + ), + ), + ); + await tester.pumpAndSettle(); + expect(find.byType(PageView), findsOneWidget); + expect(tester.takeException(), isNull); + } + tester.view.resetPhysicalSize(); + tester.view.resetDevicePixelRatio(); + }, + ); +} diff --git a/test/presentation/papyrus_reader_test.dart b/test/presentation/papyrus_reader_test.dart index ec91447..8973245 100644 --- a/test/presentation/papyrus_reader_test.dart +++ b/test/presentation/papyrus_reader_test.dart @@ -99,6 +99,95 @@ void main() { ); } + testWidgets( + 'settings text follows reader appearance in opposite app themes', + (tester) async { + for (final brightness in [Brightness.dark, Brightness.light]) { + final engine = _UiReaderEngine(); + final controller = controllerFor([engine]); + final preferences = ReaderPreferences(brightness: brightness); + await pumpReader( + tester, + document: document('Opposite theme'), + controller: controller, + size: const Size(1200, 800), + themeMode: brightness == Brightness.dark + ? ThemeMode.light + : ThemeMode.dark, + initialPreferences: preferences, + ); + await tester.pumpAndSettle(); + await tester.tap(find.byTooltip('Reading settings')); + await tester.pumpAndSettle(); + final label = find.text('Page appearance'); + final theme = Theme.of(tester.element(label)); + expect(theme.brightness, brightness); + final rich = tester.widget( + find.descendant(of: label, matching: find.byType(RichText)), + ); + expect(rich.text.style!.color, theme.colorScheme.onSurface); + final dropdown = find.text('Paginated'); + final dropdownText = tester.widget( + find + .descendant(of: dropdown, matching: find.byType(RichText)) + .first, + ); + expect(dropdownText.text.style!.color, theme.colorScheme.onSurface); + for (final chip in tester.widgetList( + find.byType(ChoiceChip), + )) { + final label = find.text((chip.label as Text).data!); + final text = tester.widget( + find.descendant(of: label, matching: find.byType(RichText)).first, + ); + final foreground = text.text.style!.color!.computeLuminance(); + final background = chip.color!.resolve({ + if (chip.selected) WidgetState.selected, + })!.computeLuminance(); + final contrast = + (math.max(foreground, background) + .05) / + (math.min(foreground, background) + .05); + expect( + contrast, + greaterThanOrEqualTo(4.5), + reason: 'Every appearance option must stay readable', + ); + } + await tester.pumpWidget(const SizedBox.shrink()); + controller.dispose(); + } + }, + ); + + testWidgets( + 'an open mobile panel updates its theme when Night is selected', + (tester) async { + final engine = _UiReaderEngine(); + final controller = controllerFor([engine]); + addTearDown(controller.dispose); + await pumpReader( + tester, + document: document('Live sheet'), + controller: controller, + size: const Size(600, 1000), + ); + await tester.pumpAndSettle(); + await tester.tap(find.byTooltip('Reading settings')); + await tester.pumpAndSettle(); + await tester.ensureVisible(find.text('Night')); + await tester.tap(find.text('Night')); + await tester.pumpAndSettle(); + final label = find.text('Page appearance'); + final theme = Theme.of(tester.element(label)); + expect(theme.brightness, Brightness.dark); + final rich = tester.widget( + find.descendant(of: label, matching: find.byType(RichText)), + ); + expect(rich.text.style!.color, theme.colorScheme.onSurface); + expect(tester.takeException(), isNull); + }, + ); + testWidgets('moves from a usable loading state to the engine viewport', ( tester, ) async { @@ -338,7 +427,7 @@ void main() { expect(tester.takeException(), isNull); }); - testWidgets('wide chrome reserves a stable persistent panel', ( + testWidgets('wide chrome uses the full viewport until a panel is opened', ( tester, ) async { final engine = _UiReaderEngine(); @@ -355,6 +444,7 @@ void main() { final viewportBefore = tester.getSize( find.byKey(const ValueKey('reader-viewport')), ); + expect(find.byKey(const ValueKey('reader-side-panel')), findsNothing); await tester.tap(find.byTooltip('Table of contents')); await tester.pumpAndSettle(); final viewportAfter = tester.getSize( @@ -364,11 +454,18 @@ void main() { expect(find.byType(BottomSheet), findsNothing); expect(find.byKey(const ValueKey('reader-side-panel')), findsOneWidget); expect(find.text('Chapter one'), findsOneWidget); - expect(viewportAfter, viewportBefore); + expect(viewportAfter.width, lessThan(viewportBefore.width)); + expect(viewportAfter.height, viewportBefore.height); await tester.tap(find.byTooltip('Reading settings')); await tester.pumpAndSettle(); expect(find.text('Reading mode'), findsOneWidget); + expect( + tester.getSize(find.byKey(const ValueKey('reader-viewport'))), + viewportAfter, + ); + await tester.tap(find.byTooltip('Close panel')); + await tester.pumpAndSettle(); expect( tester.getSize(find.byKey(const ValueKey('reader-viewport'))), viewportBefore, @@ -868,7 +965,7 @@ void main() { ); semantics.dispose(); }); - }, skip: true); + }); } final class _UiReaderEngine extends ReaderEngine { diff --git a/test/support/fake_reader_engine.dart b/test/support/fake_reader_engine.dart index 11aca1e..45e0d74 100644 --- a/test/support/fake_reader_engine.dart +++ b/test/support/fake_reader_engine.dart @@ -77,6 +77,7 @@ class FakeReaderEngine extends ReaderEngine { throw failure; } + if (isDisposed) return; snapshot = ReaderReadySnapshot( document: document, preferences: preferences, diff --git a/test/support/in_process_epub_worker.dart b/test/support/in_process_epub_worker.dart new file mode 100644 index 0000000..314beac --- /dev/null +++ b/test/support/in_process_epub_worker.dart @@ -0,0 +1,42 @@ +import 'package:flutter_test/flutter_test.dart'; +import 'package:papyrus_reader/papyrus_reader.dart'; +import 'package:papyrus_reader/src/engine/epub/worker/epub_processor.dart'; +import 'package:papyrus_reader/src/engine/epub/worker/epub_worker.dart'; + +/// Deterministic transport for Flutter's fake clock. Production transports are +/// exercised independently so widget tests need no real isolate scheduling. +EpubReaderEngine testEpubEngine({EpubPaginator? paginator}) { + final engine = EpubReaderEngine( + paginator: paginator, + workerFactory: () async => InProcessEpubWorker(), + ); + addTearDown(engine.dispose); + return engine; +} + +final class InProcessEpubWorker implements EpubWorker { + final EpubProcessor _processor = EpubProcessor(); + bool disposed = false; + @override + Future> request(String command, Object? argument) async { + final response = await processEpubMessage(_processor, { + 'id': 1, + 'command': command, + 'argument': argument, + }); + if (response['error'] != null) { + throw ReaderException( + response['error'] == 'unsupportedFixedLayout' + ? ReaderErrorCode.unsupportedFixedLayout + : ReaderErrorCode.invalidDocument, + response['message'] as String, + ); + } + return Map.from(response['result'] as Map); + } + + @override + void dispose() { + disposed = true; + } +} diff --git a/test/support/synthetic_epub.dart b/test/support/synthetic_epub.dart index e322206..3adc89b 100644 --- a/test/support/synthetic_epub.dart +++ b/test/support/synthetic_epub.dart @@ -6,6 +6,8 @@ Uint8List syntheticEpub({ bool malicious = false, bool longChapter = false, String? firstChapterBody, + String? secondChapterBody, + bool reversedToc = false, bool corruptSecondChapter = false, }) { final repeated = longChapter @@ -91,7 +93,7 @@ Uint8List syntheticEpub({ Chapter One - + Part A @@ -99,7 +101,7 @@ Uint8List syntheticEpub({ Chapter Two - + '''), @@ -112,7 +114,7 @@ Uint8List syntheticEpub({ 'OEBPS/text/chapter2.xhtml': utf8.encode( ''' Two -

Chapter Two

${longChapter ? repeated : '

Second chapter body.

'}''', +${secondChapterBody ?? '

Chapter Two

${longChapter ? repeated : '

Second chapter body.

'}'}''', ), 'OEBPS/text/chapter3.xhtml': utf8.encode( ''' diff --git a/tool/browser/package-lock.json b/tool/browser/package-lock.json new file mode 100644 index 0000000..267c72d --- /dev/null +++ b/tool/browser/package-lock.json @@ -0,0 +1,42 @@ +{ + "name": "papyrus-reader-browser-checks", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "papyrus-reader-browser-checks", + "devDependencies": { + "playwright": "1.63.0" + } + }, + "node_modules/playwright": { + "version": "1.63.0", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.63.0.tgz", + "integrity": "sha512-+7ziBLidS4NaNCdt57SUDT+wYmmd5fmiQejUic/kb+YsYSCPyOOE9sebzMjNmQrsnNpDJqd4WHvV/8lfKfUDUg==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "playwright-core": "1.63.0" + }, + "bin": { + "playwright": "cli.js" + }, + "engines": { + "node": ">=20" + } + }, + "node_modules/playwright-core": { + "version": "1.63.0", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.63.0.tgz", + "integrity": "sha512-rYCsBF/M5HjUch52bbtVONEFjv6Xu8sm8h72dNlR5bzIE1fvC/bxgspzkjSfU+MweEMmPM8KJebG6nnyxo5mCg==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "playwright-core": "cli.js" + }, + "engines": { + "node": ">=20" + } + } + } +} diff --git a/tool/browser/package.json b/tool/browser/package.json new file mode 100644 index 0000000..5c267e8 --- /dev/null +++ b/tool/browser/package.json @@ -0,0 +1,7 @@ +{ + "name": "papyrus-reader-browser-checks", + "private": true, + "type": "module", + "scripts": { "test": "node smoke.mjs" }, + "devDependencies": { "playwright": "1.63.0" } +} diff --git a/tool/browser/smoke.mjs b/tool/browser/smoke.mjs new file mode 100644 index 0000000..74f4c7d --- /dev/null +++ b/tool/browser/smoke.mjs @@ -0,0 +1,271 @@ +import assert from 'node:assert/strict'; +import { createServer } from 'node:http'; +import { readFile, mkdir, mkdtemp, writeFile, rm } from 'node:fs/promises'; +import { tmpdir } from 'node:os'; +import { dirname, extname, resolve, sep } from 'node:path'; +import { fileURLToPath } from 'node:url'; +import { chromium } from 'playwright'; + +const reader = resolve(dirname(fileURLToPath(import.meta.url)), '../..'); +const dist = resolve(reader, 'example/build/web'); +await readFile(resolve(dist, 'index.html')); // Build the example first. +const types = { '.html': 'text/html', '.js': 'text/javascript', '.json': 'application/json', + '.wasm': 'application/wasm', '.ttf': 'font/ttf', '.png': 'image/png', '.svg': 'image/svg+xml' }; +const server = createServer(async (request, response) => { + const path = resolve(dist, `.${decodeURIComponent(new URL(request.url, 'http://local').pathname)}`); + if (path !== dist && !path.startsWith(dist + sep)) { response.writeHead(403).end(); return; } + try { + const file = path === dist ? resolve(dist, 'index.html') : path; + const bytes = await readFile(file); + response.writeHead(200, { 'Content-Type': types[extname(file)] ?? 'application/octet-stream' }); + response.end(bytes); + } catch { response.writeHead(404).end(); } +}); +await new Promise(resolve => server.listen(0, '127.0.0.1', resolve)); +const origin = `http://127.0.0.1:${server.address().port}`; +const browser = await chromium.launch({ executablePath: process.env.PAPYRUS_CHROME_EXECUTABLE }); +const temp = await mkdtemp(resolve(tmpdir(), 'papyrus-reader-')); +try { + const page = await browser.newPage({ viewport: { width: 1280, height: 850 } }); + const errors = []; + let workersClosed = 0; + page.on('pageerror', error => errors.push(error.message)); + page.on('worker', worker => worker.on('close', () => workersClosed++)); + await page.goto(origin); + await page.locator('flt-semantics-placeholder').evaluate(element => element.click()); + + // Exercise the actual packaged Worker protocol independently of Flutter's + // widget-test fake clock and mock asset channel. + const protocol = await page.evaluate(async () => { + const script = await (await fetch('assets/packages/papyrus_reader/assets/epub_worker.js')).text(); + const url = URL.createObjectURL(new Blob([script], { type: 'text/javascript' })); + const worker = new Worker(url); + URL.revokeObjectURL(url); + let id = 0; + const pending = new Map(); + worker.onmessage = event => { + const message = JSON.parse(event.data); + pending.get(message.id)(message); + pending.delete(message.id); + }; + const request = (command, argument) => new Promise((resolve, reject) => { + const key = ++id; + const timeout = setTimeout(() => { + pending.delete(key); + reject(new Error(`Worker ${command} timed out`)); + }, 15000); + pending.set(key, message => { clearTimeout(timeout); resolve(message); }); + if (argument instanceof Uint8Array) worker.postMessage({ id: key, command, bytes: argument }, [argument.buffer]); + else worker.postMessage({ id: key, command, argument }); + }); + const bytes = new Uint8Array(await (await fetch('assets/assets/reading_lab.epub')).arrayBuffer()); + try { + const opened = await request('open', bytes); + const chapter = await request('chapter', 0); + const invalid = await request('open', new Uint8Array([1, 2, 3])); + return { count: opened.result.count, blocks: chapter.result.blocks.length, error: invalid.error }; + } finally { worker.terminate(); } + }); + assert.equal(protocol.count, 2); + assert.ok(protocol.blocks > 20); + assert.equal(protocol.error, 'invalidDocument'); + + await page.getByRole('button', { name: 'Explore layouts', exact: true }).click(); + await page.getByRole('button', { name: 'Next', exact: true }).waitFor(); + await page.waitForFunction(() => document.body.innerText.includes('Passage 1.')); + await page.getByRole('button', { name: 'Next', exact: true }).click(); + await page.waitForFunction(() => !document.body.innerText.includes('Passage 1. Reading')); + assert.ok(!await page.locator('body').innerText().then(text => text.includes('After the Rain')), + 'Next must turn a page before crossing chapters'); + + const screenshot = async name => { + if (!process.env.PAPYRUS_SCREENSHOT_DIR) return; + const folder = resolve(process.env.PAPYRUS_SCREENSHOT_DIR); + await mkdir(folder, { recursive: true }); + await page.screenshot({ path: resolve(folder, `${name}.png`) }); + }; + const settle = () => page.evaluate(() => new Promise(resolve => { + let frames = 0; + const tick = () => ++frames >= 60 ? resolve() : requestAnimationFrame(tick); + requestAnimationFrame(tick); + })); + await settle(); + const passage = /Passage (\d+)\. Reading/.exec(await page.locator('body').innerText()); + assert.ok(passage, 'The next spread must contain readable paragraphs'); + const paragraph = page.getByText(`Passage ${passage[1]}. Reading should feel calm on a small phone and a wide desktop. ` + + 'A page turn keeps its place, while emphasis and meaning remain part of the story. ' + + 'Resize the window or change the typeface to try reflow.', { exact: true }).first(); + const beforeWheel = await paragraph.boundingBox(); + await page.mouse.move(160, 300); + await page.mouse.wheel(0, 600); + await settle(); + const afterWheel = await paragraph.boundingBox(); + assert.ok(beforeWheel && afterWheel && Math.abs(beforeWheel.y - afterWheel.y) < 1, + 'A normal paginated column must fit without hidden vertical overflow'); + await screenshot('desktop'); + await page.setViewportSize({ width: 390, height: 844 }); + await settle(); + await page.getByRole('button', { name: 'Reading settings', exact: true }).click(); + await page.getByRole('button', { name: 'Close panel', exact: true }).waitFor(); + await settle(); + await screenshot('mobile-settings'); + await page.mouse.move(190, 650); + await page.mouse.wheel(0, 600); + await settle(); + await page.getByLabel('Night', { exact: true }).click(); + await settle(); + await page.getByRole('button', { name: 'Close panel', exact: true }).click(); + await settle(); + await screenshot('mobile-night'); + await page.setViewportSize({ width: 700, height: 360 }); + await settle(); + await screenshot('landscape'); + await page.getByRole('button', { name: 'Back', exact: true }).click(); + await page.getByRole('button', { name: 'Open a book', exact: true }).waitFor(); + await settle(); + + // File-picker integration lets the example review real documents, including + // malformed files. Loading errors must keep Back reachable. + const openFile = async path => { + const chooser = page.waitForEvent('filechooser'); + // Flutter route transitions do not expose DOM animation state to Playwright. + // Let the entrance transition finish before sending its next pointer event. + await settle(); + await page.getByRole('button', { name: 'Open a book', exact: true }).click(); + await settle(); + await (await chooser).setFiles(path); + }; + await openFile(resolve(reader, 'example/assets/reading_lab.epub')); + await page.getByRole('button', { name: 'Next', exact: true }).waitFor(); + await page.waitForFunction(() => document.body.innerText.includes('At the Gate')); + await page.getByRole('button', { name: 'Back', exact: true }).click(); + await settle(); + const invalid = resolve(temp, 'invalid.epub'); + await writeFile(invalid, Buffer.from([1, 2, 3])); + await openFile(invalid); + await page.getByRole('button', { name: 'Try again', exact: true }).waitFor(); + await page.getByRole('button', { name: 'Back', exact: true }).click(); + await settle(); + assert.ok(workersClosed >= 3, 'Document workers must close with their sessions'); + + // Crossing chapters must retain keyboard focus without a pointer refocus. + await page.setViewportSize({ width: 1280, height: 850 }); + await page.getByRole('button', { name: 'Read EPUB', exact: true }).click(); + await page.getByText('At the Gate', { exact: true }).first().waitFor(); + await settle(); + for (let turn = 0; turn < 3; turn++) { + await page.keyboard.press('ArrowRight'); + await page.getByText('After the Rain', { exact: true }).first().waitFor(); + await settle(); + await page.keyboard.press('ArrowLeft'); + await page.getByText('At the Gate', { exact: true }).first().waitFor(); + await settle(); + } + await page.getByRole('button', { name: 'Back', exact: true }).click(); + await settle(); + await page.setViewportSize({ width: 700, height: 360 }); + + await page.getByRole('button', { name: 'Read PDF', exact: true }).click(); + await page.getByRole('button', { name: 'Next', exact: true }).waitFor(); + await settle(); + await screenshot('pdf-initial'); + await page.getByLabel(/Page 1 of 3/).waitFor(); + await settle(); + await page.getByRole('button', { name: 'Next', exact: true }).click(); + await page.getByLabel(/Page 2 of 3/).waitFor(); + await settle(); + await screenshot('pdf'); + await page.getByRole('button', { name: 'Back', exact: true }).click(); + await settle(); + await page.getByRole('button', { name: 'Read PDF', exact: true }).click(); + await page.getByLabel(/Page 2 of 3/).waitFor(); + await settle(); + await page.getByRole('button', { name: 'Reading settings', exact: true }).click(); + await page.getByRole('button', { name: 'Close panel', exact: true }).waitFor(); + await settle(); + assert.equal(await page.getByLabel('Typeface', { exact: false }).count(), 0, + 'PDF must not advertise reflowable font controls'); + + await page.getByRole('button', { name: 'Close panel', exact: true }).click(); + await settle(); + await page.setViewportSize({ width: 1280, height: 850 }); + await settle(); + await page.getByRole('button', { name: 'Reading settings', exact: true }).click(); + await settle(); + const select = async (current, target) => { + await page.getByRole('button', { name: new RegExp(current) }).click(); + await settle(); + await page.getByRole('menuitem', { name: target, exact: true }).click(); + await settle(); + }; + await screenshot('pdf-wide-settings'); + await select('Automatic', 'Single'); + await page.getByLabel('Night', { exact: true }).click(); + await settle(); + await screenshot('pdf-night-single'); + const pdfPage = () => page.getByRole('group', { name: 'Page 2', exact: true }); + const singleBefore = await pdfPage().boundingBox(); + assert.ok(singleBefore && singleBefore.x >= 0 && singleBefore.x + singleBefore.width <= 920, + 'Single PDF page must fit the width left by the settings panel'); + await select('Single', 'Double'); + await screenshot('pdf-night-double'); + await select('Double', 'Single'); + const singleAfter = await pdfPage().boundingBox(); + assert.ok(singleAfter && Math.abs(singleBefore.width - singleAfter.width) < 1, + 'Returning to Single must refit instead of retaining spread zoom'); + await page.getByLabel('Light', { exact: true }).click(); + await settle(); + const lightBounds = await pdfPage().boundingBox(); + assert.ok(lightBounds && Math.abs(singleAfter.width - lightBounds.width) < 1, + 'Appearance changes must retain the PDF scale'); + await screenshot('pdf-light-single'); + await page.getByRole('button', { name: 'Close panel', exact: true }).click(); + await settle(); + await page.mouse.move(450, 350); + await page.mouse.wheel(0, 180); + await page.getByLabel(/Page 3 of 3/).waitFor(); + await settle(); + await page.mouse.wheel(0, -180); + await page.getByLabel(/Page 2 of 3/).waitFor(); + await settle(); + await page.getByRole('button', { name: 'Reading settings', exact: true }).click(); + await settle(); + await select('Paginated', 'Continuous scroll'); + await page.getByRole('button', { name: 'Close panel', exact: true }).click(); + await settle(); + // The page semantics group is clipped to the viewport; measure actual text + // inside it to distinguish scrolling from a stationary viewport container. + const pdfText = () => page.getByText('Page 2 of 3.', { exact: true }); + const continuousBefore = await pdfText().boundingBox(); + await page.mouse.move(450, 350); + await page.mouse.wheel(0, 100); + await settle(); + const continuousAfter = await pdfText().boundingBox(); + assert.ok(continuousBefore && continuousAfter && continuousAfter.y < continuousBefore.y - 5, + 'Continuous PDF mode must move within the page rather than snapping to the next page'); + await page.getByLabel(/Page 2 of 3/).waitFor(); + await screenshot('pdf-continuous'); + await page.getByRole('button', { name: 'Reading settings', exact: true }).click(); + await settle(); + const scrollSingle = await pdfText().boundingBox(); + await select('Single', 'Double'); + await select('Double', 'Single'); + await page.getByLabel('Night', { exact: true }).click(); + await settle(); + const scrollNight = await pdfText().boundingBox(); + assert.ok(scrollSingle && scrollNight && Math.abs(scrollSingle.width - scrollNight.width) < 1, + 'Continuous Single must refit after column changes and preserve scale on Night'); + await screenshot('pdf-continuous-night'); + await page.mouse.move(450, 350); + await page.mouse.wheel(180, 0); + await settle(); + const scrollHorizontal = await pdfText().boundingBox(); + assert.ok(scrollHorizontal && Math.abs(scrollHorizontal.x - scrollNight.x) < 1, + 'A width-fitted continuous page must not require horizontal scrolling'); + assert.deepEqual(errors, []); + console.log('Browser checks passed: worker protocol, chapter keyboard focus, responsive settings, local files, cleanup, PDF pagination/scroll and column/appearance refitting.'); +} finally { + await browser.close(); + await rm(temp, { recursive: true, force: true }); + await new Promise(resolve => server.close(resolve)); +} diff --git a/tool/build_epub_worker.sh b/tool/build_epub_worker.sh new file mode 100755 index 0000000..855cec1 --- /dev/null +++ b/tool/build_epub_worker.sh @@ -0,0 +1,20 @@ +#!/usr/bin/env bash +set -euo pipefail +cd "$(dirname "$0")/.." +if [ -x ../tools/dart ]; then + dart_cli=../tools/dart +else + dart_cli=dart +fi +if [ "${1:-}" = "--check" ]; then + worker_temp=$(mktemp -d) + trap 'rm -rf "$worker_temp"' EXIT + "$dart_cli" compile js -O2 --no-source-maps -o "$worker_temp/epub_worker.js" tool/epub_worker.dart + if ! cmp -s assets/epub_worker.js "$worker_temp/epub_worker.js"; then + echo 'EPUB worker asset is stale. Run tool/build_epub_worker.sh.' >&2 + exit 1 + fi +else + "$dart_cli" compile js -O2 --no-source-maps -o assets/epub_worker.js tool/epub_worker.dart + rm -f assets/epub_worker.js.deps +fi diff --git a/tool/epub_worker.dart b/tool/epub_worker.dart new file mode 100644 index 0000000..2106e58 --- /dev/null +++ b/tool/epub_worker.dart @@ -0,0 +1,23 @@ +import 'dart:convert'; +import 'dart:js_interop'; + +import 'package:web/web.dart' as web; + +import 'package:papyrus_reader/src/engine/epub/worker/epub_processor.dart'; + +@JS('self') +external web.DedicatedWorkerGlobalScope get scope; + +void main() { + final processor = EpubProcessor(); + Future queue = Future.value(); + scope.onmessage = ((web.MessageEvent event) { + final request = (event.data.dartify() as Map).cast(); + if (request['bytes'] case final bytes?) request['argument'] = bytes; + queue = queue.then((_) async { + scope.postMessage( + jsonEncode(await processEpubMessage(processor, request)).toJS, + ); + }); + }).toJS; +} diff --git a/tool/generate_example_assets.dart b/tool/generate_example_assets.dart index 7453c70..ba6be41 100644 --- a/tool/generate_example_assets.dart +++ b/tool/generate_example_assets.dart @@ -5,10 +5,22 @@ import 'dart:typed_data'; void main() { final assets = Directory('example/assets')..createSync(recursive: true); File('${assets.path}/the_garden_letter.epub').writeAsBytesSync(_epub()); + File( + '${assets.path}/reading_lab.epub', + ).writeAsBytesSync(_epub(longSample: true)); File('${assets.path}/a_tiny_pdf.pdf').writeAsBytesSync(_pdf()); } -Uint8List _epub() { +Uint8List _epub({bool longSample = false}) { + final longContent = longSample + ? List.generate( + 75, + (i) => + '

Passage ${i + 1}. Reading should feel calm on a small phone and a wide desktop. ' + 'A page turn keeps its place, while emphasis and meaning ' + 'remain part of the story. Resize the window or change the typeface to try reflow.

', + ).join() + : ''; return _zip({ 'mimetype': utf8.encode('application/epub+zip'), 'META-INF/container.xml': utf8.encode(''' @@ -60,6 +72,7 @@ Uint8List _epub() {

Dear friend, the first green shoots have reached the old garden gate.

I left a chair beneath the pear tree, where the afternoon gathers slowly.

This little demo text is dedicated to the public domain.

+ $longContent '''), 'OEBPS/text/two.xhtml': utf8.encode(''' @@ -69,27 +82,34 @@ Uint8List _epub() {

After the Rain

The path shone silver this morning, and every leaf held a small sky.

Come when you can. The book and the quiet corner will be waiting.

+ $longContent '''), }); } Uint8List _pdf() { + const pageCount = 3; + const fontId = 3 + pageCount * 2; final objects = [ '<< /Type /Catalog /Pages 2 0 R >>', - '<< /Type /Pages /Kids [3 0 R] /Count 1 >>', - '<< /Type /Page /Parent 2 0 R /MediaBox [0 0 300 420] ' - '/Resources << /Font << /F1 5 0 R >> >> /Contents 4 0 R >>', - '', + '<< /Type /Pages /Kids [${List.generate(pageCount, (i) => '${3 + i * 2} 0 R').join(' ')}] /Count $pageCount >>', + for (var i = 0; i < pageCount; i++) ...[ + '<< /Type /Page /Parent 2 0 R /MediaBox [0 0 300 420] ' + '/Resources << /Font << /F1 $fontId 0 R >> >> /Contents ${4 + i * 2} 0 R >>', + '', + ], '<< /Type /Font /Subtype /Type1 /BaseFont /Helvetica >>', ]; - const stream = - 'BT\n/F1 22 Tf\n40 340 Td\n(A Tiny PDF) Tj\n' - '/F1 12 Tf\n0 -34 Td\n(A valid one-page Papyrus demo.) Tj\nET\n'; - objects[3] = - '<< /Length ${ascii.encode(stream).length} >>\n' - 'stream\n$stream' - 'endstream'; + for (var i = 0; i < pageCount; i++) { + final stream = + 'BT\n/F1 22 Tf\n40 340 Td\n(A Tiny PDF) Tj\n' + '/F1 12 Tf\n0 -34 Td\n(Page ${i + 1} of $pageCount.) Tj\nET\n'; + objects[3 + i * 2] = + '<< /Length ${ascii.encode(stream).length} >>\n' + 'stream\n$stream' + 'endstream'; + } final output = StringBuffer('%PDF-1.4\n'); final offsets = [0]; From 08000b1a53462ec248f51b0fd982326dbf8ca234 Mon Sep 17 00:00:00 2001 From: Karolis Strazdas Date: Sat, 3 Oct 2026 19:52:19 +0300 Subject: [PATCH 2/4] fix: derive reader Material colors from reading appearance --- CHANGELOG.md | 2 + docs/architecture.md | 4 + docs/validation.md | 3 + lib/src/presentation/papyrus_reader.dart | 44 ++----- .../presentation/reader_material_theme.dart | 112 ++++++++++++++++++ test/presentation/papyrus_reader_test.dart | 52 ++++++++ tool/browser/smoke.mjs | 43 ++++++- 7 files changed, 223 insertions(+), 37 deletions(-) create mode 100644 lib/src/presentation/reader_material_theme.dart diff --git a/CHANGELOG.md b/CHANGELOG.md index 134b790..e2646e4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,8 @@ ## Unreleased +- Rebuild reader Material colors consistently, including popup backgrounds and + host-defined field labels, while preserving typography, geometry and motion. - Process EPUB archives and chapters in cancellable native/browser workers. - Follow OPF spine order independently of TOC hierarchy and restore TOC anchors. - Add rich lazy pagination, adaptive spreads and page-first navigation. diff --git a/docs/architecture.md b/docs/architecture.md index fa3ef79..ba454f1 100644 --- a/docs/architecture.md +++ b/docs/architecture.md @@ -68,3 +68,7 @@ Keyboard navigation has a persistent shell focus node and restores focus after chapter replacement when the command originated in the reading surface. Panels retain their own focus. Reader text/icon colors follow the selected appearance, including mobile sheets whose captured route theme would otherwise become stale. +Material defaults are constructed from the reading palette rather than copying +the host's resolved colors. This includes the legacy canvas color used by dropdown +popup routes, field labels/borders and disabled controls. Host typography, control +geometry, theme extensions and motion policy remain available to the reader. diff --git a/docs/validation.md b/docs/validation.md index 2977f92..0c534cf 100644 --- a/docs/validation.md +++ b/docs/validation.md @@ -17,9 +17,12 @@ parent workspace's pinned wrappers when working from the Papyrus workspace. picking, malformed files, worker cleanup and real PDF navigation/resume. PDF checks switch Single/Double repeatedly, retain scale across Light/Night, and distinguish discrete paginated wheel turns from continuous intra-page scroll. + Opened reading-mode/typeface menus are reviewed under opposite app/reader themes. - The client is verified with a temporary sibling-reader path override: adapter, session, route and stable-document rebuild tests, analysis and web compilation. The override is removed afterward; publishing requires a committed reader pin. + Client theme tests use the actual light/dark/e-ink palettes, inspect opened menus + and label contrast on wide/mobile layouts, and change appearance in open panels. Run from this repository: diff --git a/lib/src/presentation/papyrus_reader.dart b/lib/src/presentation/papyrus_reader.dart index fc39078..2edcd1f 100644 --- a/lib/src/presentation/papyrus_reader.dart +++ b/lib/src/presentation/papyrus_reader.dart @@ -14,6 +14,7 @@ import '../domain/reader_snapshot.dart'; import '../domain/reader_toc_entry.dart'; import '../domain/reader_types.dart'; import '../engine/reader_engine_registry.dart'; +import 'reader_material_theme.dart'; import 'reader_theme_data.dart'; import 'reader_ui_builders.dart'; @@ -262,25 +263,9 @@ final class _PapyrusReaderState extends State { Widget build(BuildContext context) { final snapshot = _controller.snapshot; final ambient = Theme.of(context); - final colors = snapshot.status == ReaderStatus.ready - ? ColorScheme.fromSeed( - seedColor: ambient.colorScheme.primary, - brightness: snapshot.preferences.brightness, - ) - : ambient.colorScheme; - final readerTheme = ambient.copyWith( - colorScheme: colors, - brightness: colors.brightness, - textTheme: ambient.textTheme.apply( - bodyColor: colors.onSurface, - displayColor: colors.onSurface, - ), - primaryTextTheme: ambient.primaryTextTheme.apply( - bodyColor: colors.onPrimary, - displayColor: colors.onPrimary, - ), - iconTheme: ambient.iconTheme.copyWith(color: colors.onSurface), - ); + final readerTheme = snapshot.status == ReaderStatus.ready + ? buildReaderMaterialTheme(ambient, snapshot.preferences.brightness) + : ambient; final theme = widget.theme ?? ReaderThemeData.fromTheme(readerTheme); return Theme( data: readerTheme, @@ -687,24 +672,11 @@ final class _PapyrusReaderState extends State { // Captured route themes are a snapshot. Appearance can change while // this sheet is open, so use the current reader theme on every update. final preferences = _controller.preferences; - final colors = ColorScheme.fromSeed( - seedColor: Theme.of(this.context).colorScheme.primary, - brightness: preferences.brightness, - ); - final base = Theme.of(this.context); - final currentTheme = base.copyWith( - colorScheme: colors, - brightness: colors.brightness, - textTheme: base.textTheme.apply( - bodyColor: colors.onSurface, - displayColor: colors.onSurface, - ), - primaryTextTheme: base.primaryTextTheme.apply( - bodyColor: colors.onPrimary, - displayColor: colors.onPrimary, - ), - iconTheme: base.iconTheme.copyWith(color: colors.onSurface), + final currentTheme = buildReaderMaterialTheme( + Theme.of(this.context), + preferences.brightness, ); + final colors = currentTheme.colorScheme; final panelTheme = widget.theme ?? ReaderThemeData.fromTheme(currentTheme); return Theme( diff --git a/lib/src/presentation/reader_material_theme.dart b/lib/src/presentation/reader_material_theme.dart new file mode 100644 index 0000000..68d35cf --- /dev/null +++ b/lib/src/presentation/reader_material_theme.dart @@ -0,0 +1,112 @@ +import 'package:flutter/material.dart'; + +/// Reader colors must not retain the host's resolved canvas/component colors. +/// Keep typography, control geometry and motion policy, but construct Material +/// defaults again from the selected reading appearance. +ThemeData buildReaderMaterialTheme(ThemeData host, Brightness brightness) { + final colors = ColorScheme.fromSeed( + seedColor: host.colorScheme.primary, + brightness: brightness, + ); + final input = host.inputDecorationTheme; + InputBorder? border(InputBorder? value, Color color) => + value?.copyWith(borderSide: value.borderSide.copyWith(color: color)); + TextStyle text(TextStyle? value, Color color) => + (value ?? const TextStyle()).copyWith(color: color); + final labels = WidgetStateTextStyle.resolveWith( + (states) => text( + input.floatingLabelStyle ?? input.labelStyle, + states.contains(WidgetState.error) + ? colors.error + : states.contains(WidgetState.disabled) + ? colors.onSurface.withValues(alpha: .38) + : states.contains(WidgetState.focused) + ? colors.primary + : colors.onSurfaceVariant, + ), + ); + return ThemeData( + useMaterial3: host.useMaterial3, + colorScheme: colors, + canvasColor: colors.surface, + scaffoldBackgroundColor: colors.surface, + cardColor: colors.surfaceContainerLow, + hintColor: colors.onSurfaceVariant, + disabledColor: colors.onSurface.withValues(alpha: .38), + iconTheme: host.iconTheme.copyWith(color: colors.onSurface), + primaryIconTheme: host.primaryIconTheme.copyWith(color: colors.onPrimary), + platform: host.platform, + visualDensity: host.visualDensity, + materialTapTargetSize: host.materialTapTargetSize, + typography: host.typography, + textTheme: host.textTheme.apply( + bodyColor: colors.onSurface, + displayColor: colors.onSurface, + ), + primaryTextTheme: host.primaryTextTheme.apply( + bodyColor: colors.onPrimary, + displayColor: colors.onPrimary, + ), + extensions: host.extensions.values, + pageTransitionsTheme: host.pageTransitionsTheme, + splashFactory: host.splashFactory, + // Retain the e-ink host's transparent ink effects. + highlightColor: host.highlightColor.a == 0 ? host.highlightColor : null, + splashColor: host.splashColor.a == 0 ? host.splashColor : null, + inputDecorationTheme: input.copyWith( + labelStyle: text(input.labelStyle, colors.onSurfaceVariant), + floatingLabelStyle: labels, + hintStyle: text(input.hintStyle, colors.onSurfaceVariant), + helperStyle: text(input.helperStyle, colors.onSurfaceVariant), + errorStyle: text(input.errorStyle, colors.error), + fillColor: colors.surfaceContainerHighest, + iconColor: colors.onSurfaceVariant, + prefixIconColor: colors.onSurfaceVariant, + suffixIconColor: colors.onSurfaceVariant, + border: border(input.border, colors.outline), + enabledBorder: border(input.enabledBorder, colors.outline), + focusedBorder: border(input.focusedBorder, colors.primary), + disabledBorder: border( + input.disabledBorder, + colors.onSurface.withValues(alpha: .12), + ), + errorBorder: border(input.errorBorder, colors.error), + focusedErrorBorder: border(input.focusedErrorBorder, colors.error), + focusColor: colors.primary.withValues(alpha: .12), + hoverColor: host.hoverColor.a == 0 + ? host.hoverColor + : colors.onSurface.withValues(alpha: .08), + ), + filledButtonTheme: FilledButtonThemeData( + style: _geometry(host.filledButtonTheme.style), + ), + elevatedButtonTheme: ElevatedButtonThemeData( + style: _geometry(host.elevatedButtonTheme.style), + ), + outlinedButtonTheme: OutlinedButtonThemeData( + style: _geometry(host.outlinedButtonTheme.style), + ), + textButtonTheme: TextButtonThemeData( + style: _geometry(host.textButtonTheme.style), + ), + iconButtonTheme: IconButtonThemeData( + style: _geometry(host.iconButtonTheme.style), + ), + dividerTheme: host.dividerTheme.copyWith(color: colors.outlineVariant), + ); +} + +ButtonStyle? _geometry(ButtonStyle? style) => style == null + ? null + : ButtonStyle( + animationDuration: style.animationDuration, + padding: style.padding, + shape: style.shape, + minimumSize: style.minimumSize, + maximumSize: style.maximumSize, + fixedSize: style.fixedSize, + elevation: style.elevation, + visualDensity: style.visualDensity, + enableFeedback: style.enableFeedback, + tapTargetSize: style.tapTargetSize, + ); diff --git a/test/presentation/papyrus_reader_test.dart b/test/presentation/papyrus_reader_test.dart index 8973245..08ef67d 100644 --- a/test/presentation/papyrus_reader_test.dart +++ b/test/presentation/papyrus_reader_test.dart @@ -99,6 +99,58 @@ void main() { ); } + testWidgets('all settings dropdown routes follow the reading appearance', ( + tester, + ) async { + for (final brightness in [Brightness.light, Brightness.dark]) { + for (final width in [600.0, 1200.0]) { + final controller = controllerFor([_UiReaderEngine()]); + await pumpReader( + tester, + document: document('Menu colors'), + controller: controller, + size: Size(width, 1000), + themeMode: brightness == Brightness.light + ? ThemeMode.dark + : ThemeMode.light, + initialPreferences: ReaderPreferences(brightness: brightness), + ); + await tester.pumpAndSettle(); + await tester.tap(find.byTooltip('Reading settings')); + await tester.pumpAndSettle(); + for (final pair in [ + ('System', 'Monospace'), + ('Paginated', 'Continuous scroll'), + ('Automatic', 'Double'), + ]) { + await tester.ensureVisible(find.text(pair.$1).first); + await tester.tap(find.text(pair.$1).first); + await tester.pumpAndSettle(); + final option = find.text(pair.$2).last; + final menuTheme = Theme.of(tester.element(option)); + expect(menuTheme.brightness, brightness); + expect(menuTheme.canvasColor, menuTheme.colorScheme.surface); + final text = tester.widget( + find + .descendant(of: option, matching: find.byType(RichText)) + .first, + ); + final foreground = text.text.style!.color!.computeLuminance(); + final background = menuTheme.canvasColor.computeLuminance(); + expect( + (math.max(foreground, background) + .05) / + (math.min(foreground, background) + .05), + greaterThanOrEqualTo(4.5), + ); + await tester.tap(option); + await tester.pumpAndSettle(); + } + await tester.pumpWidget(const SizedBox.shrink()); + controller.dispose(); + } + } + }); + testWidgets( 'settings text follows reader appearance in opposite app themes', (tester) async { diff --git a/tool/browser/smoke.mjs b/tool/browser/smoke.mjs index 74f4c7d..cc751a9 100644 --- a/tool/browser/smoke.mjs +++ b/tool/browser/smoke.mjs @@ -262,8 +262,49 @@ try { const scrollHorizontal = await pdfText().boundingBox(); assert.ok(scrollHorizontal && Math.abs(scrollHorizontal.x - scrollNight.x) < 1, 'A width-fitted continuous page must not require horizontal scrolling'); + + // Inspect opened popup routes under the opposite app/reader appearance. + // Closed dropdown text alone cannot detect a stale host canvas color. + await page.getByRole('button', { name: 'Close panel', exact: true }).click(); + await settle(); + await page.getByRole('button', { name: 'Back', exact: true }).click(); + await settle(); + await page.getByRole('button', { name: 'Use dark theme', exact: true }).click(); + await settle(); + await page.getByRole('button', { name: 'Read EPUB', exact: true }).click(); + await page.getByRole('button', { name: 'Reading settings', exact: true }).waitFor(); + await settle(); + await page.getByRole('button', { name: 'Reading settings', exact: true }).click(); + await settle(); + await page.getByLabel('Light', { exact: true }).click(); + await settle(); + await page.getByRole('button', { name: /Reading mode/ }).click(); + await page.getByRole('menuitem', { name: 'Continuous scroll', exact: true }).waitFor(); + await settle(); + await screenshot('dark-app-light-reader-menu'); + await page.getByRole('menuitem', { name: 'Continuous scroll', exact: true }).click(); + await settle(); + await page.getByRole('button', { name: /Typeface/ }).click(); + await page.getByRole('menuitem', { name: 'Sans serif', exact: true }).waitFor(); + await settle(); + await screenshot('dark-app-light-reader-typeface'); + await page.getByRole('menuitem', { name: 'Sans serif', exact: true }).click(); + await settle(); + await page.getByLabel('Night', { exact: true }).click(); + await settle(); + await page.getByRole('button', { name: /Reading mode/ }).click(); + await page.getByRole('menuitem', { name: 'Paginated', exact: true }).waitFor(); + await settle(); + await screenshot('dark-app-night-reader-menu'); + await page.getByRole('menuitem', { name: 'Paginated', exact: true }).click(); + await settle(); + await page.getByRole('button', { name: 'Close panel', exact: true }).click(); + await settle(); + await page.getByRole('button', { name: 'Back', exact: true }).click(); + await settle(); + await page.getByRole('button', { name: 'Use light theme', exact: true }).waitFor(); assert.deepEqual(errors, []); - console.log('Browser checks passed: worker protocol, chapter keyboard focus, responsive settings, local files, cleanup, PDF pagination/scroll and column/appearance refitting.'); + console.log('Browser checks passed: worker protocol, chapter keyboard focus, responsive settings, local files, cleanup, PDF pagination/scroll, column/appearance refitting and opened menus under opposite app themes.'); } finally { await browser.close(); await rm(temp, { recursive: true, force: true }); From 16611b646ee93ee12a2c009f0bd6e49061c72eab Mon Sep 17 00:00:00 2001 From: Karolis Strazdas Date: Sat, 3 Oct 2026 21:27:38 +0300 Subject: [PATCH 3/4] feat: add distraction-free reader controls --- README.md | 7 + lib/src/presentation/papyrus_reader.dart | 335 +++++++++++++----- lib/src/presentation/reader_ui_builders.dart | 6 + test/presentation/epub_reading_flow_test.dart | 57 +++ test/presentation/papyrus_reader_test.dart | 226 ++++++++++++ tool/browser/smoke.mjs | 41 ++- 6 files changed, 576 insertions(+), 96 deletions(-) diff --git a/README.md b/README.md index af2b8e9..e5d1590 100644 --- a/README.md +++ b/README.md @@ -46,6 +46,13 @@ provided `ReaderController` remains host-owned. With an external controller, omitted initial preferences remain controller-owned; an explicit value overrides them for the document load. +Use **Hide controls** in the toolbar for distraction-free reading. Both bars +collapse, expanding the page area without reopening the document. Page-turn +keys, EPUB swipes and PDF scrolling remain available. The small **Show controls** +button in the top corner or **Escape** restores the bars. This is temporary UI +state; opening another document restores the controls. Custom toolbar builders +can expose `ReaderToolbarContext.toggleControls`. + ## Example ```bash diff --git a/lib/src/presentation/papyrus_reader.dart b/lib/src/presentation/papyrus_reader.dart index 2edcd1f..934cf09 100644 --- a/lib/src/presentation/papyrus_reader.dart +++ b/lib/src/presentation/papyrus_reader.dart @@ -1,5 +1,6 @@ import 'dart:async'; import 'dart:math' as math; +import 'dart:ui' as ui; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; @@ -60,6 +61,7 @@ final class _PapyrusReaderState extends State { Widget? _cachedViewport; ReaderPreferences? _viewportPreferences; _ReaderPanel _panel = _ReaderPanel.none; + bool _controlsVisible = true; double? _dragProgress; int _loadGeneration = 0; bool _loadedDependencies = false; @@ -81,6 +83,9 @@ final class _PapyrusReaderState extends State { ); FocusNode? _widePanelOpener; final FocusNode _readerFocusNode = FocusNode(debugLabel: 'reader navigation'); + final FocusNode _controlsToggleFocusNode = FocusNode( + debugLabel: 'reader controls toggle', + ); bool get _isCommandBusy => _pendingCommands > 0; @@ -88,6 +93,7 @@ final class _PapyrusReaderState extends State { void initState() { super.initState(); _attachController(); + HardwareKeyboard.instance.addHandler(_handleUnfocusedReadingKey); } @override @@ -119,11 +125,48 @@ final class _PapyrusReaderState extends State { if (controllerChanged || documentChanged) { _panel = _ReaderPanel.none; + _controlsVisible = true; _dragProgress = null; _loadDocument(); } } + Map get _keyBindings => { + if (!_controlsVisible) + const SingleActivator(LogicalKeyboardKey.escape): _toggleControls, + const SingleActivator(LogicalKeyboardKey.arrowLeft): _goPrevious, + const SingleActivator(LogicalKeyboardKey.pageUp): _goPrevious, + const SingleActivator(LogicalKeyboardKey.arrowRight): _goNext, + const SingleActivator(LogicalKeyboardKey.pageDown): _goNext, + const SingleActivator(LogicalKeyboardKey.space): _goNext, + const SingleActivator(LogicalKeyboardKey.space, shift: true): _goPrevious, + }; + + bool _handleUnfocusedReadingKey(KeyEvent event) { + // Browser accessibility can park focus on a scope when chrome disappears. + // Only the active reader in focus mode may recover keys from that scope; + // focused inputs, other routes and normal reader shortcuts retain control. + final primaryFocus = FocusManager.instance.primaryFocus; + if (!mounted || + _controlsVisible || + _readerFocusNode.hasFocus || + _controller.snapshot.status != ReaderStatus.ready || + _compactPanelRoute != null || + _panel != _ReaderPanel.none || + ModalRoute.of(context)?.isCurrent != true || + (primaryFocus != null && primaryFocus is! FocusScopeNode)) { + return false; + } + for (final entry in _keyBindings.entries) { + if (entry.key.accepts(event, HardwareKeyboard.instance)) { + _readerFocusNode.requestFocus(); + entry.value(); + return true; + } + } + return false; + } + void _attachController() { final external = widget.controller; _ownsController = external == null; @@ -254,7 +297,9 @@ final class _PapyrusReaderState extends State { _tocButtonFocusNode.dispose(); _settingsButtonFocusNode.dispose(); _widePanelFocusNode.dispose(); + HardwareKeyboard.instance.removeHandler(_handleUnfocusedReadingKey); _readerFocusNode.dispose(); + _controlsToggleFocusNode.dispose(); _commandRevision.dispose(); super.dispose(); } @@ -419,6 +464,33 @@ final class _PapyrusReaderState extends State { ); } + void _toggleControls() { + _dismissCompactPanel(); + setState(() { + _controlsVisible = !_controlsVisible; + _panel = _ReaderPanel.none; + _widePanelOpener = null; + }); + unawaited(_restoreControlsFocus()); + } + + Future _restoreControlsFocus() async { + // Wait for the chrome and its browser semantics to finish reflowing before + // restoring the view focus that removal of the toolbar can blur. + await WidgetsBinding.instance.endOfFrame; + await WidgetsBinding.instance.endOfFrame; + if (!mounted || _controller.snapshot.status != ReaderStatus.ready) return; + WidgetsBinding.instance.platformDispatcher.requestViewFocusChange( + viewId: View.of(context).viewId, + state: ui.ViewFocusState.focused, + direction: ui.ViewFocusDirection.undefined, + ); + final focus = _controlsVisible && widget.builders.toolbar == null + ? _controlsToggleFocusNode + : _readerFocusNode; + focus.requestFocus(); + } + Widget _buildReady( BuildContext context, ReaderSnapshot snapshot, @@ -434,6 +506,8 @@ final class _PapyrusReaderState extends State { snapshot: snapshot, onBack: widget.onBack, isBusy: _isCommandBusy, + toggleControls: _toggleControls, + controlsVisible: _controlsVisible, openTableOfContents: () => _openPanel( context, _ReaderPanel.tableOfContents, @@ -446,107 +520,169 @@ final class _PapyrusReaderState extends State { ); return CallbackShortcuts( - bindings: { - const SingleActivator(LogicalKeyboardKey.arrowLeft): _goPrevious, - const SingleActivator(LogicalKeyboardKey.pageUp): _goPrevious, - const SingleActivator(LogicalKeyboardKey.arrowRight): _goNext, - const SingleActivator(LogicalKeyboardKey.pageDown): _goNext, - const SingleActivator(LogicalKeyboardKey.space): _goNext, - const SingleActivator(LogicalKeyboardKey.space, shift: true): - _goPrevious, - }, + bindings: _keyBindings, child: FocusTraversalGroup( policy: OrderedTraversalPolicy(), child: Focus( focusNode: _readerFocusNode, + // Engines and controls own the accessible reading content. + includeSemantics: false, autofocus: true, - child: Column( + child: Stack( children: [ - FocusTraversalOrder( - order: const NumericFocusOrder(1), - child: - toolbar ?? - _DefaultReaderToolbar( - document: widget.document, - onBack: widget.onBack, - onTableOfContents: () => _openPanel( - context, - _ReaderPanel.tableOfContents, - isWide, - theme, - ), - onSettings: () => _openPanel( - context, - _ReaderPanel.settings, - isWide, - theme, - ), - tocFocusNode: _tocButtonFocusNode, - settingsFocusNode: _settingsButtonFocusNode, - theme: theme, - isWide: isWide, - ), - ), - SizedBox( - height: 2, - child: _isCommandBusy - ? const LinearProgressIndicator( - key: ValueKey('reader-command-progress'), - minHeight: 2, - ) - : null, - ), - if (_commandError case final error?) - _ReaderCommandError( - message: error, - theme: theme, - onDismiss: () => setState(() => _commandError = null), - ), - Expanded( - child: Row( - children: [ - Expanded( - child: FocusTraversalOrder( - order: const NumericFocusOrder(3), - child: _buildViewport(context, snapshot), - ), - ), - if (isWide && _panel != _ReaderPanel.none) ...[ - VerticalDivider(width: 1, color: theme.dividerColor), - FocusTraversalOrder( - order: const NumericFocusOrder(2), - child: SizedBox( - key: const ValueKey('reader-side-panel'), - width: theme.sidePanelWidth, - child: ColoredBox( - color: theme.panelColor, - child: _buildWidePanel( + Column( + children: [ + if (_controlsVisible) + FocusTraversalOrder( + key: const ValueKey('reader-toolbar'), + order: const NumericFocusOrder(1), + child: + toolbar ?? + _DefaultReaderToolbar( + document: widget.document, + onBack: widget.onBack, + onTableOfContents: () => _openPanel( context, - snapshot, + _ReaderPanel.tableOfContents, + isWide, theme, ), + onSettings: () => _openPanel( + context, + _ReaderPanel.settings, + isWide, + theme, + ), + tocFocusNode: _tocButtonFocusNode, + settingsFocusNode: _settingsButtonFocusNode, + theme: theme, + isWide: isWide, + ), + ), + if (_controlsVisible) + SizedBox( + key: const ValueKey('reader-toolbar-border'), + height: 1, + child: _isCommandBusy + ? const LinearProgressIndicator( + key: ValueKey('reader-command-progress'), + minHeight: 1, + ) + : ColoredBox(color: theme.dividerColor), + ), + if (_commandError case final error?) + _ReaderCommandError( + message: error, + theme: theme, + onDismiss: () => setState(() => _commandError = null), + ), + Expanded( + key: const ValueKey('reader-content'), + child: Row( + children: [ + Expanded( + child: FocusTraversalOrder( + order: const NumericFocusOrder(3), + child: _buildViewport(context, snapshot), ), ), + if (isWide && _panel != _ReaderPanel.none) ...[ + VerticalDivider( + width: 1, + color: theme.dividerColor, + ), + FocusTraversalOrder( + order: const NumericFocusOrder(2), + child: SizedBox( + key: const ValueKey('reader-side-panel'), + width: theme.sidePanelWidth, + child: ColoredBox( + color: theme.panelColor, + child: _buildWidePanel( + context, + snapshot, + theme, + ), + ), + ), + ), + ], + ], + ), + ), + if (_controlsVisible) + FocusTraversalOrder( + key: const ValueKey('reader-progress-controls'), + order: const NumericFocusOrder(4), + child: _ReaderProgressControls( + progress: + _dragProgress ?? _progressOf(snapshot.locator), + locationLabel: snapshot.locationLabel, + onProgressChanged: (value) { + setState(() => _dragProgress = value); + }, + onProgressChangeEnd: _goToProgress, + onPrevious: _goPrevious, + onNext: _goNext, + enabled: !_isCommandBusy, + theme: theme, ), - ], - ], - ), + ), + ], ), - FocusTraversalOrder( - order: const NumericFocusOrder(4), - child: _ReaderProgressControls( - progress: _dragProgress ?? _progressOf(snapshot.locator), - locationLabel: snapshot.locationLabel, - onProgressChanged: (value) { - setState(() => _dragProgress = value); - }, - onProgressChangeEnd: _goToProgress, - onPrevious: _goPrevious, - onNext: _goNext, - enabled: !_isCommandBusy, - theme: theme, + if (toolbar == null || !_controlsVisible) + PositionedDirectional( + key: const ValueKey('reader-controls-toggle'), + top: _controlsVisible + ? (_readerToolbarHeight(context, theme, isWide) - + theme.minimumTargetSize) / + 2 + : 8, + end: 8, + child: ListenableBuilder( + listenable: _controlsToggleFocusNode, + builder: (context, _) { + final label = _controlsVisible + ? 'Hide controls' + : 'Show controls'; + return Semantics( + container: true, + button: true, + label: label, + focusable: true, + focused: _controlsToggleFocusNode.hasFocus, + onTap: _toggleControls, + onDidGainAccessibilityFocus: + _controlsToggleFocusNode.requestFocus, + excludeSemantics: true, + child: Tooltip( + message: label, + excludeFromSemantics: true, + child: Material( + color: _controlsVisible + ? Colors.transparent + : theme.chromeColor, + shape: const CircleBorder(), + child: IconTheme( + data: IconThemeData( + color: theme.onChromeColor, + ), + child: _ReaderIconButton( + icon: _controlsVisible + ? Icons.fullscreen_rounded + : Icons.fullscreen_exit_rounded, + tooltip: null, + focusNode: _controlsToggleFocusNode, + onPressed: _toggleControls, + theme: theme, + ), + ), + ), + ), + ); + }, + ), ), - ), ], ), ), @@ -956,6 +1092,18 @@ final class _ReaderCommandError extends StatelessWidget { } } +double _readerToolbarHeight( + BuildContext context, + ReaderThemeData theme, + bool isWide, +) { + final textScale = MediaQuery.textScalerOf(context).scale(1); + return math.max( + isWide ? theme.wideToolbarHeight : theme.compactToolbarHeight, + theme.minimumTargetSize + math.max(8, (textScale - 1) * 12), + ); +} + final class _DefaultReaderToolbar extends StatelessWidget { const _DefaultReaderToolbar({ required this.document, @@ -979,11 +1127,7 @@ final class _DefaultReaderToolbar extends StatelessWidget { @override Widget build(BuildContext context) { - final textScale = MediaQuery.textScalerOf(context).scale(1); - final height = math.max( - isWide ? theme.wideToolbarHeight : theme.compactToolbarHeight, - theme.minimumTargetSize + math.max(8, (textScale - 1) * 12), - ); + final height = _readerToolbarHeight(context, theme, isWide); return Container( height: height, @@ -1032,6 +1176,9 @@ final class _DefaultReaderToolbar extends StatelessWidget { onPressed: onSettings, theme: theme, ), + // The controls toggle stays mounted in the shell overlay during + // reflow, preserving browser accessibility and keyboard focus. + SizedBox(width: theme.minimumTargetSize), ], ), ), @@ -1051,7 +1198,7 @@ final class _ReaderIconButton extends StatelessWidget { }); final IconData icon; - final String tooltip; + final String? tooltip; final VoidCallback? onPressed; final ReaderThemeData theme; final FocusNode? focusNode; @@ -1394,7 +1541,7 @@ final class _ReaderSettingsPanel extends StatelessWidget { preferences.copyWith(pageMargins: EdgeInsets.all(value)), ), ), - const Divider(), + const SizedBox(height: 12), ], if (capabilities.supportsPagination || capabilities.supportsScrolling) ...[ diff --git a/lib/src/presentation/reader_ui_builders.dart b/lib/src/presentation/reader_ui_builders.dart index f1840e5..0e5667d 100644 --- a/lib/src/presentation/reader_ui_builders.dart +++ b/lib/src/presentation/reader_ui_builders.dart @@ -21,6 +21,8 @@ final class ReaderToolbarContext { required this.openSettings, this.onBack, this.isBusy = false, + this.toggleControls, + this.controlsVisible = true, }); final ReaderDocument document; @@ -29,6 +31,10 @@ final class ReaderToolbarContext { final VoidCallback openTableOfContents; final VoidCallback openSettings; final bool isBusy; + + /// Hide or restore reader chrome without changing the reading position. + final VoidCallback? toggleControls; + final bool controlsVisible; } final class ReaderPanelContext { diff --git a/test/presentation/epub_reading_flow_test.dart b/test/presentation/epub_reading_flow_test.dart index e4a8375..e17ad7b 100644 --- a/test/presentation/epub_reading_flow_test.dart +++ b/test/presentation/epub_reading_flow_test.dart @@ -7,6 +7,63 @@ import '../support/in_process_epub_worker.dart'; import '../support/synthetic_epub.dart'; void main() { + testWidgets('hiding chrome keeps a long EPUB on its current content offset', ( + tester, + ) async { + final semantics = tester.ensureSemantics(); + tester.view.devicePixelRatio = 1; + tester.view.physicalSize = const Size(1280, 850); + addTearDown(tester.view.resetPhysicalSize); + addTearDown(tester.view.resetDevicePixelRatio); + final engine = testEpubEngine(); + await tester.pumpWidget( + MaterialApp( + home: PapyrusReader( + registry: ReaderEngineRegistry([ + ReaderEngineRegistration( + formats: const {ReaderFormat.epub}, + factory: () => engine, + ), + ]), + document: ReaderDocument( + id: 'focus', + format: ReaderFormat.epub, + loadBytes: () async => syntheticEpub(longChapter: true), + ), + ), + ), + ); + await tester.pumpAndSettle(); + await engine.goNext(); + await tester.pumpAndSettle(); + await engine.goNext(); + await tester.pumpAndSettle(); + final before = await engine.currentLocator() as EpubReaderLocator; + expect(before.textOffset, greaterThan(0)); + await tester.tap(find.byTooltip('Hide controls')); + await tester.pumpAndSettle(); + expect( + (await engine.currentLocator() as EpubReaderLocator).textOffset, + before.textOffset, + ); + expect( + tester.widget(find.byType(PageView)).controller!.page, + greaterThan(0), + ); + await tester.sendKeyEvent(LogicalKeyboardKey.escape); + await tester.pumpAndSettle(); + expect(find.byTooltip('Hide controls'), findsOneWidget); + expect( + (await engine.currentLocator() as EpubReaderLocator).textOffset, + before.textOffset, + ); + expect( + tester.widget(find.byType(PageView)).controller!.page, + greaterThan(0), + ); + semantics.dispose(); + }); + testWidgets('arrow navigation stays focused across consecutive chapters', ( tester, ) async { diff --git a/test/presentation/papyrus_reader_test.dart b/test/presentation/papyrus_reader_test.dart index 08ef67d..92a0752 100644 --- a/test/presentation/papyrus_reader_test.dart +++ b/test/presentation/papyrus_reader_test.dart @@ -99,6 +99,232 @@ void main() { ); } + testWidgets('sidebar meets the toolbar border without an empty gap', ( + tester, + ) async { + final controller = controllerFor([_UiReaderEngine()]); + addTearDown(controller.dispose); + await pumpReader( + tester, + document: document('Border'), + controller: controller, + size: const Size(1200, 1000), + ); + await tester.pumpAndSettle(); + await tester.tap(find.byTooltip('Reading settings')); + await tester.pumpAndSettle(); + final toolbar = tester.getRect( + find.byKey(const ValueKey('reader-toolbar')), + ); + final border = tester.getRect( + find.byKey(const ValueKey('reader-toolbar-border')), + ); + final panel = tester.getRect( + find.byKey(const ValueKey('reader-side-panel')), + ); + expect(border.top, toolbar.bottom); + expect(border.height, 1); + expect(panel.top, border.bottom); + // The panel header keeps its border; text settings have no separator. + expect( + find.descendant( + of: find.byType(ListView), + matching: find.byType(Divider), + ), + findsNothing, + ); + }); + + testWidgets( + 'focus mode retains viewport and navigation on phone and desktop', + (tester) async { + for (final width in [390.0, 1200.0]) { + final engine = _UiReaderEngine(); + final controller = controllerFor([engine]); + final book = document('Focus $width'); + await pumpReader( + tester, + document: book, + controller: controller, + size: Size(width, 844), + ); + await tester.pumpAndSettle(); + final viewport = find.byKey(const ValueKey('reader-viewport')); + final element = tester.element(viewport); + final height = tester.getSize(viewport).height; + if (width > 720) { + await tester.tap(find.byTooltip('Reading settings')); + await tester.pumpAndSettle(); + } + await tester.tap(find.byTooltip('Hide controls')); + await tester.pumpAndSettle(); + expect(find.byKey(const ValueKey('reader-toolbar')), findsNothing); + expect( + find.byKey(const ValueKey('reader-progress-controls')), + findsNothing, + ); + expect(find.byKey(const ValueKey('reader-side-panel')), findsNothing); + expect(find.byTooltip('Show controls'), findsOneWidget); + expect(tester.element(viewport), same(element)); + expect(tester.getSize(viewport), Size(width, 844)); + await tester.sendKeyEvent(LogicalKeyboardKey.arrowRight); + await tester.pumpAndSettle(); + await tester.sendKeyEvent(LogicalKeyboardKey.arrowLeft); + await tester.pumpAndSettle(); + expect(engine.goNextCallCount, 1); + expect(engine.goPreviousCallCount, 1); + final locator = controller.snapshot.locator; + await tester.tap(find.byTooltip('Show controls')); + await tester.pumpAndSettle(); + expect(tester.element(viewport), same(element)); + expect(tester.getSize(viewport).height, height); + expect(controller.snapshot.locator, locator); + await tester.tap(find.byTooltip('Hide controls')); + await tester.pumpAndSettle(); + await tester.sendKeyEvent(LogicalKeyboardKey.escape); + await tester.pumpAndSettle(); + expect(find.byTooltip('Reading settings'), findsOneWidget); + expect(find.byTooltip('Next'), findsOneWidget); + // Opening a different book must restore its exit/navigation controls. + await tester.tap(find.byTooltip('Hide controls')); + await tester.pumpAndSettle(); + await pumpReader( + tester, + document: document('Replacement'), + controller: controllerFor([_UiReaderEngine()]), + size: Size(width, 844), + ); + await tester.pumpAndSettle(); + expect(find.byTooltip('Hide controls'), findsOneWidget); + final replacement = tester + .widget(find.byType(PapyrusReader)) + .controller!; + await tester.pumpWidget(const SizedBox.shrink()); + replacement.dispose(); + controller.dispose(); + } + }, + ); + + testWidgets( + 'focus mode recovers page keys and Escape from a parked scope', + (tester) async { + final engine = _UiReaderEngine(); + final controller = controllerFor([engine]); + addTearDown(controller.dispose); + await pumpReader( + tester, + document: document('Parked focus'), + controller: controller, + ); + await tester.pumpAndSettle(); + await tester.tap(find.byTooltip('Hide controls')); + await tester.pumpAndSettle(); + FocusManager.instance.rootScope.requestFocus(); + await tester.pump(); + await tester.sendKeyEvent(LogicalKeyboardKey.arrowRight); + await tester.pumpAndSettle(); + expect(engine.goNextCallCount, 1); + FocusManager.instance.rootScope.requestFocus(); + await tester.pump(); + await tester.sendKeyEvent(LogicalKeyboardKey.escape); + await tester.pumpAndSettle(); + expect(find.byTooltip('Hide controls'), findsOneWidget); + }, + ); + + testWidgets('focus mode does not intercept keys from a covering dialog', ( + tester, + ) async { + final engine = _UiReaderEngine(); + final controller = controllerFor([engine]); + addTearDown(controller.dispose); + await pumpReader( + tester, + document: document('Dialog focus'), + controller: controller, + ); + await tester.pumpAndSettle(); + await tester.tap(find.byTooltip('Hide controls')); + await tester.pumpAndSettle(); + final context = tester.element(find.byType(PapyrusReader)); + final dialog = showDialog( + context: context, + builder: (_) => const AlertDialog(content: TextField(autofocus: true)), + ); + await tester.pumpAndSettle(); + await tester.sendKeyEvent(LogicalKeyboardKey.arrowRight); + await tester.pump(); + expect(engine.goNextCallCount, 0); + FocusManager.instance.rootScope.requestFocus(); + await tester.pump(); + await tester.sendKeyEvent(LogicalKeyboardKey.arrowRight); + await tester.pump(); + expect(engine.goNextCallCount, 0); + Navigator.of(context).pop(); + await tester.pumpAndSettle(); + await dialog; + expect(find.byTooltip('Show controls'), findsOneWidget); + }); + + testWidgets( + 'the controls toggle retains one accessible button through reflow', + (tester) async { + final semantics = tester.ensureSemantics(); + final controller = controllerFor([_UiReaderEngine()]); + addTearDown(controller.dispose); + await pumpReader( + tester, + document: document('Accessible focus'), + controller: controller, + ); + await tester.pumpAndSettle(); + final before = tester + .getSemantics(find.bySemanticsLabel('Hide controls')) + .id; + await tester.tap(find.byTooltip('Hide controls')); + await tester.pumpAndSettle(); + expect( + tester.getSemantics(find.bySemanticsLabel('Show controls')).id, + before, + ); + await tester.sendKeyEvent(LogicalKeyboardKey.escape); + await tester.pumpAndSettle(); + expect( + tester.getSemantics(find.bySemanticsLabel('Hide controls')).id, + before, + ); + semantics.dispose(); + }, + ); + + testWidgets( + 'custom toolbars can enter focus mode and restore with Escape', + (tester) async { + final controller = controllerFor([_UiReaderEngine()]); + addTearDown(controller.dispose); + await pumpReader( + tester, + document: document('Custom focus'), + controller: controller, + builders: ReaderUiBuilders( + toolbar: (context, state) => TextButton( + onPressed: state.toggleControls, + child: Text(state.controlsVisible ? 'Focus' : 'Controls'), + ), + ), + ); + await tester.pumpAndSettle(); + await tester.tap(find.text('Focus')); + await tester.pumpAndSettle(); + expect(find.text('Focus'), findsNothing); + expect(find.byTooltip('Show controls'), findsOneWidget); + await tester.sendKeyEvent(LogicalKeyboardKey.escape); + await tester.pumpAndSettle(); + expect(find.text('Focus'), findsOneWidget); + }, + ); + testWidgets('all settings dropdown routes follow the reading appearance', ( tester, ) async { diff --git a/tool/browser/smoke.mjs b/tool/browser/smoke.mjs index cc751a9..fb80bdf 100644 --- a/tool/browser/smoke.mjs +++ b/tool/browser/smoke.mjs @@ -103,6 +103,24 @@ try { assert.ok(beforeWheel && afterWheel && Math.abs(beforeWheel.y - afterWheel.y) < 1, 'A normal paginated column must fit without hidden vertical overflow'); await screenshot('desktop'); + const hideControls = async () => { + await page.getByRole('button', { name: 'Hide controls', exact: true }).click(); + await settle(); + for (const name of ['Back', 'Reading settings', 'Table of contents', 'Next', 'Previous']) { + assert.equal(await page.getByRole('button', { name, exact: true }).count(), 0, + `${name} must be hidden in focus mode`); + } + await page.getByRole('button', { name: 'Show controls', exact: true }).waitFor(); + }; + await hideControls(); + const focusedParagraph = await paragraph.boundingBox(); + assert.ok(focusedParagraph && focusedParagraph.y < 850 && + focusedParagraph.y + focusedParagraph.height > 0, + 'Expanding the reading area must keep the current EPUB paragraph visible'); + await screenshot('desktop-focus'); + await page.keyboard.press('Escape'); + await settle(); + await page.getByRole('button', { name: 'Hide controls', exact: true }).waitFor(); await page.setViewportSize({ width: 390, height: 844 }); await settle(); await page.getByRole('button', { name: 'Reading settings', exact: true }).click(); @@ -117,6 +135,10 @@ try { await page.getByRole('button', { name: 'Close panel', exact: true }).click(); await settle(); await screenshot('mobile-night'); + await hideControls(); + await screenshot('mobile-focus'); + await page.getByRole('button', { name: 'Show controls', exact: true }).click(); + await settle(); await page.setViewportSize({ width: 700, height: 360 }); await settle(); await screenshot('landscape'); @@ -148,11 +170,12 @@ try { await settle(); assert.ok(workersClosed >= 3, 'Document workers must close with their sessions'); - // Crossing chapters must retain keyboard focus without a pointer refocus. + // Crossing chapters must retain keyboard focus in focus mode without pointer refocus. await page.setViewportSize({ width: 1280, height: 850 }); await page.getByRole('button', { name: 'Read EPUB', exact: true }).click(); await page.getByText('At the Gate', { exact: true }).first().waitFor(); await settle(); + await hideControls(); for (let turn = 0; turn < 3; turn++) { await page.keyboard.press('ArrowRight'); await page.getByText('After the Rain', { exact: true }).first().waitFor(); @@ -161,6 +184,8 @@ try { await page.getByText('At the Gate', { exact: true }).first().waitFor(); await settle(); } + await page.keyboard.press('Escape'); + await settle(); await page.getByRole('button', { name: 'Back', exact: true }).click(); await settle(); await page.setViewportSize({ width: 700, height: 360 }); @@ -175,6 +200,18 @@ try { await page.getByLabel(/Page 2 of 3/).waitFor(); await settle(); await screenshot('pdf'); + await hideControls(); + await page.getByText('Page 2 of 3.', { exact: true }).waitFor(); + await screenshot('pdf-focus'); + await page.keyboard.press('ArrowRight'); + await page.getByText('Page 3 of 3.', { exact: true }).waitFor(); + await settle(); + await page.keyboard.press('ArrowLeft'); + await page.getByText('Page 2 of 3.', { exact: true }).waitFor(); + await settle(); + await page.getByRole('button', { name: 'Show controls', exact: true }).click(); + await settle(); + await page.getByLabel(/Page 2 of 3/).waitFor(); await page.getByRole('button', { name: 'Back', exact: true }).click(); await settle(); await page.getByRole('button', { name: 'Read PDF', exact: true }).click(); @@ -304,7 +341,7 @@ try { await settle(); await page.getByRole('button', { name: 'Use light theme', exact: true }).waitFor(); assert.deepEqual(errors, []); - console.log('Browser checks passed: worker protocol, chapter keyboard focus, responsive settings, local files, cleanup, PDF pagination/scroll, column/appearance refitting and opened menus under opposite app themes.'); + console.log('Browser checks passed: worker protocol, focus mode and chapter keyboard focus, responsive settings, local files, cleanup, PDF pagination/scroll, column/appearance refitting and opened menus under opposite app themes.'); } finally { await browser.close(); await rm(temp, { recursive: true, force: true }); From e9f91aa1a6fd6a93494e7aeba057f6f65c6e1c18 Mon Sep 17 00:00:00 2001 From: Karolis Strazdas Date: Sat, 3 Oct 2026 22:55:59 +0300 Subject: [PATCH 4/4] fix: refresh custom viewports and preserve EPUB list numbering --- assets/epub_worker.js | 13128 +++++++++-------- lib/src/engine/epub/worker/epub_content.dart | 22 +- lib/src/presentation/papyrus_reader.dart | 12 +- test/engine/epub_worker_test.dart | 63 + test/presentation/papyrus_reader_test.dart | 57 + 5 files changed, 6765 insertions(+), 6517 deletions(-) diff --git a/assets/epub_worker.js b/assets/epub_worker.js index e90aa7f..56dbb10 100644 --- a/assets/epub_worker.js +++ b/assets/epub_worker.js @@ -22,7 +22,7 @@ a[c]=function(){if(a[b]===s){a[b]=d()}a[c]=function(){return this[b]} return a[b]}}function lazyFinal(a,b,c,d){var s=a a[b]=s a[c]=function(){if(a[b]===s){var r=d() -if(a[b]!==s){A.zy(b)}a[b]=r}var q=a[b] +if(a[b]!==s){A.zD(b)}a[b]=r}var q=a[b] a[c]=function(){return q} return q}}function makeConstList(a,b){if(b!=null)A.i(a,b) a.$flags=7 @@ -30,10 +30,10 @@ return a}function convertToFastObject(a){function t(){}t.prototype=a new t() return a}function convertAllToFastObject(a){for(var s=0;s4294967295)throw A.f(A.ad(a,0,4294967295,"length",null)) -return J.vT(new Array(a),b)}, -vS(a,b){if(a<0)throw A.f(A.U("Length must be a non-negative integer: "+a,null)) +q2(a,b){if(a<0||a>4294967295)throw A.f(A.af(a,0,4294967295,"length",null)) +return J.vY(new Array(a),b)}, +vX(a,b){if(a<0)throw A.f(A.W("Length must be a non-negative integer: "+a,null)) return A.i(new Array(a),b.h("y<0>"))}, -rq(a,b){if(a<0)throw A.f(A.U("Length must be a non-negative integer: "+a,null)) +rv(a,b){if(a<0)throw A.f(A.W("Length must be a non-negative integer: "+a,null)) return A.i(new Array(a),b.h("y<0>"))}, -vT(a,b){var s=A.i(a,b.h("y<0>")) +vY(a,b){var s=A.i(a,b.h("y<0>")) s.$flags=1 return s}, -vU(a,b){var s=t.bP -return J.r3(s.a(a),s.a(b))}, -rs(a){if(a<256)switch(a){case 9:case 10:case 11:case 12:case 13:case 32:case 133:case 160:return!0 +vZ(a,b){var s=t.bP +return J.r8(s.a(a),s.a(b))}, +rx(a){if(a<256)switch(a){case 9:case 10:case 11:case 12:case 13:case 32:case 133:case 160:return!0 default:return!1}switch(a){case 5760:case 8192:case 8193:case 8194:case 8195:case 8196:case 8197:case 8198:case 8199:case 8200:case 8201:case 8202:case 8232:case 8233:case 8239:case 8287:case 12288:case 65279:return!0 default:return!1}}, -rt(a,b){var s,r +ry(a,b){var s,r for(s=a.length;b0;b=r){r=b-1 if(!(r").v(c).h("hb<1,2>")) -return new A.dd(a,b.h("@<0>").v(c).h("dd<1,2>"))}, -rv(a){return new A.e8("Field '"+a+"' has been assigned during initialization.")}, -q0(a){return new A.e8("Field '"+a+"' has not been initialized.")}, -vW(a){return new A.e8("Field '"+a+"' has already been initialized.")}, -py(a){var s,r=a^48 +iW:function iW(){}, +ct:function ct(){}},A={q4:function q4(){}, +eM(a,b,c){if(t.gt.b(a))return new A.hb(a,b.h("@<0>").u(c).h("hb<1,2>")) +return new A.de(a,b.h("@<0>").u(c).h("de<1,2>"))}, +rA(a){return new A.e8("Field '"+a+"' has been assigned during initialization.")}, +q6(a){return new A.e8("Field '"+a+"' has not been initialized.")}, +w0(a){return new A.e8("Field '"+a+"' has already been initialized.")}, +pE(a){var s,r=a^48 if(r<=9)return r s=a|32 if(97<=s&&s<=102)return s-87 @@ -201,45 +201,45 @@ return-1}, cz(a,b){a=a+b&536870911 a=a+((a&524287)<<10)&536870911 return a^a>>>6}, -nJ(a){a=a+((a&67108863)<<3)&536870911 +nN(a){a=a+((a&67108863)<<3)&536870911 a^=a>>>11 return a+((a&16383)<<15)&536870911}, -dO(a,b,c){return a}, -qS(a){var s,r +dP(a,b,c){return a}, +qX(a){var s,r for(s=$.bF.length,r=0;rc)A.O(A.ad(b,0,c,"start",null))}return new A.cy(a,b,c,d.h("cy<0>"))}, -rz(a,b,c,d){if(t.gt.b(a))return new A.eU(a,b,c.h("@<0>").v(d).h("eU<1,2>")) -return new A.b8(a,b,c.h("@<0>").v(d).h("b8<1,2>"))}, -rU(a,b,c){var s="takeCount" +bX(a,b,c,d){A.aF(b,"start") +if(c!=null){A.aF(c,"end") +if(b>c)A.P(A.af(b,0,c,"start",null))}return new A.cy(a,b,c,d.h("cy<0>"))}, +rE(a,b,c,d){if(t.gt.b(a))return new A.eU(a,b,c.h("@<0>").u(d).h("eU<1,2>")) +return new A.ba(a,b,c.h("@<0>").u(d).h("ba<1,2>"))}, +rZ(a,b,c){var s="takeCount" A.hR(b,s,t.S) -A.aE(b,s) +A.aF(b,s) if(t.gt.b(a))return new A.eV(a,b,c.h("eV<0>")) -return new A.dD(a,b,c.h("dD<0>"))}, -rS(a,b,c){var s="count" +return new A.dE(a,b,c.h("dE<0>"))}, +rX(a,b,c){var s="count" if(t.gt.b(a)){A.hR(b,s,t.S) -A.aE(b,s) +A.aF(b,s) return new A.dZ(a,b,c.h("dZ<0>"))}A.hR(b,s,t.S) -A.aE(b,s) +A.aF(b,s) return new A.cx(a,b,c.h("cx<0>"))}, -bi(){return new A.dC("No element")}, -rp(){return new A.dC("Too many elements")}, -ro(){return new A.dC("Too few elements")}, -jK(a,b,c,d,e){if(c-b<=32)A.wI(a,b,c,d,e) -else A.wH(a,b,c,d,e)}, -wI(a,b,c,d,e){var s,r,q,p,o,n -for(s=b+1,r=J.ab(a);s<=c;++s){q=r.n(a,s) +bi(){return new A.dD("No element")}, +ru(){return new A.dD("Too many elements")}, +rt(){return new A.dD("Too few elements")}, +jM(a,b,c,d,e){if(c-b<=32)A.wN(a,b,c,d,e) +else A.wM(a,b,c,d,e)}, +wN(a,b,c,d,e){var s,r,q,p,o,n +for(s=b+1,r=J.ad(a);s<=c;++s){q=r.m(a,s) p=s -for(;;){if(p>b){o=d.$2(r.n(a,p-1),q) +for(;;){if(p>b){o=d.$2(r.m(a,p-1),q) if(typeof o!=="number")return o.b1() o=o>0}else o=!1 if(!o)break n=p-1 -r.k(a,p,r.n(a,n)) +r.k(a,p,r.m(a,n)) p=n}r.k(a,p,q)}}, -wH(a3,a4,a5,a6,a7){var s,r,q,p,o,n,m,l,k,j=B.f.av(a5-a4+1,6),i=a4+j,h=a5-j,g=B.f.av(a4+a5,2),f=g-j,e=g+j,d=J.ab(a3),c=d.n(a3,i),b=d.n(a3,f),a=d.n(a3,g),a0=d.n(a3,e),a1=d.n(a3,h),a2=a6.$2(c,b) +wM(a3,a4,a5,a6,a7){var s,r,q,p,o,n,m,l,k,j=B.f.av(a5-a4+1,6),i=a4+j,h=a5-j,g=B.f.av(a4+a5,2),f=g-j,e=g+j,d=J.ad(a3),c=d.m(a3,i),b=d.m(a3,f),a=d.m(a3,g),a0=d.m(a3,e),a1=d.m(a3,h),a2=a6.$2(c,b) if(typeof a2!=="number")return a2.b1() if(a2>0){s=b b=c @@ -278,76 +278,76 @@ a1=a0 a0=s}d.k(a3,i,c) d.k(a3,g,a) d.k(a3,h,a1) -d.k(a3,f,d.n(a3,a4)) -d.k(a3,e,d.n(a3,a5)) +d.k(a3,f,d.m(a3,a4)) +d.k(a3,e,d.m(a3,a5)) r=a4+1 q=a5-1 -p=J.M(a6.$2(b,a0),0) -if(p)for(o=r;o<=q;++o){n=d.n(a3,o) +p=J.N(a6.$2(b,a0),0) +if(p)for(o=r;o<=q;++o){n=d.m(a3,o) m=a6.$2(n,b) if(m===0)continue -if(m<0){if(o!==r){d.k(a3,o,d.n(a3,r)) -d.k(a3,r,n)}++r}else for(;;){m=a6.$2(d.n(a3,q),b) +if(m<0){if(o!==r){d.k(a3,o,d.m(a3,r)) +d.k(a3,r,n)}++r}else for(;;){m=a6.$2(d.m(a3,q),b) if(m>0){--q continue}else{l=q-1 -if(m<0){d.k(a3,o,d.n(a3,r)) +if(m<0){d.k(a3,o,d.m(a3,r)) k=r+1 -d.k(a3,r,d.n(a3,q)) +d.k(a3,r,d.m(a3,q)) d.k(a3,q,n) q=l r=k -break}else{d.k(a3,o,d.n(a3,q)) +break}else{d.k(a3,o,d.m(a3,q)) d.k(a3,q,n) q=l -break}}}}else for(o=r;o<=q;++o){n=d.n(a3,o) -if(a6.$2(n,b)<0){if(o!==r){d.k(a3,o,d.n(a3,r)) -d.k(a3,r,n)}++r}else if(a6.$2(n,a0)>0)for(;;)if(a6.$2(d.n(a3,q),a0)>0){--q +break}}}}else for(o=r;o<=q;++o){n=d.m(a3,o) +if(a6.$2(n,b)<0){if(o!==r){d.k(a3,o,d.m(a3,r)) +d.k(a3,r,n)}++r}else if(a6.$2(n,a0)>0)for(;;)if(a6.$2(d.m(a3,q),a0)>0){--q if(qh){while(J.M(a6.$2(d.n(a3,r),b),0))++r -while(J.M(a6.$2(d.n(a3,q),a0),0))--q -for(o=r;o<=q;++o){n=d.n(a3,o) -if(a6.$2(n,b)===0){if(o!==r){d.k(a3,o,d.n(a3,r)) -d.k(a3,r,n)}++r}else if(a6.$2(n,a0)===0)for(;;)if(a6.$2(d.n(a3,q),a0)===0){--q +if(rh){while(J.N(a6.$2(d.m(a3,r),b),0))++r +while(J.N(a6.$2(d.m(a3,q),a0),0))--q +for(o=r;o<=q;++o){n=d.m(a3,o) +if(a6.$2(n,b)===0){if(o!==r){d.k(a3,o,d.m(a3,r)) +d.k(a3,r,n)}++r}else if(a6.$2(n,a0)===0)for(;;)if(a6.$2(d.m(a3,q),a0)===0){--q if(q=m.length)return A.c(m,3) s=m[3] if(b==null){if(s!=null)return parseInt(a,10) if(m[2]!=null)return parseInt(a,16) -return n}if(b<2||b>36)throw A.f(A.ad(b,2,36,"radix",n)) +return n}if(b<2||b>36)throw A.f(A.af(b,2,36,"radix",n)) if(b===10&&s!=null)return parseInt(a,10) if(b<10||s==null){r=b<=10?47+b:86+b q=m[1] for(p=q.length,o=0;or)return n}return parseInt(a,b)}, -q9(a){var s,r +qf(a){var s,r if(!/^\s*[+-]?(?:Infinity|NaN|(?:\.\d+|\d+(?:\.\d*)?)(?:[eE][+-]?\d+)?)\s*$/.test(a))return null s=parseFloat(a) -if(isNaN(s)){r=B.b.bk(a) +if(isNaN(s)){r=B.b.ba(a) if(r==="NaN"||r==="+NaN"||r==="-NaN")return s return null}return s}, -jB(a){var s,r,q,p -if(a instanceof A.p)return A.bd(A.b2(a),null) +jC(a){var s,r,q,p +if(a instanceof A.p)return A.be(A.b3(a),null) s=J.ci(a) if(s===B.iO||s===B.iQ||t.mK.b(a)){r=B.cM(a) if(r!=="Object"&&r!=="")return r q=a.constructor if(typeof q=="function"){p=q.name -if(typeof p=="string"&&p!=="Object"&&p!=="")return p}}return A.bd(A.b2(a),null)}, -rK(a){var s,r,q -if(a==null||typeof a=="number"||A.qG(a))return J.ax(a) +if(typeof p=="string"&&p!=="Object"&&p!=="")return p}}return A.be(A.b3(a),null)}, +rP(a){var s,r,q +if(a==null||typeof a=="number"||A.qL(a))return J.ay(a) if(typeof a=="string")return JSON.stringify(a) -if(a instanceof A.b6)return a.j(0) -if(a instanceof A.bn)return a.hw(!0) -s=$.v8() +if(a instanceof A.b7)return a.j(0) +if(a instanceof A.bn)return a.hx(!0) +s=$.vd() for(r=0;r<1;++r){q=s[r].oh(a) -if(q!=null)return q}return"Instance of '"+A.jB(a)+"'"}, -wr(){if(!!self.location)return self.location.href +if(q!=null)return q}return"Instance of '"+A.jC(a)+"'"}, +ww(){if(!!self.location)return self.location.href return null}, -rI(a){var s,r,q,p,o=a.length +rN(a){var s,r,q,p,o=a.length if(o<=500)return String.fromCharCode.apply(null,a) for(s="",r=0;r65535)return A.wA(a)}return A.rI(a)}, -wB(a,b,c){var s,r,q,p +if(!A.lx(q))throw A.f(A.dO(q)) +if(q<0)throw A.f(A.dO(q)) +if(q>65535)return A.wF(a)}return A.rN(a)}, +wG(a,b,c){var s,r,q,p if(c<=500&&b===0&&c===a.length)return String.fromCharCode.apply(null,a) for(s=b,r="";s>>0,s&1023|56320)}}throw A.f(A.ad(a,0,1114111,null,null))}, +return String.fromCharCode((B.f.b5(s,10)|55296)>>>0,s&1023|56320)}}throw A.f(A.af(a,0,1114111,null,null))}, bz(a){if(a.date===void 0)a.date=new Date(a.a) return a.date}, -wz(a){return a.c?A.bz(a).getUTCFullYear()+0:A.bz(a).getFullYear()+0}, -wx(a){return a.c?A.bz(a).getUTCMonth()+1:A.bz(a).getMonth()+1}, -wt(a){return a.c?A.bz(a).getUTCDate()+0:A.bz(a).getDate()+0}, -wu(a){return a.c?A.bz(a).getUTCHours()+0:A.bz(a).getHours()+0}, -ww(a){return a.c?A.bz(a).getUTCMinutes()+0:A.bz(a).getMinutes()+0}, -wy(a){return a.c?A.bz(a).getUTCSeconds()+0:A.bz(a).getSeconds()+0}, -wv(a){return a.c?A.bz(a).getUTCMilliseconds()+0:A.bz(a).getMilliseconds()+0}, +wE(a){return a.c?A.bz(a).getUTCFullYear()+0:A.bz(a).getFullYear()+0}, +wC(a){return a.c?A.bz(a).getUTCMonth()+1:A.bz(a).getMonth()+1}, +wy(a){return a.c?A.bz(a).getUTCDate()+0:A.bz(a).getDate()+0}, +wz(a){return a.c?A.bz(a).getUTCHours()+0:A.bz(a).getHours()+0}, +wB(a){return a.c?A.bz(a).getUTCMinutes()+0:A.bz(a).getMinutes()+0}, +wD(a){return a.c?A.bz(a).getUTCSeconds()+0:A.bz(a).getSeconds()+0}, +wA(a){return a.c?A.bz(a).getUTCMilliseconds()+0:A.bz(a).getMilliseconds()+0}, cZ(a,b,c){var s,r,q={} q.a=0 s=[] @@ -516,13 +516,13 @@ r=[] q.a=b.length B.a.a1(s,b) q.b="" -if(c!=null&&c.a!==0)c.X(0,new A.np(q,r,s)) -return J.vj(a,new A.fj(B.Mt,0,s,r,0))}, -wq(a,b,c){var s,r=c==null||c.a===0 +if(c!=null&&c.a!==0)c.T(0,new A.nt(q,r,s)) +return J.vo(a,new A.fj(B.Mv,0,s,r,0))}, +wv(a,b,c){var s,r=c==null||c.a===0 if(r){if(!!a.$0)return a.$0() s=a[""+"$0"] -if(s!=null)return s.apply(a,b)}return A.wp(a,b,c)}, -wp(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=a.$R +if(s!=null)return s.apply(a,b)}return A.wu(a,b,c)}, +wu(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=a.$R if(0n)return A.cZ(a,b,null) if(0f)return A.cZ(a,b,c) -l=A.aV(b,t.z) +l=A.a7(b,t.z) k=Object.keys(q) -if(c==null)for(r=k.length,j=0;j=s)return A.iL(b,s,a,null,r) -return A.nq(b,r)}, -yU(a,b,c){if(a<0||a>c)return A.ad(a,0,c,"start",null) -if(b!=null)if(bc)return A.ad(b,a,c,"end",null) +aN(a){throw A.f(A.dO(a))}, +c(a,b){if(a==null)J.b6(a) +throw A.f(A.lz(a,b))}, +lz(a,b){var s,r="index" +if(!A.lx(b))return new A.bR(!0,b,r,null) +s=J.b6(a) +if(b<0||b>=s)return A.iM(b,s,a,null,r) +return A.nu(b,r)}, +yZ(a,b,c){if(a<0||a>c)return A.af(a,0,c,"start",null) +if(b!=null)if(bc)return A.af(b,a,c,"end",null) return new A.bR(!0,b,"end",null)}, -dN(a){return new A.bR(!0,a,null,null)}, -f(a){return A.aq(a,new Error())}, -aq(a,b){var s +dO(a){return new A.bR(!0,a,null,null)}, +f(a){return A.ar(a,new Error())}, +ar(a,b){var s if(a==null)a=new A.cC() b.dartException=a -s=A.zz +s=A.zE if("defineProperty" in Object){Object.defineProperty(b,"message",{get:s}) b.name=""}else b.toString=s return b}, -zz(){return J.ax(this.dartException)}, -O(a,b){throw A.aq(a,b==null?new Error():b)}, +zE(){return J.ay(this.dartException)}, +P(a,b){throw A.ar(a,b==null?new Error():b)}, t(a,b,c){var s if(b==null)b=0 if(c==null)c=0 s=Error() -A.O(A.xT(a,b,c),s)}, -xT(a,b,c){var s,r,q,p,o,n,m,l,k +A.P(A.xY(a,b,c),s)}, +xY(a,b,c){var s,r,q,p,o,n,m,l,k if(typeof b=="string")s=b else{r="[]=;add;removeWhere;retainWhere;removeRange;setRange;setInt8;setInt16;setInt32;setUint8;setUint16;setUint32;setFloat32;setFloat64".split(";") q=r.length @@ -597,9 +597,9 @@ if((m&4)!==0)k="constant " else if((m&2)!==0){k="unmodifiable " l="an "}else k=(m&1)!==0?"fixed-length ":"" return new A.fX("'"+s+"': Cannot "+o+" "+l+k+n)}, -a1(a){throw A.f(A.ag(a))}, +a2(a){throw A.f(A.ai(a))}, cD(a){var s,r,q,p,o,n -a=A.uD(a.replace(String({}),"$receiver$")) +a=A.uI(a.replace(String({}),"$receiver$")) s=a.match(/\\\$[a-zA-Z]+\\\$/g) if(s==null)s=A.i([],t.s) r=s.indexOf("\\$arguments\\$") @@ -607,43 +607,43 @@ q=s.indexOf("\\$argumentsExpr\\$") p=s.indexOf("\\$expr\\$") o=s.indexOf("\\$method\\$") n=s.indexOf("\\$receiver\\$") -return new A.nM(a.replace(new RegExp("\\\\\\$arguments\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$argumentsExpr\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$expr\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$method\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$receiver\\\\\\$","g"),"((?:x|[^x])*)"),r,q,p,o,n)}, -nN(a){return function($expr$){var $argumentsExpr$="$arguments$" +return new A.nQ(a.replace(new RegExp("\\\\\\$arguments\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$argumentsExpr\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$expr\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$method\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$receiver\\\\\\$","g"),"((?:x|[^x])*)"),r,q,p,o,n)}, +nR(a){return function($expr$){var $argumentsExpr$="$arguments$" try{$expr$.$method$($argumentsExpr$)}catch(s){return s.message}}(a)}, -rZ(a){return function($expr$){try{$expr$.$method$}catch(s){return s.message}}(a)}, -q_(a,b){var s=b==null,r=s?null:b.method -return new A.iW(a,r,s?null:b.receiver)}, +t3(a){return function($expr$){try{$expr$.$method$}catch(s){return s.message}}(a)}, +q5(a,b){var s=b==null,r=s?null:b.method +return new A.iX(a,r,s?null:b.receiver)}, bP(a){var s -if(a==null)return new A.jk(a) +if(a==null)return new A.jl(a) if(a instanceof A.fc){s=a.a return A.db(a,s==null?A.cg(s):s)}if(typeof a!=="object")return a if("dartException" in a)return A.db(a,a.dartException) -return A.yz(a)}, +return A.yE(a)}, db(a,b){if(t.fz.b(b))if(b.$thrownJsError==null)b.$thrownJsError=a return b}, -yz(a){var s,r,q,p,o,n,m,l,k,j,i,h,g +yE(a){var s,r,q,p,o,n,m,l,k,j,i,h,g if(!("message" in a))return a s=a.message if("number" in a&&typeof a.number=="number"){r=a.number q=r&65535 -if((B.f.b5(r,16)&8191)===10)switch(q){case 438:return A.db(a,A.q_(A.k(s)+" (Error "+q+")",null)) +if((B.f.b5(r,16)&8191)===10)switch(q){case 438:return A.db(a,A.q5(A.k(s)+" (Error "+q+")",null)) case 445:case 5007:A.k(s) -return A.db(a,new A.fx())}}if(a instanceof TypeError){p=$.uP() -o=$.uQ() -n=$.uR() -m=$.uS() -l=$.uV() -k=$.uW() -j=$.uU() -$.uT() -i=$.uY() -h=$.uX() -g=p.bi(s) -if(g!=null)return A.db(a,A.q_(A.q(s),g)) -else{g=o.bi(s) +return A.db(a,new A.fx())}}if(a instanceof TypeError){p=$.uU() +o=$.uV() +n=$.uW() +m=$.uX() +l=$.v_() +k=$.v0() +j=$.uZ() +$.uY() +i=$.v2() +h=$.v1() +g=p.bj(s) +if(g!=null)return A.db(a,A.q5(A.q(s),g)) +else{g=o.bj(s) if(g!=null){g.method="call" -return A.db(a,A.q_(A.q(s),g))}else if(n.bi(s)!=null||m.bi(s)!=null||l.bi(s)!=null||k.bi(s)!=null||j.bi(s)!=null||m.bi(s)!=null||i.bi(s)!=null||h.bi(s)!=null){A.q(s) -return A.db(a,new A.fx())}}return A.db(a,new A.jZ(typeof s=="string"?s:""))}if(a instanceof RangeError){if(typeof s=="string"&&s.indexOf("call stack")!==-1)return new A.fQ() +return A.db(a,A.q5(A.q(s),g))}else if(n.bj(s)!=null||m.bj(s)!=null||l.bj(s)!=null||k.bj(s)!=null||j.bj(s)!=null||m.bj(s)!=null||i.bj(s)!=null||h.bj(s)!=null){A.q(s) +return A.db(a,new A.fx())}}return A.db(a,new A.k0(typeof s=="string"?s:""))}if(a instanceof RangeError){if(typeof s=="string"&&s.indexOf("call stack")!==-1)return new A.fQ() s=function(b){try{return String(b)}catch(f){}return null}(a) return A.db(a,new A.bR(!1,null,null,typeof s=="string"?s.replace(/^RangeError:\s*/,""):s))}if(typeof InternalError=="function"&&a instanceof InternalError)if(typeof s=="string"&&s==="too much recursion")return new A.fQ() return a}, @@ -655,33 +655,33 @@ if(s!=null)return s s=new A.hq(a) if(typeof a==="object")a.$cachedTrace=s return s}, -ly(a){if(a==null)return J.A(a) -if(typeof a=="object")return A.dx(a) -return J.A(a)}, -yG(a){if(typeof a=="number")return B.cV.gq(a) -if(a instanceof A.kU)return A.dx(a) +lB(a){if(a==null)return J.B(a) +if(typeof a=="object")return A.dy(a) +return J.B(a)}, +yL(a){if(typeof a=="number")return B.cV.gq(a) +if(a instanceof A.kX)return A.dy(a) if(a instanceof A.bn)return a.gq(a) if(a instanceof A.cf)return a.gq(0) -return A.ly(a)}, -un(a,b){var s,r,q,p=a.length +return A.lB(a)}, +us(a,b){var s,r,q,p=a.length for(s=0;s=0 else if(b instanceof A.cV){s=B.b.ab(a,c) -return b.b.test(s)}else return!J.lB(b,B.b.ab(a,c)).gN(0)}, -qN(a){if(a.indexOf("$",0)>=0)return a.replace(/\$/g,"$$$$") +return b.b.test(s)}else return!J.lE(b,B.b.ab(a,c)).gN(0)}, +qS(a){if(a.indexOf("$",0)>=0)return a.replace(/\$/g,"$$$$") return a}, -zw(a,b,c,d){var s=b.h5(a,d) +zB(a,b,c,d){var s=b.h6(a,d) if(s==null)return a -return A.qY(a,s.b.index,s.gU(),c)}, -uD(a){if(/[[\]{}()*+?.\\^$|]/.test(a))return a.replace(/[[\]{}()*+?.\\^$|]/g,"\\$&") +return A.r2(a,s.b.index,s.gV(),c)}, +uI(a){if(/[[\]{}()*+?.\\^$|]/.test(a))return a.replace(/[[\]{}()*+?.\\^$|]/g,"\\$&") return a}, cO(a,b,c){var s -if(typeof b=="string")return A.zv(a,b,c) -if(b instanceof A.cV){s=b.ghg() +if(typeof b=="string")return A.zA(a,b,c) +if(b instanceof A.cV){s=b.ghh() s.lastIndex=0 -return a.replace(s,A.qN(c))}return A.zu(a,b,c)}, -zu(a,b,c){var s,r,q,p -for(s=J.lB(b,a),s=s.gF(s),r=0,q="";s.p();){p=s.gB() +return a.replace(s,A.qS(c))}return A.zz(a,b,c)}, +zz(a,b,c){var s,r,q,p +for(s=J.lE(b,a),s=s.gF(s),r=0,q="";s.p();){p=s.gB() q=q+a.substring(r,p.gS())+c -r=p.gU()}s=q+a.substring(r) +r=p.gV()}s=q+a.substring(r) return s.charCodeAt(0)==0?s:s}, -zv(a,b,c){var s,r,q +zA(a,b,c){var s,r,q if(b===""){if(a==="")return c s=a.length for(r=c,q=0;q=0)return a.split(b).join(c) -return a.replace(new RegExp(A.uD(b),"g"),A.qN(c))}, -u9(a){return a}, -pP(a,b,c,d){var s,r,q,p,o,n,m +return a.replace(new RegExp(A.uI(b),"g"),A.qS(c))}, +ue(a){return a}, +pV(a,b,c,d){var s,r,q,p,o,n,m for(s=b.dB(0,a),s=new A.et(s.a,s.b,s.c),r=t.lg,q=0,p="";s.p();){o=s.d if(o==null)o=r.a(o) n=o.b m=n.index -p=p+A.k(A.u9(B.b.t(a,q,m)))+A.k(c.$1(o)) -q=m+n[0].length}s=p+A.k(A.u9(B.b.ab(a,q))) +p=p+A.k(A.ue(B.b.t(a,q,m)))+A.k(c.$1(o)) +q=m+n[0].length}s=p+A.k(A.ue(B.b.ab(a,q))) return s.charCodeAt(0)==0?s:s}, -zx(a,b,c,d){var s,r,q,p +zC(a,b,c,d){var s,r,q,p if(typeof b=="string"){s=a.indexOf(b,d) if(s<0)return a -return A.qY(a,s,s+b.length,c)}if(b instanceof A.cV)return d===0?a.replace(b.b,A.qN(c)):A.zw(a,b,c,d) -r=J.vc(b,a,d) +return A.r2(a,s,s+b.length,c)}if(b instanceof A.cV)return d===0?a.replace(b.b,A.qS(c)):A.zB(a,b,c,d) +r=J.vh(b,a,d) q=r.gF(r) if(!q.p())return a p=q.gB() -return B.b.bR(a,p.gS(),p.gU(),c)}, -qY(a,b,c,d){return a.substring(0,b)+d+a.substring(c)}, +return B.b.bR(a,p.gS(),p.gV(),c)}, +r2(a,b,c,d){return a.substring(0,b)+d+a.substring(c)}, l:function l(a,b){this.a=a this.b=b}, hl:function hl(a,b,c){this.a=a @@ -909,12 +909,12 @@ _.$ti=c}, a:function a(a,b){this.a=a this.$ti=b}, dX:function dX(){}, -bf:function bf(a,b,c){this.a=a +b8:function b8(a,b,c){this.a=a this.b=b this.$ti=c}, -aO:function aO(a,b){this.a=a +aP:function aP(a,b){this.a=a this.$ti=b}, -iO:function iO(){}, +iP:function iP(){}, e0:function e0(a,b){this.a=a this.$ti=b}, fj:function fj(a,b,c,d,e){var _=this @@ -923,11 +923,11 @@ _.c=b _.d=c _.e=d _.f=e}, -np:function np(a,b,c){this.a=a +nt:function nt(a,b,c){this.a=a this.b=b this.c=c}, fF:function fF(){}, -nM:function nM(a,b,c,d,e,f){var _=this +nQ:function nQ(a,b,c,d,e,f){var _=this _.a=a _.b=b _.c=c @@ -935,35 +935,35 @@ _.d=d _.e=e _.f=f}, fx:function fx(){}, -iW:function iW(a,b,c){this.a=a +iX:function iX(a,b,c){this.a=a this.b=b this.c=c}, -jZ:function jZ(a){this.a=a}, -jk:function jk(a){this.a=a}, +k0:function k0(a){this.a=a}, +jl:function jl(a){this.a=a}, fc:function fc(a,b){this.a=a this.b=b}, hq:function hq(a){this.a=a this.b=null}, -b6:function b6(){}, +b7:function b7(){}, i4:function i4(){}, i5:function i5(){}, +jT:function jT(){}, jR:function jR(){}, -jP:function jP(){}, dT:function dT(a,b){this.a=a this.b=b}, -jI:function jI(a){this.a=a}, -oS:function oS(){}, +jK:function jK(a){this.a=a}, +oW:function oW(){}, bx:function bx(a){var _=this _.a=0 _.f=_.e=_.d=_.c=_.b=null _.r=0 _.$ti=a}, -mG:function mG(a){this.a=a}, -mI:function mI(a,b){var _=this +mK:function mK(a){this.a=a}, +mM:function mM(a,b){var _=this _.a=a _.b=b _.d=_.c=null}, -aU:function aU(a,b){this.a=a +aV:function aV(a,b){this.a=a this.$ti=b}, cv:function cv(a,b,c,d){var _=this _.a=a @@ -973,13 +973,13 @@ _.d=null _.$ti=d}, fo:function fo(a,b){this.a=a this.$ti=b}, -dq:function dq(a,b,c,d){var _=this +dr:function dr(a,b,c,d){var _=this _.a=a _.b=b _.c=c _.d=null _.$ti=d}, -dp:function dp(a,b){this.a=a +dq:function dq(a,b){this.a=a this.$ti=b}, fn:function fn(a,b,c,d){var _=this _.a=a @@ -987,14 +987,14 @@ _.b=b _.c=c _.d=null _.$ti=d}, -dn:function dn(a){var _=this +dp:function dp(a){var _=this _.a=0 _.f=_.e=_.d=_.c=_.b=null _.r=0 _.$ti=a}, -pz:function pz(a){this.a=a}, -pA:function pA(a){this.a=a}, -pB:function pB(a){this.a=a}, +pF:function pF(a){this.a=a}, +pG:function pG(a){this.a=a}, +pH:function pH(a){this.a=a}, bn:function bn(){}, ez:function ez(){}, eA:function eA(){}, @@ -1004,7 +1004,7 @@ _.a=a _.b=b _.e=_.d=_.c=null}, hg:function hg(a){this.b=a}, -ku:function ku(a,b,c){this.a=a +kw:function kw(a,b,c){this.a=a this.b=b this.c=c}, et:function et(a,b,c){var _=this @@ -1014,79 +1014,79 @@ _.c=c _.d=null}, fS:function fS(a,b){this.a=a this.c=b}, -kR:function kR(a,b,c){this.a=a +kU:function kU(a,b,c){this.a=a this.b=b this.c=c}, -kS:function kS(a,b,c){var _=this +kV:function kV(a,b,c){var _=this _.a=a _.b=b _.c=c _.d=null}, -zy(a){throw A.aq(A.rv(a),new Error())}, -o(){throw A.aq(A.q0(""),new Error())}, -c6(){throw A.aq(A.vW(""),new Error())}, -dQ(){throw A.aq(A.rv(""),new Error())}, -tm(){var s=new A.kz("") +zD(a){throw A.ar(A.rA(a),new Error())}, +o(){throw A.ar(A.q6(""),new Error())}, +c6(){throw A.ar(A.w0(""),new Error())}, +dc(){throw A.ar(A.rA(""),new Error())}, +tr(){var s=new A.kB("") return s.b=s}, -oy(a){var s=new A.kz(a) +oC(a){var s=new A.kB(a) return s.b=s}, -kz:function kz(a){this.a=a +kB:function kB(a){this.a=a this.b=null}, -p7(a,b,c){}, +pb(a,b,c){}, hC(a){var s,r,q if(t.iy.b(a))return a -s=J.ab(a) -r=A.aD(s.gm(a),null,!1,t.z) -for(q=0;q>>0!==a||a>=c)throw A.f(A.lw(b,a))}, -tT(a,b,c){var s +cM(a,b,c){if(a>>>0!==a||a>=c)throw A.f(A.lz(b,a))}, +tY(a,b,c){var s if(!(a>>>0!==a))if(b==null)s=a>c else s=b>>>0!==b||a>b||b>c else s=!0 -if(s)throw A.f(A.yU(a,b,c)) +if(s)throw A.f(A.yZ(a,b,c)) if(b==null)return c return b}, -du:function du(){}, +dv:function dv(){}, fu:function fu(){}, -oX:function oX(a){this.a=a}, -j6:function j6(){}, +p0:function p0(a){this.a=a}, +j7:function j7(){}, aW:function aW(){}, ft:function ft(){}, by:function by(){}, -j7:function j7(){}, j8:function j8(){}, j9:function j9(){}, ja:function ja(){}, jb:function jb(){}, jc:function jc(){}, +jd:function jd(){}, fv:function fv(){}, fw:function fw(){}, -dv:function dv(){}, +dw:function dw(){}, hh:function hh(){}, hi:function hi(){}, hj:function hj(){}, hk:function hk(){}, -qd(a,b){var s=b.c +qi(a,b){var s=b.c return s==null?b.c=A.hs(a,"cr",[b.x]):s}, -rQ(a){var s=a.w -if(s===6||s===7)return A.rQ(a.x) +rV(a){var s=a.w +if(s===6||s===7)return A.rV(a.x) return s===11||s===12}, -wF(a){return a.as}, -qV(a,b){var s,r=b.length +wK(a){return a.as}, +r_(a,b){var s,r=b.length for(s=0;s=p)return A.c(q,0) -s=A.hu(v.typeUniverse,A.qK(q[0]),"@<0>") +s=A.hu(v.typeUniverse,A.qP(q[0]),"@<0>") for(r=1;r=0)p+=" "+r[q];++q}return p+"})"}, -tZ(a3,a4,a5){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1=", ",a2=null +u3(a3,a4,a5){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1=", ",a2=null if(a5!=null){s=a5.length if(a4==null)a4=A.i([],t.s) else a2=a4.length @@ -1351,7 +1351,7 @@ if(!(l>=0))return A.c(a4,l) o=o+n+a4[l] k=a5[q] j=k.w -if(!(j===2||j===3||j===4||j===5||k===p))o+=" extends "+A.bd(k,a4)}o+=">"}else o="" +if(!(j===2||j===3||j===4||j===5||k===p))o+=" extends "+A.be(k,a4)}o+=">"}else o="" p=a3.x i=a3.y h=i.a @@ -1360,74 +1360,74 @@ f=i.b e=f.length d=i.c c=d.length -b=A.bd(p,a4) -for(a="",a0="",q=0;q0){a+=a0+"[" -for(a0="",q=0;q0){a+=a0+"{" for(a0="",q=0;q "+b}, -bd(a,b){var s,r,q,p,o,n,m,l=a.w +be(a,b){var s,r,q,p,o,n,m,l=a.w if(l===5)return"erased" if(l===2)return"dynamic" if(l===3)return"void" if(l===1)return"Never" if(l===4)return"any" if(l===6){s=a.x -r=A.bd(s,b) +r=A.be(s,b) q=s.w -return(q===11||q===12?"("+r+")":r)+"?"}if(l===7)return"FutureOr<"+A.bd(a.x,b)+">" -if(l===8){p=A.yy(a.x) +return(q===11||q===12?"("+r+")":r)+"?"}if(l===7)return"FutureOr<"+A.be(a.x,b)+">" +if(l===8){p=A.yD(a.x) o=a.y -return o.length>0?p+("<"+A.u5(o,b)+">"):p}if(l===10)return A.yl(a,b) -if(l===11)return A.tZ(a,b,null) -if(l===12)return A.tZ(a.x,b,a.y) +return o.length>0?p+("<"+A.ua(o,b)+">"):p}if(l===10)return A.yq(a,b) +if(l===11)return A.u3(a,b,null) +if(l===12)return A.u3(a.x,b,a.y) if(l===13){n=a.x m=b.length n=m-1-n if(!(n>=0&&n") @@ -1509,7 +1509,7 @@ o.as=q n=A.d8(a,o) a.eC.set(q,n) return n}, -tA(a,b,c){var s,r,q="+"+(b+"("+A.hr(c)+")"),p=a.eC.get(q) +tF(a,b,c){var s,r,q="+"+(b+"("+A.hr(c)+")"),p=a.eC.get(q) if(p!=null)return p s=new A.bU(null,null) s.w=10 @@ -1519,10 +1519,10 @@ s.as=q r=A.d8(a,s) a.eC.set(q,r) return r}, -tx(a,b,c){var s,r,q,p,o,n=b.as,m=c.a,l=m.length,k=c.b,j=k.length,i=c.c,h=i.length,g="("+A.hr(m) +tC(a,b,c){var s,r,q,p,o,n=b.as,m=c.a,l=m.length,k=c.b,j=k.length,i=c.c,h=i.length,g="("+A.hr(m) if(j>0){s=l>0?",":"" g+=s+"["+A.hr(k)+"]"}if(h>0){s=l>0?",":"" -g+=s+"{"+A.xn(i)+"}"}r=n+(g+")") +g+=s+"{"+A.xs(i)+"}"}r=n+(g+")") q=a.eC.get(r) if(q!=null)return q p=new A.bU(null,null) @@ -1533,38 +1533,38 @@ p.as=r o=A.d8(a,p) a.eC.set(r,o) return o}, -qz(a,b,c,d){var s,r=b.as+("<"+A.hr(c)+">"),q=a.eC.get(r) +qE(a,b,c,d){var s,r=b.as+("<"+A.hr(c)+">"),q=a.eC.get(r) if(q!=null)return q -s=A.xp(a,b,c,r,d) +s=A.xu(a,b,c,r,d) a.eC.set(r,s) return s}, -xp(a,b,c,d,e){var s,r,q,p,o,n,m,l +xu(a,b,c,d,e){var s,r,q,p,o,n,m,l if(e){s=c.length -r=A.p0(s) +r=A.p4(s) for(q=0,p=0;p0){n=A.da(a,b,r,0) m=A.eG(a,c,r,0) -return A.qz(a,n,m,c!==m)}}l=new A.bU(null,null) +return A.qE(a,n,m,c!==m)}}l=new A.bU(null,null) l.w=12 l.x=b l.y=c l.as=d return A.d8(a,l)}, -ts(a,b,c,d){return{u:a,e:b,r:c,s:[],p:0,n:d}}, -tu(a){var s,r,q,p,o,n,m,l=a.r,k=a.s +tx(a,b,c,d){return{u:a,e:b,r:c,s:[],p:0,n:d}}, +tz(a){var s,r,q,p,o,n,m,l=a.r,k=a.s for(s=l.length,r=0;r=48&&q<=57)r=A.xf(r+1,q,l,k) -else if((((q|32)>>>0)-97&65535)<26||q===95||q===36||q===124)r=A.tt(a,r,l,k,!1) -else if(q===46)r=A.tt(a,r,l,k,!0) +if(q>=48&&q<=57)r=A.xk(r+1,q,l,k) +else if((((q|32)>>>0)-97&65535)<26||q===95||q===36||q===124)r=A.ty(a,r,l,k,!1) +else if(q===46)r=A.ty(a,r,l,k,!0) else{++r switch(q){case 44:break case 58:k.push(!1) break case 33:k.push(!0) break -case 59:k.push(A.dL(a.u,a.e,k.pop())) +case 59:k.push(A.dM(a.u,a.e,k.pop())) break -case 94:k.push(A.xr(a.u,k.pop())) +case 94:k.push(A.xw(a.u,k.pop())) break case 35:k.push(A.ht(a.u,5,"#")) break @@ -1575,27 +1575,27 @@ break case 60:k.push(a.p) a.p=k.length break -case 62:A.xh(a,k) +case 62:A.xm(a,k) break -case 38:A.xg(a,k) +case 38:A.xl(a,k) break case 63:p=a.u -k.push(A.tz(p,A.dL(p,a.e,k.pop()),a.n)) +k.push(A.tE(p,A.dM(p,a.e,k.pop()),a.n)) break case 47:p=a.u -k.push(A.ty(p,A.dL(p,a.e,k.pop()),a.n)) +k.push(A.tD(p,A.dM(p,a.e,k.pop()),a.n)) break case 40:k.push(-3) k.push(a.p) a.p=k.length break -case 41:A.xe(a,k) +case 41:A.xj(a,k) break case 91:k.push(a.p) a.p=k.length break case 93:o=k.splice(a.p) -A.tv(a.u,a.e,o) +A.tA(a.u,a.e,o) a.p=k.pop() k.push(o) k.push(-1) @@ -1604,7 +1604,7 @@ case 123:k.push(a.p) a.p=k.length break case 125:o=k.splice(a.p) -A.xj(a.u,a.e,o) +A.xo(a.u,a.e,o) a.p=k.pop() k.push(o) k.push(-2) @@ -1617,13 +1617,13 @@ a.p=k.length r=n+1 break default:throw"Bad character "+q}}}m=k.pop() -return A.dL(a.u,a.e,m)}, -xf(a,b,c,d){var s,r,q=b-48 +return A.dM(a.u,a.e,m)}, +xk(a,b,c,d){var s,r,q=b-48 for(s=c.length;a=48&&r<=57))break q=q*10+(r-48)}d.push(q) return a}, -tt(a,b,c,d,e){var s,r,q,p,o,n,m=b+1 +ty(a,b,c,d,e){var s,r,q,p,o,n,m=b+1 for(s=c.length;m>>0)-97&65535)<26||r===95||r===36||r===124))q=r>=48&&r<=57 @@ -1632,55 +1632,55 @@ if(!q)break}}p=c.substring(b,m) if(e){s=a.u o=a.e if(o.w===9)o=o.x -n=A.xv(s,o.x)[p] -if(n==null)A.O('No "'+p+'" in "'+A.wF(o)+'"') +n=A.xA(s,o.x)[p] +if(n==null)A.P('No "'+p+'" in "'+A.wK(o)+'"') d.push(A.hu(s,o,n))}else d.push(p) return m}, -xh(a,b){var s,r=a.u,q=A.tr(a,b),p=b.pop() +xm(a,b){var s,r=a.u,q=A.tw(a,b),p=b.pop() if(typeof p=="string")b.push(A.hs(r,p,q)) -else{s=A.dL(r,a.e,p) -switch(s.w){case 11:b.push(A.qz(r,s,q,a.n)) +else{s=A.dM(r,a.e,p) +switch(s.w){case 11:b.push(A.qE(r,s,q,a.n)) break -default:b.push(A.qy(r,s,q)) +default:b.push(A.qD(r,s,q)) break}}}, -xe(a,b){var s,r,q,p=a.u,o=b.pop(),n=null,m=null +xj(a,b){var s,r,q,p=a.u,o=b.pop(),n=null,m=null if(typeof o=="number")switch(o){case-1:n=b.pop() break case-2:m=b.pop() break default:b.push(o) break}else b.push(o) -s=A.tr(a,b) +s=A.tw(a,b) o=b.pop() switch(o){case-3:o=b.pop() if(n==null)n=p.sEA if(m==null)m=p.sEA -r=A.dL(p,a.e,o) -q=new A.kL() +r=A.dM(p,a.e,o) +q=new A.kO() q.a=s q.b=n q.c=m -b.push(A.tx(p,r,q)) +b.push(A.tC(p,r,q)) return -case-4:b.push(A.tA(p,b.pop(),s)) +case-4:b.push(A.tF(p,b.pop(),s)) return default:throw A.f(A.hV("Unexpected state under `()`: "+A.k(o)))}}, -xg(a,b){var s=b.pop() +xl(a,b){var s=b.pop() if(0===s){b.push(A.ht(a.u,1,"0&")) return}if(1===s){b.push(A.ht(a.u,4,"1&")) return}throw A.f(A.hV("Unexpected extended operation "+A.k(s)))}, -tr(a,b){var s=b.splice(a.p) -A.tv(a.u,a.e,s) +tw(a,b){var s=b.splice(a.p) +A.tA(a.u,a.e,s) a.p=b.pop() return s}, -dL(a,b,c){if(typeof c=="string")return A.hs(a,c,a.sEA) +dM(a,b,c){if(typeof c=="string")return A.hs(a,c,a.sEA) else if(typeof c=="number"){b.toString -return A.xi(a,b,c)}else return c}, -tv(a,b,c){var s,r=c.length -for(s=0;s0?new Array(q):v.typeUniverse.sEA for(o=0;o0?new Array(a):v.typeUniverse.sEA}, +p4(a){return a>0?new Array(a):v.typeUniverse.sEA}, bU:function bU(a,b){var _=this _.a=a _.b=b _.r=_.f=_.d=_.c=null _.w=0 _.as=_.Q=_.z=_.y=_.x=null}, -kL:function kL(){this.c=this.b=this.a=null}, -kU:function kU(a){this.a=a}, -kJ:function kJ(){}, +kO:function kO(){this.c=this.b=this.a=null}, +kX:function kX(a){this.a=a}, +kL:function kL(){}, eB:function eB(a){this.a=a}, -wZ(){var s,r,q -if(self.scheduleImmediate!=null)return A.yA() +x3(){var s,r,q +if(self.scheduleImmediate!=null)return A.yF() if(self.MutationObserver!=null&&self.document!=null){s={} r=self.document.createElement("div") q=self.document.createElement("span") s.a=null -new self.MutationObserver(A.eI(new A.or(s),1)).observe(r,{childList:true}) -return new A.oq(s,r,q)}else if(self.setImmediate!=null)return A.yB() -return A.yC()}, -x_(a){self.scheduleImmediate(A.eI(new A.os(t.T.a(a)),0))}, -x0(a){self.setImmediate(A.eI(new A.ot(t.T.a(a)),0))}, -x1(a){t.T.a(a) -A.xl(0,a)}, -xl(a,b){var s=new A.oU() -s.jW(a,b) +new self.MutationObserver(A.eI(new A.ov(s),1)).observe(r,{childList:true}) +return new A.ou(s,r,q)}else if(self.setImmediate!=null)return A.yG() +return A.yH()}, +x4(a){self.scheduleImmediate(A.eI(new A.ow(t.U.a(a)),0))}, +x5(a){self.setImmediate(A.eI(new A.ox(t.U.a(a)),0))}, +x6(a){t.U.a(a) +A.xq(0,a)}, +xq(a,b){var s=new A.oY() +s.jX(a,b) return s}, -br(a){return new A.kv(new A.az($.am,a.h("az<0>")),a.h("kv<0>"))}, +br(a){return new A.kx(new A.aB($.an,a.h("aB<0>")),a.h("kx<0>"))}, bq(a,b){a.$2(0,null) b.b=!0 return b.a}, -c3(a,b){A.xL(a,b)}, -bp(a,b){b.eE(a)}, -bo(a,b){b.eF(A.bP(a),A.eJ(a))}, -xL(a,b){var s,r,q=new A.p5(b),p=new A.p6(b) -if(a instanceof A.az)a.hu(q,p,t.z) +c3(a,b){A.xQ(a,b)}, +bp(a,b){b.eF(a)}, +bo(a,b){b.eG(A.bP(a),A.eJ(a))}, +xQ(a,b){var s,r,q=new A.p9(b),p=new A.pa(b) +if(a instanceof A.aB)a.hv(q,p,t.z) else{s=t.z -if(a instanceof A.az)a.fd(q,p,s) -else{r=new A.az($.am,t.j_) +if(a instanceof A.aB)a.fe(q,p,s) +else{r=new A.aB($.an,t.j_) r.a=8 r.c=a -r.hu(q,p,s)}}}, +r.hv(q,p,s)}}}, bs(a){var s=function(b,c){return function(d,e){while(true){try{b(d,e) break}catch(r){e=r d=c}}}}(a,1) -return $.am.is(new A.pd(s),t.H,t.S,t.z)}, -pV(a){var s -if(t.fz.b(a)){s=a.gce() +return $.an.it(new A.ph(s),t.H,t.S,t.z)}, +q0(a){var s +if(t.fz.b(a)){s=a.gcf() if(s!=null)return s}return B.aV}, -y3(a,b){if($.am===B.a3)return null +y8(a,b){if($.an===B.a3)return null return null}, -y4(a,b){if($.am!==B.a3)A.y3(a,b) -if(b==null)if(t.fz.b(a)){b=a.gce() -if(b==null){A.rM(a,B.aV) +y9(a,b){if($.an!==B.a3)A.y8(a,b) +if(b==null)if(t.fz.b(a)){b=a.gcf() +if(b==null){A.rR(a,B.aV) b=B.aV}}else b=B.aV -else if(t.fz.b(a))A.rM(a,b) +else if(t.fz.b(a))A.rR(a,b) return new A.bG(a,b)}, -qu(a,b,c){var s,r,q,p,o={},n=o.a=a +qz(a,b,c){var s,r,q,p,o={},n=o.a=a for(s=t.j_;r=n.a,(r&4)!==0;n=a){a=s.a(n.c) -o.a=a}if(n===b){s=A.wJ() -b.e8(new A.bG(new A.bR(!0,n,null,"Cannot complete a future with itself"),s)) +o.a=a}if(n===b){s=A.wO() +b.e9(new A.bG(new A.bR(!0,n,null,"Cannot complete a future with itself"),s)) return}q=b.a&1 s=n.a=r|q if((s&24)===0){p=t.np.a(b.c) b.a=b.a&1|4 b.c=n -n.hl(p) +n.hm(p) return}if(!c)if(b.c==null)n=(s&16)===0||q!==0 else n=!1 else n=!0 @@ -1869,14 +1869,14 @@ if(n){p=b.dq() b.dg(o.a) A.ex(b,p) return}b.a^=2 -A.lv(null,null,b.b,t.T.a(new A.oE(o,b)))}, +A.ly(null,null,b.b,t.U.a(new A.oI(o,b)))}, ex(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d={},c=d.a=a -for(s=t.A,r=t.np;;){q={} +for(s=t.B,r=t.np;;){q={} p=c.a o=(p&16)===0 n=!o if(b==null){if(n&&(p&1)===0){m=s.a(c.c) -A.qJ(m.a,m.b)}return}q.a=b +A.qO(m.a,m.b)}return}q.a=b l=b.a for(c=b;l!=null;c=l,l=k){c.a=null A.ex(d.a,c) @@ -1891,16 +1891,16 @@ if(i){h=c.b.b if(n){p=p.b===h p=!(p||p)}else p=!1 if(p){s.a(j) -A.qJ(j.a,j.b) -return}g=$.am -if(g!==h)$.am=h +A.qO(j.a,j.b) +return}g=$.an +if(g!==h)$.an=h else g=null c=c.c -if((c&15)===8)new A.oI(q,d,n).$0() -else if(o){if((c&1)!==0)new A.oH(q,j).$0()}else if((c&2)!==0)new A.oG(d,q).$0() -if(g!=null)$.am=g +if((c&15)===8)new A.oM(q,d,n).$0() +else if(o){if((c&1)!==0)new A.oL(q,j).$0()}else if((c&2)!==0)new A.oK(d,q).$0() +if(g!=null)$.an=g c=q.c -if(c instanceof A.az){p=q.a.$ti +if(c instanceof A.aB){p=q.a.$ti p=p.h("cr<2>").b(c)||!p.y[1].b(c)}else p=!1 if(p){f=q.a.b if((c.a&24)!==0){e=r.a(f.c) @@ -1909,7 +1909,7 @@ b=f.dr(e) f.a=c.a&30|f.a&1 f.c=c.c d.a=c -continue}else A.qu(c,f,!0) +continue}else A.qz(c,f,!0) return}}f=q.a.b e=r.a(f.c) f.c=null @@ -1922,177 +1922,177 @@ f.c=p}else{s.a(p) f.a=f.a&1|16 f.c=p}d.a=f c=f}}, -ym(a,b){var s -if(t.ng.b(a))return b.is(a,t.z,t.K,t.E) +yr(a,b){var s +if(t.ng.b(a))return b.it(a,t.z,t.K,t.F) s=t.mq if(s.b(a))return s.a(a) -throw A.f(A.pU(a,"onError",u.w))}, -yk(){var s,r +throw A.f(A.q_(a,"onError",u.w))}, +yp(){var s,r for(s=$.eF;s!=null;s=$.eF){$.hE=null r=s.b $.eF=r if(r==null)$.hD=null s.a.$0()}}, -yt(){$.qH=!0 -try{A.yk()}finally{$.hE=null -$.qH=!1 -if($.eF!=null)$.r0().$1(A.uc())}}, -u7(a){var s=new A.kw(a),r=$.hD +yy(){$.qM=!0 +try{A.yp()}finally{$.hE=null +$.qM=!1 +if($.eF!=null)$.r5().$1(A.uh())}}, +uc(a){var s=new A.ky(a),r=$.hD if(r==null){$.eF=$.hD=s -if(!$.qH)$.r0().$1(A.uc())}else $.hD=r.b=s}, -yp(a){var s,r,q,p=$.eF -if(p==null){A.u7(a) +if(!$.qM)$.r5().$1(A.uh())}else $.hD=r.b=s}, +yu(a){var s,r,q,p=$.eF +if(p==null){A.uc(a) $.hE=$.hD -return}s=new A.kw(a) +return}s=new A.ky(a) r=$.hE if(r==null){s.b=p $.eF=$.hE=s}else{q=r.b s.b=q $.hE=r.b=s if(q==null)$.hD=s}}, -zL(a,b){A.dO(a,"stream",t.K) -return new A.kQ(b.h("kQ<0>"))}, -qJ(a,b){A.yp(new A.pb(a,b))}, -u4(a,b,c,d,e){var s,r=$.am +zQ(a,b){A.dP(a,"stream",t.K) +return new A.kT(b.h("kT<0>"))}, +qO(a,b){A.yu(new A.pf(a,b))}, +u9(a,b,c,d,e){var s,r=$.an if(r===c)return d.$0() -$.am=c +$.an=c s=r try{r=d.$0() -return r}finally{$.am=s}}, -yo(a,b,c,d,e,f,g){var s,r=$.am +return r}finally{$.an=s}}, +yt(a,b,c,d,e,f,g){var s,r=$.an if(r===c)return d.$1(e) -$.am=c +$.an=c s=r try{r=d.$1(e) -return r}finally{$.am=s}}, -yn(a,b,c,d,e,f,g,h,i){var s,r=$.am +return r}finally{$.an=s}}, +ys(a,b,c,d,e,f,g,h,i){var s,r=$.an if(r===c)return d.$2(e,f) -$.am=c +$.an=c s=r try{r=d.$2(e,f) -return r}finally{$.am=s}}, -lv(a,b,c,d){t.T.a(d) -if(B.a3!==c){d=c.lN(d) -d=d}A.u7(d)}, -or:function or(a){this.a=a}, -oq:function oq(a,b,c){this.a=a +return r}finally{$.an=s}}, +ly(a,b,c,d){t.U.a(d) +if(B.a3!==c){d=c.lO(d) +d=d}A.uc(d)}, +ov:function ov(a){this.a=a}, +ou:function ou(a,b,c){this.a=a this.b=b this.c=c}, -os:function os(a){this.a=a}, -ot:function ot(a){this.a=a}, -oU:function oU(){}, -oV:function oV(a,b){this.a=a +ow:function ow(a){this.a=a}, +ox:function ox(a){this.a=a}, +oY:function oY(){}, +oZ:function oZ(a,b){this.a=a this.b=b}, -kv:function kv(a,b){this.a=a +kx:function kx(a,b){this.a=a this.b=!1 this.$ti=b}, -p5:function p5(a){this.a=a}, -p6:function p6(a){this.a=a}, -pd:function pd(a){this.a=a}, +p9:function p9(a){this.a=a}, +pa:function pa(a){this.a=a}, +ph:function ph(a){this.a=a}, bG:function bG(a,b){this.a=a this.b=b}, -kA:function kA(){}, +kC:function kC(){}, h8:function h8(a,b){this.a=a this.$ti=b}, -dI:function dI(a,b,c,d,e){var _=this +dJ:function dJ(a,b,c,d,e){var _=this _.a=null _.b=a _.c=b _.d=c _.e=d _.$ti=e}, -az:function az(a,b){var _=this +aB:function aB(a,b){var _=this _.a=0 _.b=a _.c=null _.$ti=b}, -oB:function oB(a,b){this.a=a -this.b=b}, oF:function oF(a,b){this.a=a this.b=b}, -oE:function oE(a,b){this.a=a +oJ:function oJ(a,b){this.a=a +this.b=b}, +oI:function oI(a,b){this.a=a this.b=b}, -oD:function oD(a,b){this.a=a +oH:function oH(a,b){this.a=a this.b=b}, -oC:function oC(a,b){this.a=a +oG:function oG(a,b){this.a=a this.b=b}, -oI:function oI(a,b,c){this.a=a +oM:function oM(a,b,c){this.a=a this.b=b this.c=c}, -oJ:function oJ(a,b){this.a=a +oN:function oN(a,b){this.a=a this.b=b}, -oK:function oK(a){this.a=a}, -oH:function oH(a,b){this.a=a +oO:function oO(a){this.a=a}, +oL:function oL(a,b){this.a=a this.b=b}, -oG:function oG(a,b){this.a=a +oK:function oK(a,b){this.a=a this.b=b}, -kw:function kw(a){this.a=a +ky:function ky(a){this.a=a this.b=null}, -kQ:function kQ(a){this.$ti=a}, +kT:function kT(a){this.$ti=a}, hz:function hz(){}, -kP:function kP(){}, -oT:function oT(a,b){this.a=a +kS:function kS(){}, +oX:function oX(a,b){this.a=a this.b=b}, -pb:function pb(a,b){this.a=a +pf:function pf(a,b){this.a=a this.b=b}, -rm(a,b,c,d,e){if(c==null)if(b==null){if(a==null)return new A.cJ(d.h("@<0>").v(e).h("cJ<1,2>")) -b=A.ug()}else{if(A.yP()===b&&A.yO()===a)return new A.dJ(d.h("@<0>").v(e).h("dJ<1,2>")) -if(a==null)a=A.uf()}else{if(b==null)b=A.ug() -if(a==null)a=A.uf()}return A.x7(a,b,c,d,e)}, -to(a,b){var s=a[b] +rr(a,b,c,d,e){if(c==null)if(b==null){if(a==null)return new A.cJ(d.h("@<0>").u(e).h("cJ<1,2>")) +b=A.ul()}else{if(A.yU()===b&&A.yT()===a)return new A.dK(d.h("@<0>").u(e).h("dK<1,2>")) +if(a==null)a=A.uk()}else{if(b==null)b=A.ul() +if(a==null)a=A.uk()}return A.xc(a,b,c,d,e)}, +tt(a,b){var s=a[b] return s===a?null:s}, -qw(a,b,c){if(c==null)a[b]=a +qB(a,b,c){if(c==null)a[b]=a else a[b]=c}, -qv(){var s=Object.create(null) -A.qw(s,"",s) +qA(){var s=Object.create(null) +A.qB(s,"",s) delete s[""] return s}, -x7(a,b,c,d,e){var s=c!=null?c:new A.oz(d) -return new A.ha(a,b,s,d.h("@<0>").v(e).h("ha<1,2>"))}, -ac(a,b){return new A.bx(a.h("@<0>").v(b).h("bx<1,2>"))}, -v(a,b,c){return b.h("@<0>").v(c).h("mH<1,2>").a(A.un(a,new A.bx(b.h("@<0>").v(c).h("bx<1,2>"))))}, -aC(a,b){return new A.bx(a.h("@<0>").v(b).h("bx<1,2>"))}, -vY(a){return new A.cL(a.h("cL<0>"))}, -j2(a){return new A.cL(a.h("cL<0>"))}, -vZ(a,b){return b.h("rw<0>").a(A.z0(a,new A.cL(b.h("cL<0>"))))}, -qx(){var s=Object.create(null) +xc(a,b,c,d,e){var s=c!=null?c:new A.oD(d) +return new A.ha(a,b,s,d.h("@<0>").u(e).h("ha<1,2>"))}, +ae(a,b){return new A.bx(a.h("@<0>").u(b).h("bx<1,2>"))}, +v(a,b,c){return b.h("@<0>").u(c).h("mL<1,2>").a(A.us(a,new A.bx(b.h("@<0>").u(c).h("bx<1,2>"))))}, +az(a,b){return new A.bx(a.h("@<0>").u(b).h("bx<1,2>"))}, +w2(a){return new A.cL(a.h("cL<0>"))}, +j3(a){return new A.cL(a.h("cL<0>"))}, +w3(a,b){return b.h("rB<0>").a(A.z5(a,new A.cL(b.h("cL<0>"))))}, +qC(){var s=Object.create(null) s[""]=s delete s[""] return s}, -tq(a,b,c){var s=new A.dK(a,b,c.h("dK<0>")) +tv(a,b,c){var s=new A.dL(a,b,c.h("dL<0>")) s.c=a.e return s}, -xQ(a,b){return J.M(a,b)}, -xR(a){return J.A(a)}, -vQ(a,b){var s,r=a.$ti,q=new A.dt(J.as(a.a),a.b,r.h("dt<1,2>")) +xV(a,b){return J.N(a,b)}, +xW(a){return J.B(a)}, +vV(a,b){var s,r=a.$ti,q=new A.du(J.at(a.a),a.b,r.h("du<1,2>")) if(q.p()){s=q.a return s==null?r.y[1].a(s):s}return null}, -j1(a,b,c){var s=A.ac(b,c) -a.X(0,new A.mJ(s,b,c)) +j2(a,b,c){var s=A.ae(b,c) +a.T(0,new A.mN(s,b,c)) return s}, -vX(a,b,c){var s=A.ac(b,c) +w1(a,b,c){var s=A.ae(b,c) s.a1(0,a) return s}, -w_(a,b){var s=t.bP -return J.r3(s.a(a),s.a(b))}, -q3(a){var s,r -if(A.qS(a))return"{...}" -s=new A.W("") +w4(a,b){var s=t.bP +return J.r8(s.a(a),s.a(b))}, +q9(a){var s,r +if(A.qX(a))return"{...}" +s=new A.Y("") try{r={} B.a.l($.bF,a) s.a+="{" r.a=!0 -a.X(0,new A.mK(r,s)) +a.T(0,new A.mO(r,s)) s.a+="}"}finally{if(0>=$.bF.length)return A.c($.bF,-1) $.bF.pop()}r=s.a return r.charCodeAt(0)==0?r:r}, -q1(a){return new A.fp(A.aD(A.w0(null),null,!1,a.h("0?")),a.h("fp<0>"))}, -w0(a){return 8}, +q7(a){return new A.fp(A.aE(A.w5(null),null,!1,a.h("0?")),a.h("fp<0>"))}, +w5(a){return 8}, cJ:function cJ(a){var _=this _.a=0 _.e=_.d=_.c=_.b=null _.$ti=a}, -dJ:function dJ(a){var _=this +dK:function dK(a){var _=this _.a=0 _.e=_.d=_.c=_.b=null _.$ti=a}, @@ -2103,7 +2103,7 @@ _.w=c _.a=0 _.e=_.d=_.c=_.b=null _.$ti=d}, -oz:function oz(a){this.a=a}, +oD:function oD(a){this.a=a}, hc:function hc(a,b){this.a=a this.$ti=b}, hd:function hd(a,b,c){var _=this @@ -2117,25 +2117,25 @@ _.a=0 _.f=_.e=_.d=_.c=_.b=null _.r=0 _.$ti=a}, -kM:function kM(a){this.a=a +kP:function kP(a){this.a=a this.b=null}, -dK:function dK(a,b,c){var _=this +dL:function dL(a,b,c){var _=this _.a=a _.b=b _.d=_.c=null _.$ti=c}, cE:function cE(a,b){this.a=a this.$ti=b}, -mJ:function mJ(a,b,c){this.a=a +mN:function mN(a,b,c){this.a=a this.b=b this.c=c}, -D:function D(){}, -a8:function a8(){}, -mK:function mK(a,b){this.a=a +C:function C(){}, +a9:function a9(){}, +mO:function mO(a,b){this.a=a this.b=b}, hv:function hv(){}, ea:function ea(){}, -dF:function dF(a,b){this.a=a +dG:function dG(a,b){this.a=a this.$ti=b}, fp:function fp(a,b){var _=this _.a=a @@ -2151,24 +2151,24 @@ _.$ti=e}, aY:function aY(){}, hp:function hp(){}, eC:function eC(){}, -xE(a,b,c){var s,r,q,p,o=c-b -if(o<=4096)s=$.v4() +xJ(a,b,c){var s,r,q,p,o=c-b +if(o<=4096)s=$.v9() else s=new Uint8Array(o) -for(r=J.ab(a),q=0;q>>2,h=3-(a0&3) -for(s=J.ab(b),r=a.length,q=f.$flags|0,p=c,o=0;p>>2,h=3-(a0&3) +for(s=J.ad(b),r=a.length,q=f.$flags|0,p=c,o=0;p>>0 i=(i<<8|n)&16777215;--h if(h===0){m=g+1 @@ -2226,16 +2226,16 @@ if(!(s>>0}for(p=c;p255)break;++p}throw A.f(A.pU(b,"Not a byte value at index "+p+": 0x"+B.f.d6(s.n(b,p),16),null))}, -ru(a,b,c){return new A.fl(a,b)}, -xS(a){return a.oD()}, -xc(a,b){return new A.oN(a,[],A.yM())}, -xd(a,b,c){var s,r=new A.W(""),q=A.xc(r,b) -q.dX(a) +f[g]=61}return 0}return(i<<2|3-h)>>>0}for(p=c;p255)break;++p}throw A.f(A.q_(b,"Not a byte value at index "+p+": 0x"+B.f.d6(s.m(b,p),16),null))}, +rz(a,b,c){return new A.fl(a,b)}, +xX(a){return a.oD()}, +xh(a,b){return new A.oR(a,[],A.yR())}, +xi(a,b,c){var s,r=new A.Y(""),q=A.xh(r,b) +q.dY(a) s=r.a return s.charCodeAt(0)==0?s:s}, -xF(a){switch(a){case 65:return"Missing extension byte" +xK(a){switch(a){case 65:return"Missing extension byte" case 67:return"Unexpected extension byte" case 69:return"Invalid UTF-8 byte" case 71:return"Overlong encoding" @@ -2243,42 +2243,42 @@ case 73:return"Out of unicode range" case 75:return"Encoded surrogate" case 77:return"Unfinished UTF-8 octet sequence" default:return""}}, -p_:function p_(){}, -oZ:function oZ(){}, +p3:function p3(){}, +p2:function p2(){}, hS:function hS(){}, -kV:function kV(){}, +kY:function kY(){}, hT:function hT(a,b){this.a=a this.b=b}, eL:function eL(){}, hX:function hX(){}, -ou:function ou(a){this.a=0 +oy:function oy(a){this.a=0 this.b=a}, bt:function bt(){}, cl:function cl(){}, ic:function ic(){}, fl:function fl(a,b){this.a=a this.b=b}, -iY:function iY(a,b){this.a=a +iZ:function iZ(a,b){this.a=a this.b=b}, -iX:function iX(){}, -iZ:function iZ(a){this.b=a}, -oO:function oO(){}, -oP:function oP(a,b){this.a=a +iY:function iY(){}, +j_:function j_(a){this.b=a}, +oS:function oS(){}, +oT:function oT(a,b){this.a=a this.b=b}, -oN:function oN(a,b,c){this.c=a +oR:function oR(a,b,c){this.c=a this.a=b this.b=c}, -k2:function k2(){}, -k3:function k3(a){this.a=a}, -kW:function kW(a){this.a=a +k4:function k4(){}, +k5:function k5(a){this.a=a}, +kZ:function kZ(a){this.a=a this.b=16 this.c=0}, -b0(a,b){var s,r=b.length +b1(a,b){var s,r=b.length for(;;){if(a>0){s=a-1 if(!(s=0&&q>>0)+(s[6]>>>4)-1075 @@ -2324,11 +2324,11 @@ o[0]=(s[1]<<8>>>0)+s[0] o[1]=(s[3]<<8>>>0)+s[2] o[2]=(s[5]<<8>>>0)+s[4] o[3]=s[6]&15|16 -n=new A.ap(!1,o,4) -if(p<0)m=n.e4(0,-p) +n=new A.aq(!1,o,4) +if(p<0)m=n.e5(0,-p) else m=p>0?n.aW(0,p):n return m}, -qr(a,b,c,d){var s,r,q,p,o +qw(a,b,c,d){var s,r,q,p,o if(b===0)return 0 if(c===0&&d===a)return b for(s=b-1,r=a.length,q=d.$flags|0;s>=0;--s){p=s+c @@ -2339,7 +2339,7 @@ if(!(p>=0&&p=0;--s){q&2&&A.t(d) if(!(s=0;--s){if(!(s>>0 p=B.f.aW(o&i,k)}q&2&&A.t(d) if(!(l>=0&&l=0;){r&2&&A.t(d) if(!(q=0&&r=0&&m>>0 s=B.f.cI(n,l)}q&2&&A.t(d) if(!(r>=0&&r=0;--s){if(!(s>>16}q&2&&A.t(e) if(!(b>=0&&b=0;e=l,c=o){o=c+1 if(!(c=0&&c=0&&r>>0,a) +q=B.f.fL((s<<16|b[r])>>>0,a) if(q>65535)return 65535 return q}, -z6(a){return A.ly(a)}, -lx(a,b){var s=A.qa(a,b) +zb(a){return A.lB(a)}, +lA(a,b){var s=A.jD(a,b) if(s!=null)return s -throw A.f(A.aB(a,null,null))}, -yV(a){var s=A.q9(a) +throw A.f(A.aD(a,null,null))}, +z_(a){var s=A.qf(a) if(s!=null)return s -throw A.f(A.aB("Invalid double",a,null))}, -vF(a,b){a=A.aq(a,new Error()) +throw A.f(A.aD("Invalid double",a,null))}, +vK(a,b){a=A.ar(a,new Error()) if(a==null)a=A.cg(a) a.stack=b.j(0) throw a}, -aD(a,b,c,d){var s,r=c?J.vS(a,d):J.pX(a,d) +aE(a,b,c,d){var s,r=c?J.vX(a,d):J.q2(a,d) if(a!==0&&b!=null)for(s=0;s")) -for(s=J.as(a);s.p();)B.a.l(r,c.a(s.gB())) +q8(a,b,c){var s,r=A.i([],c.h("y<0>")) +for(s=J.at(a);s.p();)B.a.l(r,c.a(s.gB())) if(b)return r r.$flags=1 return r}, -aV(a,b){var s,r +a7(a,b){var s,r if(Array.isArray(a))return A.i(a.slice(0),b.h("y<0>")) s=A.i([],b.h("y<0>")) -for(r=J.as(a);r.p();)B.a.l(s,r.gB()) +for(r=J.at(a);r.p();)B.a.l(s,r.gB()) return s}, -rx(a,b){var s=A.q2(a,!1,b) +rC(a,b){var s=A.q8(a,!1,b) s.$flags=3 return s}, -ay(a,b,c){var s,r,q,p,o -A.aE(b,"start") +aA(a,b,c){var s,r,q,p,o +A.aF(b,"start") s=c==null r=!s if(r){q=c-b -if(q<0)throw A.f(A.ad(c,b,null,"end",null)) +if(q<0)throw A.f(A.af(c,b,null,"end",null)) if(q===0)return""}if(Array.isArray(a)){p=a o=p.length if(s)c=o -return A.rL(b>0||c0)a=J.lC(a,b) -s=A.aV(a,t.S) -return A.rL(s)}, -wL(a,b,c){var s=a.length +return A.rQ(b>0||c0)a=J.lF(a,b) +s=A.a7(a,t.S) +return A.rQ(s)}, +wQ(a,b,c){var s=a.length if(b>=s)return"" -return A.wB(a,b,c==null||c>s?s:c)}, -a4(a,b){return new A.cV(a,A.pY(a,!1,b,!1,!1,""))}, -z5(a,b){return a==null?b==null:a===b}, -qe(a,b,c){var s=J.as(b) +return A.wG(a,b,c==null||c>s?s:c)}, +a5(a,b){return new A.cV(a,A.q3(a,!1,b,!1,!1,""))}, +za(a,b){return a==null?b==null:a===b}, +qj(a,b,c){var s=J.at(b) if(!s.p())return a if(c.length===0){do a+=A.k(s.gB()) while(s.p())}else{a+=A.k(s.gB()) while(s.p())a=a+c+A.k(s.gB())}return a}, -n2(a,b){return new A.jg(a,b.gns(),b.gnI(),b.gny())}, -qk(){var s,r,q=A.wr() -if(q==null)throw A.f(A.aj("'Uri.base' is not supported")) -s=$.t2 -if(s!=null&&q===$.t1)return s -r=A.nP(q,0,null) -$.t2=r -$.t1=q +n6(a,b){return new A.jh(a,b.gnt(),b.gnJ(),b.gnz())}, +qp(){var s,r,q=A.ww() +if(q==null)throw A.f(A.ac("'Uri.base' is not supported")) +s=$.t7 +if(s!=null&&q===$.t6)return s +r=A.nT(q,0,null) +$.t7=r +$.t6=q return r}, -wJ(){return A.eJ(new Error())}, -vC(a){var s=Math.abs(a),r=a<0?"-":"" +wO(){return A.eJ(new Error())}, +vH(a){var s=Math.abs(a),r=a<0?"-":"" if(s>=1000)return""+a if(s>=100)return r+"0"+s if(s>=10)return r+"00"+s return r+"000"+s}, -ri(a){if(a>=100)return""+a +rn(a){if(a>=100)return""+a if(a>=10)return"0"+a return"00"+a}, i8(a){if(a>=10)return""+a return"0"+a}, -dl(a){if(typeof a=="number"||A.qG(a)||a==null)return J.ax(a) +dm(a){if(typeof a=="number"||A.qL(a)||a==null)return J.ay(a) if(typeof a=="string")return JSON.stringify(a) -return A.rK(a)}, -vG(a,b){A.dO(a,"error",t.K) -A.dO(b,"stackTrace",t.E) -A.vF(a,b)}, +return A.rP(a)}, +vL(a,b){A.dP(a,"error",t.K) +A.dP(b,"stackTrace",t.F) +A.vK(a,b)}, hV(a){return new A.hU(a)}, -U(a,b){return new A.bR(!1,null,b,a)}, -pU(a,b,c){return new A.bR(!0,a,b,c)}, +W(a,b){return new A.bR(!1,null,b,a)}, +q_(a,b,c){return new A.bR(!0,a,b,c)}, hR(a,b,c){return a}, -aP(a){var s=null +aQ(a){var s=null return new A.ef(s,s,!1,s,s,a)}, -nq(a,b){return new A.ef(null,null,!0,a,b,"Value not in range")}, -ad(a,b,c,d,e){return new A.ef(b,c,!0,a,d,"Invalid value")}, -rN(a,b,c,d){if(ac)throw A.f(A.ad(a,b,c,d,null)) +nu(a,b){return new A.ef(null,null,!0,a,b,"Value not in range")}, +af(a,b,c,d,e){return new A.ef(b,c,!0,a,d,"Invalid value")}, +rS(a,b,c,d){if(ac)throw A.f(A.af(a,b,c,d,null)) return a}, -cw(a,b,c){if(0>a||a>c)throw A.f(A.ad(a,0,c,"start",null)) -if(b!=null){if(a>b||b>c)throw A.f(A.ad(b,a,c,"end",null)) +cw(a,b,c){if(0>a||a>c)throw A.f(A.af(a,0,c,"start",null)) +if(b!=null){if(a>b||b>c)throw A.f(A.af(b,a,c,"end",null)) return b}return c}, -aE(a,b){if(a<0)throw A.f(A.ad(a,0,null,b,null)) +aF(a,b){if(a<0)throw A.f(A.af(a,0,null,b,null)) return a}, -vM(a,b,c,d,e){var s=e==null?b.gm(b):e +vR(a,b,c,d,e){var s=e==null?b.gn(b):e return new A.fh(s,!0,a,c,"Index out of range")}, -iL(a,b,c,d,e){return new A.fh(b,!0,a,e,"Index out of range")}, -vN(a,b,c,d,e){if(0>a||a>=b)throw A.f(A.iL(a,b,c,d,"index")) +iM(a,b,c,d,e){return new A.fh(b,!0,a,e,"Index out of range")}, +vS(a,b,c,d,e){if(0>a||a>=b)throw A.f(A.iM(a,b,c,d,"index")) return a}, -aj(a){return new A.fX(a)}, -jY(a){return new A.fW(a)}, -ce(a){return new A.dC(a)}, -ag(a){return new A.i7(a)}, -P(a){return new A.kK(a)}, -aB(a,b,c){return new A.aA(a,b,c)}, -vR(a,b,c){var s,r -if(A.qS(a)){if(b==="("&&c===")")return"(...)" +ac(a){return new A.fX(a)}, +k_(a){return new A.fW(a)}, +ce(a){return new A.dD(a)}, +ai(a){return new A.i7(a)}, +S(a){return new A.kM(a)}, +aD(a,b,c){return new A.aC(a,b,c)}, +vW(a,b,c){var s,r +if(A.qX(a)){if(b==="("&&c===")")return"(...)" return b+"..."+c}s=A.i([],t.s) B.a.l($.bF,a) -try{A.yi(a,s)}finally{if(0>=$.bF.length)return A.c($.bF,-1) -$.bF.pop()}r=A.qe(b,t.e7.a(s),", ")+c +try{A.yn(a,s)}finally{if(0>=$.bF.length)return A.c($.bF,-1) +$.bF.pop()}r=A.qj(b,t.e7.a(s),", ")+c return r.charCodeAt(0)==0?r:r}, -iS(a,b,c){var s,r -if(A.qS(a))return b+"..."+c -s=new A.W(b) +iT(a,b,c){var s,r +if(A.qX(a))return b+"..."+c +s=new A.Y(b) B.a.l($.bF,a) try{r=s -r.a=A.qe(r.a,a,", ")}finally{if(0>=$.bF.length)return A.c($.bF,-1) +r.a=A.qj(r.a,a,", ")}finally{if(0>=$.bF.length)return A.c($.bF,-1) $.bF.pop()}s.a+=c r=s.a return r.charCodeAt(0)==0?r:r}, -yi(a,b){var s,r,q,p,o,n,m,l=a.gF(a),k=0,j=0 +yn(a,b){var s,r,q,p,o,n,m,l=a.gF(a),k=0,j=0 for(;;){if(!(k<80||j<3))break if(!l.p())return s=A.k(l.gB()) @@ -2584,24 +2584,24 @@ if(m==null){k+=5 m="..."}}if(m!=null)B.a.l(b,m) B.a.l(b,q) B.a.l(b,r)}, -ry(a,b,c,d,e){return new A.de(a,b.h("@<0>").v(c).v(d).v(e).h("de<1,2,3,4>"))}, +rD(a,b,c,d,e){return new A.df(a,b.h("@<0>").u(c).u(d).u(e).h("df<1,2,3,4>"))}, aX(a,b,c,d){var s -if(B.u===c){s=J.A(a) -b=J.A(b) -return A.nJ(A.cz(A.cz($.lA(),s),b))}if(B.u===d){s=J.A(a) -b=J.A(b) -c=J.A(c) -return A.nJ(A.cz(A.cz(A.cz($.lA(),s),b),c))}s=J.A(a) -b=J.A(b) -c=J.A(c) -d=J.A(d) -d=A.nJ(A.cz(A.cz(A.cz(A.cz($.lA(),s),b),c),d)) +if(B.u===c){s=J.B(a) +b=J.B(b) +return A.nN(A.cz(A.cz($.lD(),s),b))}if(B.u===d){s=J.B(a) +b=J.B(b) +c=J.B(c) +return A.nN(A.cz(A.cz(A.cz($.lD(),s),b),c))}s=J.B(a) +b=J.B(b) +c=J.B(c) +d=J.B(d) +d=A.nN(A.cz(A.cz(A.cz(A.cz($.lD(),s),b),c),d)) return d}, -wf(a){var s,r,q=$.lA() -for(s=a.length,r=0;r=s){r=a7+4 @@ -2614,8 +2614,8 @@ if(!(p>>0 -if(n===0)return A.t0(a7>0||a80||a8=14)B.a.k(m,7,a8) +if(A.ub(a6,a7,a8,0,m)>=14)B.a.k(m,7,a8) l=m[1] -if(l>=a7)if(A.u6(a6,a7,l,20,m)===20)m[7]=l +if(l>=a7)if(A.ub(a6,a7,l,20,m)===20)m[7]=l k=m[2]+1 j=m[3] i=m[4] @@ -2705,33 +2705,33 @@ k-=a7 j-=a7 i-=a7 h-=a7 -g-=a7}return new A.bN(a6,l,k,j,i,h,g,e)}if(e==null)if(l>a7)e=A.qB(a6,a7,l) +g-=a7}return new A.bN(a6,l,k,j,i,h,g,e)}if(e==null)if(l>a7)e=A.qG(a6,a7,l) else{if(l===a7)A.eD(a6,a7,"Invalid empty scheme") e=""}b=a5 if(k>a7){a=l+3 -a0=a=c)n=0 else{if(!(q>=0&&q=0&&b=0&&r=97&&o<=102)continue -if(p===46){if(q-1===b)return new A.aA(n,a,q) +if(p===46){if(q-1===b)return new A.aC(n,a,q) r=q -break}return new A.aA("Unexpected character",a,q-1)}if(r-1===b)return new A.aA(n,a,r) -return new A.aA("Missing '.' in IPvFuture address",a,r)}if(r===c)return new A.aA("Missing address in IPvFuture address, host, cursor",null,null) +break}return new A.aC("Unexpected character",a,q-1)}if(r-1===b)return new A.aC(n,a,r) +return new A.aC("Missing '.' in IPvFuture address",a,r)}if(r===c)return new A.aC("Missing address in IPvFuture address, host, cursor",null,null) for(;;){if(!(r>=0&&r=97&&f<=102)g=f-87 else break A k=h}if(nm){if(j===46){if(k){if(p<=6){A.wP(a3,m,a5,s,p*2) +continue}a2.$2("an IPv6 part can contain a maximum of 4 hex digits",m)}if(n>m){if(j===46){if(k){if(p<=6){A.wU(a3,m,a5,s,p*2) p+=2 n=a5 break}a2.$2(a1,m)}break}o=p*2 @@ -2815,20 +2815,20 @@ c=q+1 b=p-c if(b>0){a=c*2 a0=16-b*2 -B.k.ba(s,a0,16,s,a) -B.k.c4(s,a,a0,0)}}return s}, +B.k.bb(s,a0,16,s,a) +B.k.c5(s,a,a0,0)}}return s}, hx(a,b,c,d,e,f,g){return new A.hw(a,b,c,d,e,f,g)}, -tC(a){if(a==="http")return 80 +tH(a){if(a==="http")return 80 if(a==="https")return 443 return 0}, -eD(a,b,c){throw A.f(A.aB(c,a,b))}, -xx(a,b){var s,r,q +eD(a,b,c){throw A.f(A.aD(c,a,b))}, +xC(a,b){var s,r,q for(s=a.length,r=0;r=b&&o=b&&s=0&&r=o){if(h==null)h=new A.W("") +p=!0}else if(o<127&&(u.S.charCodeAt(o)&1)!==0){if(p&&65<=o&&90>=o){if(h==null)h=new A.Y("") if(q=0&&r=n){if(p==null)p=new A.W("") +o=!0}else if(n<127&&(g.charCodeAt(n)&32)!==0){if(o&&65<=n&&90>=n){if(p==null)p=new A.Y("") if(q=k)return"%" s=b+1 if(!(s>=0&&s=0))return A.c(a,l) q=a.charCodeAt(l) -p=A.py(r) -o=A.py(q) +p=A.pE(r) +o=A.pE(q) if(p<0||o<0)return"%" n=p*16+o if(n<127){if(!(n>=0))return A.c(m,n) l=(m.charCodeAt(n)&1)!==0}else l=!1 -if(l)return A.a3(c&&65<=n&&90>=n?(n|32)>>>0:n) +if(l)return A.a4(c&&65<=n&&90>=n?(n|32)>>>0:n) if(r>=97||q>=97)return B.b.t(a,b,b+3).toUpperCase() return null}, -qA(a){var s,r,q,p,o,n,m,l,k="0123456789ABCDEF" +qF(a){var s,r,q,p,o,n,m,l,k="0123456789ABCDEF" if(a<=127){s=new Uint8Array(3) s[0]=37 r=a>>>4 @@ -2988,15 +2988,15 @@ s[m]=k.charCodeAt(l) l=o+2 if(!(l=0&&q=s.length)return A.c(s,-1) @@ -3037,23 +3037,23 @@ p=!0}else{p="."===n if(!p)B.a.l(s,n.length===0&&s.length===0?"./":n)}}if(s.length===0)return"./" if(p)B.a.l(s,"") if(!b){if(0>=s.length)return A.c(s,0) -B.a.k(s,0,A.tD(s[0]))}return B.a.aq(s,"/")}, -tD(a){var s,r,q,p=u.S,o=a.length -if(o>=2&&A.tE(a.charCodeAt(0)))for(s=1;s=2&&A.tJ(a.charCodeAt(0)))for(s=1;s127)throw A.f(A.U("Illegal percent encoding in URI",null)) -if(r===37){if(n+3>o)throw A.f(A.U("Truncated URI",null)) -B.a.l(p,A.xz(a,n+1)) +if(r>127)throw A.f(A.W("Illegal percent encoding in URI",null)) +if(r===37){if(n+3>o)throw A.f(A.W("Truncated URI",null)) +B.a.l(p,A.xE(a,n+1)) n+=2}else B.a.l(p,r)}}return d.b0(p)}, -tE(a){var s=a|32 +tJ(a){var s=a|32 return 97<=s&&s<=122}, -t0(a,b,c){var s,r,q,p,o,n,m,l,k="Invalid MIME type",j=A.i([b-1],t.Z) +t5(a,b,c){var s,r,q,p,o,n,m,l,k="Invalid MIME type",j=A.i([b-1],t.Z) for(s=a.length,r=b,q=-1,p=null;rb)throw A.f(A.aB(k,a,r)) +continue}throw A.f(A.aD(k,a,r))}}if(q<0&&r>b)throw A.f(A.aD(k,a,r)) while(p!==44){B.a.l(j,r);++r for(o=-1;r=0))return A.c(a,r) p=a.charCodeAt(r) if(p===61){if(o<0)o=r}else if(p===59||p===44)break}if(o>=0)B.a.l(j,o) else{n=B.a.gA(j) -if(p!==44||r!==n+7||!B.b.aa(a,"base64",n+1))throw A.f(A.aB("Expecting '='",a,r)) +if(p!==44||r!==n+7||!B.b.aa(a,"base64",n+1))throw A.f(A.aD("Expecting '='",a,r)) break}}B.a.l(j,r) m=r+1 -if((j.length&1)===1)a=B.cJ.nz(a,m,s) -else{l=A.tL(a,m,s,256,!0,!1) -if(l!=null)a=B.b.bR(a,m,s,l)}return new A.nO(a,j,c)}, -u6(a,b,c,d,e){var s,r,q,p,o,n='\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe1\xe1\x01\xe1\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe3\xe1\xe1\x01\xe1\x01\xe1\xcd\x01\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x0e\x03\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01"\x01\xe1\x01\xe1\xac\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe1\xe1\x01\xe1\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xea\xe1\xe1\x01\xe1\x01\xe1\xcd\x01\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\n\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01"\x01\xe1\x01\xe1\xac\xeb\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\xeb\xeb\xeb\x8b\xeb\xeb\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\xeb\x83\xeb\xeb\x8b\xeb\x8b\xeb\xcd\x8b\xeb\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x92\x83\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\xeb\x8b\xeb\x8b\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xebD\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\x12D\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xe5\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\xe5\xe5\xe5\x05\xe5D\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe8\x8a\xe5\xe5\x05\xe5\x05\xe5\xcd\x05\xe5\x05\x05\x05\x05\x05\x05\x05\x05\x05\x8a\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05f\x05\xe5\x05\xe5\xac\xe5\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\xe5\xe5\xe5\x05\xe5D\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\x8a\xe5\xe5\x05\xe5\x05\xe5\xcd\x05\xe5\x05\x05\x05\x05\x05\x05\x05\x05\x05\x8a\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05f\x05\xe5\x05\xe5\xac\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7D\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\x8a\xe7\xe7\xe7\xe7\xe7\xe7\xcd\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\x8a\xe7\x07\x07\x07\x07\x07\x07\x07\x07\x07\xe7\xe7\xe7\xe7\xe7\xac\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7D\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\x8a\xe7\xe7\xe7\xe7\xe7\xe7\xcd\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\x8a\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\xe7\xe7\xe7\xe7\xe7\xac\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\x05\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\x10\xea\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\x12\n\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\v\n\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xec\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\xec\xec\xec\f\xec\xec\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\xec\xec\xec\xec\f\xec\f\xec\xcd\f\xec\f\f\f\f\f\f\f\f\f\xec\f\f\f\f\f\f\f\f\f\f\xec\f\xec\f\xec\f\xed\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\xed\xed\xed\r\xed\xed\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\xed\xed\xed\xed\r\xed\r\xed\xed\r\xed\r\r\r\r\r\r\r\r\r\xed\r\r\r\r\r\r\r\r\r\r\xed\r\xed\r\xed\r\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe1\xe1\x01\xe1\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xea\xe1\xe1\x01\xe1\x01\xe1\xcd\x01\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x0f\xea\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01"\x01\xe1\x01\xe1\xac\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe1\xe1\x01\xe1\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe9\xe1\xe1\x01\xe1\x01\xe1\xcd\x01\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\t\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01"\x01\xe1\x01\xe1\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\x11\xea\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xe9\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\v\t\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\x13\xea\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\v\xea\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xf5\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\x15\xf5\x15\x15\xf5\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\xf5\xf5\xf5\xf5\xf5\xf5' +if((j.length&1)===1)a=B.cJ.nA(a,m,s) +else{l=A.tQ(a,m,s,256,!0,!1) +if(l!=null)a=B.b.bR(a,m,s,l)}return new A.nS(a,j,c)}, +ub(a,b,c,d,e){var s,r,q,p,o,n='\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe1\xe1\x01\xe1\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe3\xe1\xe1\x01\xe1\x01\xe1\xcd\x01\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x0e\x03\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01"\x01\xe1\x01\xe1\xac\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe1\xe1\x01\xe1\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xea\xe1\xe1\x01\xe1\x01\xe1\xcd\x01\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\n\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01"\x01\xe1\x01\xe1\xac\xeb\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\xeb\xeb\xeb\x8b\xeb\xeb\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\xeb\x83\xeb\xeb\x8b\xeb\x8b\xeb\xcd\x8b\xeb\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x92\x83\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\x8b\xeb\x8b\xeb\x8b\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xebD\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\x12D\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xe5\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\xe5\xe5\xe5\x05\xe5D\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe8\x8a\xe5\xe5\x05\xe5\x05\xe5\xcd\x05\xe5\x05\x05\x05\x05\x05\x05\x05\x05\x05\x8a\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05f\x05\xe5\x05\xe5\xac\xe5\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\xe5\xe5\xe5\x05\xe5D\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\xe5\x8a\xe5\xe5\x05\xe5\x05\xe5\xcd\x05\xe5\x05\x05\x05\x05\x05\x05\x05\x05\x05\x8a\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05f\x05\xe5\x05\xe5\xac\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7D\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\x8a\xe7\xe7\xe7\xe7\xe7\xe7\xcd\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\x8a\xe7\x07\x07\x07\x07\x07\x07\x07\x07\x07\xe7\xe7\xe7\xe7\xe7\xac\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7D\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\x8a\xe7\xe7\xe7\xe7\xe7\xe7\xcd\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\xe7\x8a\x07\x07\x07\x07\x07\x07\x07\x07\x07\x07\xe7\xe7\xe7\xe7\xe7\xac\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\x05\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\x10\xea\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\x12\n\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\v\n\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xec\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\xec\xec\xec\f\xec\xec\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\xec\xec\xec\xec\f\xec\f\xec\xcd\f\xec\f\f\f\f\f\f\f\f\f\xec\f\f\f\f\f\f\f\f\f\f\xec\f\xec\f\xec\f\xed\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\xed\xed\xed\r\xed\xed\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\xed\xed\xed\xed\r\xed\r\xed\xed\r\xed\r\r\r\r\r\r\r\r\r\xed\r\r\r\r\r\r\r\r\r\r\xed\r\xed\r\xed\r\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe1\xe1\x01\xe1\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xea\xe1\xe1\x01\xe1\x01\xe1\xcd\x01\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x0f\xea\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01"\x01\xe1\x01\xe1\xac\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe1\xe1\x01\xe1\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xe1\xe9\xe1\xe1\x01\xe1\x01\xe1\xcd\x01\xe1\x01\x01\x01\x01\x01\x01\x01\x01\x01\t\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01"\x01\xe1\x01\xe1\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\x11\xea\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xe9\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\v\t\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\x13\xea\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xeb\xeb\v\xeb\xeb\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\xeb\xea\xeb\xeb\v\xeb\v\xeb\xcd\v\xeb\v\v\v\v\v\v\v\v\v\xea\v\v\v\v\v\v\v\v\v\v\xeb\v\xeb\v\xeb\xac\xf5\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\xf5\x15\xf5\x15\x15\xf5\x15\x15\x15\x15\x15\x15\x15\x15\x15\x15\xf5\xf5\xf5\xf5\xf5\xf5' for(s=a.length,r=b;r95)q=31 @@ -3097,15 +3097,15 @@ if(!(p<2112))return A.c(n,p) o=n.charCodeAt(p) d=o&31 B.a.k(e,o>>>5,r)}return d}, -tw(a){if(a.b===7&&B.b.T(a.a,"package")&&a.c<=0)return A.u8(a.a,a.e,a.f) +tB(a){if(a.b===7&&B.b.U(a.a,"package")&&a.c<=0)return A.ud(a.a,a.e,a.f) return-1}, -u8(a,b,c){var s,r,q,p +ud(a,b,c){var s,r,q,p for(s=a.length,r=b,q=0;r=0&&r=1)return a.$1(b) +jk:function jk(a){this.a=a}, +xR(a,b,c){t.gY.a(a) +if(A.ax(c)>=1)return a.$1(b) return a.$0()}, -zl(a,b){var s=new A.az($.am,b.h("az<0>")),r=new A.h8(s,b.h("h8<0>")) -a.then(A.eI(new A.pM(r,b),1),A.eI(new A.pN(r),1)) +zq(a,b){var s=new A.aB($.an,b.h("aB<0>")),r=new A.h8(s,b.h("h8<0>")) +a.then(A.eI(new A.pS(r,b),1),A.eI(new A.pT(r),1)) return s}, -u2(a){return a==null||typeof a==="boolean"||typeof a==="number"||typeof a==="string"||a instanceof Int8Array||a instanceof Uint8Array||a instanceof Uint8ClampedArray||a instanceof Int16Array||a instanceof Uint16Array||a instanceof Int32Array||a instanceof Uint32Array||a instanceof Float32Array||a instanceof Float64Array||a instanceof ArrayBuffer||a instanceof DataView}, -uk(a){if(A.u2(a))return a -return new A.pr(new A.dJ(t.mp)).$1(a)}, -pM:function pM(a,b){this.a=a +u7(a){return a==null||typeof a==="boolean"||typeof a==="number"||typeof a==="string"||a instanceof Int8Array||a instanceof Uint8Array||a instanceof Uint8ClampedArray||a instanceof Int16Array||a instanceof Uint16Array||a instanceof Int32Array||a instanceof Uint32Array||a instanceof Float32Array||a instanceof Float64Array||a instanceof ArrayBuffer||a instanceof DataView}, +up(a){if(A.u7(a))return a +return new A.px(new A.dK(t.mp)).$1(a)}, +pS:function pS(a,b){this.a=a this.b=b}, -pN:function pN(a){this.a=a}, -pr:function pr(a){this.a=a}, +pT:function pT(a){this.a=a}, +px:function px(a){this.a=a}, ie:function ie(){}, hQ:function hQ(a,b){this.a=a this.b=b}, -r8(a,b,c){var s=new A.bQ(a,B.f.av(Date.now(),1000)) +rd(a,b,c){var s=new A.bQ(a,B.f.av(Date.now(),1000)) s.Q=c return s}, bQ:function bQ(a,b){var _=this @@ -3233,37 +3233,37 @@ _.e=b _.as=_.Q=null}, dV:function dV(a,b){this.a=a this.b=b}, -lG:function lG(a){this.a=a +lJ:function lJ(a){this.a=a this.c=this.b=0}, -vp(){return new A.lE()}, -lE:function lE(){var _=this +vu(){return new A.lH()}, +lH:function lH(){var _=this _.ax=_.at=_.as=_.Q=_.z=_.y=_.x=_.w=_.r=_.f=_.e=_.d=_.c=_.b=_.a=$ _.ay=0 _.ch=-1 _.cx=_.CW=0 _.fr=_.dy=_.dx=_.db=_.cy=$ _.fx=0}, -op:function op(a){var _=this +ot:function ot(a){var _=this _.a=-1 _.r=_.f=0 _.x=a}, -wX(a,b,c){var s,r,q,p,o +x1(a,b,c){var s,r,q,p,o if(a.gN(a))return new Uint8Array(0) s=new Uint8Array(A.hC(a.goC(a))) r=c*2+2 -q=A.rE(A.rH(),64) -p=new A.nj(q) +q=A.rJ(A.rM(),64) +p=new A.nn(q) q=q.b q===$&&A.o() p.c=new Uint8Array(q) -p.a=new A.nk(b,1000,r) +p.a=new A.no(b,1000,r) o=new Uint8Array(r) -return B.k.am(o,0,p.ml(s,0,o,0))}, -on:function on(a,b){this.c=a +return B.k.am(o,0,p.mm(s,0,o,0))}, +or:function or(a,b){this.c=a this.d=b}, h7:function h7(a,b){this.a=a this.b=b}, -ks:function ks(a,b,c,d){var _=this +ku:function ku(a,b,c,d){var _=this _.b=0 _.c=a _.w=_.r=_.f=_.e=_.d=0 @@ -3274,30 +3274,30 @@ _.Q=null _.at=c _.ay=_.ax=null _.ch=d}, -kt:function kt(){var _=this +kv:function kv(){var _=this _.as=_.Q=_.y=_.x=_.w=_.a=0 _.at="" _.ch=_.ax=null}, -oo:function oo(){this.a=$}, -iw(a){var s=new A.mz() -s.jT(a) +os:function os(){this.a=$}, +ix(a){var s=new A.mD() +s.jU(a) return s}, -mz:function mz(){this.a=$ +mD:function mD(){this.a=$ this.b=0 this.c=2147483647}, -om:function om(){}, -p2:function p2(){}, -mD:function mD(a,b){var _=this +oq:function oq(){}, +p6:function p6(){}, +mH:function mH(a,b){var _=this _.a=a _.b=null _.c=b _.e=_.d=0}, -t_(a,b){var s,r,q,p=a.length,o=b.length +t4(a,b){var s,r,q,p=a.length,o=b.length if(p!==o)return!1 for(s=0,r=0;r>>8&255 @@ -3306,7 +3306,7 @@ a[3]=b>>>24&255 for(s=a.$flags|0,r=4;r<=15;++r){s&2&&A.t(a) if(!(r<16))return A.c(a,r) a[r]=0}}, -lD:function lD(a,b,c){var _=this +lG:function lG(a,b,c){var _=this _.a=1 _.b=a _.c=b @@ -3315,12 +3315,12 @@ _.r=null _.x=_.w=$}, i0:function i0(a,b){this.a=a this.b=b}, -qW(a,b){b&=31 -return(a&$.aL[b])<>>0}, -ar(a,b){b&=31 -return(a>>>b|A.qW(a,32-b))>>>0}, -rG(a){var s,r=new A.fA() -if(A.lu(a))r.fu(a,null) +r0(a,b){b&=31 +return(a&$.aM[b])<>>0}, +as(a,b){b&=31 +return(a>>>b|A.r0(a,32-b))>>>0}, +rL(a){var s,r=new A.fA() +if(A.lx(a))r.fv(a,null) else{t.dl.a(a) s=a.a s===$&&A.o() @@ -3328,29 +3328,29 @@ r.a=s s=a.b s===$&&A.o() r.b=s}return r}, -rH(){var s=A.rG(0),r=new Uint8Array(4),q=t.S -q=new A.jx(s,r,B.cL,5,A.aD(5,0,!1,q),A.aD(80,0,!1,q)) +rM(){var s=A.rL(0),r=new Uint8Array(4),q=t.S +q=new A.jy(s,r,B.cL,5,A.aE(5,0,!1,q),A.aE(80,0,!1,q)) q.aL() return q}, -rE(a,b){var s=new A.jv(a,b) +rJ(a,b){var s=new A.jw(a,b) s.b=20 s.d=new Uint8Array(b) s.e=new Uint8Array(b+20) return s}, -ni:function ni(){}, -nk:function nk(a,b,c){this.a=a +nm:function nm(){}, +no:function no(a,b,c){this.a=a this.b=b this.c=c}, -nh:function nh(){}, +nl:function nl(){}, fz:function fz(a){this.a=a}, -nj:function nj(a){this.a=$ +nn:function nn(a){this.a=$ this.b=a this.c=$}, +jv:function jv(){}, ju:function ju(){}, -jt:function jt(){}, fA:function fA(){this.b=this.a=$}, -jw:function jw(){}, -jx:function jx(a,b,c,d,e,f){var _=this +jx:function jx(){}, +jy:function jy(a,b,c,d,e,f){var _=this _.a=a _.b=b _.c=$ @@ -3359,13 +3359,13 @@ _.e=d _.f=e _.r=f _.w=$}, -jv:function jv(a,b){var _=this +jw:function jw(a,b){var _=this _.a=a _.b=$ _.c=b _.e=_.d=$}, -ng:function ng(){}, -nf:function nf(a){var _=this +nk:function nk(){}, +nj:function nj(a){var _=this _.a=0 _.b=$ _.c=!1 @@ -3374,9 +3374,9 @@ fe:function fe(){}, it:function it(a){this.a=a}, bv(a,b,c,d){var s,r,q=new A.e_(b) if(d==null)d=0 -if(c==null)c=J.b5(a)-d -s=J.ab(a) -if(d+c>s.gm(a))c=s.gm(a)-d +if(c==null)c=J.b6(a)-d +s=J.ad(a) +if(d+c>s.gn(a))c=s.gn(a)-d r=t.ev.b(a)?a:new Uint8Array(A.hC(a)) s=J.dS(B.k.ga9(r),r.byteOffset+d,c) q.b=s @@ -3387,14 +3387,14 @@ _.b=null _.c=0 _.d=$ _.a=a}, -iN:function iN(){}, -mE:function mE(a){this.a=a}, -q6(a){var s=a==null?32768:a +iO:function iO(){}, +mI:function mI(a){this.a=a}, +qc(a){var s=a==null?32768:a return new A.fy(new Uint8Array(s))}, fy:function fy(a){this.b=0 this.c=a}, -jp:function jp(){}, -y_(a,b,c,d){var s,r,q,p=b.length +jq:function jq(){}, +y4(a,b,c,d){var s,r,q,p=b.length if(p===0)return c s=d-p if(s=0}else q=!1 if(!q)break if(r>s)return-1 -if(A.qR(a,c,d,r)&&A.qR(a,c,d,r+p))return r -c=r+1}return-1}return A.xV(a,b,c,d)}, -xV(a,b,c,d){var s,r,q,p=new A.cP(a,d,c,260) +if(A.qW(a,c,d,r)&&A.qW(a,c,d,r+p))return r +c=r+1}return-1}return A.y_(a,b,c,d)}, +y_(a,b,c,d){var s,r,q,p=new A.cP(a,d,c,260) for(s=b.length;r=p.cX(),r>=0;){q=r+s if(q>d)break -if(B.b.aa(a,b,r)&&A.qR(a,c,d,q))return r}return-1}, +if(B.b.aa(a,b,r)&&A.qW(a,c,d,q))return r}return-1}, d3:function d3(a){this.a=a}, fR:function fR(a,b,c){var _=this _.a=a _.b=b _.c=c _.d=null}, -qR(a,b,c,d){var s,r,q,p +qW(a,b,c,d){var s,r,q,p if(b=65&&h<=90&&h+32===j l=g}else l=!0 else l=!1 -if(!l)break}if(l)return A.aw(p.n(0,b))}}return-1}, -wN(a){var s,r +if(!l)break}if(l)return A.ax(p.m(0,b))}}return-1}, +wS(a){var s,r if(a===24)return"%" else for(s=0;s<28;++s){r=B.d1[s] -if(A.aw(r.n(0,"unit"))===a)return A.hB(r.n(0,"value"))}return""}, -rW(a){var s +if(A.ax(r.m(0,"unit"))===a)return A.hB(r.m(0,"value"))}return""}, +t0(a){var s A:{if(0===a){s="ERROR" break A}if(1===a){s="end of file" break A}if(2===a){s="(" @@ -3528,22 +3528,22 @@ break A}if(32===a){s="<" break A}if(33===a){s="!" break A}if(34===a){s="-" break A}if(35===a){s="\\" -break A}s=A.O(A.ce("Unknown TOKEN"))}return s}, -rV(a){switch(a){case 641:case 642:case 643:case 644:case 645:case 646:case 647:case 648:case 649:case 650:case 651:case 652:case 653:case 654:case 655:case 656:case 600:case 601:case 602:case 603:case 604:case 605:case 606:case 607:case 608:case 609:case 610:case 612:case 613:case 614:case 615:case 617:case 627:case 628:return!0 +break A}s=A.P(A.ce("Unknown TOKEN"))}return s}, +t_(a){switch(a){case 641:case 642:case 643:case 644:case 645:case 646:case 647:case 648:case 649:case 650:case 651:case 652:case 653:case 654:case 655:case 656:case 600:case 601:case 602:case 603:case 604:case 605:case 606:case 607:case 608:case 609:case 610:case 612:case 613:case 614:case 615:case 617:case 627:case 628:return!0 default:return!1}}, -jW(a){var s +jY(a){var s if(!(a>=97&&a<=122))s=a>=65&&a<=90||a===95||a>=160||a===92 else s=!0 return s}, -kO:function kO(a){this.a=a +kR:function kR(a){this.a=a this.c=null this.d=$}, I:function I(a,b){this.a=a this.b=b}, -iy:function iy(a,b,c){this.c=a +iz:function iz(a,b,c){this.c=a this.a=b this.b=c}, -jV:function jV(a,b,c,d,e,f,g,h,i){var _=this +jX:function jX(a,b,c,d,e,f,g,h,i){var _=this _.w=a _.x=b _.y=c @@ -3555,7 +3555,7 @@ _.c=h _.e=_.d=!1 _.f=i _.r=0}, -nK:function nK(){}, +nO:function nO(){}, ec:function ec(a,b){this.a=a this.b=b}, eb:function eb(a,b,c,d){var _=this @@ -3563,26 +3563,26 @@ _.a=a _.b=b _.c=c _.d=d}, -j4:function j4(a,b,c){this.a=a +j5:function j5(a,b,c){this.a=a this.b=b this.c=c}, -no:function no(a){this.w=a}, +ns:function ns(a){this.w=a}, cs:function cs(a,b){this.b=a this.a=b}, d4:function d4(a){this.a=a}, -jT:function jT(a){this.a=a}, -jd:function jd(a){this.a=a}, -jJ:function jJ(a,b){this.b=a +jV:function jV(a){this.a=a}, +je:function je(a){this.a=a}, +jL:function jL(a,b){this.b=a this.a=b}, d_:function d_(a,b){this.b=a this.a=b}, fL:function fL(a,b,c){this.b=a this.c=b this.a=c}, -ba:function ba(){}, -dh:function dh(a,b){this.b=a +bc:function bc(){}, +di:function di(a,b){this.b=a this.a=b}, -j5:function j5(a,b,c){this.d=a +j6:function j6(a,b,c){this.d=a this.b=b this.a=c}, hW:function hW(a,b,c,d){var _=this @@ -3590,7 +3590,7 @@ _.d=a _.e=b _.b=c _.a=d}, -ix:function ix(a,b){this.b=a +iy:function iy(a,b){this.b=a this.a=b}, i3:function i3(a,b){this.b=a this.a=b}, @@ -3602,29 +3602,29 @@ this.a=c}, fD:function fD(a,b,c){this.f=a this.b=b this.a=c}, -jC:function jC(a,b,c){this.d=a +jE:function jE(a,b,c){this.d=a this.b=b this.a=c}, eh:function eh(a,b){this.b=a this.a=b}, -je:function je(a,b,c){this.d=a +jf:function jf(a,b,c){this.d=a this.b=b this.a=c}, +jo:function jo(a){this.a=a}, jn:function jn(a){this.a=a}, -jm:function jm(a){this.a=a}, -ak:function ak(a,b,c){this.c=a +al:function al(a,b,c){this.c=a this.d=b this.a=c}, -jl:function jl(a,b,c){this.c=a +jm:function jm(a,b,c){this.c=a this.d=b this.a=c}, bA:function bA(){}, -j_:function j_(a,b,c,d){var _=this +j0:function j0(a,b,c,d){var _=this _.f=a _.c=b _.d=c _.a=d}, -jy:function jy(a,b,c){this.c=a +jz:function jz(a,b,c){this.c=a this.d=b this.a=c}, ib:function ib(a,b,c){this.c=a @@ -3638,20 +3638,20 @@ _.f=a _.c=b _.d=c _.a=d}, -jU:function jU(a,b,c,d){var _=this +jW:function jW(a,b,c,d){var _=this _.f=a _.c=b _.d=c _.a=d}, -iv:function iv(a,b,c,d){var _=this +iw:function iw(a,b,c,d){var _=this _.f=a _.c=b _.d=c _.a=d}, -iu:function iu(a,b,c){this.c=a +iv:function iv(a,b,c){this.c=a this.d=b this.a=c}, -jG:function jG(a,b,c,d){var _=this +jI:function jI(a,b,c,d){var _=this _.f=a _.c=b _.d=c @@ -3661,25 +3661,25 @@ _.f=a _.c=b _.d=c _.a=d}, -jE:function jE(a,b,c,d){var _=this +jG:function jG(a,b,c,d){var _=this _.f=a _.c=b _.d=c _.a=d}, -j0:function j0(a,b,c,d){var _=this +j1:function j1(a,b,c,d){var _=this _.f=a _.c=b _.d=c _.a=d}, -k4:function k4(a,b,c,d){var _=this +k6:function k6(a,b,c,d){var _=this _.f=a _.c=b _.d=c _.a=d}, -N:function N(){}, -an:function an(){}, -k5:function k5(){}, -vE(a){var s,r=a.toLowerCase() +R:function R(){}, +ao:function ao(){}, +k7:function k7(){}, +vJ(a){var s,r=a.toLowerCase() A:{if("application/xhtml+xml"===r||"text/html"===r){s=B.it break A}if("application/x-dtbook+xml"===r){s=B.iu break A}if("application/x-dtbncx+xml"===r){s=B.iA @@ -3696,70 +3696,70 @@ break A}if("font/truetype"===r){s=B.ix break A}if("font/opentype"===r||"application/vnd.ms-opentype"===r){s=B.iy break A}s=B.iz break A}return s}, -aS:function aS(a,b){this.a=a +aT:function aT(a,b){this.a=a this.b=b}, ip:function ip(a,b,c){this.a=a this.b=b this.c=c}, -m6(a){var s=0,r=A.br(t.gw),q,p,o,n,m,l,k,j,i -var $async$m6=A.bs(function(b,c){if(b===1)return A.bo(c,r) -for(;;)switch(s){case 0:l=new A.oo().mk(A.bv(t.L.a(a),B.F,null,null),null,null,!1) +m9(a){var s=0,r=A.br(t.gw),q,p,o,n,m,l,k,j,i +var $async$m9=A.bs(function(b,c){if(b===1)return A.bo(c,r) +for(;;)switch(s){case 0:l=new A.os().ml(A.bv(t.L.a(a),B.F,null,null),null,null,!1) s=3 -return A.c3(A.fG(l),$async$m6) +return A.c3(A.fG(l),$async$m9) case 3:k=c j=k.a.b -i=B.a.cp(j.a,new A.m7(),new A.m8()) +i=B.a.cq(j.a,new A.ma(),new A.mb()) j=j.b -p=A.x(j) +p=A.w(j) o=t.lS -n=A.aV(new A.a_(new A.R(j,p.h("e?(1)").a(new A.m9()),p.h("R<1,e?>")),o),o.h("h.E")) +n=A.a7(new A.O(new A.Q(j,p.h("e?(1)").a(new A.mc()),p.h("Q<1,e?>")),o),o.h("h.E")) m=B.a.aq(n,", ") -q=new A.eY(l,i,m,n,k,A.vB(new A.eY(l,i,m,n,k,null))) +q=new A.eY(l,i,m,n,k,A.vG(new A.eY(l,i,m,n,k,null))) s=1 break case 1:return A.bp(q,r)}}) -return A.bq($async$m6,r)}, -m7:function m7(){}, -m8:function m8(){}, -m9:function m9(){}, -vu(a){return A.vt(a)}, -vt(a){var s,r,q=A.aC(t.N,t.S),p=a.e.a,o=p.d.b,n=p.c.a -for(p=t.w,s=0;s=0)c.k(0,a,l)}for(a0=k.length,m=0;m=0)c.k(0,a,l)}for(a0=k.length,m=0;m=0)b.k(0,a,l)}for(i=0;i=0)b.k(0,a,l)}for(i=0;i]*>(.*?)",!1),A.a4("]*>(.*?)

",!1),A.a4("]*>(.*?)",!1),A.a4("]*>(.*?)",!1)],t.im) -for(k=q,j=k.length,i=t.lg,h=0;h]*>(.*?)",!1),A.a5("]*>(.*?)

",!1),A.a5("]*>(.*?)",!1),A.a5("]*>(.*?)",!1)],t.im) +for(k=q,j=k.length,i=t.lg,h=0;h=e.length)return A.c(e,1) e=e[1] if(e==null)d=null -else{c=A.a4("<[^>]*>",!0) -d=B.b.bk(A.cO(e,c,""))}m=d -if(m!=null&&m.length!==0){l=B.b.d9(m,A.a4("\\s+",!0)) -if(J.b5(l)<=10)return m +else{c=A.a5("<[^>]*>",!0) +d=B.b.ba(A.cO(e,c,""))}m=d +if(m!=null&&m.length!==0){l=B.b.d9(m,A.a5("\\s+",!0)) +if(J.b6(l)<=10)return m else{k=l -j=A.x(k) +j=A.w(k) i=new A.cy(k,0,10,j.h("cy<1>")) -i.fN(k,0,10,j.c) +i.fO(k,0,10,j.c) i=i.aq(0," ") -return i+"..."}}}}}catch(b){}k=A.a4("\\.[^.]+$",!0) +return i+"..."}}}}}catch(b){}k=A.a5("\\.[^.]+$",!0) return A.cO(a0,k,"")}, -lJ:function lJ(a,b){this.a=a +lM:function lM(a,b){this.a=a this.b=b}, -lI:function lI(a,b){this.a=a +lL:function lL(a,b){this.a=a this.b=b}, -q4(a7,a8,a9){var s=0,r=A.br(t.kZ),q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6 -var $async$q4=A.bs(function(b0,b1){if(b0===1)return A.bo(b1,r) +qa(a7,a8,a9){var s=0,r=A.br(t.kZ),q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6 +var $async$qa=A.bs(function(b0,b1){if(b0===1)return A.bo(b1,r) for(;;)switch(s){case 0:if(a9.a===B.bG){p=a9.d.a -if(p==null||p.length===0)throw A.f(A.P("EPUB parsing error: TOC ID is empty.")) -o=A.bI(a9.c.a,new A.mX(p),t.w) -if(o==null)throw A.f(A.P("EPUB parsing error: TOC item "+p+" not found in EPUB manifest.")) -$.cY=A.qm(a8,o.b) -n=A.bI(new A.cE(a7.a,t.bW),new A.mY(),t.u) -if(n==null)throw A.f(A.P("EPUB parsing error: TOC file "+A.k($.cY)+" not found in archive.")) +if(p==null||p.length===0)throw A.f(A.S("EPUB parsing error: TOC ID is empty.")) +o=A.bI(a9.c.a,new A.n0(p),t.A) +if(o==null)throw A.f(A.S("EPUB parsing error: TOC item "+p+" not found in EPUB manifest.")) +$.cY=A.qr(a8,o.b) +n=A.bI(new A.cE(a7.a,t.bW),new A.n1(),t.u) +if(n==null)throw A.f(A.S("EPUB parsing error: TOC file "+A.k($.cY)+" not found in archive.")) m=n.bQ() -l=B.E.b0(m==null?$.dc():m) +l=B.E.b0(m==null?$.dd():m) m=t.P -k=A.e3(A.b1(new A.c1(A.nW(l)),"ncx","http://www.daisy.org/z3986/2005/ncx/"),m) -if(k==null)throw A.f(A.P("EPUB parsing error: TOC file does not contain ncx element.")) -j=A.e3(A.b1(new A.c1(k),"head","http://www.daisy.org/z3986/2005/ncx/"),m) -if(j==null)throw A.f(A.P(u.C)) -i=A.w8(j) +k=A.e3(A.b2(new A.c1(A.o_(l)),"ncx","http://www.daisy.org/z3986/2005/ncx/"),m) +if(k==null)throw A.f(A.S("EPUB parsing error: TOC file does not contain ncx element.")) +j=A.e3(A.b2(new A.c1(k),"head","http://www.daisy.org/z3986/2005/ncx/"),m) +if(j==null)throw A.f(A.S(u.C)) +i=A.wd(j) h=k.w$ -g=A.e3(A.b1(h,"docTitle","http://www.daisy.org/z3986/2005/ncx/"),m) -if(g==null)throw A.f(A.P("EPUB parsing error: TOC file does not contain docTitle element.")) -f=A.w7(g) -e=A.b1(h,"docAuthor","http://www.daisy.org/z3986/2005/ncx/") +g=A.e3(A.b2(h,"docTitle","http://www.daisy.org/z3986/2005/ncx/"),m) +if(g==null)throw A.f(A.S("EPUB parsing error: TOC file does not contain docTitle element.")) +f=A.wc(g) +e=A.b2(h,"docAuthor","http://www.daisy.org/z3986/2005/ncx/") d=e.$ti -c=d.h("b8<1,cm>") -b=A.aV(new A.b8(e,d.h("cm(1)").a(new A.mZ()),c),c.h("h.E")) -a=A.e3(A.b1(h,"navMap","http://www.daisy.org/z3986/2005/ncx/"),m) -if(a==null)throw A.f(A.P("EPUB parsing error: TOC file does not contain navMap element.")) -a0=A.wa(a) -a1=A.e3(A.b1(h,"pageList","http://www.daisy.org/z3986/2005/ncx/"),m) -A:{if(a1 instanceof A.aF){m=A.wb(a1) +c=d.h("ba<1,cm>") +b=A.a7(new A.ba(e,d.h("cm(1)").a(new A.n2()),c),c.h("h.E")) +a=A.e3(A.b2(h,"navMap","http://www.daisy.org/z3986/2005/ncx/"),m) +if(a==null)throw A.f(A.S("EPUB parsing error: TOC file does not contain navMap element.")) +a0=A.wf(a) +a1=A.e3(A.b2(h,"pageList","http://www.daisy.org/z3986/2005/ncx/"),m) +A:{if(a1 instanceof A.aG){m=A.wg(a1) break A}if(a1==null){m=null -break A}throw A.f(new A.jD("None of the patterns in the switch expression the matched input value. See https://github.com/dart-lang/language/issues/3488 for details."))}h=A.b1(h,"navList","http://www.daisy.org/z3986/2005/ncx/") +break A}throw A.f(new A.jF("None of the patterns in the switch expression the matched input value. See https://github.com/dart-lang/language/issues/3488 for details."))}h=A.b2(h,"navList","http://www.daisy.org/z3986/2005/ncx/") e=h.$ti -d=e.h("b8<1,cn>") -a2=A.aV(new A.b8(h,e.h("cn(1)").a(new A.n_()),d),d.h("h.E")) +d=e.h("ba<1,cn>") +a2=A.a7(new A.ba(h,e.h("cn(1)").a(new A.n3()),d),d.h("h.E")) q=new A.f2(i,f,b,a0,m,a2) s=1 -break}else{o=A.bI(a9.c.a,new A.n0(),t.w) -if(o==null)throw A.f(A.P("EPUB parsing error: TOC item, not found in EPUB manifest.")) -$.cY=A.qm(a8,o.b) -n=A.bI(new A.cE(a7.a,t.bW),new A.n1(),t.u) -if(n==null)throw A.f(A.P("EPUB parsing error: TOC file "+A.k($.cY)+" not found in archive.")) +break}else{o=A.bI(a9.c.a,new A.n4(),t.A) +if(o==null)throw A.f(A.S("EPUB parsing error: TOC item, not found in EPUB manifest.")) +$.cY=A.qr(a8,o.b) +n=A.bI(new A.cE(a7.a,t.bW),new A.n5(),t.u) +if(n==null)throw A.f(A.S("EPUB parsing error: TOC file "+A.k($.cY)+" not found in archive.")) a3=A.i($.cY.split("/"),t.s) m=a3.length if(m!==0){if(0>=m){q=A.c(a3,-1) @@ -3853,48 +3853,48 @@ s=1 break}a3.pop()}if(a3.length!==0)B.a.d2(a3,0) $.cY=a3.length===0?"":B.a.aq(a3,"/")+"/" m=n.bQ() -a4=B.E.b0(m==null?$.dc():m) -a5=A.nW(a4) +a4=B.E.b0(m==null?$.dd():m) +a5=A.o_(a4) m=t.P -if(A.e3(A.b1(new A.c1(a5),"head",null),m)==null)throw A.f(A.P(u.C)) -a6=A.e3(A.b1(new A.c1(a5),"nav",null),m) -if(a6==null)throw A.f(A.P(u.C)) -q=new A.f2(null,new A.f4(a9.b.a),B.j7,A.rB(A.b1(a6.w$,"ol",null).gbU(0)),null,B.j8) +if(A.e3(A.b2(new A.c1(a5),"head",null),m)==null)throw A.f(A.S(u.C)) +a6=A.e3(A.b2(new A.c1(a5),"nav",null),m) +if(a6==null)throw A.f(A.S(u.C)) +q=new A.f2(null,new A.f4(a9.b.a),B.j7,A.rG(A.b2(a6.w$,"ol",null).gbU(0)),null,B.j8) s=1 break}case 1:return A.bp(q,r)}}) -return A.bq($async$q4,r)}, -q5(a){var s,r,q,p,o,n -for(s=a.y$.a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=null,p=null;s.p();){o=s.d +return A.bq($async$qa,r)}, +qb(a){var s,r,q,p,o,n +for(s=a.y$.a,r=A.w(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=null,p=null;s.p();){o=s.d if(o==null)o=r.a(o) n=o.b switch(o.a.ga_().toLowerCase()){case"id":q=n break case"src":p=n -break}}if(p==null||p.length===0)throw A.f(A.P("Incorrect EPUB navigation content: content source is missing.")) +break}}if(p==null||p.length===0)throw A.f(A.S("Incorrect EPUB navigation content: content source is missing.")) return new A.f3(q,p)}, -w5(a){var s,r,q,p,o,n -for(s=a.y$.a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=null,p=null;s.p();){o=s.d +wa(a){var s,r,q,p,o,n +for(s=a.y$.a,r=A.w(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=null,p=null;s.p();){o=s.d if(o==null)o=r.a(o) n=o.b switch(o.a.ga_().toLowerCase()){case"id":q=n break case"href":o=$.cY -p=o.length<2||B.b.T(n,o)?n:$.pT().dP(o+n) +p=o.length<2||B.b.U(n,o)?n:$.pZ().dP(o+n) break}}return new A.f3(q,p)}, -w6(a){var s=A.i([],t.s) -new A.a_(a.w$.a,t.C).X(0,new A.mM(s)) +wb(a){var s=A.i([],t.s) +new A.O(a.w$.a,t.C).T(0,new A.mQ(s)) return new A.cm(s)}, -w7(a){var s=A.i([],t.s) -new A.a_(a.w$.a,t.C).X(0,new A.mN(s)) +wc(a){var s=A.i([],t.s) +new A.O(a.w$.a,t.C).T(0,new A.mR(s)) return new A.f4(s)}, -w8(a){var s=A.i([],t.hJ) -new A.a_(a.w$.a,t.C).X(0,new A.mO(s)) +wd(a){var s=A.i([],t.hJ) +new A.O(a.w$.a,t.C).T(0,new A.mS(s)) return new A.il(s)}, -mP(a){var s=A.bI(A.b1(a.w$,"text",a.b.gcV()),new A.mQ(),t.P) -if(s==null)throw A.f(A.P("Incorrect EPUB navigation label: label text element is missing.")) +mT(a){var s=A.bI(A.b2(a.w$,"text",a.b.gcV()),new A.mU(),t.P) +if(s==null)throw A.f(A.S("Incorrect EPUB navigation label: label text element is missing.")) return new A.cS(A.cH(s))}, -w9(a){var s,r,q,p,o,n,m,l,k -for(s=a.y$.a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=null,p=null;s.p();){o=s.d +we(a){var s,r,q,p,o,n,m,l,k +for(s=a.y$.a,r=A.w(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=null,p=null;s.p();){o=s.d if(o==null)o=r.a(o) n=o.b switch(o.a.ga_().toLowerCase()){case"id":q=n @@ -3903,38 +3903,38 @@ case"class":p=n break}}m=A.i([],t.lu) l=A.i([],t.cJ) for(s=B.a.gF(a.w$.a),r=new A.bZ(s,t.k7),o=t.P;r.p();){k=o.a(s.gB()) -switch(k.b.ga_().toLowerCase()){case"navlabel":B.a.l(m,A.mP(k)) +switch(k.b.ga_().toLowerCase()){case"navlabel":B.a.l(m,A.mT(k)) break -case"navtarget":B.a.l(l,A.we(k)) +case"navtarget":B.a.l(l,A.wj(k)) break}}return new A.cn(q,p,m,l)}, -wa(a){var s=A.i([],t.nS) -new A.a_(a.w$.a,t.C).X(0,new A.mS(s)) +wf(a){var s=A.i([],t.nS) +new A.O(a.w$.a,t.C).T(0,new A.mW(s)) return new A.f6(s)}, -rB(a){var s=A.i([],t.nS) -new A.a_(a.w$.a,t.C).X(0,new A.mR(s)) +rG(a){var s=A.i([],t.nS) +new A.O(a.w$.a,t.C).T(0,new A.mV(s)) return new A.f6(s)}, -wb(a){var s,r,q,p,o=A.i([],t.mt) +wg(a){var s,r,q,p,o=A.i([],t.mt) for(s=B.a.gF(a.w$.a),r=new A.bZ(s,t.k7),q=t.P;r.p();){p=q.a(s.gB()) -if(p.b.ga_().toLowerCase()==="pagetarget")B.a.l(o,A.wc(p))}return new A.im(o)}, -wc(a){var s,r,q,p,o,n,m,l,k,j,i=null -for(s=a.y$.a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=t.m9,p=i,o=p,n=o,m=n;s.p();){l=s.d +if(p.b.ga_().toLowerCase()==="pagetarget")B.a.l(o,A.wh(p))}return new A.im(o)}, +wh(a){var s,r,q,p,o,n,m,l,k,j,i=null +for(s=a.y$.a,r=A.w(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=t.m9,p=i,o=p,n=o,m=n;s.p();){l=s.d if(l==null)l=r.a(l) k=l.b switch(l.a.ga_().toLowerCase()){case"id":m=k break case"value":n=k break -case"type":new A.ig(B.jb,q).iN(k) +case"type":new A.ig(B.jb,q).iO(k) break case"class":o=k break case"playorder":p=k break}}j=A.i([],t.lu) -new A.a_(a.w$.a,t.C).X(0,new A.mT(j)) -if(j.length===0)throw A.f(A.P("Incorrect EPUB navigation page target: at least one navLabel element is required.")) +new A.O(a.w$.a,t.C).T(0,new A.mX(j)) +if(j.length===0)throw A.f(A.S("Incorrect EPUB navigation page target: at least one navLabel element is required.")) return new A.f7(m,n,i,o,p,j,i)}, -rC(a){var s,r,q,p,o,n,m,l,k,j="EPUB parsing error: navigation point ",i={} -for(s=a.y$.a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=null,p=null,o=null;s.p();){n=s.d +rH(a){var s,r,q,p,o,n,m,l,k,j="EPUB parsing error: navigation point ",i={} +for(s=a.y$.a,r=A.w(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=null,p=null,o=null;s.p();){n=s.d if(n==null)n=r.a(n) m=n.b switch(n.a.ga_().toLowerCase()){case"id":q=m @@ -3942,26 +3942,26 @@ break case"class":p=m break case"playorder":o=m -break}}if(q==null||q.length===0)throw A.f(A.P("Incorrect EPUB navigation point: point ID is missing.")) +break}}if(q==null||q.length===0)throw A.f(A.S("Incorrect EPUB navigation point: point ID is missing.")) i.a=null l=A.i([],t.lu) k=A.i([],t.nS) -new A.a_(a.w$.a,t.C).X(0,new A.mV(i,l,k)) -if(l.length===0)throw A.f(A.P(j+q+" should contain at least one navigation label.")) +new A.O(a.w$.a,t.C).T(0,new A.mZ(i,l,k)) +if(l.length===0)throw A.f(A.S(j+q+" should contain at least one navigation label.")) s=i.a -if(s==null)throw A.f(A.P(j+q+" should contain content.")) +if(s==null)throw A.f(A.S(j+q+" should contain content.")) return new A.co(q,p,o,l,s,k)}, -wd(a){var s,r,q={} +wi(a){var s,r,q={} q.a=null s=A.i([],t.lu) r=A.i([],t.nS) -new A.a_(a.w$.a,t.C).X(0,new A.mU(q,s,r)) -if(s.length===0)throw A.f(A.P("EPUB parsing error: navigation point null should contain at least one navigation label.")) +new A.O(a.w$.a,t.C).T(0,new A.mY(q,s,r)) +if(s.length===0)throw A.f(A.S("EPUB parsing error: navigation point null should contain at least one navigation label.")) q=q.a -if(q==null)throw A.f(A.P("EPUB parsing error: navigation point null should contain content.")) +if(q==null)throw A.f(A.S("EPUB parsing error: navigation point null should contain content.")) return new A.co(null,null,null,s,q,r)}, -we(a){var s,r,q,p,o,n,m,l,k,j=null,i={} -for(s=a.y$.a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=j,p=q,o=p,n=o;s.p();){m=s.d +wj(a){var s,r,q,p,o,n,m,l,k,j=null,i={} +for(s=a.y$.a,r=A.w(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=j,p=q,o=p,n=o;s.p();){m=s.d if(m==null)m=r.a(m) l=m.b switch(m.a.ga_().toLowerCase()){case"id":n=l @@ -3971,40 +3971,40 @@ break case"class":o=l break case"playorder":q=l -break}}if(n==null||n.length===0)throw A.f(A.P("Incorrect EPUB navigation target: navigation target ID is missing.")) +break}}if(n==null||n.length===0)throw A.f(A.S("Incorrect EPUB navigation target: navigation target ID is missing.")) k=A.i([],t.lu) i.a=null -new A.a_(a.w$.a,t.C).X(0,new A.mW(i,k)) -if(k.length===0)throw A.f(A.P("Incorrect EPUB navigation target: at least one navLabel element is required.")) +new A.O(a.w$.a,t.C).T(0,new A.n_(i,k)) +if(k.length===0)throw A.f(A.S("Incorrect EPUB navigation target: at least one navLabel element is required.")) return new A.f8(n,o,p,q,k,i.a)}, -mX:function mX(a){this.a=a}, -mY:function mY(){}, -mZ:function mZ(){}, -n_:function n_(){}, -n0:function n0(){}, +n0:function n0(a){this.a=a}, n1:function n1(){}, -mM:function mM(a){this.a=a}, -mN:function mN(a){this.a=a}, -mO:function mO(a){this.a=a}, -mQ:function mQ(){}, -mS:function mS(a){this.a=a}, +n2:function n2(){}, +n3:function n3(){}, +n4:function n4(){}, +n5:function n5(){}, +mQ:function mQ(a){this.a=a}, mR:function mR(a){this.a=a}, -mT:function mT(a){this.a=a}, -mV:function mV(a,b,c){this.a=a +mS:function mS(a){this.a=a}, +mU:function mU(){}, +mW:function mW(a){this.a=a}, +mV:function mV(a){this.a=a}, +mX:function mX(a){this.a=a}, +mZ:function mZ(a,b,c){this.a=a this.b=b this.c=c}, -mU:function mU(a,b,c){this.a=a +mY:function mY(a,b,c){this.a=a this.b=b this.c=c}, -mW:function mW(a,b){this.a=a +n_:function n_(a,b){this.a=a this.b=b}, -wg(a){var s=A.i([],t.mE) -new A.a_(a.w$.a,t.C).X(0,new A.n4(s)) +wl(a){var s=A.i([],t.mE) +new A.O(a.w$.a,t.C).T(0,new A.n8(s)) return new A.ii(s)}, -wh(a){var s=A.i([],t.bz) -new A.a_(a.w$.a,t.C).X(0,new A.n5(s)) +wm(a){var s=A.i([],t.bz) +new A.O(a.w$.a,t.C).T(0,new A.n9(s)) return new A.ij(s)}, -wi(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c={} +wn(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c={} c.a=null s=t.s r=A.i([],s) @@ -4022,42 +4022,42 @@ g=A.i([],s) f=A.i([],s) e=A.i([],s) d=A.i([],t.ik) -new A.a_(a.w$.a,t.C).X(0,new A.n6(c,r,q,p,o,n,m,l,k,j,i,h,g,f,e,b,d)) +new A.O(a.w$.a,t.C).T(0,new A.na(c,r,q,p,o,n,m,l,k,j,i,h,g,f,e,b,d)) return new A.ik(r,q,p,c.a,o,n,m,l,k,j,i,h,g,f,e,d)}, -wj(a){var s,r,q,p,o,n -for(s=a.y$.a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=null,p=null;s.p();){o=s.d +wo(a){var s,r,q,p,o,n +for(s=a.y$.a,r=A.w(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=null,p=null;s.p();){o=s.d if(o==null)o=r.a(o) n=o.b switch(o.a.ga_().toLowerCase()){case"role":q=n break case"file-as":p=n break}}return new A.f_(A.cH(a),p,q)}, -wk(a){var s,r,q,p,o,n -for(s=a.y$.a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=null,p=null;s.p();){o=s.d +wp(a){var s,r,q,p,o,n +for(s=a.y$.a,r=A.w(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=null,p=null;s.p();){o=s.d if(o==null)o=r.a(o) n=o.b switch(o.a.ga_().toLowerCase()){case"role":q=n break case"file-as":p=n -break}}return new A.dk(A.cH(a),p,q)}, -wl(a){var s,r,q,p,o,n -for(s=a.y$.a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=null,p=null;s.p();){o=s.d +break}}return new A.dl(A.cH(a),p,q)}, +wq(a){var s,r,q,p,o,n +for(s=a.y$.a,r=A.w(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=null,p=null;s.p();){o=s.d if(o==null)o=r.a(o) n=o.b switch(o.a.ga_().toLowerCase()){case"id":q=n break case"scheme":p=n break}}return new A.f1(q,p,A.cH(a))}, -wm(a){var s,r,q,p,o,n,m=null -for(s=a.y$.a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=m,p=q;s.p();){o=s.d +wr(a){var s,r,q,p,o,n,m=null +for(s=a.y$.a,r=A.w(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=m,p=q;s.p();){o=s.d if(o==null)o=r.a(o) n=o.b switch(o.a.ga_().toLowerCase()){case"name":p=n break case"content":q=n break}}return new A.cR(p,q,m,m,m,m,B.Ac)}, -wn(a){var s,r,q,p,o,n,m,l,k=null,j=t.N,i=A.aC(j,j) -for(j=a.y$.a,s=A.x(j),j=new J.J(j,j.length,s.h("J<1>")),s=s.c,r=k,q=r,p=q,o=p;j.p();){n=j.d +ws(a){var s,r,q,p,o,n,m,l,k=null,j=t.N,i=A.az(j,j) +for(j=a.y$.a,s=A.w(j),j=new J.J(j,j.length,s.h("J<1>")),s=s.c,r=k,q=r,p=q,o=p;j.p();){n=j.d if(n==null)n=s.a(n) m=n.b l=n.a.ga_().toLowerCase() @@ -4070,42 +4070,42 @@ case"property":q=m break case"scheme":r=m break}}return new A.cR(k,A.cH(a),o,p,q,r,i)}, -q7(a,a0){var s=0,r=A.br(t.hl),q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b -var $async$q7=A.bs(function(a1,a2){if(a1===1)return A.bo(a2,r) -for(;;)switch(s){case 0:b=A.bI(new A.cE(a.a,t.bW),new A.n7(a0),t.u) -if(b==null)throw A.f(A.P("EPUB parsing error: root file not found in archive.")) +qd(a,a0){var s=0,r=A.br(t.hl),q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b +var $async$qd=A.bs(function(a1,a2){if(a1===1)return A.bo(a2,r) +for(;;)switch(s){case 0:b=A.bI(new A.cE(a.a,t.bW),new A.nb(a0),t.u) +if(b==null)throw A.f(A.S("EPUB parsing error: root file not found in archive.")) p=b.bQ() -o=B.E.b0(p==null?$.dc():p) -n=A.b1(A.nW(o).w$,"package","http://www.idpf.org/2007/opf").co(0,new A.n8()) -m=n.cb("version") +o=B.E.b0(p==null?$.dd():p) +n=A.b2(A.o_(o).w$,"package","http://www.idpf.org/2007/opf").cp(0,new A.nc()) +m=n.cd("version") if(m==="2.0")l=B.bG -else{if(m!=="3.0")throw A.f(A.P("Unsupported EPUB version: "+A.k(m)+".")) +else{if(m!=="3.0")throw A.f(A.S("Unsupported EPUB version: "+A.k(m)+".")) l=B.cT}p=n.w$ -k=A.b1(p,"metadata","http://www.idpf.org/2007/opf") +k=A.b2(p,"metadata","http://www.idpf.org/2007/opf") j=t.q -i=A.eM(k,k.$ti.h("h.E"),j).co(0,new A.n9()) -if(i==null)throw A.f(A.P("EPUB parsing error: metadata not found in the package.")) -h=A.wi(i,l) -k=A.b1(p,"manifest","http://www.idpf.org/2007/opf") -g=A.eM(k,k.$ti.h("h.E"),j).co(0,new A.na()) -if(g==null)throw A.f(A.P("EPUB parsing error: manifest not found in the package.")) -f=A.wh(g) -k=A.b1(p,"spine","http://www.idpf.org/2007/opf") -e=A.eM(k,k.$ti.h("h.E"),j).co(0,new A.nb()) -if(e==null)throw A.f(A.P("EPUB parsing error: spine not found in the package.")) -d=A.wo(e) -c=A.bI(A.b1(p,"guide","http://www.idpf.org/2007/opf"),new A.nc(),t.P) -q=new A.io(l,h,f,d,c!=null?A.wg(c):null) +i=A.eM(k,k.$ti.h("h.E"),j).cp(0,new A.nd()) +if(i==null)throw A.f(A.S("EPUB parsing error: metadata not found in the package.")) +h=A.wn(i,l) +k=A.b2(p,"manifest","http://www.idpf.org/2007/opf") +g=A.eM(k,k.$ti.h("h.E"),j).cp(0,new A.ne()) +if(g==null)throw A.f(A.S("EPUB parsing error: manifest not found in the package.")) +f=A.wm(g) +k=A.b2(p,"spine","http://www.idpf.org/2007/opf") +e=A.eM(k,k.$ti.h("h.E"),j).cp(0,new A.nf()) +if(e==null)throw A.f(A.S("EPUB parsing error: spine not found in the package.")) +d=A.wt(e) +c=A.bI(A.b2(p,"guide","http://www.idpf.org/2007/opf"),new A.ng(),t.P) +q=new A.io(l,h,f,d,c!=null?A.wl(c):null) s=1 break case 1:return A.bp(q,r)}}) -return A.bq($async$q7,r)}, -wo(a){var s=A.i([],t.jA),r=a.cb("toc"),q=a.cb("page-progression-direction"),p=q==null||q.toLowerCase()==="ltr" -new A.a_(a.w$.a,t.C).X(0,new A.nd(s)) +return A.bq($async$qd,r)}, +wt(a){var s=A.i([],t.jA),r=a.cd("toc"),q=a.cd("page-progression-direction"),p=q==null||q.toLowerCase()==="ltr" +new A.O(a.w$.a,t.C).T(0,new A.nh(s)) return new A.iq(r,s,p)}, -n4:function n4(a){this.a=a}, -n5:function n5(a){this.a=a}, -n6:function n6(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){var _=this +n8:function n8(a){this.a=a}, +n9:function n9(a){this.a=a}, +na:function na(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){var _=this _.a=a _.b=b _.c=c @@ -4123,30 +4123,30 @@ _.at=n _.ax=o _.ay=p _.ch=q}, -n7:function n7(a){this.a=a}, -n8:function n8(){}, -n9:function n9(){}, -na:function na(){}, -nb:function nb(){}, +nb:function nb(a){this.a=a}, nc:function nc(){}, -nd:function nd(a){this.a=a}, -qc(a){var s=0,r=A.br(t.jv),q,p,o,n,m -var $async$qc=A.bs(function(b,c){if(b===1)return A.bo(c,r) -for(;;)switch(s){case 0:m=A.bI(new A.cE(a.a,t.bW),new A.nz(),t.u) -if(m==null)throw A.f(A.P("EPUB parsing error: META-INF/container.xml file not found in archive.")) +nd:function nd(){}, +ne:function ne(){}, +nf:function nf(){}, +ng:function ng(){}, +nh:function nh(a){this.a=a}, +qh(a){var s=0,r=A.br(t.jv),q,p,o,n,m +var $async$qh=A.bs(function(b,c){if(b===1)return A.bo(c,r) +for(;;)switch(s){case 0:m=A.bI(new A.cE(a.a,t.bW),new A.nD(),t.u) +if(m==null)throw A.f(A.S("EPUB parsing error: META-INF/container.xml file not found in archive.")) p=m.bQ() -o=B.E.b0(p==null?$.dc():p) +o=B.E.b0(p==null?$.dd():p) p=t.P -n=A.bI(A.b1(new A.c1(A.nW(o)),"container","urn:oasis:names:tc:opendocument:xmlns:container"),new A.nA(),p) -if(n==null)throw A.f(A.P("EPUB parsing error: Invalid epub container")) -q=p.a(A.bI(new A.c1(n),new A.nB(),t.I)).cb("full-path") +n=A.bI(A.b2(new A.c1(A.o_(o)),"container","urn:oasis:names:tc:opendocument:xmlns:container"),new A.nE(),p) +if(n==null)throw A.f(A.S("EPUB parsing error: Invalid epub container")) +q=p.a(A.bI(new A.c1(n),new A.nF(),t.I)).cd("full-path") s=1 break case 1:return A.bp(q,r)}}) -return A.bq($async$qc,r)}, -nz:function nz(){}, -nA:function nA(){}, -nB:function nB(){}, +return A.bq($async$qh,r)}, +nD:function nD(){}, +nE:function nE(){}, +nF:function nF(){}, eY:function eY(a,b,c,d,e,f){var _=this _.a=a _.b=b @@ -4165,8 +4165,8 @@ _.b=b _.c=c _.d=d _.e=e}, -di:function di(){}, -lR:function lR(a){this.a=a}, +dj:function dj(){}, +lU:function lU(a){this.a=a}, ih:function ih(a,b,c,d,e){var _=this _.a=a _.b=b @@ -4230,7 +4230,7 @@ eZ:function eZ(a,b,c){this.a=a this.b=b this.c=c}, ij:function ij(a){this.a=a}, -dj:function dj(a,b,c,d,e,f,g,h,i){var _=this +dk:function dk(a,b,c,d,e,f,g,h,i){var _=this _.a=a _.b=b _.c=c @@ -4260,7 +4260,7 @@ _.ay=p}, f_:function f_(a,b,c){this.a=a this.b=b this.c=c}, -dk:function dk(a,b,c){this.a=a +dl:function dl(a,b,c){this.a=a this.b=b this.c=c}, f0:function f0(a,b){this.a=a @@ -4291,24 +4291,24 @@ ir:function ir(a,b){this.a=a this.b=b}, ig:function ig(a,b){this.a=a this.$ti=b}, -lQ:function lQ(a,b){this.a=a +lT:function lT(a,b){this.a=a this.b=b}, -rj(){return new A.eT(A.ac(t.K,t.N))}, -rk(a,b,c){return new A.i9(a,b,c,A.ac(t.K,t.N))}, -qf(a){return new A.bY(a,A.ac(t.K,t.N))}, -pW(a,b){return new A.a6(b,a,A.ac(t.K,t.N))}, -vD(a){var s +ro(){return new A.eT(A.ae(t.K,t.N))}, +rp(a,b,c){return new A.i9(a,b,c,A.ae(t.K,t.N))}, +qk(a){return new A.bY(a,A.ae(t.K,t.N))}, +q1(a,b){return new A.K(b,a,A.ae(t.K,t.N))}, +vI(a){var s if(a==null||a==="http://www.w3.org/1999/xhtml"||a==="http://www.w3.org/1998/Math/MathML"||a==="http://www.w3.org/2000/svg")return"" -s=A.rA(a) +s=A.rF(a) return s==null?"":s+":"}, -rh(a){return new A.i6(a,A.ac(t.K,t.N))}, -aN:function aN(a,b,c){this.a=a +rm(a){return new A.i6(a,A.ae(t.K,t.N))}, +aO:function aO(a,b,c){this.a=a this.b=b this.c=c}, -kN:function kN(){}, -oQ:function oQ(){}, -kG:function kG(){}, -al:function al(){}, +kQ:function kQ(){}, +oU:function oU(){}, +kI:function kI(){}, +am:function am(){}, eT:function eT(a){var _=this _.a=null _.b=a @@ -4328,45 +4328,48 @@ _.a=null _.b=b _.d=_.c=$ _.e=null}, -a6:function a6(a,b,c){var _=this +K:function K(a,b,c){var _=this _.w=a _.x=b _.a=null _.b=c _.d=_.c=$ _.e=null}, -lO:function lO(a){this.a=a}, +lR:function lR(a){this.a=a}, i6:function i6(a,b){var _=this _.w=a _.a=null _.b=b _.d=_.c=$ _.e=null}, -jh:function jh(a,b){this.b=a +ji:function ji(a,b){this.b=a this.a=b}, -kD:function kD(){}, -kE:function kE(){}, +iu:function iu(a){this.a=a}, +md:function md(){}, kF:function kF(){}, +kG:function kG(){}, kH:function kH(){}, -kI:function kI(){}, -uz(a){var s,r,q=A.i([],t.bD),p=A.i([],t.il),o=A.i([],t.lB) -p=new A.nL("http://www.w3.org/1999/xhtml",p,new A.hH(o)) +kJ:function kJ(){}, +kK:function kK(){}, +kN:function kN(){}, +uE(a){var s,r,q=A.i([],t.bD),p=A.i([],t.il),o=A.i([],t.lB) +p=new A.nP("http://www.w3.org/1999/xhtml",p,new A.hH(o)) p.aL() -o=A.q1(t.N) +o=A.q7(t.N) s=A.i([],t.Z) -s=new A.mw(A.yD(null),!1,null,o,s) -s.f=new A.af(a) +s=new A.mA(A.yI(null),!1,null,o,s) +s.f=new A.ah(a) s.a="utf-8" s.aL() -o=new A.ff(s,!0,!0,!1,A.q1(t.nU),new A.W(""),new A.W(""),new A.W("")) +o=new A.ff(s,!0,!0,!1,A.q7(t.nU),new A.Y(""),new A.Y(""),new A.Y("")) o.aL() -r=new A.mx(!1,o,p,q) +r=new A.mB(!1,o,p,q) o.f=r -r.kD() +r.kE() p=p.b p===$&&A.o() return p}, -mx:function mx(a,b,c,d){var _=this +mB:function mB(a,b,c,d){var _=this _.b=a _.c=b _.d=c @@ -4378,53 +4381,53 @@ _.x=$ _.y=null _.z=!0 _.ok=_.k4=_.k3=_.k2=_.k1=_.id=_.go=_.fy=_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=$}, -a9:function a9(){}, -nm:function nm(a){this.a=a}, -nl:function nl(a){this.a=a}, -iM:function iM(a,b){this.a=a +aa:function aa(){}, +nq:function nq(a){this.a=a}, +np:function np(a){this.a=a}, +iN:function iN(a,b){this.a=a this.b=b}, hZ:function hZ(a,b){this.a=a this.b=b}, hY:function hY(a,b){this.a=a this.b=b}, -iF:function iF(a,b){this.a=a +iG:function iG(a,b){this.a=a this.b=b}, hM:function hM(a,b){this.a=a this.b=b}, -iz:function iz(a,b){this.c=!1 +iA:function iA(a,b){this.c=!1 this.a=a this.b=b}, -mB:function mB(a){this.a=a}, -mA:function mA(a){this.a=a}, -jS:function jS(a,b){this.a=a +mF:function mF(a){this.a=a}, +mE:function mE(a){this.a=a}, +jU:function jU(a,b){this.a=a this.b=b}, -iK:function iK(a,b){this.a=a +iL:function iL(a,b){this.a=a this.b=b}, fg:function fg(a,b,c){var _=this _.c=null _.d=a _.a=b _.b=c}, -mC:function mC(){}, -iA:function iA(a,b){this.a=a +mG:function mG(){}, +iB:function iB(a,b){this.a=a this.b=b}, -iC:function iC(a,b){this.a=a +iD:function iD(a,b){this.a=a this.b=b}, -iJ:function iJ(a,b){this.a=a +iK:function iK(a,b){this.a=a this.b=b}, -iG:function iG(a,b){this.a=a +iH:function iH(a,b){this.a=a this.b=b}, -iB:function iB(a,b){this.a=a +iC:function iC(a,b){this.a=a this.b=b}, -iI:function iI(a,b){this.a=a +iJ:function iJ(a,b){this.a=a this.b=b}, -iH:function iH(a,b){this.a=a +iI:function iI(a,b){this.a=a this.b=b}, -iD:function iD(a,b){this.a=a +iE:function iE(a,b){this.a=a this.b=b}, hK:function hK(a,b){this.a=a this.b=b}, -iE:function iE(a,b){this.a=a +iF:function iF(a,b){this.a=a this.b=b}, hL:function hL(a,b){this.a=a this.b=b}, @@ -4432,10 +4435,10 @@ hI:function hI(a,b){this.a=a this.b=b}, hJ:function hJ(a,b){this.a=a this.b=b}, -b9:function b9(a,b,c){this.a=a +bb:function bb(a,b,c){this.a=a this.b=b this.c=c}, -rA(a){var s +rF(a){var s A:{if("http://www.w3.org/1999/xhtml"===a){s="html" break A}if("http://www.w3.org/1998/Math/MathML"===a){s="math" break A}if("http://www.w3.org/2000/svg"===a){s="svg" @@ -4444,56 +4447,56 @@ break A}if("http://www.w3.org/XML/1998/namespace"===a){s="xml" break A}if("http://www.w3.org/2000/xmlns/"===a){s="xmlns" break A}s=null break A}return s}, -a7(a){A.hB(a) +a8(a){A.hB(a) if(a==null)return!1 if(0>=a.length)return A.c(a,0) -return A.qT(a.charCodeAt(0))}, -qT(a){switch(a){case 9:case 10:case 12:case 13:case 32:return!0}return!1}, -b3(a){var s,r +return A.qY(a.charCodeAt(0))}, +qY(a){switch(a){case 9:case 10:case 12:case 13:case 32:return!0}return!1}, +b4(a){var s,r if(a==null)return!1 if(0>=a.length)return A.c(a,0) s=a.charCodeAt(0) if(!(s>=97&&s<=122))r=s>=65&&s<=90 else r=!0 return r}, -pD(a){var s +pJ(a){var s if(a==null)return!1 if(0>=a.length)return A.c(a,0) s=a.charCodeAt(0) return s>=48&&s<58}, -ut(a){if(a==null)return!1 +uy(a){if(a==null)return!1 if(0>=a.length)return A.c(a,0) switch(a.charCodeAt(0)){case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:case 65:case 66:case 67:case 68:case 69:case 70:case 97:case 98:case 99:case 100:case 101:case 102:return!0}return!1}, -c9(a){var s=new A.af(a) -if(s.aH(s,A.yI())){s=t.G -return A.ay(new A.R(new A.af(a),s.h("b(D.E)").a(A.yH()),s.h("R")),0,null)}return a}, -vo(a){A.aw(a) +c9(a){var s=new A.ah(a) +if(s.aH(s,A.yN())){s=t.gS +return A.aA(new A.Q(new A.ah(a),s.h("b(C.E)").a(A.yM()),s.h("Q")),0,null)}return a}, +vt(a){A.ax(a) return a>=65&&a<=90}, -vn(a){A.aw(a) +vs(a){A.ax(a) return a>=65&&a<=90?a+97-65:a}, -nx:function nx(){}, +nB:function nB(){}, ia:function ia(a){this.a=a}, -kB:function kB(){}, -qs(a){return new A.ew()}, -lP:function lP(a){this.a=a +kD:function kD(){}, +qx(a){return new A.ew()}, +lS:function lS(a){this.a=a this.b=-1}, -lK:function lK(a){this.a=a}, +lN:function lN(a){this.a=a}, ew:function ew(){}, -y6(a){if(32<=a&&a<=126)return!1 +yb(a){if(32<=a&&a<=126)return!1 if(1<=a&&a<=8)return!0 if(14<=a&&a<=31)return!0 if(127<=a&&a<=159)return!0 if(55296<=a&&a<=57343)return!0 if(64976<=a&&a<=65007)return!0 switch(a){case 11:case 65534:case 65535:case 131070:case 131071:case 196606:case 196607:case 262142:case 262143:case 327678:case 327679:case 393214:case 393215:case 458750:case 458751:case 524286:case 524287:case 589822:case 589823:case 655358:case 655359:case 720894:case 720895:case 786430:case 786431:case 851966:case 851967:case 917502:case 917503:case 983038:case 983039:case 1048574:case 1048575:case 1114110:case 1114111:return!0}return!1}, -yD(a){var s=A.a4("[\t-\r -/:-@[-`{-~]",!0) +yI(a){var s=A.a5("[\t-\r -/:-@[-`{-~]",!0) if(a==null)return null -return B.vX.n(0,A.cO(a,s,"").toLowerCase())}, -xP(a,b){var s -A:{if("ascii"===a){s=new A.af(B.id.b0(b)) -break A}if("utf-8"===a){s=new A.af(B.E.b0(b)) -break A}s=A.O(A.U("Encoding "+a+" not supported",null))}return s}, -mw:function mw(a,b,c,d,e){var _=this +return B.vX.m(0,A.cO(a,s,"").toLowerCase())}, +xU(a,b){var s +A:{if("ascii"===a){s=new A.ah(B.id.b0(b)) +break A}if("utf-8"===a){s=new A.ah(B.E.b0(b)) +break A}s=A.P(A.W("Encoding "+a+" not supported",null))}return s}, +mA:function mA(a,b,c,d,e){var _=this _.a=a _.b=!0 _.c=b @@ -4503,38 +4506,38 @@ _.r=d _.w=null _.x=e _.y=0}, -b7:function b7(){}, -zm(a,b){var s=A.i([],t.il) -new A.d0().f8(a,A.qI(b),s) +b9:function b9(){}, +zr(a,b){var s=A.i([],t.il) +new A.d0().f9(a,A.qN(b),s) return s}, -qI(a){var s,r,q,p=null,o=t.kU,n=A.i([],o),m=t.m3.a(B.a.ghE(n)) +qN(a){var s,r,q,p=null,o=t.kU,n=A.i([],o),m=t.m3.a(B.a.ghF(n)) o=A.i([],o) -$.eE.b=new A.j4(m,B.hx,o) -o=new A.af(a) +$.eE.b=new A.j5(m,B.hx,o) +o=new A.ah(a) m=A.i([0],t.Z) -s=o.gm(0) -r=new A.jL(p,m,new Uint32Array(s)) -r.fM(o,p) -o=new A.jV(85,117,43,63,new A.af("CDATA"),r,a,!0,0) -m=new A.kO(o) -m.d=o.c7() +s=o.gn(0) +r=new A.jN(p,m,new Uint32Array(s)) +r.fN(o,p) +o=new A.jX(85,117,43,63,new A.ah("CDATA"),r,a,!0,0) +m=new A.kR(o) +m.d=o.c9() o=o.e=!0 -q=m.io() -if(q!=null?n.length!==0:o)throw A.f(A.aB("'"+a+"' is not a valid selector: "+A.k(n),p,p)) +q=m.ip() +if(q!=null?n.length!==0:o)throw A.f(A.aD("'"+a+"' is not a valid selector: "+A.k(n),p,p)) return q}, -rR(a){switch(a){case"before":case"after":case"first-line":case"first-letter":return!0 +rW(a){switch(a){case"before":case"after":case"first-line":case"first-letter":return!0 default:return!1}}, -wG(a){var s,r -while(a!=null){s=a.b.n(0,"lang") +wL(a){var s,r +while(a!=null){s=a.b.m(0,"lang") if(s!=null)return s r=a.a -a=r instanceof A.a6?r:null}return null}, +a=r instanceof A.K?r:null}return null}, d0:function d0(){this.a=null}, -nE:function nE(){}, -nF:function nF(){}, -nD:function nD(){}, -nC:function nC(a){this.a=a}, -aZ(a,b,c,d){return new A.d2(b==null?A.ac(t.K,t.N):b,c,a,d)}, +nI:function nI(){}, +nJ:function nJ(){}, +nH:function nH(){}, +nG:function nG(a){this.a=a}, +aZ(a,b,c,d){return new A.d2(b==null?A.ae(t.K,t.N):b,c,a,d)}, bl:function bl(){}, cA:function cA(){}, d2:function d2(a,b,c,d){var _=this @@ -4553,10 +4556,10 @@ _.e=a _.b=b _.c=c _.a=null}, -B:function B(a,b){this.b=a +D:function D(a,b){this.b=a this.c=b this.a=null}, -dB:function dB(a,b){this.b=a +dC:function dC(a,b){this.b=a this.c=b this.a=null}, dU:function dU(a,b){this.b=a @@ -4567,7 +4570,7 @@ _.c=_.b=null _.d="" _.e=a _.a=null}, -jQ:function jQ(){this.a=null +jS:function jS(){this.a=null this.b=$}, ff:function ff(a,b,c,d,e,f,g,h){var _=this _.a=a @@ -4583,20 +4586,20 @@ _.z=$ _.at=_.as=_.Q=null _.ax=g _.ay=h}, -my:function my(a){this.a=a}, -yj(a,b){var s,r,q=a.a +mC:function mC(a){this.a=a}, +yo(a,b){var s,r,q=a.a if(q!==b.a)return!1 if(q===0)return!0 -for(q=new A.cv(a,a.r,a.e,A.w(a).h("cv<1>"));q.p();){s=q.d -r=b.n(0,s) -if(r==null&&!b.a8(s))return!1 -if(a.n(0,s)!=r)return!1}return!0}, -rY(a,b,c,d){var s,r,q,p,o=a.gO() +for(q=new A.cv(a,a.r,a.e,A.x(a).h("cv<1>"));q.p();){s=q.d +r=b.m(0,s) +if(r==null&&!b.a7(s))return!1 +if(a.m(0,s)!=r)return!1}return!0}, +t2(a,b,c,d){var s,r,q,p,o=a.gL() if(d==null)if(!o.gN(o)&&o.gA(o) instanceof A.bY){s=t.oI.a(o.gA(o)) -s.hL(b) +s.hM(b) if(c!=null){r=c.a q=s.e -s.e=r.K(A.cU(q.a,q.b).b,A.cU(r,c.c).b)}}else{r=A.qf(b) +s.e=r.K(A.cU(q.a,q.b).b,A.cU(r,c.c).b)}}else{r=A.qk(b) r.e=c o.l(0,r)}else{p=o.al(o,d) if(p>0){r=p-1 @@ -4606,75 +4609,79 @@ r=q[r] instanceof A.bY}else r=!1 if(r){r=p-1 q=o.a if(!(r>=0&&rs?s:c)}, -qL(a){var s,r -for(s=a.length,r=0;r")),m=m.c;j.p();){l=j.d -n.$2(l==null?m.a(l):l,B.bi)}o.$0() -return A.v(["blocks",s,"anchors",q,"length",k.a],r,t.X)}, -pf:function pf(a,b,c){this.a=a +n=new A.pj(k,o,s) +m=new A.pq(k,new A.pp(k,o),n,p,o,new A.pn(A.az(t.Q,q)),s) +if(i!=null)for(j=i.gL().a,q=A.w(j),j=new J.J(j,j.length,q.h("J<1>")),q=q.c;j.p();){l=j.d +m.$2(l==null?q.a(l):l,B.bi)}n.$0() +return A.v(["blocks",s,"anchors",p,"length",k.a],r,t.X)}, +pn:function pn(a){this.a=a}, +po:function po(){}, +pj:function pj(a,b,c){this.a=a this.b=b this.c=c}, -pg:function pg(){}, -ph:function ph(){}, -pi:function pi(){}, -pj:function pj(a,b){this.a=a +pk:function pk(){}, +pl:function pl(){}, +pm:function pm(){}, +pp:function pp(a,b){this.a=a this.b=b}, -pk:function pk(a,b,c,d,e,f){var _=this +pq:function pq(a,b,c,d,e,f,g){var _=this _.a=a _.b=b _.c=c _.d=d _.e=e -_.f=f}, -pl:function pl(){}, -pL(a,b){return A.zk(a,b)}, -zk(a,b){var s=0,r=A.br(t.f),q,p=2,o=[],n,m,l,k,j,i -var $async$pL=A.bs(function(c,d){if(c===1){o.push(d) +_.f=f +_.r=g}, +pr:function pr(){}, +pR(a,b){return A.zp(a,b)}, +zp(a,b){var s=0,r=A.br(t.f),q,p=2,o=[],n,m,l,k,j,i +var $async$pR=A.bs(function(c,d){if(c===1){o.push(d) s=p}for(;;)switch(s){case 0:p=4 j=A -i=b.n(0,"id") +i=b.m(0,"id") s=7 -return A.c3(a.eI(A.q(b.n(0,"command")),b.n(0,"argument")),$async$pL) +return A.c3(a.eJ(A.q(b.m(0,"command")),b.m(0,"argument")),$async$pR) case 7:m=j.v(["id",i,"result",d],t.N,t.X) q=m s=1 @@ -4686,12 +4693,12 @@ case 4:p=3 k=o.pop() m=A.bP(k) if(m instanceof A.f9){n=m -m=b.n(0,"id") +m=b.m(0,"id") n.toString n.toString q=A.v(["id",m,"error","unsupportedFixedLayout","message","Fixed-layout EPUB documents are not supported."],t.N,t.X) s=1 -break}else{m=A.v(["id",b.n(0,"id"),"error","invalidDocument","message","The EPUB document or chapter is invalid or malformed."],t.N,t.X) +break}else{m=A.v(["id",b.m(0,"id"),"error","invalidDocument","message","The EPUB document or chapter is invalid or malformed."],t.N,t.X) q=m s=1 break}s=6 @@ -4700,48 +4707,48 @@ case 3:s=2 break case 6:case 1:return A.bp(q,r) case 2:return A.bo(o.at(-1),r)}}) -return A.bq($async$pL,r)}, -lS:function lS(a,b){this.a=null +return A.bq($async$pR,r)}, +lV:function lV(a,b){this.a=null this.b=a this.c=b}, -lU:function lU(){}, -m1:function m1(a,b){this.a=a -this.b=b}, -m_:function m_(a){this.a=a}, -m0:function m0(a){this.a=a}, -lV:function lV(a){this.a=a}, -lW:function lW(a){this.a=a}, lX:function lX(){}, -lY:function lY(){}, -lZ:function lZ(){}, -lT:function lT(){}, m4:function m4(a,b){this.a=a this.b=b}, +m2:function m2(a){this.a=a}, +m3:function m3(a){this.a=a}, +lY:function lY(a){this.a=a}, +lZ:function lZ(a){this.a=a}, +m_:function m_(){}, +m0:function m0(){}, +m1:function m1(){}, +lW:function lW(){}, +m7:function m7(a,b){this.a=a +this.b=b}, +m8:function m8(){}, m5:function m5(){}, -m2:function m2(){}, -m3:function m3(){}, +m6:function m6(){}, f9:function f9(){}, -u3(a){return a}, -ua(a,b){var s,r,q,p,o,n,m,l +u8(a){return a}, +uf(a,b){var s,r,q,p,o,n,m,l for(s=b.length,r=1;r=1;s=q){q=s-1 -if(b[q]!=null)break}p=new A.W("") +if(b[q]!=null)break}p=new A.Y("") o=a+"(" p.a=o -n=A.x(b) +n=A.w(b) m=n.h("cy<1>") l=new A.cy(b,0,s,m) -l.fN(b,0,s,n.c) -m=o+new A.R(l,m.h("e(G.E)").a(new A.pc()),m.h("R")).aq(0,", ") +l.fO(b,0,s,n.c) +m=o+new A.Q(l,m.h("e(G.E)").a(new A.pg()),m.h("Q")).aq(0,", ") p.a=m p.a=m+("): part "+(r-1)+" was null, but part "+r+" was not.") -throw A.f(A.U(p.j(0),null))}}, -lL:function lL(a){this.a=a}, -lM:function lM(){}, -lN:function lN(){}, -pc:function pc(){}, +throw A.f(A.W(p.j(0),null))}}, +lO:function lO(a){this.a=a}, +lP:function lP(){}, +lQ:function lQ(){}, +pg:function pg(){}, e1:function e1(){}, -jq(a,b){var s,r,q,p,o,n,m=b.iP(a) +jr(a,b){var s,r,q,p,o,n,m=b.iQ(a) b.bO(a) if(m!=null)a=B.b.ab(a,m.length) s=t.s @@ -4756,53 +4763,53 @@ o=1}else{B.a.l(q,"") o=0}for(n=o;n").v(e).h("fq<1,2>"))}, +dt(a,b,c,d,e){return new A.fq(b,!1,a,d.h("@<0>").u(e).h("fq<1,2>"))}, fq:function fq(a,b,c,d){var _=this _.b=a _.c=b @@ -4850,44 +4857,44 @@ _.a=c _.$ti=d}, fU:function fU(a,b){this.a=a this.$ti=b}, -uB(a,b,c,d){var s,r,q=B.b.T(a,"^"),p=q?B.b.ab(a,1):a,o=t.s,n=b?A.i([p.toLowerCase(),p.toUpperCase()],o):A.i([p],o),m=d?$.v7():$.v6() -o=A.x(n) -s=A.ux(new A.dm(n,o.h("h(1)").a(new A.pK(m)),o.h("dm<1,aa>")),d) -if(q)s=s instanceof A.ck?new A.ck(!s.a):new A.ji(s) -o=A.uH(a,d) +uG(a,b,c,d){var s,r,q=B.b.U(a,"^"),p=q?B.b.ab(a,1):a,o=t.s,n=b?A.i([p.toLowerCase(),p.toUpperCase()],o):A.i([p],o),m=d?$.vc():$.vb() +o=A.w(n) +s=A.uC(new A.dn(n,o.h("h(1)").a(new A.pQ(m)),o.h("dn<1,ab>")),d) +if(q)s=s instanceof A.ck?new A.ck(!s.a):new A.jj(s) +o=A.uM(a,d) r=b?" (case-insensitive)":"" c="["+o+"]"+r+" expected" return A.bH(s,c,d)}, -tU(a){var s=A.bH(B.W,"input expected",a),r=t.N,q=t.eN,p=A.ds(s,new A.p8(a),!1,r,q) -return A.rT(A.nn(A.cj(A.i([A.dy(new A.dA(s,A.ud("-",!1,null,!1),s,t.bT),new A.p9(a),r,r,r,q),p],t.fa),null,q),0,9007199254740991,q),new A.id("end of input expected"),null,t.aI)}, -pK:function pK(a){this.a=a}, -p8:function p8(a){this.a=a}, -p9:function p9(a){this.a=a}, +tZ(a){var s=A.bH(B.W,"input expected",a),r=t.N,q=t.eN,p=A.dt(s,new A.pc(a),!1,r,q) +return A.rY(A.nr(A.cj(A.i([A.dz(new A.dB(s,A.ui("-",!1,null,!1),s,t.bT),new A.pd(a),r,r,r,q),p],t.fa),null,q),0,9007199254740991,q),new A.id("end of input expected"),null,t.aI)}, +pQ:function pQ(a){this.a=a}, +pc:function pc(a){this.a=a}, +pd:function pd(a){this.a=a}, ca:function ca(){}, fM:function fM(a){this.a=a}, ck:function ck(a){this.a=a}, -j3:function j3(a,b,c){this.a=a +j4:function j4(a,b,c){this.a=a this.b=b this.c=c}, -ji:function ji(a){this.a=a}, -aa:function aa(a,b){this.a=a +jj:function jj(a){this.a=a}, +ab:function ab(a,b){this.a=a this.b=b}, -k6:function k6(){}, -uH(a,b){var s=b?new A.bV(a):new A.af(a) -return s.cr(s,new A.pS(),t.N).aQ(0)}, -pS:function pS(){}, -zi(a,b,c){var s=new A.af(b?a.toLowerCase()+a.toUpperCase():a) -return A.ux(s.cr(s,new A.pJ(),t.eN),!1)}, -ux(a,b){var s,r,q,p,o,n,m,l,k=A.aV(a,t.eN) +k8:function k8(){}, +uM(a,b){var s=b?new A.bV(a):new A.ah(a) +return s.c8(s,new A.pY(),t.N).aQ(0)}, +pY:function pY(){}, +zn(a,b,c){var s=new A.ah(b?a.toLowerCase()+a.toUpperCase():a) +return A.uC(s.c8(s,new A.pP(),t.eN),!1)}, +uC(a,b){var s,r,q,p,o,n,m,l,k=A.a7(a,t.eN) k.$flags=1 s=k -B.a.cd(s,new A.pH()) +B.a.bV(s,new A.pN()) r=A.i([],t.lU) -for(k=s.length,q=0;q=p.a)B.a.k(r,r.length-1,new A.aa(o.a,p.b)) -else B.a.l(r,p)}}n=B.a.cQ(r,0,new A.pI(),t.S) +if(o.b+1>=p.a)B.a.k(r,r.length-1,new A.ab(o.a,p.b)) +else B.a.l(r,p)}}n=B.a.cQ(r,0,new A.pO(),t.S) if(n===0)return B.is else{if(!(b&&n-1===1114111))k=!b&&n-1===65535 else k=!0 @@ -4899,59 +4906,59 @@ m=k.a return m===k.b?new A.fM(m):k}else{k=B.a.gbv(r) m=B.a.gA(r) l=B.f.b5(B.a.gA(r).b-B.a.gbv(r).a+31+1,5) -k=new A.j3(k.a,m.b,new Uint32Array(l)) -k.jU(r) +k=new A.j4(k.a,m.b,new Uint32Array(l)) +k.jV(r) return k}}}}, -pJ:function pJ(){}, -pH:function pH(){}, -pI:function pI(){}, -cj(a,b,c){var s=b==null?A.z_():b,r=A.aV(a,c.h("n<0>")) +pP:function pP(){}, +pN:function pN(){}, +pO:function pO(){}, +cj(a,b,c){var s=b==null?A.z4():b,r=A.a7(a,c.h("n<0>")) r.$flags=1 return new A.eO(s,r,c.h("eO<0>"))}, eO:function eO(a,b,c){this.b=a this.a=b this.$ti=c}, -at:function at(){}, -uF(a,b,c,d){return new A.fH(a,b,c.h("@<0>").v(d).h("fH<1,2>"))}, -wD(a,b,c,d,e){return A.ds(a,new A.nr(b,c,d,e),!1,c.h("@<0>").v(d).h("+(1,2)"),e)}, +au:function au(){}, +uK(a,b,c,d){return new A.fH(a,b,c.h("@<0>").u(d).h("fH<1,2>"))}, +wI(a,b,c,d,e){return A.dt(a,new A.nv(b,c,d,e),!1,c.h("@<0>").u(d).h("+(1,2)"),e)}, fH:function fH(a,b,c){this.a=a this.b=b this.$ti=c}, -nr:function nr(a,b,c,d){var _=this +nv:function nv(a,b,c,d){var _=this _.a=a _.b=b _.c=c _.d=d}, -c5(a,b,c,d,e,f){return new A.dA(a,b,c,d.h("@<0>").v(e).v(f).h("dA<1,2,3>"))}, -dy(a,b,c,d,e,f){return A.ds(a,new A.ns(b,c,d,e,f),!1,c.h("@<0>").v(d).v(e).h("+(1,2,3)"),f)}, -dA:function dA(a,b,c,d){var _=this +c5(a,b,c,d,e,f){return new A.dB(a,b,c,d.h("@<0>").u(e).u(f).h("dB<1,2,3>"))}, +dz(a,b,c,d,e,f){return A.dt(a,new A.nw(b,c,d,e,f),!1,c.h("@<0>").u(d).u(e).h("+(1,2,3)"),f)}, +dB:function dB(a,b,c,d){var _=this _.a=a _.b=b _.c=c _.$ti=d}, -ns:function ns(a,b,c,d,e){var _=this +nw:function nw(a,b,c,d,e){var _=this _.a=a _.b=b _.c=c _.d=d _.e=e}, -pO(a,b,c,d,e,f,g,h){return new A.fI(a,b,c,d,e.h("@<0>").v(f).v(g).v(h).h("fI<1,2,3,4>"))}, -nt(a,b,c,d,e,f,g){return A.ds(a,new A.nu(b,c,d,e,f,g),!1,c.h("@<0>").v(d).v(e).v(f).h("+(1,2,3,4)"),g)}, +pU(a,b,c,d,e,f,g,h){return new A.fI(a,b,c,d,e.h("@<0>").u(f).u(g).u(h).h("fI<1,2,3,4>"))}, +nx(a,b,c,d,e,f,g){return A.dt(a,new A.ny(b,c,d,e,f,g),!1,c.h("@<0>").u(d).u(e).u(f).h("+(1,2,3,4)"),g)}, fI:function fI(a,b,c,d,e){var _=this _.a=a _.b=b _.c=c _.d=d _.$ti=e}, -nu:function nu(a,b,c,d,e,f){var _=this +ny:function ny(a,b,c,d,e,f){var _=this _.a=a _.b=b _.c=c _.d=d _.e=e _.f=f}, -uG(a,b,c,d,e,f,g,h,i,j){return new A.fJ(a,b,c,d,e,f.h("@<0>").v(g).v(h).v(i).v(j).h("fJ<1,2,3,4,5>"))}, -rO(a,b,c,d,e,f,g,h){return A.ds(a,new A.nv(b,c,d,e,f,g,h),!1,c.h("@<0>").v(d).v(e).v(f).v(g).h("+(1,2,3,4,5)"),h)}, +uL(a,b,c,d,e,f,g,h,i,j){return new A.fJ(a,b,c,d,e,f.h("@<0>").u(g).u(h).u(i).u(j).h("fJ<1,2,3,4,5>"))}, +rT(a,b,c,d,e,f,g,h){return A.dt(a,new A.nz(b,c,d,e,f,g,h),!1,c.h("@<0>").u(d).u(e).u(f).u(g).h("+(1,2,3,4,5)"),h)}, fJ:function fJ(a,b,c,d,e,f){var _=this _.a=a _.b=b @@ -4959,7 +4966,7 @@ _.c=c _.d=d _.e=e _.$ti=f}, -nv:function nv(a,b,c,d,e,f,g){var _=this +nz:function nz(a,b,c,d,e,f,g){var _=this _.a=a _.b=b _.c=c @@ -4967,7 +4974,7 @@ _.d=d _.e=e _.f=f _.r=g}, -wE(a,b,c,d,e,f,g,h,i,j,k){return A.ds(a,new A.nw(b,c,d,e,f,g,h,i,j,k),!1,c.h("@<0>").v(d).v(e).v(f).v(g).v(h).v(i).v(j).h("+(1,2,3,4,5,6,7,8)"),k)}, +wJ(a,b,c,d,e,f,g,h,i,j,k){return A.dt(a,new A.nA(b,c,d,e,f,g,h,i,j,k),!1,c.h("@<0>").u(d).u(e).u(f).u(g).u(h).u(i).u(j).h("+(1,2,3,4,5,6,7,8)"),k)}, fK:function fK(a,b,c,d,e,f,g,h,i){var _=this _.a=a _.b=b @@ -4978,7 +4985,7 @@ _.f=f _.r=g _.w=h _.$ti=i}, -nw:function nw(a,b,c,d,e,f,g,h,i,j){var _=this +nA:function nA(a,b,c,d,e,f,g,h,i,j){var _=this _.a=a _.b=b _.c=c @@ -4989,11 +4996,11 @@ _.r=g _.w=h _.x=i _.y=j}, -dr:function dr(){}, +ds:function ds(){}, bT:function bT(a,b,c){this.b=a this.a=b this.$ti=c}, -rT(a,b,c,d){var s=c==null?new A.cQ(null,t.cC):c,r=b==null?new A.cQ(null,t.cC):b +rY(a,b,c,d){var s=c==null?new A.cQ(null,t.cC):c,r=b==null?new A.cQ(null,t.cC):b return new A.fP(s,r,a,d.h("fP<0>"))}, fP:function fP(a,b,c,d){var _=this _.b=a @@ -5003,7 +5010,7 @@ _.$ti=d}, id:function id(a){this.a=a}, cQ:function cQ(a,b){this.a=a this.$ti=b}, -jf:function jf(a){this.a=a}, +jg:function jg(a){this.a=a}, bH(a,b,c){var s switch(c){case!1:s=a instanceof A.ck&&a.a?new A.hO(a,b):new A.ej(a,b) break @@ -5018,19 +5025,19 @@ ej:function ej(a,b){this.a=a this.b=b}, hO:function hO(a,b){this.a=a this.b=b}, -zs(a,b,c){var s=a.length -if(b)s=new A.fC(s,new A.pQ(a),'"'+a+'" (case-insensitive) expected') -else s=new A.fC(s,new A.pR(a),'"'+a+'" expected') +zx(a,b,c){var s=a.length +if(b)s=new A.fC(s,new A.pW(a),'"'+a+'" (case-insensitive) expected') +else s=new A.fC(s,new A.pX(a),'"'+a+'" expected') return s}, -pQ:function pQ(a){this.a=a}, -pR:function pR(a){this.a=a}, +pW:function pW(a){this.a=a}, +pX:function pX(a){this.a=a}, fV:function fV(a,b){this.a=a this.b=b}, hP:function hP(a,b){this.a=a this.b=b}, -rP(a,b,c,d){if(a instanceof A.ej)return new A.jF(a.a,d,b,c) -else return new A.cp(d,A.nn(a,b,c,t.N))}, -jF:function jF(a,b,c,d){var _=this +rU(a,b,c,d){if(a instanceof A.ej)return new A.jH(a.a,d,b,c) +else return new A.cp(d,A.nr(a,b,c,t.N))}, +jH:function jH(a,b,c,d){var _=this _.a=a _.b=b _.c=c @@ -5042,89 +5049,89 @@ _.c=c _.a=d _.$ti=e}, fm:function fm(){}, -nn(a,b,c,d){return new A.fB(b,c,a,d.h("fB<0>"))}, +nr(a,b,c,d){return new A.fB(b,c,a,d.h("fB<0>"))}, fB:function fB(a,b,c,d){var _=this _.b=a _.c=b _.a=c _.$ti=d}, -dz:function dz(){}, -cU(a,b){if(b<0)A.O(A.aP("Offset may not be negative, was "+b+".")) -else if(b>a.c.length)A.O(A.aP("Offset "+b+u.D+a.gm(0)+".")) +dA:function dA(){}, +cU(a,b){if(b<0)A.P(A.aQ("Offset may not be negative, was "+b+".")) +else if(b>a.c.length)A.P(A.aQ("Offset "+b+u.D+a.gn(0)+".")) return new A.bh(a,b)}, -qt(a,b,c){if(ca.c.length)A.O(A.aP("End "+c+u.D+a.gm(0)+".")) -else if(b<0)A.O(A.aP("Start may not be negative, was "+b+".")) -return new A.av(a,b,c)}, -jL:function jL(a,b,c){var _=this +qy(a,b,c){if(ca.c.length)A.P(A.aQ("End "+c+u.D+a.gn(0)+".")) +else if(b<0)A.P(A.aQ("Start may not be negative, was "+b+".")) +return new A.aw(a,b,c)}, +jN:function jN(a,b,c){var _=this _.a=a _.b=b _.c=c _.d=null}, bh:function bh(a,b){this.a=a this.b=b}, -av:function av(a,b,c){this.a=a +aw:function aw(a,b,c){this.a=a this.b=b this.c=c}, -vJ(a,b){var s=A.vK(A.i([A.x8(a,!0)],t.g7)),r=new A.mu(b).$0(),q=B.f.j(B.a.gA(s).b+1),p=A.vL(s)?0:3,o=A.x(s) -return new A.ma(s,r,null,1+Math.max(q.length,p),new A.R(s,o.h("b(1)").a(new A.mc()),o.h("R<1,b>")).o5(0,B.ic),!A.zc(new A.R(s,o.h("p?(1)").a(new A.md()),o.h("R<1,p?>"))),new A.W(""))}, -vL(a){var s,r,q +vO(a,b){var s=A.vP(A.i([A.xd(a,!0)],t.g7)),r=new A.my(b).$0(),q=B.f.j(B.a.gA(s).b+1),p=A.vQ(s)?0:3,o=A.w(s) +return new A.me(s,r,null,1+Math.max(q.length,p),new A.Q(s,o.h("b(1)").a(new A.mg()),o.h("Q<1,b>")).o6(0,B.ic),!A.zh(new A.Q(s,o.h("p?(1)").a(new A.mh()),o.h("Q<1,p?>"))),new A.Y(""))}, +vQ(a){var s,r,q for(s=0;s"));r.p();)J.vk(r.d,new A.mg()) -s=s.h("dp<1,2>") -r=s.h("dm") -s=A.aV(new A.dm(new A.dp(q,s),s.h("h(h.E)").a(new A.mh()),r),r.h("h.E")) +if(r.b+1!==q.b&&J.N(r.c,q.c))return!1}return!0}, +vP(a){var s,r,q=A.z9(a,new A.mj(),t.D,t.K) +for(s=A.x(q),r=new A.dr(q,q.r,q.e,s.h("dr<2>"));r.p();)J.vp(r.d,new A.mk()) +s=s.h("dq<1,2>") +r=s.h("dn") +s=A.a7(new A.dn(new A.dq(q,s),s.h("h(h.E)").a(new A.ml()),r),r.h("h.E")) return s}, -x8(a,b){var s=new A.oL(a).$0() -return new A.aK(s,!0,null)}, -xa(a){var s,r,q,p,o,n,m=a.gZ() -if(!B.b.D(m,"\r\n"))return a -s=a.gU().gaw() +xd(a,b){var s=new A.oP(a).$0() +return new A.aL(s,!0,null)}, +xf(a){var s,r,q,p,o,n,m=a.gZ() +if(!B.b.C(m,"\r\n"))return a +s=a.gV().gaw() for(r=m.length-1,q=0;q=0))return A.c(a,s) if(a.charCodeAt(s)===10)return r===1?0:r-B.b.dO(a,"\n",r-2)-1 else return r-B.b.cU(a,"\n")-1}}, -ma:function ma(a,b,c,d,e,f,g){var _=this +me:function me(a,b,c,d,e,f,g){var _=this _.a=a _.b=b _.c=c @@ -5132,23 +5139,23 @@ _.d=d _.e=e _.f=f _.r=g}, -mu:function mu(a){this.a=a}, -mc:function mc(){}, -mb:function mb(){}, -md:function md(){}, -mf:function mf(){}, +my:function my(a){this.a=a}, mg:function mg(){}, +mf:function mf(){}, mh:function mh(){}, -me:function me(a){this.a=a}, -mv:function mv(){}, +mj:function mj(){}, +mk:function mk(){}, +ml:function ml(){}, mi:function mi(a){this.a=a}, -mp:function mp(a,b,c){this.a=a +mz:function mz(){}, +mm:function mm(a){this.a=a}, +mt:function mt(a,b,c){this.a=a this.b=b this.c=c}, -mq:function mq(a,b){this.a=a +mu:function mu(a,b){this.a=a this.b=b}, -mr:function mr(a){this.a=a}, -ms:function ms(a,b,c,d,e,f,g){var _=this +mv:function mv(a){this.a=a}, +mw:function mw(a,b,c,d,e,f,g){var _=this _.a=a _.b=b _.c=c @@ -5156,158 +5163,158 @@ _.d=d _.e=e _.f=f _.r=g}, -mn:function mn(a,b){this.a=a +mr:function mr(a,b){this.a=a this.b=b}, -mo:function mo(a,b){this.a=a +ms:function ms(a,b){this.a=a this.b=b}, -mj:function mj(a,b,c,d){var _=this +mn:function mn(a,b,c,d){var _=this _.a=a _.b=b _.c=c _.d=d}, -mk:function mk(a,b,c){this.a=a +mo:function mo(a,b,c){this.a=a this.b=b this.c=c}, -ml:function ml(a,b,c){this.a=a +mp:function mp(a,b,c){this.a=a this.b=b this.c=c}, -mm:function mm(a,b,c,d){var _=this +mq:function mq(a,b,c,d){var _=this _.a=a _.b=b _.c=c _.d=d}, -mt:function mt(a,b,c){this.a=a +mx:function mx(a,b,c){this.a=a this.b=b this.c=c}, -aK:function aK(a,b,c){this.a=a +aL:function aL(a,b,c){this.a=a this.b=b this.c=c}, -oL:function oL(a){this.a=a}, +oP:function oP(a){this.a=a}, bD:function bD(a,b,c,d){var _=this _.a=a _.b=b _.c=c _.d=d}, -jM(a,b,c,d){if(a<0)A.O(A.aP("Offset may not be negative, was "+a+".")) -else if(c<0)A.O(A.aP("Line may not be negative, was "+c+".")) -else if(b<0)A.O(A.aP("Column may not be negative, was "+b+".")) +jO(a,b,c,d){if(a<0)A.P(A.aQ("Offset may not be negative, was "+a+".")) +else if(c<0)A.P(A.aQ("Line may not be negative, was "+c+".")) +else if(b<0)A.P(A.aQ("Column may not be negative, was "+b+".")) return new A.bW(d,a,c,b)}, bW:function bW(a,b,c,d){var _=this _.a=a _.b=b _.c=c _.d=d}, -jN:function jN(){}, -jO:function jO(){}, +jP:function jP(){}, +jQ:function jQ(){}, ek:function ek(){}, -nH(a,b,c,d){var s=new A.cd(d,a,b,c) -s.jV(a,b,c) -if(!B.b.D(d,c))A.O(A.U('The context line "'+d+'" must contain "'+c+'".',null)) -if(A.pu(d,c,a.gao())==null)A.O(A.U('The span text "'+c+'" must start at column '+(a.gao()+1)+' in a line within "'+d+'".',null)) +nL(a,b,c,d){var s=new A.cd(d,a,b,c) +s.jW(a,b,c) +if(!B.b.C(d,c))A.P(A.W('The context line "'+d+'" must contain "'+c+'".',null)) +if(A.pA(d,c,a.gao())==null)A.P(A.W('The span text "'+c+'" must start at column '+(a.gao()+1)+' in a line within "'+d+'".',null)) return s}, cd:function cd(a,b,c,d){var _=this _.d=a _.a=b _.b=c _.c=d}, -aI:function aI(a,b,c,d){var _=this +aJ:function aJ(a,b,c,d){var _=this _.a=a _.b=b _.c=c _.d=d}, -yw(a){var s=a.d8(0) +yB(a){var s=a.d8(0) s.toString switch(s){case"<":return"<" case"&":return"&" case"]]>":return"]]>" -default:return A.qE(s)}}, -yr(a){var s=a.d8(0) +default:return A.qJ(s)}}, +yw(a){var s=a.d8(0) s.toString switch(s){case"'":return"'" case"&":return"&" case"<":return"<" -default:return A.qE(s)}}, -xU(a){var s=a.d8(0) +default:return A.qJ(s)}}, +xZ(a){var s=a.d8(0) s.toString switch(s){case'"':return""" case"&":return"&" case"<":return"<" -default:return A.qE(s)}}, -qE(a){var s=t.mO -return A.rz(new A.bV(a),s.h("e(h.E)").a(new A.p4()),s.h("h.E"),t.N).aQ(0)}, -kb:function kb(){}, -p4:function p4(){}, +default:return A.qJ(s)}}, +qJ(a){var s=t.mO +return A.rE(new A.bV(a),s.h("e(h.E)").a(new A.p8()),s.h("h.E"),t.N).aQ(0)}, +kd:function kd(){}, +p8:function p8(){}, d5:function d5(){}, -ae:function ae(a,b,c){this.c=a +ag:function ag(a,b,c){this.c=a this.a=b this.b=c}, bm:function bm(a,b){this.a=a this.b=b}, -ki:function ki(){}, -kj:function kj(){}, -tb(a,b,c){return new A.km(a)}, -kn(a){if(a.gc8()!=null)throw A.f(A.tb(u.d,a,a.gc8()))}, -km:function km(a){this.a=a}, -er(a,b,c){return new A.ko(b,c,$,$,$,a)}, -ko:function ko(a,b,c,d,e,f){var _=this +kk:function kk(){}, +kl:function kl(){}, +tg(a,b,c){return new A.ko(a)}, +kp(a){if(a.gca()!=null)throw A.f(A.tg(u.d,a,a.gca()))}, +ko:function ko(a){this.a=a}, +er(a,b,c){return new A.kq(b,c,$,$,$,a)}, +kq:function kq(a,b,c,d,e,f){var _=this _.b=a _.c=b _.ax$=c _.ay$=d _.ch$=e _.a=f}, -lo:function lo(){}, -ql(a,b,c,d,e){return new A.kp(c,e,$,$,$,a)}, -tc(a,b,c,d){return A.ql("Expected , but found ",b,c,a,d)}, -td(a,b,c){return A.ql("Unexpected ",a,b,null,c)}, -wW(a,b,c){return A.ql("Missing ",null,b,a,c)}, -kp:function kp(a,b,c,d,e,f){var _=this +lr:function lr(){}, +qq(a,b,c,d,e){return new A.kr(c,e,$,$,$,a)}, +th(a,b,c,d){return A.qq("Expected , but found ",b,c,a,d)}, +ti(a,b,c){return A.qq("Unexpected ",a,b,null,c)}, +x0(a,b,c){return A.qq("Missing ",null,b,a,c)}, +kr:function kr(a,b,c,d,e,f){var _=this _.d=a _.e=b _.ax$=c _.ay$=d _.ch$=e _.a=f}, -lq:function lq(){}, -wU(a,b,c){return new A.h2(a)}, -ta(a,b){if(!b.D(0,a.gaS()))throw A.f(new A.h2("Got "+a.gaS().j(0)+", but expected one of "+b.aq(0,", ")))}, +lt:function lt(){}, +wZ(a,b,c){return new A.h2(a)}, +tf(a,b){if(!b.C(0,a.gaS()))throw A.f(new A.h2("Got "+a.gaS().j(0)+", but expected one of "+b.aq(0,", ")))}, h2:function h2(a){this.a=a}, c1:function c1(a){this.a=a}, -kc:function kc(a){this.a=a +ke:function ke(a){this.a=a this.b=$}, cH(a){var s=t.n8 -return new A.b8(new A.bb(new A.c1(a),s.h("C(h.E)").a(new A.oj()),s.h("bb")),s.h("e?(h.E)").a(new A.ok()),s.h("b8")).aQ(0)}, -oj:function oj(){}, -ok:function ok(){}, -nT:function nT(){}, +return new A.ba(new A.b_(new A.c1(a),s.h("A(h.E)").a(new A.on()),s.h("b_")),s.h("e?(h.E)").a(new A.oo()),s.h("ba")).aQ(0)}, +on:function on(){}, +oo:function oo(){}, +nX:function nX(){}, ep:function ep(){}, -nU:function nU(){}, +nY:function nY(){}, d6:function d6(){}, cG:function cG(){}, -aR:function aR(){}, -X:function X(){}, -ol:function ol(){}, -aG:function aG(){}, -kl:function kl(){}, -nS(a,b,c){var s=new A.aQ(a,b,c,null) -A.w(a).h("X.T").a(s) -A.kn(a) +aS:function aS(){}, +Z:function Z(){}, +op:function op(){}, +aH:function aH(){}, +kn:function kn(){}, +nW(a,b,c){var s=new A.aR(a,b,c,null) +A.x(a).h("Z.T").a(s) +A.kp(a) a.x$=s return s}, -aQ:function aQ(a,b,c,d){var _=this +aR:function aR(a,b,c,d){var _=this _.a=a _.b=b _.c=c _.x$=d}, -kX:function kX(){}, -kY:function kY(){}, +l_:function l_(){}, +l0:function l0(){}, en:function en(a,b){this.a=a this.x$=b}, fY:function fY(a,b){this.a=a this.x$=b}, -k9:function k9(){}, -kZ:function kZ(){}, -t6(a){var s=A.h1(t.F),r=new A.ka(s,null) +kb:function kb(){}, +l1:function l1(){}, +tb(a){var s=A.h1(t.G),r=new A.kc(s,null) t.i2.a(B.aB) s.b!==$&&A.c6() s.b=r @@ -5315,21 +5322,21 @@ s.c!==$&&A.c6() s.c=B.aB s.a1(0,a) return r}, -ka:function ka(a,b){this.y$=a +kc:function kc(a,b){this.y$=a this.x$=b}, -nV:function nV(){}, -l_:function l_(){}, -l0:function l0(){}, +nZ:function nZ(){}, +l2:function l2(){}, +l3:function l3(){}, fZ:function fZ(a,b,c,d){var _=this _.a=a _.b=b _.c=c _.x$=d}, -l1:function l1(){}, -nW(a){var s=t.bO.a(new A.kf(a,B.bF,!0,!0,!1,!1,!1)),r=A.i([],t.eB) -s.X(0,new A.lh(new A.df(t.f0.a(B.a.glb(r)),t.k0)).giD()) -return A.t7(r)}, -t7(a){var s=A.h1(t.I),r=new A.kd(s) +l4:function l4(){}, +o_(a){var s=t.bO.a(new A.kh(a,B.bF,!0,!0,!1,!1,!1)),r=A.i([],t.eB) +s.T(0,new A.lk(new A.dg(t.f0.a(B.a.glc(r)),t.k0)).giE()) +return A.tc(r)}, +tc(a){var s=A.h1(t.I),r=new A.kf(s) t.i2.a(B.hO) s.b!==$&&A.c6() s.b=r @@ -5337,12 +5344,12 @@ s.c!==$&&A.c6() s.c=B.hO s.a1(0,a) return r}, -kd:function kd(a){this.w$=a}, -nX:function nX(){}, -l2:function l2(){}, -wT(a,b,c,d){var s,r=A.h1(t.I),q=A.h1(t.F),p=new A.aF(d,a,r,q,null) -A.w(a).h("X.T").a(p) -A.kn(a) +kf:function kf(a){this.w$=a}, +o0:function o0(){}, +l5:function l5(){}, +wY(a,b,c,d){var s,r=A.h1(t.I),q=A.h1(t.G),p=new A.aG(d,a,r,q,null) +A.x(a).h("Z.T").a(p) +A.kp(a) a.x$=p s=t.i2 s.a(B.aB) @@ -5358,9 +5365,9 @@ r.c!==$&&A.c6() r.c=B.bz r.a1(0,c) return p}, -t8(a,b,c,d){var s=A.t9(a),r=A.h1(t.I),q=A.h1(t.F),p=new A.aF(d,s,r,q,null) -A.w(s).h("X.T").a(p) -A.kn(s) +td(a,b,c,d){var s=A.te(a),r=A.h1(t.I),q=A.h1(t.G),p=new A.aG(d,s,r,q,null) +A.x(s).h("Z.T").a(p) +A.kp(s) s.x$=p s=t.i2 s.a(B.aB) @@ -5376,61 +5383,61 @@ r.c!==$&&A.c6() r.c=B.bz r.a1(0,c) return p}, -aF:function aF(a,b,c,d,e){var _=this +aG:function aG(a,b,c,d,e){var _=this _.a=a _.b=b _.w$=c _.y$=d _.x$=e}, -nY:function nY(){}, -nZ:function nZ(){}, -l3:function l3(){}, -l4:function l4(){}, -l5:function l5(){}, +o1:function o1(){}, +o2:function o2(){}, l6:function l6(){}, +l7:function l7(){}, +l8:function l8(){}, +l9:function l9(){}, E:function E(){}, -li:function li(){}, -lj:function lj(){}, -lk:function lk(){}, ll:function ll(){}, lm:function lm(){}, ln:function ln(){}, +lo:function lo(){}, +lp:function lp(){}, +lq:function lq(){}, h4:function h4(a,b,c){this.c=a this.a=b this.x$=c}, es:function es(a,b){this.a=a this.x$=b}, -k8:function k8(a,b,c,d){var _=this +ka:function ka(a,b,c,d){var _=this _.a=a _.b=b _.c=c _.$ti=d}, eo:function eo(a,b){this.a=a this.b=b}, -t9(a){var s=B.b.al(a,":") +te(a){var s=B.b.al(a,":") if(s>0)return new A.h3(B.b.t(a,0,s),B.b.ab(a,s+1),a,null) else return new A.h5(a,null)}, eq:function eq(){}, -le:function le(){}, -lf:function lf(){}, -lg:function lg(){}, -ui(a,b){if(a==="*")if(b==null||b==="*")return new A.pm() -else return new A.pn(b) -else if(b==null)return new A.po(a) -else if(b==="*")return new A.pp(a) -else return new A.pq(a,b)}, -pm:function pm(){}, -pn:function pn(a){this.a=a}, -po:function po(a){this.a=a}, -pp:function pp(a){this.a=a}, -pq:function pq(a,b){this.a=a +lh:function lh(){}, +li:function li(){}, +lj:function lj(){}, +un(a,b){if(a==="*")if(b==null||b==="*")return new A.ps() +else return new A.pt(b) +else if(b==null)return new A.pu(a) +else if(b==="*")return new A.pv(a) +else return new A.pw(a,b)}, +ps:function ps(){}, +pt:function pt(a){this.a=a}, +pu:function pu(a){this.a=a}, +pv:function pv(a){this.a=a}, +pw:function pw(a,b){this.a=a this.b=b}, h1(a){return new A.h0(A.i([],a.h("y<0>")),a.h("h0<0>"))}, h0:function h0(a,b){var _=this _.c=_.b=$ _.a=a _.$ti=b}, -oi:function oi(a){this.a=a}, +om:function om(a){this.a=a}, h3:function h3(a,b,c,d){var _=this _.b=a _.c=b @@ -5438,11 +5445,11 @@ _.d=c _.x$=d}, h5:function h5(a,b){this.b=a this.x$=b}, -kq:function kq(){}, -kr:function kr(a,b){this.a=a +ks:function ks(){}, +kt:function kt(a,b){this.a=a this.b=b}, -lr:function lr(){}, -nR:function nR(a,b,c,d,e,f,g){var _=this +lu:function lu(){}, +nV:function nV(a,b,c,d,e,f,g){var _=this _.a=a _.b=b _.c=c @@ -5450,21 +5457,21 @@ _.d=d _.e=e _.f=f _.r=g}, -og:function og(){}, -oh:function oh(){}, -kk:function kk(){}, -ke:function ke(a){this.a=a}, -la:function la(a,b){this.a=a +ok:function ok(){}, +ol:function ol(){}, +km:function km(){}, +kg:function kg(a){this.a=a}, +ld:function ld(a,b){this.a=a this.b=b}, -ls:function ls(){}, -lh:function lh(a){this.a=a +lv:function lv(){}, +lk:function lk(a){this.a=a this.b=null}, -p1:function p1(){}, -lt:function lt(){}, -a0:function a0(){}, -lb:function lb(){}, -lc:function lc(){}, -ld:function ld(){}, +p5:function p5(){}, +lw:function lw(){}, +a1:function a1(){}, +le:function le(){}, +lf:function lf(){}, +lg:function lg(){}, c_:function c_(a,b,c,d,e){var _=this _.e=a _.at$=b @@ -5497,7 +5504,7 @@ _.at$=b _.Q$=c _.as$=d _.z$=e}, -l7:function l7(){}, +la:function la(){}, c2:function c2(a,b,c,d,e,f){var _=this _.e=a _.f=b @@ -5505,7 +5512,7 @@ _.at$=c _.Q$=d _.as$=e _.z$=f}, -bc:function bc(a,b,c,d,e,f,g){var _=this +bd:function bd(a,b,c,d,e,f,g){var _=this _.e=a _.f=b _.r=c @@ -5513,8 +5520,8 @@ _.at$=d _.Q$=e _.as$=f _.z$=g}, -lp:function lp(){}, -dH:function dH(a,b,c,d,e,f){var _=this +ls:function ls(){}, +dI:function dI(a,b,c,d,e,f){var _=this _.e=a _.f=b _.r=$ @@ -5522,7 +5529,7 @@ _.at$=c _.Q$=d _.as$=e _.z$=f}, -kf:function kf(a,b,c,d,e,f,g){var _=this +kh:function kh(a,b,c,d,e,f,g){var _=this _.a=a _.b=b _.c=c @@ -5530,58 +5537,58 @@ _.d=d _.e=e _.f=f _.r=g}, -kg:function kg(a,b,c){var _=this +ki:function ki(a,b,c){var _=this _.a=a _.b=b _.c=c _.d=null}, -kh:function kh(a){this.a=a}, -o5:function o5(a){this.a=a}, -of:function of(){}, -o3:function o3(a){this.a=a}, -o_:function o_(){}, -o0:function o0(){}, -o2:function o2(){}, -o1:function o1(){}, -oc:function oc(){}, -o6:function o6(){}, +kj:function kj(a){this.a=a}, +o9:function o9(a){this.a=a}, +oj:function oj(){}, +o7:function o7(a){this.a=a}, +o3:function o3(){}, o4:function o4(){}, -o7:function o7(){}, +o6:function o6(){}, +o5:function o5(){}, +og:function og(){}, +oa:function oa(){}, +o8:function o8(){}, +ob:function ob(){}, +oh:function oh(){}, +oi:function oi(){}, +of:function of(){}, od:function od(){}, +oc:function oc(){}, oe:function oe(){}, -ob:function ob(){}, -o9:function o9(){}, -o8:function o8(){}, -oa:function oa(){}, -pt:function pt(){}, -df:function df(a,b){this.a=a +pz:function pz(){}, +dg:function dg(a,b){this.a=a this.$ti=b}, -au:function au(a,b,c,d){var _=this +av:function av(a,b,c,d){var _=this _.a=a _.b=b _.c=c _.z$=d}, -l8:function l8(){}, -l9:function l9(){}, +lb:function lb(){}, +lc:function lc(){}, h_:function h_(){}, -dG:function dG(){}, -zf(){var s,r,q={},p=new A.az($.am,t.cU) -p.e7(null) +dH:function dH(){}, +zk(){var s,r,q={},p=new A.aB($.an,t.cU) +p.e8(null) q.a=p -s=A.p3(v.G.self) -q=new A.pF(q,new A.lS(B.bI,A.aC(t.S,t.f))) -if(typeof q=="function")A.O(A.U("Attempting to rewrap a JS function.",null)) -r=function(a,b){return function(c){return a(b,c,arguments.length)}}(A.xM,q) -r[$.qZ()]=q +s=A.p7(v.G.self) +q=new A.pL(q,new A.lV(B.bI,A.az(t.S,t.f))) +if(typeof q=="function")A.P(A.W("Attempting to rewrap a JS function.",null)) +r=function(a,b){return function(c){return a(b,c,arguments.length)}}(A.xR,q) +r[$.r3()]=q s.onmessage=r}, -pF:function pF(a,b){this.a=a +pL:function pL(a,b){this.a=a this.b=b}, -pE:function pE(a,b){this.a=a +pK:function pK(a,b){this.a=a this.b=b}, -uw(a,b,c){A.ue(c,t.cZ,"T","max") +uB(a,b,c){A.uj(c,t.cZ,"T","max") return Math.max(c.a(a),c.a(b))}, -up(a,b){return(B.jc[(a^b)&255]^B.f.b5(a,8))>>>0}, -yW(a,b){var s,r,q,p,o=a.length,n=b.length +uu(a,b){return(B.jc[(a^b)&255]^B.f.b5(a,8))>>>0}, +z0(a,b){var s,r,q,p,o=a.length,n=b.length if(o!==n)return!1 for(s=0;s")) +z9(a,b,c,d){var s,r,q,p,o,n=A.az(d,c.h("m<0>")) for(s=c.h("y<0>"),r=0;r<1;++r){q=a[r] p=b.$1(q) -o=n.n(0,p) +o=n.m(0,p) if(o==null){o=A.i([],s) n.k(0,p,o) p=o}else p=o -J.vb(p,q)}return n}, +J.vg(p,q)}return n}, bI(a,b,c){var s,r -for(s=J.as(a);s.p();){r=s.gB() +for(s=J.at(a);s.p();){r=s.gB() if(b.$1(r))return r}return null}, -e3(a,b){var s=J.as(a.a) +e3(a,b){var s=J.at(a.a) if(new A.cF(s,a.b,a.$ti.h("cF<1>")).p())return s.gB() return null}, -vB(a){var s,r,q,p,o,n,m,l,k,j,i,h=t.N,g=t.am,f=A.aC(h,g),e=A.aC(h,g) +vG(a){var s,r,q,p,o,n,m,l,k,j,i,h=t.N,g=t.am,f=A.az(h,g),e=A.az(h,g) g=t.ht -s=A.aC(h,g) -r=A.aC(h,g) -q=A.aC(h,t.mg) -for(h=a.e.a.c.a,g=h.length,p=0;p":n=r?">":m break -default:n=m}if(n!=null){if(q==null)q=new A.W(B.b.t(a,0,p)) +default:n=m}if(n!=null){if(q==null)q=new A.Y(B.b.t(a,0,p)) q.a+=n}else if(q!=null)q.a+=o}if(q!=null){s=q.a s=s.charCodeAt(0)==0?s:s}else s=a return s}, -uj(){var s,r,q,p,o=null -try{o=A.qk()}catch(s){if(t.mA.b(A.bP(s))){r=$.pa +uo(){var s,r,q,p,o=null +try{o=A.qp()}catch(s){if(t.mA.b(A.bP(s))){r=$.pe if(r!=null)return r -throw s}else throw s}if(J.M(o,$.tV)){r=$.pa +throw s}else throw s}if(J.N(o,$.u_)){r=$.pe r.toString -return r}$.tV=o -if($.r_()===$.hF())r=$.pa=o.ix(".").j(0) -else{q=o.fe() +return r}$.u_=o +if($.r4()===$.hF())r=$.pe=o.iy(".").j(0) +else{q=o.ff() p=q.length-1 -r=$.pa=p===0?q:B.b.t(q,0,p)}return r}, -us(a){var s +r=$.pe=p===0?q:B.b.t(q,0,p)}return r}, +ux(a){var s if(!(a>=65&&a<=90))s=a>=97&&a<=122 else s=!0 return s}, -um(a,b){var s,r,q=null,p=a.length,o=b+2 +ur(a,b){var s,r,q=null,p=a.length,o=b+2 if(p=0&&b=0&&s=q)return A.c(s,-1) p=s.pop() -for(q=p.gaN(),o=q.length,n=0;n")) -while(a instanceof A.u){if(b.a8(a))return c.h("n<0>").a(b.n(0,a)) +u0(a,b,c){var s,r,q,p=A.j3(c.h("nC<0>")) +while(a instanceof A.u){if(b.a7(a))return c.h("n<0>").a(b.m(0,a)) else if(!p.l(0,a))throw A.f(A.ce("Recursive references detected: "+p.j(0))) -a=a.$ti.h("n<1>").a(A.wq(a.a,a.b,null))}for(s=A.tq(p,p.r,p.$ti.c),r=s.$ti.c;s.p();){q=s.d +a=a.$ti.h("n<1>").a(A.wv(a.a,a.b,null))}for(s=A.tv(p,p.r,p.$ti.c),r=s.$ti.c;s.p();){q=s.d b.k(0,q==null?r.a(q):q,a)}return a}, -ud(a,b,c,d){var s=new A.af(a),r=s.gbU(s),q=b?A.zi(a,!0,!1):new A.fM(r),p=A.uH(a,!1),o=b?" (case-insensitive)":"" +ui(a,b,c,d){var s=new A.ah(a),r=s.gbU(s),q=b?A.zn(a,!0,!1):new A.fM(r),p=A.uM(a,!1),o=b?" (case-insensitive)":"" c='"'+p+'"'+o+" expected" return A.bH(q,c,!1)}, -S(a){var s,r=a.length +U(a){var s,r=a.length A:{if(0===r){s=new A.cQ(a,t.pf) -break A}if(1===r){s=A.ud(a,!1,null,!1) -break A}s=A.zs(a,!1,null) +break A}if(1===r){s=A.ui(a,!1,null,!1) +break A}s=A.zx(a,!1,null) break A}return s}, -zq(a,b){var s=t.nq +zv(a,b){var s=t.nq s.a(a) s.a(b) return a}, -zr(a,b){var s=t.nq +zw(a,b){var s=t.nq s.a(a) return s.a(b)}, -zp(a,b){var s=t.nq +zu(a,b){var s=t.nq s.a(a) s.a(b) return a.b<=b.b?b:a}, -zc(a){var s,r,q,p -if(a.gm(0)===0)return!0 +zh(a){var s,r,q,p +if(a.gn(0)===0)return!0 s=a.gbv(0) -for(r=A.bX(a,1,null,a.$ti.h("G.E")),q=r.$ti,r=new A.L(r,r.gm(0),q.h("L")),q=q.h("G.E");r.p();){p=r.d -if(!J.M(p==null?q.a(p):p,s))return!1}return!0}, -zn(a,b,c){var s=B.a.al(a,null) -if(s<0)throw A.f(A.U(A.k(a)+" contains no null elements.",null)) +for(r=A.bX(a,1,null,a.$ti.h("G.E")),q=r.$ti,r=new A.M(r,r.gn(0),q.h("M")),q=q.h("G.E");r.p();){p=r.d +if(!J.N(p==null?q.a(p):p,s))return!1}return!0}, +zs(a,b,c){var s=B.a.al(a,null) +if(s<0)throw A.f(A.W(A.k(a)+" contains no null elements.",null)) B.a.k(a,s,b)}, -uE(a,b,c){var s=B.a.al(a,b) -if(s<0)throw A.f(A.U(A.k(a)+" contains no elements matching "+b.j(0)+".",null)) +uJ(a,b,c){var s=B.a.al(a,b) +if(s<0)throw A.f(A.W(A.k(a)+" contains no elements matching "+b.j(0)+".",null)) B.a.k(a,s,null)}, -yQ(a,b){var s,r,q,p -for(s=new A.af(a),r=t.G,s=new A.L(s,s.gm(0),r.h("L")),r=r.h("D.E"),q=0;s.p();){p=s.d +yV(a,b){var s,r,q,p +for(s=new A.ah(a),r=t.gS,s=new A.M(s,s.gn(0),r.h("M")),r=r.h("C.E"),q=0;s.p();){p=s.d if((p==null?r.a(p):p)===b)++q}return q}, -pu(a,b,c){var s,r,q +pA(a,b,c){var s,r,q if(b.length===0)for(s=0;;){r=B.b.ap(a,"\n",s) if(r===-1)return a.length-s>=c?s:null if(r-s>=c)return s @@ -5762,47 +5769,47 @@ s=r+1}r=B.b.al(a,b) while(r!==-1){q=r===0?0:B.b.dO(a,"\n",r-1)+1 if(c===r-q)return q r=B.b.ap(a,b,r+1)}return null}, -b1(a,b,c){var s=A.ui(b,c),r=a.iF(0,t.P),q=r.$ti -return new A.bb(r,q.h("C(h.E)").a(s),q.h("bb"))}, -wV(a){var s -for(s=a.x$;s!=null;s=s.gc8())if(s instanceof A.aF)return s +b2(a,b,c){var s=A.un(b,c),r=a.iG(0,t.P),q=r.$ti +return new A.b_(r,q.h("A(h.E)").a(s),q.h("b_"))}, +x_(a){var s +for(s=a.x$;s!=null;s=s.gca())if(s instanceof A.aG)return s return null}, -uv(a,b,c){var s,r,q,p,o -for(s=a;s!=null;s=s.gc8())for(r=J.as(s.gaZ()),q=r.$ti.c;r.p();){p=r.d +uA(a,b,c){var s,r,q,p,o +for(s=a;s!=null;s=s.gca())for(r=J.at(s.gaZ()),q=r.$ti.c;r.p();){p=r.d if(p==null)p=q.a(p) o=p.a -if(o.gij()==b&&o.ga_()===c)return p}return null}},B={} +if(o.gik()==b&&o.ga_()===c)return p}return null}},B={} var w=[A,J,B] var $={} -A.pZ.prototype={} -J.iR.prototype={ -u(a,b){return a===b}, -gq(a){return A.dx(a)}, -j(a){return"Instance of '"+A.jB(a)+"'"}, -ii(a,b){throw A.f(A.n2(a,t.bg.a(b)))}, -gaz(a){return A.ch(A.qF(this))}} -J.iU.prototype={ +A.q4.prototype={} +J.iS.prototype={ +v(a,b){return a===b}, +gq(a){return A.dy(a)}, +j(a){return"Instance of '"+A.jC(a)+"'"}, +ij(a,b){throw A.f(A.n6(a,t.bg.a(b)))}, +gaz(a){return A.ch(A.qK(this))}} +J.iV.prototype={ j(a){return String(a)}, gq(a){return a?519018:218159}, gaz(a){return A.ch(t.k4)}, -$ia2:1, -$iC:1} +$ia3:1, +$iA:1} J.e4.prototype={ -u(a,b){return null==b}, +v(a,b){return null==b}, j(a){return"null"}, gq(a){return 0}, -$ia2:1, -$iaJ:1} -J.fk.prototype={$iao:1} +$ia3:1, +$iaK:1} +J.fk.prototype={$iap:1} J.cW.prototype={ gq(a){return 0}, j(a){return String(a)}} -J.jz.prototype={} -J.dE.prototype={} +J.jA.prototype={} +J.dF.prototype={} J.cu.prototype={ -j(a){var s=a[$.qZ()] -if(s==null)return this.jH(a) -return"JavaScript function for "+J.ax(s)}, +j(a){var s=a[$.r3()] +if(s==null)return this.jI(a) +return"JavaScript function for "+J.ay(s)}, $icq:1} J.e6.prototype={ gq(a){return 0}, @@ -5811,129 +5818,129 @@ J.e7.prototype={ gq(a){return 0}, j(a){return String(a)}} J.y.prototype={ -l(a,b){A.x(a).c.a(b) +l(a,b){A.w(a).c.a(b) a.$flags&1&&A.t(a,29) a.push(b)}, d2(a,b){a.$flags&1&&A.t(a,"removeAt",1) -if(b<0||b>=a.length)throw A.f(A.nq(b,null)) +if(b<0||b>=a.length)throw A.f(A.nu(b,null)) return a.splice(b,1)[0]}, -bx(a,b,c){A.x(a).c.a(c) +bx(a,b,c){A.w(a).c.a(c) a.$flags&1&&A.t(a,"insert",2) -if(b<0||b>a.length)throw A.f(A.nq(b,null)) +if(b<0||b>a.length)throw A.f(A.nu(b,null)) a.splice(b,0,c)}, -eX(a,b,c){var s,r -A.x(a).h("h<1>").a(c) +eY(a,b,c){var s,r +A.w(a).h("h<1>").a(c) a.$flags&1&&A.t(a,"insertAll",2) -A.rN(b,0,a.length,"index") -if(!t.gt.b(c))c=J.vl(c) -s=J.b5(c) +A.rS(b,0,a.length,"index") +if(!t.gt.b(c))c=J.vq(c) +s=J.b6(c) a.length=a.length+s r=b+s -this.ba(a,r,a.length,a,b) +this.bb(a,r,a.length,a,b) this.bD(a,b,r,c)}, d3(a){a.$flags&1&&A.t(a,"removeLast",1) -if(a.length===0)throw A.f(A.lw(a,-1)) +if(a.length===0)throw A.f(A.lz(a,-1)) return a.pop()}, -V(a,b){var s +W(a,b){var s a.$flags&1&&A.t(a,"remove",1) -for(s=0;s").a(b) +A.w(a).h("h<1>").a(b) a.$flags&1&&A.t(a,"addAll",2) -if(Array.isArray(b)){this.k_(a,b) -return}for(s=J.as(b);s.p();)a.push(s.gB())}, -k_(a,b){var s,r +if(Array.isArray(b)){this.k0(a,b) +return}for(s=J.at(b);s.p();)a.push(s.gB())}, +k0(a,b){var s,r t.dG.a(b) s=b.length if(s===0)return -if(a===b)throw A.f(A.ag(a)) +if(a===b)throw A.f(A.ai(a)) for(r=0;r").v(c).h("R<1,2>"))}, -aq(a,b){var s,r=A.aD(a.length,"",!1,t.N) +if(a.length!==s)throw A.f(A.ai(a))}}, +c8(a,b,c){var s=A.w(a) +return new A.Q(a,s.u(c).h("1(2)").a(b),s.h("@<1>").u(c).h("Q<1,2>"))}, +aq(a,b){var s,r=A.aE(a.length,"",!1,t.N) for(s=0;s=0&&b=0&&ba.length)throw A.f(A.ad(b,0,a.length,"start",null)) -if(ca.length)throw A.f(A.ad(c,b,a.length,"end",null)) -if(b===c)return A.i([],A.x(a)) -return A.i(a.slice(b,c),A.x(a))}, +am(a,b,c){if(b<0||b>a.length)throw A.f(A.af(b,0,a.length,"start",null)) +if(ca.length)throw A.f(A.af(c,b,a.length,"end",null)) +if(b===c)return A.i([],A.w(a)) +return A.i(a.slice(b,c),A.w(a))}, gbv(a){if(a.length>0)return a[0] throw A.f(A.bi())}, gA(a){var s=a.length if(s>0)return a[s-1] throw A.f(A.bi())}, -o8(a,b,c){a.$flags&1&&A.t(a,18) +fc(a,b,c){a.$flags&1&&A.t(a,18) A.cw(b,c,a.length) a.splice(b,c-b)}, -ba(a,b,c,d,e){var s,r,q,p,o -A.x(a).h("h<1>").a(d) +bb(a,b,c,d,e){var s,r,q,p,o +A.w(a).h("h<1>").a(d) a.$flags&2&&A.t(a,5) A.cw(b,c,a.length) s=c-b if(s===0)return -A.aE(e,"skipCount") +A.aF(e,"skipCount") if(t.p.b(d)){r=d -q=e}else{r=J.lC(d,e).cz(0,!1) -q=0}p=J.ab(r) -if(q+s>p.gm(r))throw A.f(A.ro()) -if(q=0;--o)a[b+o]=p.n(r,q+o) -else for(o=0;op.gn(r))throw A.f(A.rt()) +if(q=0;--o)a[b+o]=p.m(r,q+o) +else for(o=0;o"))}, -cd(a,b){var s,r,q,p,o,n=A.x(a) +if(a.length!==s)throw A.f(A.ai(a))}return!1}, +giz(a){return new A.X(a,A.w(a).h("X<1>"))}, +bV(a,b){var s,r,q,p,o,n=A.w(a) n.h("b(1,1)?").a(b) a.$flags&2&&A.t(a,"sort") s=a.length if(s<2)return -if(b==null)b=J.y5() +if(b==null)b=J.ya() if(s===2){r=a[0] q=a[1] n=b.$2(r,q) @@ -5941,97 +5948,97 @@ if(typeof n!=="number")return n.b1() if(n>0){a[0]=q a[1]=r}return}p=0 if(n.c.b(null))for(o=0;o0)this.kR(a,p)}, -kR(a,b){var s,r=a.length +if(p>0)this.kS(a,p)}, +kS(a,b){var s,r=a.length for(;s=r-1,r>0;r=s)if(a[s]===null){a[s]=void 0;--b if(b===0)break}}, ap(a,b,c){var s,r=a.length if(c>=r)return-1 for(s=c;s"))}, -gq(a){return A.dx(a)}, -gm(a){return a.length}, -sm(a,b){a.$flags&1&&A.t(a,"set length","change the length of") -if(b<0)throw A.f(A.ad(b,0,null,"newLength",null)) -if(b>a.length)A.x(a).c.a(null) +iB(a){return this.cz(a,!0)}, +gF(a){return new J.J(a,a.length,A.w(a).h("J<1>"))}, +gq(a){return A.dy(a)}, +gn(a){return a.length}, +sn(a,b){a.$flags&1&&A.t(a,"set length","change the length of") +if(b<0)throw A.f(A.af(b,0,null,"newLength",null)) +if(b>a.length)A.w(a).c.a(null) a.length=b}, -n(a,b){if(!(b>=0&&b=0&&b=0&&b=0&&b=a.length)return-1 for(s=c;s=p){r.d=null return!1}r.d=q[s] r.c=s+1 return!0}, -$iK:1} +$iL:1} J.e5.prototype={ -ah(a,b){var s -A.tR(b) +ai(a,b){var s +A.tW(b) if(ab)return 1 -else if(a===b){if(a===0){s=this.geZ(b) -if(this.geZ(a)===s)return 0 -if(this.geZ(a))return-1 +else if(a===b){if(a===0){s=this.gf_(b) +if(this.gf_(a)===s)return 0 +if(this.gf_(a))return-1 return 1}return 0}else if(isNaN(a)){if(isNaN(b))return 0 return 1}else return-1}, -geZ(a){return a===0?1/a<0:a<0}, +gf_(a){return a===0?1/a<0:a<0}, cw(a){var s if(a>=-2147483648&&a<=2147483647)return a|0 if(isFinite(a)){s=a<0?Math.ceil(a):Math.floor(a) -return s+0}throw A.f(A.aj(""+a+".toInt()"))}, -m_(a,b,c){if(B.f.ah(b,c)>0)throw A.f(A.dN(b)) -if(this.ah(a,b)<0)return b -if(this.ah(a,c)>0)return c +return s+0}throw A.f(A.ac(""+a+".toInt()"))}, +m0(a,b,c){if(B.f.ai(b,c)>0)throw A.f(A.dO(b)) +if(this.ai(a,b)<0)return b +if(this.ai(a,c)>0)return c return a}, d6(a,b){var s,r,q,p,o -if(b<2||b>36)throw A.f(A.ad(b,2,36,"radix",null)) +if(b<2||b>36)throw A.f(A.af(b,2,36,"radix",null)) s=a.toString(b) r=s.length q=r-1 if(!(q>=0))return A.c(s,q) if(s.charCodeAt(q)!==41)return s p=/^([\da-z]+)(?:\.([\da-z]+))?\(e\+(\d+)\)$/.exec(s) -if(p==null)A.O(A.aj("Unexpected toString result: "+s)) +if(p==null)A.P(A.ac("Unexpected toString result: "+s)) r=p.length if(1>=r)return A.c(p,1) s=p[1] @@ -6054,45 +6061,45 @@ bl(a,b){var s=a%b if(s===0)return 0 if(s>0)return s return s+b}, -fK(a,b){if((a|0)===a)if(b>=1)return a/b|0 -return this.hr(a,b)}, -av(a,b){return(a|0)===a?a/b|0:this.hr(a,b)}, -hr(a,b){var s=a/b +fL(a,b){if((a|0)===a)if(b>=1)return a/b|0 +return this.hs(a,b)}, +av(a,b){return(a|0)===a?a/b|0:this.hs(a,b)}, +hs(a,b){var s=a/b if(s>=-2147483648&&s<=2147483647)return s|0 if(s>0){if(s!==1/0)return Math.floor(s)}else if(s>-1/0)return Math.ceil(s) -throw A.f(A.aj("Result of truncating division is "+A.k(s)+": "+A.k(a)+" ~/ "+b))}, -aW(a,b){if(b<0)throw A.f(A.dN(b)) +throw A.f(A.ac("Result of truncating division is "+A.k(s)+": "+A.k(a)+" ~/ "+b))}, +aW(a,b){if(b<0)throw A.f(A.dO(b)) return b>31?0:a<>>0}, bp(a,b){return b>31?0:a<>>0}, b5(a,b){var s if(a>0)s=this.dt(a,b) else{s=b>31?31:b s=a>>s>>>0}return s}, -cI(a,b){if(0>b)throw A.f(A.dN(b)) +cI(a,b){if(0>b)throw A.f(A.dO(b)) return this.dt(a,b)}, dt(a,b){return b>31?0:a>>>b}, b1(a,b){return a>b}, gaz(a){return A.ch(t.cZ)}, -$ia5:1, -$iT:1, -$ib4:1} +$ia6:1, +$iV:1, +$ib5:1} J.fi.prototype={ -ghQ(a){var s,r=a<0?-a-1:a,q=r +ghR(a){var s,r=a<0?-a-1:a,q=r for(s=32;q>=4294967296;){q=this.av(q,4294967296) s+=32}return s-Math.clz32(q)}, gaz(a){return A.ch(t.S)}, -$ia2:1, +$ia3:1, $ib:1} -J.iV.prototype={ +J.iW.prototype={ gaz(a){return A.ch(t.dx)}, -$ia2:1} +$ia3:1} J.ct.prototype={ dC(a,b,c){var s=b.length -if(c>s)throw A.f(A.ad(c,0,s,null,null)) -return new A.kR(b,a,c)}, +if(c>s)throw A.f(A.af(c,0,s,null,null)) +return new A.kU(b,a,c)}, dB(a,b){return this.dC(a,b,0)}, -f_(a,b,c){var s,r,q,p,o=null -if(c<0||c>b.length)throw A.f(A.ad(c,0,b.length,o,o)) +f0(a,b,c){var s,r,q,p,o=null +if(c<0||c>b.length)throw A.f(A.af(c,0,b.length,o,o)) s=a.length r=b.length if(c+s>r)return o @@ -6102,20 +6109,20 @@ if(b.charCodeAt(p)!==a.charCodeAt(q))return o}return new A.fS(c,a)}, bu(a,b){var s=b.length,r=a.length if(s>r)return!1 return b===this.ab(a,r-s)}, -d4(a,b,c){A.rN(0,0,a.length,"startIndex") -return A.zx(a,b,c,0)}, +d4(a,b,c){A.rS(0,0,a.length,"startIndex") +return A.zC(a,b,c,0)}, d9(a,b){var s if(typeof b=="string")return A.i(a.split(b),t.s) else{if(b instanceof A.cV){s=b.e -s=!(s==null?b.e=b.k8():s)}else s=!1 +s=!(s==null?b.e=b.k9():s)}else s=!1 if(s)return A.i(a.split(b.b),t.s) -else return this.kg(a,b)}}, +else return this.kh(a,b)}}, bR(a,b,c,d){var s=A.cw(b,c,a.length) -return A.qY(a,b,s,d)}, -kg(a,b){var s,r,q,p,o,n,m=A.i([],t.s) -for(s=J.lB(b,a),s=s.gF(s),r=0,q=1;s.p();){p=s.gB() +return A.r2(a,b,s,d)}, +kh(a,b){var s,r,q,p,o,n,m=A.i([],t.s) +for(s=J.lE(b,a),s=s.gF(s),r=0,q=1;s.p();){p=s.gB() o=p.gS() -n=p.gU() +n=p.gV() q=n-o if(q===0&&r===o)continue B.a.l(m,this.t(a,r,o)) @@ -6123,28 +6130,28 @@ r=n}if(r0)B.a.l(m,this.ab(a,r)) return m}, aa(a,b,c){var s t.m4.a(b) -if(c<0||c>a.length)throw A.f(A.ad(c,0,a.length,null,null)) +if(c<0||c>a.length)throw A.f(A.af(c,0,a.length,null,null)) if(typeof b=="string"){s=c+b.length if(s>a.length)return!1 -return b===a.substring(c,s)}return J.vi(b,a,c)!=null}, -T(a,b){return this.aa(a,b,0)}, +return b===a.substring(c,s)}return J.vn(b,a,c)!=null}, +U(a,b){return this.aa(a,b,0)}, t(a,b,c){return a.substring(b,A.cw(b,c,a.length))}, ab(a,b){return this.t(a,b,null)}, -bk(a){var s,r,q,p=a.trim(),o=p.length +ba(a){var s,r,q,p=a.trim(),o=p.length if(o===0)return p if(0>=o)return A.c(p,0) -if(p.charCodeAt(0)===133){s=J.rt(p,1) +if(p.charCodeAt(0)===133){s=J.ry(p,1) if(s===o)return""}else s=0 r=o-1 if(!(r>=0))return A.c(p,r) -q=p.charCodeAt(r)===133?J.vV(p,r):o +q=p.charCodeAt(r)===133?J.w_(p,r):o if(s===0&&q===o)return p return p.substring(s,q)}, og(a){var s=a.trimStart(),r=s.length if(r===0)return s if(0>=r)return A.c(s,0) if(s.charCodeAt(0)!==133)return s -return s.substring(J.rt(s,1))}, +return s.substring(J.ry(s,1))}, b2(a,b){var s,r if(0>=b)return"" if(b===1||a.length===0)return a @@ -6153,28 +6160,28 @@ for(s=a,r="";;){if((b&1)===1)r=s+r b=b>>>1 if(b===0)break s+=s}return r}, -nB(a,b,c){var s=b-a.length +nC(a,b,c){var s=b-a.length if(s<=0)return a return this.b2(c,s)+a}, -nC(a,b){var s=b-a.length +nD(a,b){var s=b-a.length if(s<=0)return a return a+this.b2(" ",s)}, ap(a,b,c){var s -if(c<0||c>a.length)throw A.f(A.ad(c,0,a.length,null,null)) +if(c<0||c>a.length)throw A.f(A.af(c,0,a.length,null,null)) s=a.indexOf(b,c) return s}, al(a,b){return this.ap(a,b,0)}, dO(a,b,c){var s,r,q if(c==null)c=a.length -else if(c<0||c>a.length)throw A.f(A.ad(c,0,a.length,null,null)) +else if(c<0||c>a.length)throw A.f(A.af(c,0,a.length,null,null)) if(typeof b=="string"){s=b.length r=a.length if(c+s>r)c=r-s -return a.lastIndexOf(b,c)}for(s=J.pw(b),q=c;q>=0;--q)if(s.f_(b,a,q)!=null)return q +return a.lastIndexOf(b,c)}for(s=J.pC(b),q=c;q>=0;--q)if(s.f0(b,a,q)!=null)return q return-1}, cU(a,b){return this.dO(a,b,null)}, -D(a,b){return A.zt(a,b,0)}, -ah(a,b){var s +C(a,b){return A.zy(a,b,0)}, +ai(a,b){var s A.q(b) if(a===b)s=0 else s=a>6}r=r+((r&67108863)<<3)&536870911 r^=r>>11 return r+((r&16383)<<15)&536870911}, gaz(a){return A.ch(t.N)}, -gm(a){return a.length}, -$iaT:1, -$ia2:1, -$ia5:1, -$idw:1, +gn(a){return a.length}, +$iaU:1, +$ia3:1, +$ia6:1, +$idx:1, $ie:1} A.eu.prototype={ -gF(a){return new A.eN(J.as(this.gbq()),A.w(this).h("eN<1,2>"))}, -gm(a){return J.b5(this.gbq())}, -gN(a){return J.r4(this.gbq())}, -gaP(a){return J.vg(this.gbq())}, -aX(a,b){var s=A.w(this) -return A.eM(J.lC(this.gbq(),b),s.c,s.y[1])}, -bj(a,b){var s=A.w(this) -return A.eM(J.r7(this.gbq(),b),s.c,s.y[1])}, -ai(a,b){return A.w(this).y[1].a(J.hG(this.gbq(),b))}, -D(a,b){return J.ve(this.gbq(),b)}, -j(a){return J.ax(this.gbq())}} +gF(a){return new A.eN(J.at(this.gbq()),A.x(this).h("eN<1,2>"))}, +gn(a){return J.b6(this.gbq())}, +gN(a){return J.r9(this.gbq())}, +gaP(a){return J.vl(this.gbq())}, +aX(a,b){var s=A.x(this) +return A.eM(J.lF(this.gbq(),b),s.c,s.y[1])}, +bk(a,b){var s=A.x(this) +return A.eM(J.rc(this.gbq(),b),s.c,s.y[1])}, +ag(a,b){return A.x(this).y[1].a(J.hG(this.gbq(),b))}, +C(a,b){return J.vj(this.gbq(),b)}, +j(a){return J.ay(this.gbq())}} A.eN.prototype={ p(){return this.a.p()}, gB(){return this.$ti.y[1].a(this.a.gB())}, -$iK:1} -A.dd.prototype={ +$iL:1} +A.de.prototype={ gbq(){return this.a}} A.hb.prototype={$iz:1} -A.de.prototype={ -c2(a,b,c){return new A.de(this.a,this.$ti.h("@<1,2>").v(b).v(c).h("de<1,2,3,4>"))}, -a8(a){return this.a.a8(a)}, -n(a,b){return this.$ti.h("4?").a(this.a.n(0,b))}, +A.df.prototype={ +c3(a,b,c){return new A.df(this.a,this.$ti.h("@<1,2>").u(b).u(c).h("df<1,2,3,4>"))}, +a7(a){return this.a.a7(a)}, +m(a,b){return this.$ti.h("4?").a(this.a.m(0,b))}, k(a,b,c){var s=this.$ti s.y[2].a(b) s.y[3].a(c) this.a.k(0,s.c.a(b),s.y[1].a(c))}, -X(a,b){this.a.X(0,new A.lH(this,this.$ti.h("~(3,4)").a(b)))}, +T(a,b){this.a.T(0,new A.lK(this,this.$ti.h("~(3,4)").a(b)))}, gaR(){var s=this.$ti return A.eM(this.a.gaR(),s.c,s.y[2])}, -gm(a){var s=this.a -return s.gm(s)}, +gn(a){var s=this.a +return s.gn(s)}, gN(a){var s=this.a return s.gN(s)}} -A.lH.prototype={ +A.lK.prototype={ $2(a,b){var s=this.a.$ti s.c.a(a) s.y[1].a(b) @@ -6235,127 +6242,127 @@ this.b.$2(s.y[2].a(a),s.y[3].a(b))}, $S(){return this.a.$ti.h("~(1,2)")}} A.e8.prototype={ j(a){return"LateInitializationError: "+this.a}} -A.jD.prototype={ +A.jF.prototype={ j(a){return"ReachabilityError: "+this.a}} -A.af.prototype={ -gm(a){return this.a.length}, -n(a,b){var s=this.a +A.ah.prototype={ +gn(a){return this.a.length}, +m(a,b){var s=this.a if(!(b>=0&&b"))}, -gN(a){return this.gm(this)===0}, -gbv(a){if(this.gm(this)===0)throw A.f(A.bi()) -return this.ai(0,0)}, -D(a,b){var s,r=this,q=r.gm(r) -for(s=0;s"))}, +gN(a){return this.gn(this)===0}, +gbv(a){if(this.gn(this)===0)throw A.f(A.bi()) +return this.ag(0,0)}, +C(a,b){var s,r=this,q=r.gn(r) +for(s=0;ss)throw A.f(A.ad(r,0,s,"start",null))}}, -gkl(){var s=J.b5(this.a),r=this.c +if(s!=null){A.aF(s,"end") +if(r>s)throw A.f(A.af(r,0,s,"start",null))}}, +gkm(){var s=J.b6(this.a),r=this.c if(r==null||r>s)return s return r}, -gl0(){var s=J.b5(this.a),r=this.b +gl1(){var s=J.b6(this.a),r=this.b if(r>s)return s return r}, -gm(a){var s,r=J.b5(this.a),q=this.b +gn(a){var s,r=J.b6(this.a),q=this.b if(q>=r)return 0 s=this.c if(s==null||s>=r)return r-q return s-q}, -ai(a,b){var s=this,r=s.gl0()+b -if(b<0||r>=s.gkl())throw A.f(A.iL(b,s.gm(0),s,null,"index")) +ag(a,b){var s=this,r=s.gl1()+b +if(b<0||r>=s.gkm())throw A.f(A.iM(b,s.gn(0),s,null,"index")) return J.hG(s.a,r)}, aX(a,b){var s,r,q=this -A.aE(b,"count") +A.aF(b,"count") s=q.b+b r=q.c if(r!=null&&s>=r)return new A.eW(q.$ti.h("eW<1>")) return A.bX(q.a,s,r,q.$ti.c)}, -bj(a,b){var s,r,q,p=this -A.aE(b,"count") +bk(a,b){var s,r,q,p=this +A.aF(b,"count") s=p.c r=p.b if(s==null)return A.bX(p.a,r,B.f.cB(r,b),p.$ti.c) else{q=B.f.cB(r,b) if(s=o){r.d=null -return!1}r.d=p.ai(q,s);++r.c +return!1}r.d=p.ag(q,s);++r.c return!0}, -$iK:1} -A.b8.prototype={ -gF(a){return new A.dt(J.as(this.a),this.b,A.w(this).h("dt<1,2>"))}, -gm(a){return J.b5(this.a)}, -gN(a){return J.r4(this.a)}, -ai(a,b){return this.b.$1(J.hG(this.a,b))}} +$iL:1} +A.ba.prototype={ +gF(a){return new A.du(J.at(this.a),this.b,A.x(this).h("du<1,2>"))}, +gn(a){return J.b6(this.a)}, +gN(a){return J.r9(this.a)}, +ag(a,b){return this.b.$1(J.hG(this.a,b))}} A.eU.prototype={$iz:1} -A.dt.prototype={ +A.du.prototype={ p(){var s=this,r=s.b if(r.p()){s.a=s.c.$1(r.gB()) return!0}s.a=null return!1}, gB(){var s=this.a return s==null?this.$ti.y[1].a(s):s}, -$iK:1} -A.R.prototype={ -gm(a){return J.b5(this.a)}, -ai(a,b){return this.b.$1(J.hG(this.a,b))}} -A.bb.prototype={ -gF(a){return new A.cF(J.as(this.a),this.b,this.$ti.h("cF<1>"))}} +$iL:1} +A.Q.prototype={ +gn(a){return J.b6(this.a)}, +ag(a,b){return this.b.$1(J.hG(this.a,b))}} +A.b_.prototype={ +gF(a){return new A.cF(J.at(this.a),this.b,this.$ti.h("cF<1>"))}} A.cF.prototype={ p(){var s,r for(s=this.a,r=this.b;s.p();)if(r.$1(s.gB()))return!0 return!1}, gB(){return this.a.gB()}, -$iK:1} -A.dm.prototype={ -gF(a){return new A.fd(J.as(this.a),this.b,B.cK,this.$ti.h("fd<1,2>"))}} +$iL:1} +A.dn.prototype={ +gF(a){return new A.fd(J.at(this.a),this.b,B.cK,this.$ti.h("fd<1,2>"))}} A.fd.prototype={ gB(){var s=this.d return s==null?this.$ti.y[1].a(s):s}, @@ -6363,15 +6370,15 @@ p(){var s,r,q=this,p=q.c if(p==null)return!1 for(s=q.a,r=q.b;!p.p();){q.d=null if(s.p()){q.c=null -p=J.as(r.$1(s.gB())) +p=J.at(r.$1(s.gB())) q.c=p}else return!1}q.d=q.c.gB() return!0}, -$iK:1} -A.dD.prototype={ +$iL:1} +A.dE.prototype={ gF(a){var s=this.a -return new A.fT(s.gF(s),this.b,A.w(this).h("fT<1>"))}} +return new A.fT(s.gF(s),this.b,A.x(this).h("fT<1>"))}} A.eV.prototype={ -gm(a){var s=this.a,r=s.gm(s) +gn(a){var s=this.a,r=s.gn(s) s=this.b if(B.f.b1(r,s))return s return r}, @@ -6382,19 +6389,19 @@ this.b=-1 return!1}, gB(){if(this.b<0){this.$ti.c.a(null) return null}return this.a.gB()}, -$iK:1} +$iL:1} A.cx.prototype={ aX(a,b){A.hR(b,"count",t.S) -A.aE(b,"count") -return new A.cx(this.a,this.b+b,A.w(this).h("cx<1>"))}, +A.aF(b,"count") +return new A.cx(this.a,this.b+b,A.x(this).h("cx<1>"))}, gF(a){var s=this.a -return new A.fO(s.gF(s),this.b,A.w(this).h("fO<1>"))}} +return new A.fO(s.gF(s),this.b,A.x(this).h("fO<1>"))}} A.dZ.prototype={ -gm(a){var s=this.a,r=s.gm(s)-this.b +gn(a){var s=this.a,r=s.gn(s)-this.b if(r>=0)return r return 0}, aX(a,b){A.hR(b,"count",t.S) -A.aE(b,"count") +A.aF(b,"count") return new A.dZ(this.a,this.b+b,this.$ti)}, $iz:1} A.fO.prototype={ @@ -6403,46 +6410,46 @@ for(s=this.a,r=0;r"))}} +$iL:1} +A.O.prototype={ +gF(a){return new A.bZ(J.at(this.a),this.$ti.h("bZ<1>"))}} A.bZ.prototype={ p(){var s,r for(s=this.a,r=this.$ti.c;s.p();)if(r.b(s.gB()))return!0 return!1}, gB(){return this.$ti.c.a(this.a.gB())}, -$iK:1} -A.ai.prototype={ -sm(a,b){throw A.f(A.aj("Cannot change the length of a fixed-length list"))}, -l(a,b){A.b2(a).h("ai.E").a(b) -throw A.f(A.aj("Cannot add to a fixed-length list"))}} +$iL:1} +A.ak.prototype={ +sn(a,b){throw A.f(A.ac("Cannot change the length of a fixed-length list"))}, +l(a,b){A.b3(a).h("ak.E").a(b) +throw A.f(A.ac("Cannot add to a fixed-length list"))}} A.bL.prototype={ -k(a,b,c){A.w(this).h("bL.E").a(c) -throw A.f(A.aj("Cannot modify an unmodifiable list"))}, -sm(a,b){throw A.f(A.aj("Cannot change the length of an unmodifiable list"))}, -l(a,b){A.w(this).h("bL.E").a(b) -throw A.f(A.aj("Cannot add to an unmodifiable list"))}, -cd(a,b){A.w(this).h("b(bL.E,bL.E)?").a(b) -throw A.f(A.aj("Cannot modify an unmodifiable list"))}} +k(a,b,c){A.x(this).h("bL.E").a(c) +throw A.f(A.ac("Cannot modify an unmodifiable list"))}, +sn(a,b){throw A.f(A.ac("Cannot change the length of an unmodifiable list"))}, +l(a,b){A.x(this).h("bL.E").a(b) +throw A.f(A.ac("Cannot add to an unmodifiable list"))}, +bV(a,b){A.x(this).h("b(bL.E,bL.E)?").a(b) +throw A.f(A.ac("Cannot modify an unmodifiable list"))}} A.em.prototype={} -A.V.prototype={ -gm(a){return J.b5(this.a)}, -ai(a,b){var s=this.a,r=J.ab(s) -return r.ai(s,r.gm(s)-1-b)}} +A.X.prototype={ +gn(a){return J.b6(this.a)}, +ag(a,b){var s=this.a,r=J.ad(s) +return r.ag(s,r.gn(s)-1-b)}} A.cf.prototype={ gq(a){var s=this._hashCode if(s!=null)return s @@ -6450,7 +6457,7 @@ s=664597*B.b.gq(this.a)&536870911 this._hashCode=s return s}, j(a){return'Symbol("'+this.a+'")'}, -u(a,b){if(b==null)return!1 +v(a,b){if(b==null)return!1 return b instanceof A.cf&&this.a===b.a}, $iel:1} A.l.prototype={$r:"+(1,2)",$s:1} @@ -6460,33 +6467,33 @@ A.hn.prototype={$r:"+(1,2,3,4,5)",$s:4} A.ho.prototype={$r:"+(1,2,3,4,5,6,7,8)",$s:5} A.eP.prototype={} A.dW.prototype={ -c2(a,b,c){var s=A.w(this) -return A.ry(this,s.c,s.y[1],b,c)}, -gN(a){return this.gm(this)===0}, -j(a){return A.q3(this)}, -k(a,b,c){var s=A.w(this) +c3(a,b,c){var s=A.x(this) +return A.rD(this,s.c,s.y[1],b,c)}, +gN(a){return this.gn(this)===0}, +j(a){return A.q9(this)}, +k(a,b,c){var s=A.x(this) s.c.a(b) s.y[1].a(c) -A.vA()}, +A.vF()}, $id:1} A.r.prototype={ -gm(a){return this.b.length}, -ghb(){var s=this.$keys +gn(a){return this.b.length}, +ghc(){var s=this.$keys if(s==null){s=Object.keys(this.a) this.$keys=s}return s}, -a8(a){if(typeof a!="string")return!1 +a7(a){if(typeof a!="string")return!1 if("__proto__"===a)return!1 return this.a.hasOwnProperty(a)}, -n(a,b){if(!this.a8(b))return null +m(a,b){if(!this.a7(b))return null return this.b[this.a[b]]}, -X(a,b){var s,r,q,p +T(a,b){var s,r,q,p this.$ti.h("~(1,2)").a(b) -s=this.ghb() +s=this.ghc() r=this.b for(q=s.length,p=0;p"))}} +gaR(){return new A.he(this.ghc(),this.$ti.h("he<1>"))}} A.he.prototype={ -gm(a){return this.a.length}, +gn(a){return this.a.length}, gN(a){return 0===this.a.length}, gaP(a){return 0!==this.a.length}, gF(a){var s=this.a @@ -6499,89 +6506,89 @@ if(r>=s.b){s.d=null return!1}s.d=s.a[r] s.c=r+1 return!0}, -$iK:1} +$iL:1} A.a.prototype={ -bZ(){var s=this,r=s.$map -if(r==null){r=new A.dn(s.$ti.h("dn<1,2>")) -A.un(s.a,r) +c_(){var s=this,r=s.$map +if(r==null){r=new A.dp(s.$ti.h("dp<1,2>")) +A.us(s.a,r) s.$map=r}return r}, -a8(a){return this.bZ().a8(a)}, -n(a,b){return this.bZ().n(0,b)}, -X(a,b){this.$ti.h("~(1,2)").a(b) -this.bZ().X(0,b)}, -gaR(){var s=this.bZ() -return new A.aU(s,A.w(s).h("aU<1>"))}, -gm(a){return this.bZ().a}} +a7(a){return this.c_().a7(a)}, +m(a,b){return this.c_().m(0,b)}, +T(a,b){this.$ti.h("~(1,2)").a(b) +this.c_().T(0,b)}, +gaR(){var s=this.c_() +return new A.aV(s,A.x(s).h("aV<1>"))}, +gn(a){return this.c_().a}} A.dX.prototype={} -A.bf.prototype={ -gm(a){return this.b}, +A.b8.prototype={ +gn(a){return this.b}, gN(a){return this.b===0}, gaP(a){return this.b!==0}, gF(a){var s,r=this,q=r.$keys if(q==null){q=Object.keys(r.a) r.$keys=q}s=q return new A.cK(s,s.length,r.$ti.h("cK<1>"))}, -D(a,b){if(typeof b!="string")return!1 +C(a,b){if(typeof b!="string")return!1 if("__proto__"===b)return!1 return this.a.hasOwnProperty(b)}} -A.aO.prototype={ -gm(a){return this.a.length}, +A.aP.prototype={ +gn(a){return this.a.length}, gN(a){return this.a.length===0}, gaP(a){return this.a.length!==0}, gF(a){var s=this.a return new A.cK(s,s.length,this.$ti.h("cK<1>"))}, -bZ(){var s,r,q,p,o=this,n=o.$map -if(n==null){n=new A.dn(o.$ti.h("dn<1,1>")) -for(s=o.a,r=s.length,q=0;q")) +for(s=o.a,r=s.length,q=0;q")}} A.e0.prototype={ $2(a,b){return this.a.$1$2(a,b,this.$ti.y[0])}, -$S(){return A.zb(A.pe(this.a),this.$ti)}} +$S(){return A.zg(A.pi(this.a),this.$ti)}} A.fj.prototype={ -gns(){var s=this.a +gnt(){var s=this.a if(s instanceof A.cf)return s return this.a=new A.cf(A.q(s))}, -gnI(){var s,r,q,p,o,n=this +gnJ(){var s,r,q,p,o,n=this if(n.c===1)return B.h s=n.d -r=J.ab(s) -q=r.gm(s)-J.b5(n.e)-n.f +r=J.ad(s) +q=r.gn(s)-J.b6(n.e)-n.f if(q===0)return B.h p=[] -for(o=0;o>>0}, -j(a){return"Closure '"+this.$_name+"' of "+("Instance of '"+A.jB(this.a)+"'")}} -A.jI.prototype={ +gq(a){return(A.lB(this.a)^A.dy(this.$_target))>>>0}, +j(a){return"Closure '"+this.$_name+"' of "+("Instance of '"+A.jC(this.a)+"'")}} +A.jK.prototype={ j(a){return"RuntimeError: "+this.a}} -A.oS.prototype={} +A.oW.prototype={} A.bx.prototype={ -gm(a){return this.a}, +gn(a){return this.a}, gN(a){return this.a===0}, -gaR(){return new A.aU(this,A.w(this).h("aU<1>"))}, -a8(a){var s,r +gaR(){return new A.aV(this,A.x(this).h("aV<1>"))}, +a7(a){var s,r if(typeof a=="string"){s=this.b if(s==null)return!1 return s[a]!=null}else if(typeof a=="number"&&(a&0x3fffffff)===a){r=this.c if(r==null)return!1 -return r[a]!=null}else return this.nc(a)}, -nc(a){var s=this.d +return r[a]!=null}else return this.nd(a)}, +nd(a){var s=this.d if(s==null)return!1 return this.cT(s[this.cS(a)],a)>=0}, -a1(a,b){A.w(this).h("d<1,2>").a(b).X(0,new A.mG(this))}, -n(a,b){var s,r,q,p,o=null +a1(a,b){A.x(this).h("d<1,2>").a(b).T(0,new A.mK(this))}, +m(a,b){var s,r,q,p,o=null if(typeof b=="string"){s=this.b if(s==null)return o r=s[b] @@ -6665,140 +6672,140 @@ return q}else if(typeof b=="number"&&(b&0x3fffffff)===b){p=this.c if(p==null)return o r=p[b] q=r==null?o:r.b -return q}else return this.nd(b)}, -nd(a){var s,r,q=this.d +return q}else return this.ne(b)}, +ne(a){var s,r,q=this.d if(q==null)return null s=q[this.cS(a)] r=this.cT(s,a) if(r<0)return null return s[r].b}, -k(a,b,c){var s,r,q=this,p=A.w(q) +k(a,b,c){var s,r,q=this,p=A.x(q) p.c.a(b) p.y[1].a(c) if(typeof b=="string"){s=q.b -q.fO(s==null?q.b=q.eo():s,b,c)}else if(typeof b=="number"&&(b&0x3fffffff)===b){r=q.c -q.fO(r==null?q.c=q.eo():r,b,c)}else q.nf(b,c)}, -nf(a,b){var s,r,q,p,o=this,n=A.w(o) +q.fP(s==null?q.b=q.ep():s,b,c)}else if(typeof b=="number"&&(b&0x3fffffff)===b){r=q.c +q.fP(r==null?q.c=q.ep():r,b,c)}else q.ng(b,c)}, +ng(a,b){var s,r,q,p,o=this,n=A.x(o) n.c.a(a) n.y[1].a(b) s=o.d -if(s==null)s=o.d=o.eo() +if(s==null)s=o.d=o.ep() r=o.cS(a) q=s[r] -if(q==null)s[r]=[o.ep(a,b)] +if(q==null)s[r]=[o.eq(a,b)] else{p=o.cT(q,a) if(p>=0)q[p].b=b -else q.push(o.ep(a,b))}}, -f6(a,b){var s,r,q=this,p=A.w(q) +else q.push(o.eq(a,b))}}, +f7(a,b){var s,r,q=this,p=A.x(q) p.c.a(a) p.h("2()").a(b) -if(q.a8(a)){s=q.n(0,a) +if(q.a7(a)){s=q.m(0,a) return s==null?p.y[1].a(s):s}r=b.$0() q.k(0,a,r) return r}, -V(a,b){var s=this -if(typeof b=="string")return s.hn(s.b,b) -else if(typeof b=="number"&&(b&0x3fffffff)===b)return s.hn(s.c,b) -else return s.ne(b)}, -ne(a){var s,r,q,p,o=this,n=o.d +W(a,b){var s=this +if(typeof b=="string")return s.ho(s.b,b) +else if(typeof b=="number"&&(b&0x3fffffff)===b)return s.ho(s.c,b) +else return s.nf(b)}, +nf(a){var s,r,q,p,o=this,n=o.d if(n==null)return null s=o.cS(a) r=n[s] q=o.cT(r,a) if(q<0)return null p=r.splice(q,1)[0] -o.hx(p) +o.hy(p) if(r.length===0)delete n[s] return p.b}, -bb(a){var s=this +bc(a){var s=this if(s.a>0){s.b=s.c=s.d=s.e=s.f=null s.a=0 -s.en()}}, -X(a,b){var s,r,q=this -A.w(q).h("~(1,2)").a(b) +s.eo()}}, +T(a,b){var s,r,q=this +A.x(q).h("~(1,2)").a(b) s=q.e r=q.r while(s!=null){b.$2(s.a,s.b) -if(r!==q.r)throw A.f(A.ag(q)) +if(r!==q.r)throw A.f(A.ai(q)) s=s.c}}, -fO(a,b,c){var s,r=A.w(this) +fP(a,b,c){var s,r=A.x(this) r.c.a(b) r.y[1].a(c) s=a[b] -if(s==null)a[b]=this.ep(b,c) +if(s==null)a[b]=this.eq(b,c) else s.b=c}, -hn(a,b){var s +ho(a,b){var s if(a==null)return null s=a[b] if(s==null)return null -this.hx(s) +this.hy(s) delete a[b] return s.b}, -en(){this.r=this.r+1&1073741823}, -ep(a,b){var s=this,r=A.w(s),q=new A.mI(r.c.a(a),r.y[1].a(b)) +eo(){this.r=this.r+1&1073741823}, +eq(a,b){var s=this,r=A.x(s),q=new A.mM(r.c.a(a),r.y[1].a(b)) if(s.e==null)s.e=s.f=q else{r=s.f r.toString q.d=r s.f=r.c=q}++s.a -s.en() +s.eo() return q}, -hx(a){var s=this,r=a.d,q=a.c +hy(a){var s=this,r=a.d,q=a.c if(r==null)s.e=q else r.c=q if(q==null)s.f=r else q.d=r;--s.a -s.en()}, -cS(a){return J.A(a)&1073741823}, +s.eo()}, +cS(a){return J.B(a)&1073741823}, cT(a,b){var s,r if(a==null)return-1 s=a.length -for(r=0;r"]=s delete s[""] return s}, -$imH:1} -A.mG.prototype={ -$2(a,b){var s=this.a,r=A.w(s) +$imL:1} +A.mK.prototype={ +$2(a,b){var s=this.a,r=A.x(s) s.k(0,r.c.a(a),r.y[1].a(b))}, -$S(){return A.w(this.a).h("~(1,2)")}} -A.mI.prototype={} -A.aU.prototype={ -gm(a){return this.a.a}, +$S(){return A.x(this.a).h("~(1,2)")}} +A.mM.prototype={} +A.aV.prototype={ +gn(a){return this.a.a}, gN(a){return this.a.a===0}, gF(a){var s=this.a return new A.cv(s,s.r,s.e,this.$ti.h("cv<1>"))}, -D(a,b){return this.a.a8(b)}} +C(a,b){return this.a.a7(b)}} A.cv.prototype={ gB(){return this.d}, p(){var s,r=this,q=r.a -if(r.b!==q.r)throw A.f(A.ag(q)) +if(r.b!==q.r)throw A.f(A.ai(q)) s=r.c if(s==null){r.d=null return!1}else{r.d=s.a r.c=s.c return!0}}, -$iK:1} +$iL:1} A.fo.prototype={ -gm(a){return this.a.a}, +gn(a){return this.a.a}, gN(a){return this.a.a===0}, gF(a){var s=this.a -return new A.dq(s,s.r,s.e,this.$ti.h("dq<1>"))}} -A.dq.prototype={ +return new A.dr(s,s.r,s.e,this.$ti.h("dr<1>"))}} +A.dr.prototype={ gB(){return this.d}, p(){var s,r=this,q=r.a -if(r.b!==q.r)throw A.f(A.ag(q)) +if(r.b!==q.r)throw A.f(A.ai(q)) s=r.c if(s==null){r.d=null return!1}else{r.d=s.b r.c=s.c return!0}}, -$iK:1} -A.dp.prototype={ -gm(a){return this.a.a}, +$iL:1} +A.dq.prototype={ +gn(a){return this.a.a}, gN(a){return this.a.a===0}, gF(a){var s=this.a return new A.fn(s,s.r,s.e,this.$ti.h("fn<1,2>"))}} @@ -6807,111 +6814,111 @@ gB(){var s=this.d s.toString return s}, p(){var s,r=this,q=r.a -if(r.b!==q.r)throw A.f(A.ag(q)) +if(r.b!==q.r)throw A.f(A.ai(q)) s=r.c if(s==null){r.d=null -return!1}else{r.d=new A.b_(s.a,s.b,r.$ti.h("b_<1,2>")) +return!1}else{r.d=new A.b0(s.a,s.b,r.$ti.h("b0<1,2>")) r.c=s.c return!0}}, -$iK:1} -A.dn.prototype={ -cS(a){return A.yG(a)&1073741823}, +$iL:1} +A.dp.prototype={ +cS(a){return A.yL(a)&1073741823}, cT(a,b){var s,r if(a==null)return-1 s=a.length -for(r=0;r0;){--q;--s -B.a.k(j,q,r[s])}}return A.rx(j,k)}} +B.a.k(j,q,r[s])}}return A.rC(j,k)}} A.ez.prototype={ di(){return[this.a,this.b]}, -u(a,b){if(b==null)return!1 -return b instanceof A.ez&&this.$s===b.$s&&J.M(this.a,b.a)&&J.M(this.b,b.b)}, +v(a,b){if(b==null)return!1 +return b instanceof A.ez&&this.$s===b.$s&&J.N(this.a,b.a)&&J.N(this.b,b.b)}, gq(a){return A.aX(this.$s,this.a,this.b,B.u)}} A.eA.prototype={ di(){return[this.a,this.b,this.c]}, -u(a,b){var s=this +v(a,b){var s=this if(b==null)return!1 -return b instanceof A.eA&&s.$s===b.$s&&J.M(s.a,b.a)&&J.M(s.b,b.b)&&J.M(s.c,b.c)}, +return b instanceof A.eA&&s.$s===b.$s&&J.N(s.a,b.a)&&J.N(s.b,b.b)&&J.N(s.c,b.c)}, gq(a){var s=this return A.aX(s.$s,s.a,s.b,s.c)}} A.d7.prototype={ di(){return this.a}, -u(a,b){if(b==null)return!1 -return b instanceof A.d7&&this.$s===b.$s&&A.xk(this.a,b.a)}, -gq(a){return A.aX(this.$s,A.wf(this.a),B.u,B.u)}} +v(a,b){if(b==null)return!1 +return b instanceof A.d7&&this.$s===b.$s&&A.xp(this.a,b.a)}, +gq(a){return A.aX(this.$s,A.wk(this.a),B.u,B.u)}} A.cV.prototype={ j(a){return"RegExp/"+this.a+"/"+this.b.flags}, -ghg(){var s=this,r=s.c +ghh(){var s=this,r=s.c if(r!=null)return r r=s.b -return s.c=A.pY(s.a,r.multiline,!r.ignoreCase,r.unicode,r.dotAll,"g")}, -gkA(){var s=this,r=s.d +return s.c=A.q3(s.a,r.multiline,!r.ignoreCase,r.unicode,r.dotAll,"g")}, +gkB(){var s=this,r=s.d if(r!=null)return r r=s.b -return s.d=A.pY(s.a,r.multiline,!r.ignoreCase,r.unicode,r.dotAll,"y")}, -k8(){var s,r=this.a -if(!B.b.D(r,"("))return!1 +return s.d=A.q3(s.a,r.multiline,!r.ignoreCase,r.unicode,r.dotAll,"y")}, +k9(){var s,r=this.a +if(!B.b.C(r,"("))return!1 s=this.b.unicode?"u":"" return new RegExp("(?:)|"+r,s).exec("").length>1}, dC(a,b,c){var s=b.length -if(c>s)throw A.f(A.ad(c,0,s,null,null)) -return new A.ku(this,b,c)}, +if(c>s)throw A.f(A.af(c,0,s,null,null)) +return new A.kw(this,b,c)}, dB(a,b){return this.dC(0,b,0)}, -h5(a,b){var s,r=this.ghg() +h6(a,b){var s,r=this.ghh() if(r==null)r=A.cg(r) r.lastIndex=b s=r.exec(a) if(s==null)return null return new A.hg(s)}, -km(a,b){var s,r=this.gkA() +kn(a,b){var s,r=this.gkB() if(r==null)r=A.cg(r) r.lastIndex=b s=r.exec(a) if(s==null)return null return new A.hg(s)}, -f_(a,b,c){if(c<0||c>b.length)throw A.f(A.ad(c,0,b.length,null,null)) -return this.km(b,c)}, -$idw:1, -$iqb:1} +f0(a,b,c){if(c<0||c>b.length)throw A.f(A.af(c,0,b.length,null,null)) +return this.kn(b,c)}, +$idx:1, +$iqg:1} A.hg.prototype={ gS(){return this.b.index}, -gU(){var s=this.b +gV(){var s=this.b return s.index+s[0].length}, d8(a){var s=this.b if(!(a=56320&&s<=57343}}}o=(s?o+1:o)+1}m.c=o return!0}}m.b=m.d=null return!1}, -$iK:1} +$iL:1} A.fS.prototype={ -gU(){return this.a+this.c.length}, -d8(a){if(a!==0)throw A.f(A.nq(a,null)) +gV(){return this.a+this.c.length}, +d8(a){if(a!==0)throw A.f(A.nu(a,null)) return this.c}, $icc:1, gS(){return this.a}} -A.kR.prototype={ -gF(a){return new A.kS(this.a,this.b,this.c)}} -A.kS.prototype={ +A.kU.prototype={ +gF(a){return new A.kV(this.a,this.b,this.c)}} +A.kV.prototype={ p(){var s,r,q=this,p=q.c,o=q.b,n=o.length,m=q.a,l=m.length if(p+n>l){q.d=null return!1}s=m.indexOf(o,p) @@ -6956,57 +6963,57 @@ return!0}, gB(){var s=this.d s.toString return s}, -$iK:1} -A.kz.prototype={ +$iL:1} +A.kB.prototype={ aY(){var s=this.b -if(s===this)throw A.f(A.q0(this.a)) +if(s===this)throw A.f(A.q6(this.a)) return s}} -A.du.prototype={ -gaz(a){return B.Mu}, -hN(a,b,c){var s -A.p7(a,b,c) +A.dv.prototype={ +gaz(a){return B.Mw}, +hO(a,b,c){var s +A.pb(a,b,c) s=new Uint8Array(a,b,c) return s}, -dD(a,b,c){A.p7(a,b,c) +dD(a,b,c){A.pb(a,b,c) return c==null?new DataView(a,b):new DataView(a,b,c)}, -hM(a){return this.dD(a,0,null)}, -$ia2:1, -$idu:1} +hN(a){return this.dD(a,0,null)}, +$ia3:1, +$idv:1} A.fu.prototype={ -ga9(a){if(((a.$flags|0)&2)!==0)return new A.oX(a.buffer) +ga9(a){if(((a.$flags|0)&2)!==0)return new A.p0(a.buffer) else return a.buffer}, -kv(a,b,c,d){var s=A.ad(b,0,c,d,null) +kw(a,b,c,d){var s=A.af(b,0,c,d,null) throw A.f(s)}, -fV(a,b,c,d){if(b>>>0!==b||b>c)this.kv(a,b,c,d)}} -A.oX.prototype={ -hN(a,b,c){var s=A.w4(this.a,b,c) +fW(a,b,c,d){if(b>>>0!==b||b>c)this.kw(a,b,c,d)}} +A.p0.prototype={ +hO(a,b,c){var s=A.w9(this.a,b,c) s.$flags=3 return s}, -dD(a,b,c){var s=A.w1(this.a,b,c) +dD(a,b,c){var s=A.w6(this.a,b,c) s.$flags=3 return s}, -hM(a){return this.dD(0,0,null)}} -A.j6.prototype={ -gaz(a){return B.Mv}, -$ia2:1} +hN(a){return this.dD(0,0,null)}} +A.j7.prototype={ +gaz(a){return B.Mx}, +$ia3:1} A.aW.prototype={ -gm(a){return a.length}, -kV(a,b,c,d,e){var s,r,q=a.length -this.fV(a,b,q,"start") -this.fV(a,c,q,"end") -if(b>c)throw A.f(A.ad(b,0,c,null,null)) +gn(a){return a.length}, +kW(a,b,c,d,e){var s,r,q=a.length +this.fW(a,b,q,"start") +this.fW(a,c,q,"end") +if(b>c)throw A.f(A.af(b,0,c,null,null)) s=c-b -if(e<0)throw A.f(A.U(e,null)) +if(e<0)throw A.f(A.W(e,null)) r=d.length if(r-e").b(a))s.fU(a) -else s.fY(a)}}, -eF(a,b){var s=this.a -if(this.b)s.eb(new A.bG(a,b)) -else s.e8(new A.bG(a,b))}} -A.p5.prototype={ +if(q.h("cr<1>").b(a))s.fV(a) +else s.fZ(a)}}, +eG(a,b){var s=this.a +if(this.b)s.ec(new A.bG(a,b)) +else s.e9(new A.bG(a,b))}} +A.p9.prototype={ $1(a){return this.a.$2(0,a)}, $S:16} -A.p6.prototype={ -$2(a,b){this.a.$2(1,new A.fc(a,t.E.a(b)))}, -$S:43} -A.pd.prototype={ -$2(a,b){this.a(A.aw(a),b)}, -$S:51} +A.pa.prototype={ +$2(a,b){this.a.$2(1,new A.fc(a,t.F.a(b)))}, +$S:46} +A.ph.prototype={ +$2(a,b){this.a(A.ax(a),b)}, +$S:54} A.bG.prototype={ j(a){return A.k(this.a)}, -$iZ:1, -gce(){return this.b}} -A.kA.prototype={ -eF(a,b){var s=this.a +$ia0:1, +gcf(){return this.b}} +A.kC.prototype={ +eG(a,b){var s=this.a if((s.a&30)!==0)throw A.f(A.ce("Future already completed")) -s.e8(A.y4(a,b))}, -hZ(a){return this.eF(a,null)}} +s.e9(A.y9(a,b))}, +i_(a){return this.eG(a,null)}} A.h8.prototype={ -eE(a){var s,r=this.$ti +eF(a){var s,r=this.$ti r.h("1/?").a(a) s=this.a if((s.a&30)!==0)throw A.f(A.ce("Future already completed")) -s.e7(r.h("1/").a(a))}} -A.dI.prototype={ -nq(a){if((this.c&15)!==6)return!0 -return this.b.b.fc(t.iW.a(this.d),a.a,t.k4,t.K)}, -n5(a){var s,r=this,q=r.e,p=null,o=t.z,n=t.K,m=a.a,l=r.b.b -if(t.ng.b(q))p=l.oa(q,m,a.b,o,n,t.E) -else p=l.fc(t.mq.a(q),m,o,n) +s.e8(r.h("1/").a(a))}} +A.dJ.prototype={ +nr(a){if((this.c&15)!==6)return!0 +return this.b.b.fd(t.iW.a(this.d),a.a,t.k4,t.K)}, +n6(a){var s,r=this,q=r.e,p=null,o=t.z,n=t.K,m=a.a,l=r.b.b +if(t.ng.b(q))p=l.oa(q,m,a.b,o,n,t.F) +else p=l.fd(t.mq.a(q),m,o,n) try{o=r.$ti.h("2/").a(p) -return o}catch(s){if(t.do.b(A.bP(s))){if((r.c&1)!==0)throw A.f(A.U("The error handler of Future.then must return a value of the returned future's type","onError")) -throw A.f(A.U("The error handler of Future.catchError must return a value of the future's type","onError"))}else throw s}}} -A.az.prototype={ -fd(a,b,c){var s,r,q,p=this.$ti -p.v(c).h("1/(2)").a(a) -s=$.am -if(s===B.a3){if(b!=null&&!t.ng.b(b)&&!t.mq.b(b))throw A.f(A.pU(b,"onError",u.w))}else{c.h("@<0/>").v(p.c).h("1(2)").a(a) -if(b!=null)b=A.ym(b,s)}r=new A.az(s,c.h("az<0>")) +return o}catch(s){if(t.do.b(A.bP(s))){if((r.c&1)!==0)throw A.f(A.W("The error handler of Future.then must return a value of the returned future's type","onError")) +throw A.f(A.W("The error handler of Future.catchError must return a value of the future's type","onError"))}else throw s}}} +A.aB.prototype={ +fe(a,b,c){var s,r,q,p=this.$ti +p.u(c).h("1/(2)").a(a) +s=$.an +if(s===B.a3){if(b!=null&&!t.ng.b(b)&&!t.mq.b(b))throw A.f(A.q_(b,"onError",u.w))}else{c.h("@<0/>").u(p.c).h("1(2)").a(a) +if(b!=null)b=A.yr(b,s)}r=new A.aB(s,c.h("aB<0>")) q=b==null?1:3 -this.e6(new A.dI(r,q,a,b,p.h("@<1>").v(c).h("dI<1,2>"))) +this.e7(new A.dJ(r,q,a,b,p.h("@<1>").u(c).h("dJ<1,2>"))) return r}, -of(a,b){return this.fd(a,null,b)}, -hu(a,b,c){var s,r=this.$ti -r.v(c).h("1/(2)").a(a) -s=new A.az($.am,c.h("az<0>")) -this.e6(new A.dI(s,19,a,b,r.h("@<1>").v(c).h("dI<1,2>"))) +of(a,b){return this.fe(a,null,b)}, +hv(a,b,c){var s,r=this.$ti +r.u(c).h("1/(2)").a(a) +s=new A.aB($.an,c.h("aB<0>")) +this.e7(new A.dJ(s,19,a,b,r.h("@<1>").u(c).h("dJ<1,2>"))) return s}, -kU(a){this.a=this.a&1|16 +kV(a){this.a=this.a&1|16 this.c=a}, dg(a){this.a=a.a&30|this.a&1 this.c=a.c}, -e6(a){var s,r=this,q=r.a +e7(a){var s,r=this,q=r.a if(q<=3){a.a=t.np.a(r.c) r.c=a}else{if((q&4)!==0){s=t.j_.a(r.c) -if((s.a&24)===0){s.e6(a) -return}r.dg(s)}A.lv(null,null,r.b,t.T.a(new A.oB(r,a)))}}, -hl(a){var s,r,q,p,o,n,m=this,l={} +if((s.a&24)===0){s.e7(a) +return}r.dg(s)}A.ly(null,null,r.b,t.U.a(new A.oF(r,a)))}}, +hm(a){var s,r,q,p,o,n,m=this,l={} l.a=a if(a==null)return s=m.a @@ -7191,202 +7198,202 @@ m.c=a if(r!=null){q=a.a for(p=a;q!=null;p=q,q=o)o=q.a p.a=r}}else{if((s&4)!==0){n=t.j_.a(m.c) -if((n.a&24)===0){n.hl(a) +if((n.a&24)===0){n.hm(a) return}m.dg(n)}l.a=m.dr(a) -A.lv(null,null,m.b,t.T.a(new A.oF(l,m)))}}, +A.ly(null,null,m.b,t.U.a(new A.oJ(l,m)))}}, dq(){var s=t.np.a(this.c) this.c=null return this.dr(s)}, dr(a){var s,r,q for(s=a,r=null;s!=null;r=s,s=q){q=s.a s.a=r}return r}, -fY(a){var s,r=this +fZ(a){var s,r=this r.$ti.c.a(a) s=r.dq() r.a=8 r.c=a A.ex(r,s)}, -k6(a){var s,r,q=this +k7(a){var s,r,q=this if((a.a&16)!==0){s=q.b===a.b s=!(s||s)}else s=!1 if(s)return r=q.dq() q.dg(a) A.ex(q,r)}, -eb(a){var s=this.dq() -this.kU(a) +ec(a){var s=this.dq() +this.kV(a) A.ex(this,s)}, -e7(a){var s=this.$ti +e8(a){var s=this.$ti s.h("1/").a(a) -if(s.h("cr<1>").b(a)){this.fU(a) -return}this.k0(a)}, -k0(a){var s=this +if(s.h("cr<1>").b(a)){this.fV(a) +return}this.k5(a)}, +k5(a){var s=this s.$ti.c.a(a) s.a^=2 -A.lv(null,null,s.b,t.T.a(new A.oD(s,a)))}, -fU(a){A.qu(this.$ti.h("cr<1>").a(a),this,!1) +A.ly(null,null,s.b,t.U.a(new A.oH(s,a)))}, +fV(a){A.qz(this.$ti.h("cr<1>").a(a),this,!1) return}, -e8(a){this.a^=2 -A.lv(null,null,this.b,t.T.a(new A.oC(this,a)))}, +e9(a){this.a^=2 +A.ly(null,null,this.b,t.U.a(new A.oG(this,a)))}, $icr:1} -A.oB.prototype={ +A.oF.prototype={ $0(){A.ex(this.a,this.b)}, $S:1} -A.oF.prototype={ +A.oJ.prototype={ $0(){A.ex(this.b,this.a.a)}, $S:1} -A.oE.prototype={ -$0(){A.qu(this.a.a,this.b,!0)}, +A.oI.prototype={ +$0(){A.qz(this.a.a,this.b,!0)}, $S:1} -A.oD.prototype={ -$0(){this.a.fY(this.b)}, +A.oH.prototype={ +$0(){this.a.fZ(this.b)}, $S:1} -A.oC.prototype={ -$0(){this.a.eb(this.b)}, +A.oG.prototype={ +$0(){this.a.ec(this.b)}, $S:1} -A.oI.prototype={ +A.oM.prototype={ $0(){var s,r,q,p,o,n,m,l,k=this,j=null try{q=k.a.a j=q.b.b.o9(t.mY.a(q.d),t.z)}catch(p){s=A.bP(p) r=A.eJ(p) -if(k.c&&t.A.a(k.b.a.c).a===s){q=k.a -q.c=t.A.a(k.b.a.c)}else{q=s +if(k.c&&t.B.a(k.b.a.c).a===s){q=k.a +q.c=t.B.a(k.b.a.c)}else{q=s o=r -if(o==null)o=A.pV(q) +if(o==null)o=A.q0(q) n=k.a n.c=new A.bG(q,o) q=n}q.b=!0 -return}if(j instanceof A.az&&(j.a&24)!==0){if((j.a&16)!==0){q=k.a -q.c=t.A.a(j.c) -q.b=!0}return}if(j instanceof A.az){m=k.b.a -l=new A.az(m.b,m.$ti) -j.fd(new A.oJ(l,m),new A.oK(l),t.H) +return}if(j instanceof A.aB&&(j.a&24)!==0){if((j.a&16)!==0){q=k.a +q.c=t.B.a(j.c) +q.b=!0}return}if(j instanceof A.aB){m=k.b.a +l=new A.aB(m.b,m.$ti) +j.fe(new A.oN(l,m),new A.oO(l),t.H) q=k.a q.c=l q.b=!1}}, $S:1} -A.oJ.prototype={ -$1(a){this.a.k6(this.b)}, +A.oN.prototype={ +$1(a){this.a.k7(this.b)}, $S:28} -A.oK.prototype={ +A.oO.prototype={ $2(a,b){A.cg(a) -t.E.a(b) -this.a.eb(new A.bG(a,b))}, -$S:56} -A.oH.prototype={ +t.F.a(b) +this.a.ec(new A.bG(a,b))}, +$S:59} +A.oL.prototype={ $0(){var s,r,q,p,o,n,m,l try{q=this.a p=q.a o=p.$ti n=o.c m=n.a(this.b) -q.c=p.b.b.fc(o.h("2/(1)").a(p.d),m,o.h("2/"),n)}catch(l){s=A.bP(l) +q.c=p.b.b.fd(o.h("2/(1)").a(p.d),m,o.h("2/"),n)}catch(l){s=A.bP(l) r=A.eJ(l) q=s p=r -if(p==null)p=A.pV(q) +if(p==null)p=A.q0(q) o=this.a o.c=new A.bG(q,p) o.b=!0}}, $S:1} -A.oG.prototype={ +A.oK.prototype={ $0(){var s,r,q,p,o,n,m,l=this -try{s=t.A.a(l.a.a.c) +try{s=t.B.a(l.a.a.c) p=l.b -if(p.a.nq(s)&&p.a.e!=null){p.c=p.a.n5(s) +if(p.a.nr(s)&&p.a.e!=null){p.c=p.a.n6(s) p.b=!1}}catch(o){r=A.bP(o) q=A.eJ(o) -p=t.A.a(l.a.a.c) +p=t.B.a(l.a.a.c) if(p.a===r){n=l.b n.c=p p=n}else{p=r n=q -if(n==null)n=A.pV(p) +if(n==null)n=A.q0(p) m=l.b m.c=new A.bG(p,n) p=m}p.b=!0}}, $S:1} -A.kw.prototype={} -A.kQ.prototype={} -A.hz.prototype={$ite:1} -A.kP.prototype={ +A.ky.prototype={} +A.kT.prototype={} +A.hz.prototype={$itj:1} +A.kS.prototype={ ob(a){var s,r,q -t.T.a(a) -try{if(B.a3===$.am){a.$0() -return}A.u4(null,null,this,a,t.H)}catch(q){s=A.bP(q) +t.U.a(a) +try{if(B.a3===$.an){a.$0() +return}A.u9(null,null,this,a,t.H)}catch(q){s=A.bP(q) r=A.eJ(q) -A.qJ(A.cg(s),t.E.a(r))}}, -lN(a){return new A.oT(this,t.T.a(a))}, +A.qO(A.cg(s),t.F.a(r))}}, +lO(a){return new A.oX(this,t.U.a(a))}, o9(a,b){b.h("0()").a(a) -if($.am===B.a3)return a.$0() -return A.u4(null,null,this,a,b)}, -fc(a,b,c,d){c.h("@<0>").v(d).h("1(2)").a(a) +if($.an===B.a3)return a.$0() +return A.u9(null,null,this,a,b)}, +fd(a,b,c,d){c.h("@<0>").u(d).h("1(2)").a(a) d.a(b) -if($.am===B.a3)return a.$1(b) -return A.yo(null,null,this,a,b,c,d)}, -oa(a,b,c,d,e,f){d.h("@<0>").v(e).v(f).h("1(2,3)").a(a) +if($.an===B.a3)return a.$1(b) +return A.yt(null,null,this,a,b,c,d)}, +oa(a,b,c,d,e,f){d.h("@<0>").u(e).u(f).h("1(2,3)").a(a) e.a(b) f.a(c) -if($.am===B.a3)return a.$2(b,c) -return A.yn(null,null,this,a,b,c,d,e,f)}, -is(a,b,c,d){return b.h("@<0>").v(c).v(d).h("1(2,3)").a(a)}} -A.oT.prototype={ +if($.an===B.a3)return a.$2(b,c) +return A.ys(null,null,this,a,b,c,d,e,f)}, +it(a,b,c,d){return b.h("@<0>").u(c).u(d).h("1(2,3)").a(a)}} +A.oX.prototype={ $0(){return this.a.ob(this.b)}, $S:1} -A.pb.prototype={ -$0(){A.vG(this.a,this.b)}, +A.pf.prototype={ +$0(){A.vL(this.a,this.b)}, $S:1} A.cJ.prototype={ -gm(a){return this.a}, +gn(a){return this.a}, gN(a){return this.a===0}, -gaR(){return new A.hc(this,A.w(this).h("hc<1>"))}, -a8(a){var s,r +gaR(){return new A.hc(this,A.x(this).h("hc<1>"))}, +a7(a){var s,r if(typeof a=="string"&&a!=="__proto__"){s=this.b return s==null?!1:s[a]!=null}else if(typeof a=="number"&&(a&1073741823)===a){r=this.c -return r==null?!1:r[a]!=null}else return this.h_(a)}, -h_(a){var s=this.d +return r==null?!1:r[a]!=null}else return this.h0(a)}, +h0(a){var s=this.d if(s==null)return!1 -return this.bG(this.h8(s,a),a)>=0}, -n(a,b){var s,r,q +return this.bG(this.h9(s,a),a)>=0}, +m(a,b){var s,r,q if(typeof b=="string"&&b!=="__proto__"){s=this.b -r=s==null?null:A.to(s,b) +r=s==null?null:A.tt(s,b) return r}else if(typeof b=="number"&&(b&1073741823)===b){q=this.c -r=q==null?null:A.to(q,b) -return r}else return this.h7(b)}, -h7(a){var s,r,q=this.d +r=q==null?null:A.tt(q,b) +return r}else return this.h8(b)}, +h8(a){var s,r,q=this.d if(q==null)return null -s=this.h8(q,a) +s=this.h9(q,a) r=this.bG(s,a) return r<0?null:s[r+1]}, -k(a,b,c){var s,r,q=this,p=A.w(q) +k(a,b,c){var s,r,q=this,p=A.x(q) p.c.a(b) p.y[1].a(c) if(typeof b=="string"&&b!=="__proto__"){s=q.b -q.fX(s==null?q.b=A.qv():s,b,c)}else if(typeof b=="number"&&(b&1073741823)===b){r=q.c -q.fX(r==null?q.c=A.qv():r,b,c)}else q.ho(b,c)}, -ho(a,b){var s,r,q,p,o=this,n=A.w(o) +q.fY(s==null?q.b=A.qA():s,b,c)}else if(typeof b=="number"&&(b&1073741823)===b){r=q.c +q.fY(r==null?q.c=A.qA():r,b,c)}else q.hp(b,c)}, +hp(a,b){var s,r,q,p,o=this,n=A.x(o) n.c.a(a) n.y[1].a(b) s=o.d -if(s==null)s=o.d=A.qv() -r=o.bY(a) +if(s==null)s=o.d=A.qA() +r=o.bZ(a) q=s[r] -if(q==null){A.qw(s,r,[a,b]);++o.a +if(q==null){A.qB(s,r,[a,b]);++o.a o.e=null}else{p=o.bG(q,a) if(p>=0)q[p+1]=b else{q.push(a,b);++o.a o.e=null}}}, -X(a,b){var s,r,q,p,o,n,m=this,l=A.w(m) +T(a,b){var s,r,q,p,o,n,m=this,l=A.x(m) l.h("~(1,2)").a(b) -s=m.fZ() +s=m.h_() for(r=s.length,q=l.c,l=l.y[1],p=0;p"))}, -D(a,b){return this.a.a8(b)}} +return new A.hd(s,s.h_(),this.$ti.h("hd<1>"))}, +C(a,b){return this.a.a7(b)}} A.hd.prototype={ gB(){var s=this.d return s==null?this.$ti.c.a(s):s}, p(){var s=this,r=s.b,q=s.c,p=s.a -if(r!==p.e)throw A.f(A.ag(p)) +if(r!==p.e)throw A.f(A.ai(p)) else if(q>=r.length){s.d=null return!1}else{s.d=r[q] s.c=q+1 return!0}}, -$iK:1} +$iL:1} A.cL.prototype={ -gF(a){var s=this,r=new A.dK(s,s.r,A.w(s).h("dK<1>")) +gF(a){var s=this,r=new A.dL(s,s.r,A.x(s).h("dL<1>")) r.c=s.e return r}, -gm(a){return this.a}, +gn(a){return this.a}, gN(a){return this.a===0}, gaP(a){return this.a!==0}, -D(a,b){var s,r +C(a,b){var s,r if(typeof b=="string"&&b!=="__proto__"){s=this.b if(s==null)return!1 return t.nF.a(s[b])!=null}else if(typeof b=="number"&&(b&1073741823)===b){r=this.c if(r==null)return!1 -return t.nF.a(r[b])!=null}else return this.ka(b)}, -ka(a){var s=this.d +return t.nF.a(r[b])!=null}else return this.kb(b)}, +kb(a){var s=this.d if(s==null)return!1 -return this.bG(s[this.bY(a)],a)>=0}, +return this.bG(s[this.bZ(a)],a)>=0}, l(a,b){var s,r,q=this -A.w(q).c.a(b) +A.x(q).c.a(b) if(typeof b=="string"&&b!=="__proto__"){s=q.b -return q.fW(s==null?q.b=A.qx():s,b)}else if(typeof b=="number"&&(b&1073741823)===b){r=q.c -return q.fW(r==null?q.c=A.qx():r,b)}else return q.de(b)}, +return q.fX(s==null?q.b=A.qC():s,b)}else if(typeof b=="number"&&(b&1073741823)===b){r=q.c +return q.fX(r==null?q.c=A.qC():r,b)}else return q.de(b)}, de(a){var s,r,q,p=this -A.w(p).c.a(a) +A.x(p).c.a(a) s=p.d -if(s==null)s=p.d=A.qx() -r=p.bY(a) +if(s==null)s=p.d=A.qC() +r=p.bZ(a) q=s[r] -if(q==null)s[r]=[p.ea(a)] +if(q==null)s[r]=[p.eb(a)] else{if(p.bG(q,a)>=0)return!1 -q.push(p.ea(a))}return!0}, -fW(a,b){A.w(this).c.a(b) +q.push(p.eb(a))}return!0}, +fX(a,b){A.x(this).c.a(b) if(t.nF.a(a[b])!=null)return!1 -a[b]=this.ea(b) +a[b]=this.eb(b) return!0}, -ea(a){var s=this,r=new A.kM(A.w(s).c.a(a)) +eb(a){var s=this,r=new A.kP(A.x(s).c.a(a)) if(s.e==null)s.e=s.f=r else s.f=s.f.b=r;++s.a s.r=s.r+1&1073741823 return r}, -bY(a){return J.A(a)&1073741823}, +bZ(a){return J.B(a)&1073741823}, bG(a,b){var s,r if(a==null)return-1 s=a.length -for(r=0;r"))}, -ai(a,b){return this.n(a,b)}, -X(a,b){var s,r -A.b2(a).h("~(D.E)").a(b) -s=this.gm(a) -for(r=0;r"))}, +ag(a,b){return this.m(a,b)}, +T(a,b){var s,r +A.b3(a).h("~(C.E)").a(b) +s=this.gn(a) +for(r=0;r1)throw A.f(A.rp()) -return this.n(a,0)}, -D(a,b){var s,r=this.gm(a) -for(s=0;s1)throw A.f(A.ru()) +return this.m(a,0)}, +C(a,b){var s,r=this.gn(a) +for(s=0;s").v(c).h("R<1,2>"))}, -aX(a,b){return A.bX(a,b,null,A.b2(a).h("D.E"))}, -bj(a,b){return A.bX(a,0,A.dO(b,"count",t.S),A.b2(a).h("D.E"))}, +A.b3(a).h("A(C.E)").a(b) +s=this.gn(a) +for(r=0;r").u(c).h("Q<1,2>"))}, +aX(a,b){return A.bX(a,b,null,A.b3(a).h("C.E"))}, +bk(a,b){return A.bX(a,0,A.dP(b,"count",t.S),A.b3(a).h("C.E"))}, l(a,b){var s -A.b2(a).h("D.E").a(b) -s=this.gm(a) -this.sm(a,s+1) +A.b3(a).h("C.E").a(b) +s=this.gn(a) +this.sn(a,s+1) this.k(a,s,b)}, -bb(a){this.sm(a,0)}, +bc(a){this.sn(a,0)}, d3(a){var s,r=this -if(r.gm(a)===0)throw A.f(A.bi()) -s=r.n(a,r.gm(a)-1) -r.sm(a,r.gm(a)-1) +if(r.gn(a)===0)throw A.f(A.bi()) +s=r.m(a,r.gn(a)-1) +r.sn(a,r.gn(a)-1) return s}, -cd(a,b){var s,r=A.b2(a) -r.h("b(D.E,D.E)?").a(b) -s=b==null?A.yF():b -A.jK(a,0,this.gm(a)-1,s,r.h("D.E"))}, -c4(a,b,c,d){var s -A.b2(a).h("D.E?").a(d) -A.cw(b,c,this.gm(a)) +bV(a,b){var s,r=A.b3(a) +r.h("b(C.E,C.E)?").a(b) +s=b==null?A.yK():b +A.jM(a,0,this.gn(a)-1,s,r.h("C.E"))}, +c5(a,b,c,d){var s +A.b3(a).h("C.E?").a(d) +A.cw(b,c,this.gn(a)) for(s=b;s").a(d) -A.cw(b,c,this.gm(a)) +bb(a,b,c,d,e){var s,r,q,p,o +A.b3(a).h("h").a(d) +A.cw(b,c,this.gn(a)) s=c-b if(s===0)return -A.aE(e,"skipCount") +A.aF(e,"skipCount") if(t.p.b(d)){r=e -q=d}else{q=J.lC(d,e).cz(0,!1) -r=0}p=J.ab(q) -if(r+s>p.gm(q))throw A.f(A.ro()) -if(r=0;--o)this.k(a,b+o,p.n(q,r+o)) -else for(o=0;op.gn(q))throw A.f(A.rt()) +if(r=0;--o)this.k(a,b+o,p.m(q,r+o)) +else for(o=0;o").v(c).h("dF<1,2>"))}} +A.dG.prototype={ +c3(a,b,c){return new A.dG(this.a.c3(0,b,c),b.h("@<0>").u(c).h("dG<1,2>"))}} A.fp.prototype={ gF(a){var s=this return new A.hf(s,s.c,s.d,s.b,s.$ti.h("hf<1>"))}, gN(a){return this.b===this.c}, -gm(a){return(this.c-this.b&this.a.length-1)>>>0}, -ai(a,b){var s,r,q,p=this -A.vN(b,p.gm(0),p,null,null) +gn(a){return(this.c-this.b&this.a.length-1)>>>0}, +ag(a,b){var s,r,q,p=this +A.vS(b,p.gn(0),p,null,null) s=p.a r=s.length q=(p.b+b&r-1)>>>0 if(!(q>=0&&q>>0)B.a.k(s.a,r,null) s.b=s.c=0;++s.d}}, -j(a){return A.iS(this,"{","}")}, -it(){var s,r,q=this,p=q.b +j(a){return A.iT(this,"{","}")}, +iu(){var s,r,q=this,p=q.b if(p===q.c)throw A.f(A.bi());++q.d s=q.a if(!(p>>0 o.c=s -if(o.b===s){q=A.aD(r*2,null,!1,n.h("1?")) +if(o.b===s){q=A.aE(r*2,null,!1,n.h("1?")) n=o.a s=o.b p=n.length-s -B.a.ba(q,0,p,n,s) -B.a.ba(q,p,p+o.b,o.a,0) +B.a.bb(q,0,p,n,s) +B.a.bb(q,p,p+o.b,o.a,0) o.b=0 o.c=o.a.length o.a=q}++o.d}, -$iwC:1} +$iwH:1} A.hf.prototype={ gB(){var s=this.e return s==null?this.$ti.c.a(s):s}, p(){var s,r,q=this,p=q.a -if(q.c!==p.d)A.O(A.ag(p)) +if(q.c!==p.d)A.P(A.ai(p)) s=q.d if(s===q.b){q.e=null return!1}p=p.a @@ -7681,37 +7688,37 @@ if(!(s>>0 return!0}, -$iK:1} +$iL:1} A.aY.prototype={ -gN(a){return this.gm(this)===0}, -gaP(a){return this.gm(this)!==0}, -j(a){return A.iS(this,"{","}")}, +gN(a){return this.gn(this)===0}, +gaP(a){return this.gn(this)!==0}, +j(a){return A.iT(this,"{","}")}, aq(a,b){var s,r,q=this.gF(this) if(!q.p())return"" -s=J.ax(q.gB()) +s=J.ay(q.gB()) if(!q.p())return s if(b.length===0){r=s do r+=A.k(q.gB()) while(q.p())}else{r=s do r=r+b+A.k(q.gB()) while(q.p())}return r.charCodeAt(0)==0?r:r}, -bj(a,b){return A.rU(this,b,A.w(this).h("aY.E"))}, -aX(a,b){return A.rS(this,b,A.w(this).h("aY.E"))}, -ai(a,b){var s,r -A.aE(b,"index") +bk(a,b){return A.rZ(this,b,A.x(this).h("aY.E"))}, +aX(a,b){return A.rX(this,b,A.x(this).h("aY.E"))}, +ag(a,b){var s,r +A.aF(b,"index") s=this.gF(this) -for(r=b;s.p();){if(r===0)return s.gB();--r}throw A.f(A.iL(b,b-r,this,null,"index"))}, +for(r=b;s.p();){if(r===0)return s.gB();--r}throw A.f(A.iM(b,b-r,this,null,"index"))}, $iz:1, $ih:1, $ibk:1} A.hp.prototype={} A.eC.prototype={} -A.p_.prototype={ +A.p3.prototype={ $0(){var s,r try{s=new TextDecoder("utf-8",{fatal:true}) return s}catch(r){}return null}, $S:25} -A.oZ.prototype={ +A.p2.prototype={ $0(){var s,r try{s=new TextDecoder("utf-8",{fatal:false}) return s}catch(r){}return null}, @@ -7721,33 +7728,33 @@ b0(a){var s t.L.a(a) s=B.i_.bL(a) return s}} -A.kV.prototype={ +A.kY.prototype={ bL(a){var s,r,q,p,o t.L.a(a) -s=J.ab(a) -r=A.cw(0,null,s.gm(a)) -for(q=~this.b,p=0;p>>0!==0){if(!this.a)throw A.f(A.aB("Invalid value in input: "+o,null,null)) -return this.kb(a,0,r)}}return A.ay(a,0,r)}, -kb(a,b,c){var s,r,q,p,o +s=J.ad(a) +r=A.cw(0,null,s.gn(a)) +for(q=~this.b,p=0;p>>0!==0){if(!this.a)throw A.f(A.aD("Invalid value in input: "+o,null,null)) +return this.kc(a,0,r)}}return A.aA(a,0,r)}, +kc(a,b,c){var s,r,q,p,o t.L.a(a) -for(s=~this.b,r=J.ab(a),q=b,p="";q>>0!==0?65533:o)}return p.charCodeAt(0)==0?p:p}} +for(s=~this.b,r=J.ad(a),q=b,p="";q>>0!==0?65533:o)}return p.charCodeAt(0)==0?p:p}} A.hT.prototype={} A.eL.prototype={ -geN(){return B.ie}, -nz(a3,a4,a5){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=u.A,a1="Invalid base64 encoding length ",a2=a3.length +geO(){return B.ie}, +nA(a3,a4,a5){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=u.A,a1="Invalid base64 encoding length ",a2=a3.length a5=A.cw(a4,a5,a2) -s=$.uZ() +s=$.v3() for(r=s.length,q=a4,p=q,o=null,n=-1,m=-1,l=0;q=0)A.r9(a3,m,a5,n,l,r) +if(n>=0)A.re(a3,m,a5,n,l,r) else{b=B.f.bl(r-1,4)+1 -if(b===1)throw A.f(A.aB(a1,a3,a5)) +if(b===1)throw A.f(A.aD(a1,a3,a5)) while(b<4){a2+="=" o.a=a2;++b}}a2=o.a return B.b.bR(a3,a4,a5,a2.charCodeAt(0)==0?a2:a2)}a=a5-a4 -if(n>=0)A.r9(a3,m,a5,n,l,a) +if(n>=0)A.re(a3,m,a5,n,l,a) else{b=B.f.bl(a,4) -if(b===1)throw A.f(A.aB(a1,a3,a5)) +if(b===1)throw A.f(A.aD(a1,a3,a5)) if(b>1)a3=B.b.bR(a3,a5,a5,b===2?"==":"=")}return a3}} A.hX.prototype={ bL(a){var s t.L.a(a) -s=J.ab(a) +s=J.ad(a) if(s.gN(a))return"" -s=new A.ou(u.A).mR(a,0,s.gm(a),!0) +s=new A.oy(u.A).mS(a,0,s.gn(a),!0) s.toString -return A.ay(s,0,null)}} -A.ou.prototype={ -mR(a,b,c,d){var s,r,q,p,o +return A.aA(s,0,null)}} +A.oy.prototype={ +mS(a,b,c,d){var s,r,q,p,o t.L.a(a) s=this.a r=(s&3)+(c-b) @@ -7796,24 +7803,24 @@ q=B.f.av(r,3) p=q*4 if(r-q*3>0)p+=4 o=new Uint8Array(p) -this.a=A.x2(this.b,a,b,c,!0,o,0,s) +this.a=A.x7(this.b,a,b,c,!0,o,0,s) if(p>0)return o return null}} A.bt.prototype={} A.cl.prototype={} A.ic.prototype={} A.fl.prototype={ -j(a){var s=A.dl(this.a) +j(a){var s=A.dm(this.a) return(this.b!=null?"Converting object to an encodable object failed:":"Converting object did not return an encodable object:")+" "+s}} -A.iY.prototype={ +A.iZ.prototype={ j(a){return"Cyclic error in JSON stringify"}} -A.iX.prototype={ -mQ(a,b){var s=A.xd(a,this.geN().b,null) +A.iY.prototype={ +mR(a,b){var s=A.xi(a,this.geO().b,null) return s}, -geN(){return B.iR}} -A.iZ.prototype={} -A.oO.prototype={ -iL(a){var s,r,q,p,o,n,m=a.length +geO(){return B.iR}} +A.j_.prototype={} +A.oS.prototype={ +iM(a){var s,r,q,p,o,n,m=a.length for(s=this.c,r=0,q=0;q92){if(p>=55296){o=p&64512 if(o===55296){n=q+1 @@ -7823,70 +7830,70 @@ o=!(o>=0&&(a.charCodeAt(o)&64512)===55296)}else o=!1 else o=!0 if(o){if(q>r)s.a+=B.b.t(a,r,q) r=q+1 -o=A.a3(92) +o=A.a4(92) s.a+=o -o=A.a3(117) +o=A.a4(117) s.a+=o -o=A.a3(100) +o=A.a4(100) s.a+=o o=p>>>8&15 -o=A.a3(o<10?48+o:87+o) +o=A.a4(o<10?48+o:87+o) s.a+=o o=p>>>4&15 -o=A.a3(o<10?48+o:87+o) +o=A.a4(o<10?48+o:87+o) s.a+=o o=p&15 -o=A.a3(o<10?48+o:87+o) +o=A.a4(o<10?48+o:87+o) s.a+=o}}continue}if(p<32){if(q>r)s.a+=B.b.t(a,r,q) r=q+1 -o=A.a3(92) +o=A.a4(92) s.a+=o -switch(p){case 8:o=A.a3(98) +switch(p){case 8:o=A.a4(98) s.a+=o break -case 9:o=A.a3(116) +case 9:o=A.a4(116) s.a+=o break -case 10:o=A.a3(110) +case 10:o=A.a4(110) s.a+=o break -case 12:o=A.a3(102) +case 12:o=A.a4(102) s.a+=o break -case 13:o=A.a3(114) +case 13:o=A.a4(114) s.a+=o break -default:o=A.a3(117) +default:o=A.a4(117) s.a+=o -o=A.a3(48) +o=A.a4(48) s.a=(s.a+=o)+o o=p>>>4&15 -o=A.a3(o<10?48+o:87+o) +o=A.a4(o<10?48+o:87+o) s.a+=o o=p&15 -o=A.a3(o<10?48+o:87+o) +o=A.a4(o<10?48+o:87+o) s.a+=o break}}else if(p===34||p===92){if(q>r)s.a+=B.b.t(a,r,q) r=q+1 -o=A.a3(92) +o=A.a4(92) s.a+=o -o=A.a3(p) +o=A.a4(p) s.a+=o}}if(r===0)s.a+=a else if(r=q.length)return A.c(q,-1) q.pop()}catch(p){r=A.bP(p) -q=A.ru(a,r,o.ghj()) +q=A.rz(a,r,o.ghk()) throw A.f(q)}}, -iK(a){var s,r,q=this +iL(a){var s,r,q=this if(typeof a=="number"){if(!isFinite(a))return!1 q.c.a+=B.cV.j(a) return!0}else if(a===!0){q.c.a+="true" @@ -7894,14 +7901,14 @@ return!0}else if(a===!1){q.c.a+="false" return!0}else if(a==null){q.c.a+="null" return!0}else if(typeof a=="string"){s=q.c s.a+='"' -q.iL(a) +q.iM(a) s.a+='"' -return!0}else if(t.p.b(a)){q.e9(a) +return!0}else if(t.p.b(a)){q.ea(a) q.ow(a) s=q.a if(0>=s.length)return A.c(s,-1) s.pop() -return!0}else if(t.av.b(a)){q.e9(a) +return!0}else if(t.av.b(a)){q.ea(a) r=q.ox(a) s=q.a if(0>=s.length)return A.c(s,-1) @@ -7909,28 +7916,28 @@ s.pop() return r}else return!1}, ow(a){var s,r,q=this.c q.a+="[" -s=J.ab(a) -if(s.gaP(a)){this.dX(s.n(a,0)) -for(r=1;r=15){o=l.a -n=A.xD(o,q,b,s) +n=A.xI(o,q,b,s) if(n!=null){if(!o)return n -if(n.indexOf("\ufffd")<0)return n}}n=l.ed(q,b,s,!0) +if(n.indexOf("\ufffd")<0)return n}}n=l.ee(q,b,s,!0) o=l.b -if((o&1)!==0){m=A.xF(o) +if((o&1)!==0){m=A.xK(o) l.b=0 -throw A.f(A.aB(m,a,p+l.c))}return n}, -ed(a,b,c,d){var s,r,q=this +throw A.f(A.aD(m,a,p+l.c))}return n}, +ee(a,b,c,d){var s,r,q=this if(c-b>1000){s=B.f.av(b+c,2) -r=q.ed(a,b,s,!1) +r=q.ee(a,b,s,!1) if((q.b&1)!==0)return r -return r+q.ed(a,s,c,d)}return q.mi(a,b,c,d)}, -mi(a,b,a0,a1){var s,r,q,p,o,n,m,l,k=this,j="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFFFFFFFFFFFFFFFFGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHHHHHHHHIHHHJEEBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBKCCCCCCCCCCCCDCLONNNMEEEEEEEEEEE",i=" \x000:XECCCCCN:lDb \x000:XECCCCCNvlDb \x000:XECCCCCN:lDb AAAAA\x00\x00\x00\x00\x00AAAAA00000AAAAA:::::AAAAAGG000AAAAA00KKKAAAAAG::::AAAAA:IIIIAAAAA000\x800AAAAA\x00\x00\x00\x00 AAAAA",h=65533,g=k.b,f=k.c,e=new A.W(""),d=b+1,c=a.length +return r+q.ee(a,s,c,d)}return q.mj(a,b,c,d)}, +mj(a,b,a0,a1){var s,r,q,p,o,n,m,l,k=this,j="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFFFFFFFFFFFFFFFFGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHHHHHHHHIHHHJEEBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBKCCCCCCCCCCCCDCLONNNMEEEEEEEEEEE",i=" \x000:XECCCCCN:lDb \x000:XECCCCCNvlDb \x000:XECCCCCN:lDb AAAAA\x00\x00\x00\x00\x00AAAAA00000AAAAA:::::AAAAAGG000AAAAA00KKKAAAAAG::::AAAAA:IIIIAAAAA000\x800AAAAA\x00\x00\x00\x00 AAAAA",h=65533,g=k.b,f=k.c,e=new A.Y(""),d=b+1,c=a.length if(!(b>=0&&b=0&&s<256))return A.c(j,s) @@ -7978,16 +7985,16 @@ f=g<=32?s&61694>>>q:(s&63|f<<6)>>>0 p=g+q if(!(p>=0&&p<144))return A.c(i,p) g=i.charCodeAt(p) -if(g===0){p=A.a3(f) +if(g===0){p=A.a4(f) e.a+=p if(d===a0)break A -break}else if((g&1)!==0){if(r)switch(g){case 69:case 67:p=A.a3(h) +break}else if((g&1)!==0){if(r)switch(g){case 69:case 67:p=A.a4(h) e.a+=p break -case 65:p=A.a3(h) +case 65:p=A.a4(h) e.a+=p;--d break -default:p=A.a3(h) +default:p=A.a4(h) e.a=(e.a+=p)+p break}else{k.b=g k.c=d-1 @@ -8004,24 +8011,24 @@ s=a[o] if(s>=128){n=m-1 o=m break}o=m}if(n-d<20)for(l=d;l32)if(r){c=A.a3(h) +d=o}else d=o}if(a1&&g>32)if(r){c=A.a4(h) e.a+=c}else{k.b=77 k.c=a0 return""}k.b=g k.c=f c=e.a return c.charCodeAt(0)==0?c:c}} -A.ap.prototype={ +A.aq.prototype={ bT(a){var s,r,q=this,p=q.c if(p===0)return q s=!q.a r=q.b -p=A.b0(p,r) -return new A.ap(p===0?!1:s,r,p)}, -ki(a){var s,r,q,p,o,n,m,l=this.c +p=A.b1(p,r) +return new A.aq(p===0?!1:s,r,p)}, +kj(a){var s,r,q,p,o,n,m,l=this.c if(l===0)return $.c8() s=l+a r=this.b @@ -8031,12 +8038,12 @@ if(!(p=0&&n=0&&o=0&&r=0&&qj?k:j,h=this.b,g=a.b,f=new Uint16Array(i) +k[q]=r}s=A.b1(n,k) +return new A.aq(!1,k,s)}, +k_(a,b){var s,r,q,p,o,n,m,l,k=this.c,j=a.c,i=k>j?k:j,h=this.b,g=a.b,f=new Uint16Array(i) if(k=0&&o=0)return q.bX(b,r) -return b.bX(q,!r)}, -e5(a,b){var s,r,q=this,p=q.c +if(A.oz(q.b,p,b.b,s)>=0)return q.bY(b,r) +return b.bY(q,!r)}, +e6(a,b){var s,r,q=this,p=q.c if(p===0)return b.bT(0) s=b.c if(s===0)return q r=q.a if(r!==b.a)return q.dd(b,r) -if(A.ov(q.b,p,b.b,s)>=0)return q.bX(b,r) -return b.bX(q,!r)}, +if(A.oz(q.b,p,b.b,s)>=0)return q.bY(b,r) +return b.bY(q,!r)}, b2(a,b){var s,r,q,p,o,n,m,l=this.c,k=b.c if(l===0||k===0)return $.c8() s=l+k @@ -8171,36 +8178,36 @@ r=this.b q=b.b p=new Uint16Array(s) for(o=q.length,n=0;n0?p.bT(0):p}, -kP(a){var s,r,q,p=this +kQ(a){var s,r,q,p=this if(p.c0)q=q.e4(0,$.qp.aY()) +p.h5(a) +s=A.qv($.qs.aY(),0,$.h9.aY(),$.h9.aY()) +r=A.b1($.h9.aY(),s) +q=new A.aq(!1,s,r) +if($.qu.aY()>0)q=q.e5(0,$.qu.aY()) return p.a&&q.c>0?q.bT(0):q}, -h4(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=this,b=c.c -if(b===$.th&&a.c===$.tj&&c.b===$.tg&&a.b===$.ti)return +h5(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=this,b=c.c +if(b===$.tm&&a.c===$.to&&c.b===$.tl&&a.b===$.tn)return s=a.b r=a.c q=r-1 if(!(q>=0&&q0){o=new Uint16Array(r+5) -n=A.tf(s,r,p,o) +n=A.tk(s,r,p,o) m=new Uint16Array(b+5) -l=A.tf(c.b,b,p,m)}else{m=A.qq(c.b,0,b,b+2) +l=A.tk(c.b,b,p,m)}else{m=A.qv(c.b,0,b,b+2) n=r o=s l=b}q=n-1 @@ -8208,40 +8215,40 @@ if(!(q>=0&&q=0){q&2&&A.t(m) +if(A.oz(m,l,i,h)>=0){q&2&&A.t(m) if(!(l>=0&&l=0&&l=0&&n0;){d=A.x5(k,m,e);--j -A.tl(d,f,0,m,j,n) +for(q=m.length;j>0;){d=A.xa(k,m,e);--j +A.tq(d,f,0,m,j,n) if(!(e>=0&&e=0;--s){if(!(s=m.length)return A.c(m,0) return B.f.j(m[0])}s=A.i([],t.s) m=n.a r=m?n.bT(0):n -while(r.c>1){q=$.v_() -if(q.c===0)A.O(B.ii) -p=r.kP(q).j(0) +while(r.c>1){q=$.v4() +if(q.c===0)A.P(B.ii) +p=r.kQ(q).j(0) B.a.l(s,p) o=p.length if(o===1)B.a.l(s,"000") if(o===2)B.a.l(s,"00") if(o===3)B.a.l(s,"0") -r=r.kh(q)}q=r.b +r=r.ki(q)}q=r.b if(0>=q.length)return A.c(q,0) B.a.l(s,B.f.j(q[0])) if(m)B.a.l(s,"-") -return new A.V(s,t.hF).aQ(0)}, +return new A.X(s,t.hF).aQ(0)}, $ii_:1, -$ia5:1} -A.ow.prototype={ +$ia6:1} +A.oA.prototype={ $2(a,b){a=a+b&536870911 a=a+((a&524287)<<10)&536870911 return a^a>>>6}, -$S:84} -A.ox.prototype={ +$S:87} +A.oB.prototype={ $1(a){a=a+((a&67108863)<<3)&536870911 a^=a>>>11 return a+((a&16383)<<15)&536870911}, $S:26} -A.n3.prototype={ +A.n7.prototype={ $2(a,b){var s,r,q t.bR.a(a) s=this.b @@ -8287,67 +8294,67 @@ r=this.a q=(s.a+=r.a)+a.a s.a=q s.a=q+": " -q=A.dl(b) +q=A.dm(b) s.a+=q r.a=", "}, $S:42} -A.dg.prototype={ -u(a,b){if(b==null)return!1 -return b instanceof A.dg&&this.a===b.a&&this.b===b.b&&this.c===b.c}, +A.dh.prototype={ +v(a,b){if(b==null)return!1 +return b instanceof A.dh&&this.a===b.a&&this.b===b.b&&this.c===b.c}, gq(a){return A.aX(this.a,this.b,B.u,B.u)}, -ah(a,b){var s +ai(a,b){var s t.cs.a(b) -s=B.f.ah(this.a,b.a) +s=B.f.ai(this.a,b.a) if(s!==0)return s -return B.f.ah(this.b,b.b)}, -j(a){var s=this,r=A.vC(A.wz(s)),q=A.i8(A.wx(s)),p=A.i8(A.wt(s)),o=A.i8(A.wu(s)),n=A.i8(A.ww(s)),m=A.i8(A.wy(s)),l=A.ri(A.wv(s)),k=s.b,j=k===0?"":A.ri(k) +return B.f.ai(this.b,b.b)}, +j(a){var s=this,r=A.vH(A.wE(s)),q=A.i8(A.wC(s)),p=A.i8(A.wy(s)),o=A.i8(A.wz(s)),n=A.i8(A.wB(s)),m=A.i8(A.wD(s)),l=A.rn(A.wA(s)),k=s.b,j=k===0?"":A.rn(k) k=r+"-"+q if(s.c)return k+"-"+p+" "+o+":"+n+":"+m+"."+l+j+"Z" else return k+"-"+p+" "+o+":"+n+":"+m+"."+l+j}, -$ia5:1} -A.oA.prototype={ +$ia6:1} +A.oE.prototype={ j(a){return this.bn()}} -A.Z.prototype={ -gce(){return A.ws(this)}} +A.a0.prototype={ +gcf(){return A.wx(this)}} A.hU.prototype={ j(a){var s=this.a -if(s!=null)return"Assertion failed: "+A.dl(s) +if(s!=null)return"Assertion failed: "+A.dm(s) return"Assertion failed"}} A.cC.prototype={} A.bR.prototype={ -geh(){return"Invalid argument"+(!this.a?"(s)":"")}, -geg(){return""}, -j(a){var s=this,r=s.c,q=r==null?"":" ("+r+")",p=s.d,o=p==null?"":": "+A.k(p),n=s.geh()+q+o +gei(){return"Invalid argument"+(!this.a?"(s)":"")}, +geh(){return""}, +j(a){var s=this,r=s.c,q=r==null?"":" ("+r+")",p=s.d,o=p==null?"":": "+A.k(p),n=s.gei()+q+o if(!s.a)return n -return n+s.geg()+": "+A.dl(s.geY())}, -geY(){return this.b}} +return n+s.geh()+": "+A.dm(s.geZ())}, +geZ(){return this.b}} A.ef.prototype={ -geY(){return A.tS(this.b)}, -geh(){return"RangeError"}, -geg(){var s,r=this.e,q=this.f +geZ(){return A.tX(this.b)}, +gei(){return"RangeError"}, +geh(){var s,r=this.e,q=this.f if(r==null)s=q!=null?": Not less than or equal to "+A.k(q):"" else if(q==null)s=": Not greater than or equal to "+A.k(r) else if(q>r)s=": Not in inclusive range "+A.k(r)+".."+A.k(q) else s=qe.length else s=!1 @@ -8397,89 +8404,89 @@ k=""}else{i=f-36 j=f+36}l="..."}}else{j=r i=p k=""}return g+l+B.b.t(e,i,j)+k+"\n"+B.b.b2(" ",f-i+l.length)+"^\n"}else return f!=null?g+(" (at offset "+A.k(f)+")"):g}, -$iah:1} -A.iQ.prototype={ -gce(){return null}, +$iaj:1} +A.iR.prototype={ +gcf(){return null}, j(a){return"IntegerDivisionByZeroException"}, -$iZ:1, -$iah:1} +$ia0:1, +$iaj:1} A.h.prototype={ -cr(a,b,c){var s=A.w(this) -return A.rz(this,s.v(c).h("1(h.E)").a(b),s.h("h.E"),c)}, -os(a,b){var s=A.w(this) -return new A.bb(this,s.h("C(h.E)").a(b),s.h("bb"))}, -iF(a,b){return new A.a_(this,b.h("a_<0>"))}, -D(a,b){var s -for(s=this.gF(this);s.p();)if(J.M(s.gB(),b))return!0 +c8(a,b,c){var s=A.x(this) +return A.rE(this,s.u(c).h("1(h.E)").a(b),s.h("h.E"),c)}, +os(a,b){var s=A.x(this) +return new A.b_(this,s.h("A(h.E)").a(b),s.h("b_"))}, +iG(a,b){return new A.O(this,b.h("O<0>"))}, +C(a,b){var s +for(s=this.gF(this);s.p();)if(J.N(s.gB(),b))return!0 return!1}, -X(a,b){var s -A.w(this).h("~(h.E)").a(b) +T(a,b){var s +A.x(this).h("~(h.E)").a(b) for(s=this.gF(this);s.p();)b.$1(s.gB())}, cQ(a,b,c,d){var s,r d.a(b) -A.w(this).v(d).h("1(1,h.E)").a(c) +A.x(this).u(d).h("1(1,h.E)").a(c) for(s=this.gF(this),r=b;s.p();)r=c.$2(r,s.gB()) return r}, aq(a,b){var s,r,q=this.gF(this) if(!q.p())return"" -s=J.ax(q.gB()) +s=J.ay(q.gB()) if(!q.p())return s if(b.length===0){r=s -do r+=J.ax(q.gB()) +do r+=J.ay(q.gB()) while(q.p())}else{r=s -do r=r+b+J.ax(q.gB()) +do r=r+b+J.ay(q.gB()) while(q.p())}return r.charCodeAt(0)==0?r:r}, aQ(a){return this.aq(0,"")}, aH(a,b){var s -A.w(this).h("C(h.E)").a(b) +A.x(this).h("A(h.E)").a(b) for(s=this.gF(this);s.p();)if(b.$1(s.gB()))return!0 return!1}, -cz(a,b){var s=A.w(this).h("h.E") -if(b)s=A.aV(this,s) -else{s=A.aV(this,s) +cz(a,b){var s=A.x(this).h("h.E") +if(b)s=A.a7(this,s) +else{s=A.a7(this,s) s.$flags=1 s=s}return s}, -iA(a){return this.cz(0,!0)}, -gm(a){var s,r=this.gF(this) +iB(a){return this.cz(0,!0)}, +gn(a){var s,r=this.gF(this) for(s=0;r.p();)++s return s}, gN(a){return!this.gF(this).p()}, gaP(a){return!this.gN(this)}, -bj(a,b){return A.rU(this,b,A.w(this).h("h.E"))}, -aX(a,b){return A.rS(this,b,A.w(this).h("h.E"))}, +bk(a,b){return A.rZ(this,b,A.x(this).h("h.E"))}, +aX(a,b){return A.rX(this,b,A.x(this).h("h.E"))}, gbU(a){var s,r=this.gF(this) if(!r.p())throw A.f(A.bi()) s=r.gB() -if(r.p())throw A.f(A.rp()) +if(r.p())throw A.f(A.ru()) return s}, -cp(a,b,c){var s,r -A.w(this).h("C(h.E)").a(b) +cq(a,b,c){var s,r +A.x(this).h("A(h.E)").a(b) for(s=this.gF(this);s.p();){r=s.gB() if(b.$1(r))return r}throw A.f(A.bi())}, -co(a,b){return this.cp(0,b,null)}, -ai(a,b){var s,r -A.aE(b,"index") +cp(a,b){return this.cq(0,b,null)}, +ag(a,b){var s,r +A.aF(b,"index") s=this.gF(this) -for(r=b;s.p();){if(r===0)return s.gB();--r}throw A.f(A.iL(b,b-r,this,null,"index"))}, -j(a){return A.vR(this,"(",")")}} -A.b_.prototype={ +for(r=b;s.p();){if(r===0)return s.gB();--r}throw A.f(A.iM(b,b-r,this,null,"index"))}, +j(a){return A.vW(this,"(",")")}} +A.b0.prototype={ j(a){return"MapEntry("+A.k(this.a)+": "+A.k(this.b)+")"}} -A.aJ.prototype={ +A.aK.prototype={ gq(a){return A.p.prototype.gq.call(this,0)}, j(a){return"null"}} A.p.prototype={$ip:1, -u(a,b){return this===b}, -gq(a){return A.dx(this)}, -j(a){return"Instance of '"+A.jB(this)+"'"}, -ii(a,b){throw A.f(A.n2(this,t.bg.a(b)))}, +v(a,b){return this===b}, +gq(a){return A.dy(this)}, +j(a){return"Instance of '"+A.jC(this)+"'"}, +ij(a,b){throw A.f(A.n6(this,t.bg.a(b)))}, gaz(a){return A.cN(this)}, toString(){return this.j(this)}} -A.kT.prototype={ +A.kW.prototype={ j(a){return""}, $id1:1} A.bV.prototype={ -gF(a){return new A.jH(this.a)}} -A.jH.prototype={ +gF(a){return new A.jJ(this.a)}} +A.jJ.prototype={ gB(){return this.d}, p(){var s,r,q,p=this,o=p.b=p.c,n=p.a,m=n.length if(o===m){p.d=-1 @@ -8489,23 +8496,23 @@ r=o+1 if((s&64512)===55296&&r=r)return A.c(s,0) r=s.charCodeAt(0)===47}else r=!1 if(r)s=B.b.ab(s,1) -q=s.length===0?B.j6:A.rx(new A.R(A.i(s.split("/"),t.s),t.f6.a(A.yN()),t.iZ),t.N) -p.x!==$&&A.dQ() +q=s.length===0?B.j6:A.rC(new A.Q(A.i(s.split("/"),t.s),t.f6.a(A.yS()),t.iZ),t.N) +p.x!==$&&A.dc() o=p.x=q}return o}, gq(a){var s,r=this,q=r.y -if(q===$){s=B.b.gq(r.ghs()) -r.y!==$&&A.dQ() +if(q===$){s=B.b.gq(r.ght()) +r.y!==$&&A.dc() r.y=s q=s}return q}, -gff(){return this.b}, -gc5(){var s=this.c +gfg(){return this.b}, +gc6(){var s=this.c if(s==null)return"" -if(B.b.T(s,"[")&&!B.b.aa(s,"v",1))return B.b.t(s,1,s.length-1) +if(B.b.U(s,"[")&&!B.b.aa(s,"v",1))return B.b.t(s,1,s.length-1) return s}, gcZ(){var s=this.d -return s==null?A.tC(this.a):s}, +return s==null?A.tH(this.a):s}, gd_(){var s=this.f return s==null?"":s}, gcR(){var s=this.r return s==null?"":s}, -nh(a){var s=this.a +ni(a){var s=this.a if(a.length!==s.length)return!1 -return A.xN(a,s,0)>=0}, -iv(a){var s,r,q,p,o,n,m,l=this -a=A.qB(a,0,a.length) +return A.xS(a,s,0)>=0}, +iw(a){var s,r,q,p,o,n,m,l=this +a=A.qG(a,0,a.length) s=a==="file" r=l.b q=l.d -if(a!==l.a)q=A.oY(q,a) +if(a!==l.a)q=A.p1(q,a) p=l.c if(!(p!=null))p=r.length!==0||q!=null||s?"":null o=l.e if(!s)n=p!=null&&o.length!==0 else n=!0 -if(n&&!B.b.T(o,"/"))o="/"+o +if(n&&!B.b.U(o,"/"))o="/"+o m=o return A.hx(a,r,p,q,m,l.f,l.r)}, -hf(a,b){var s,r,q,p,o,n,m,l,k +hg(a,b){var s,r,q,p,o,n,m,l,k for(s=0,r=0;B.b.aa(b,"../",r);){r+=3;++s}q=B.b.cU(a,"/") p=a.length for(;;){if(!(q>0&&s>0))break @@ -8581,61 +8588,61 @@ m=a.charCodeAt(m)===46}else m=!0 else m=l}else m=l if(m)break;--s q=o}return B.b.bR(a,q+1,null,B.b.ab(b,r-3*s))}, -ix(a){return this.d5(A.nP(a,0,null))}, +iy(a){return this.d5(A.nT(a,0,null))}, d5(a){var s,r,q,p,o,n,m,l,k,j,i,h=this if(a.gaV().length!==0)return a else{s=h.a -if(a.geS()){r=a.iv(s) +if(a.geT()){r=a.iw(s) return r}else{q=h.b p=h.c o=h.d n=h.e -if(a.gi8())m=a.gdL()?a.gd_():h.f -else{l=A.xC(h,n) +if(a.gi9())m=a.gdL()?a.gd_():h.f +else{l=A.xH(h,n) if(l>0){k=B.b.t(n,0,l) -n=a.geR()?k+A.dM(a.gaT()):k+A.dM(h.hf(B.b.ab(n,k.length),a.gaT()))}else if(a.geR())n=A.dM(a.gaT()) -else if(n.length===0)if(p==null)n=s.length===0?a.gaT():A.dM(a.gaT()) -else n=A.dM("/"+a.gaT()) -else{j=h.hf(n,a.gaT()) +n=a.geS()?k+A.dN(a.gaT()):k+A.dN(h.hg(B.b.ab(n,k.length),a.gaT()))}else if(a.geS())n=A.dN(a.gaT()) +else if(n.length===0)if(p==null)n=s.length===0?a.gaT():A.dN(a.gaT()) +else n=A.dN("/"+a.gaT()) +else{j=h.hg(n,a.gaT()) r=s.length===0 -if(!r||p!=null||B.b.T(n,"/"))n=A.dM(j) -else n=A.qD(j,!r||p!=null)}m=a.gdL()?a.gd_():null}}}i=a.gdK()?a.gcR():null +if(!r||p!=null||B.b.U(n,"/"))n=A.dN(j) +else n=A.qI(j,!r||p!=null)}m=a.gdL()?a.gd_():null}}}i=a.gdK()?a.gcR():null return A.hx(s,q,p,o,n,m,i)}, -geU(){return this.a.length!==0}, -geS(){return this.c!=null}, +geV(){return this.a.length!==0}, +geT(){return this.c!=null}, gdL(){return this.f!=null}, gdK(){return this.r!=null}, -gi8(){return this.e.length===0}, -geR(){return B.b.T(this.e,"/")}, -fe(){var s,r=this,q=r.a -if(q!==""&&q!=="file")throw A.f(A.aj("Cannot extract a file path from a "+q+" URI")) +gi9(){return this.e.length===0}, +geS(){return B.b.U(this.e,"/")}, +ff(){var s,r=this,q=r.a +if(q!==""&&q!=="file")throw A.f(A.ac("Cannot extract a file path from a "+q+" URI")) q=r.f -if((q==null?"":q)!=="")throw A.f(A.aj(u.z)) +if((q==null?"":q)!=="")throw A.f(A.ac(u.z)) q=r.r -if((q==null?"":q)!=="")throw A.f(A.aj(u.E)) -if(r.c!=null&&r.gc5()!=="")A.O(A.aj(u.Q)) -s=r.gnF() -A.xx(s,!1) -q=A.qe(B.b.T(r.e,"/")?"/":"",s,"/") +if((q==null?"":q)!=="")throw A.f(A.ac(u.E)) +if(r.c!=null&&r.gc6()!=="")A.P(A.ac(u.Q)) +s=r.gnG() +A.xC(s,!1) +q=A.qj(B.b.U(r.e,"/")?"/":"",s,"/") q=q.charCodeAt(0)==0?q:q return q}, -j(a){return this.ghs()}, -u(a,b){var s,r,q,p=this +j(a){return this.ght()}, +v(a,b){var s,r,q,p=this if(b==null)return!1 if(p===b)return!0 s=!1 -if(t.jJ.b(b))if(p.a===b.gaV())if(p.c!=null===b.geS())if(p.b===b.gff())if(p.gc5()===b.gc5())if(p.gcZ()===b.gcZ())if(p.e===b.gaT()){r=p.f +if(t.jJ.b(b))if(p.a===b.gaV())if(p.c!=null===b.geT())if(p.b===b.gfg())if(p.gc6()===b.gc6())if(p.gcZ()===b.gcZ())if(p.e===b.gaT()){r=p.f q=r==null if(!q===b.gdL()){if(q)r="" if(r===b.gd_()){r=p.r q=r==null if(!q===b.gdK()){s=q?"":r s=s===b.gcR()}}}}return s}, -$ik_:1, +$ik1:1, gaV(){return this.a}, gaT(){return this.e}} -A.nO.prototype={ -giC(){var s,r,q,p,o=this,n=null,m=o.c +A.nS.prototype={ +giD(){var s,r,q,p,o=this,n=null,m=o.c if(m==null){m=o.b if(0>=m.length)return A.c(m,0) s=o.a @@ -8644,57 +8651,57 @@ r=B.b.ap(s,"?",m) q=s.length if(r>=0){p=A.hy(s,r+1,q,256,!1,!1) q=r}else p=n -m=o.c=new A.kC("data","",n,n,A.hy(s,m,q,128,!1,!1),p,n)}return m}, +m=o.c=new A.kE("data","",n,n,A.hy(s,m,q,128,!1,!1),p,n)}return m}, j(a){var s,r=this.b if(0>=r.length)return A.c(r,0) s=this.a return r[0]===-1?"data:"+s:s}} A.bN.prototype={ -geU(){return this.b>0}, -geS(){return this.c>0}, -geT(){return this.c>0&&this.d+10}, +geT(){return this.c>0}, +geU(){return this.c>0&&this.d+1r?B.b.t(this.a,r,s-1):""}, -gc5(){var s=this.c +gc6(){var s=this.c return s>0?B.b.t(this.a,s,this.d):""}, gcZ(){var s,r=this -if(r.geT())return A.lx(B.b.t(r.a,r.d+1,r.e),null) +if(r.geU())return A.lA(B.b.t(r.a,r.d+1,r.e),null) s=r.b -if(s===4&&B.b.T(r.a,"http"))return 80 -if(s===5&&B.b.T(r.a,"https"))return 443 +if(s===4&&B.b.U(r.a,"http"))return 80 +if(s===5&&B.b.U(r.a,"https"))return 443 return 0}, gaT(){return B.b.t(this.a,this.e,this.f)}, gd_(){var s=this.f,r=this.r return s=q.length)return s return new A.bN(B.b.t(q,0,r),s.b,s.c,s.d,s.e,s.f,r,s.w)}, -iv(a){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null -a=A.qB(a,0,a.length) -s=!(h.b===a.length&&B.b.T(h.a,a)) +iw(a){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null +a=A.qG(a,0,a.length) +s=!(h.b===a.length&&B.b.U(h.a,a)) r=a==="file" q=h.c p=q>0?B.b.t(h.a,h.b+3,q):"" -o=h.geT()?h.gcZ():g -if(s)o=A.oY(o,a) +o=h.geU()?h.gcZ():g +if(s)o=A.p1(o,a) q=h.c if(q>0)n=B.b.t(h.a,q,h.d) else n=p.length!==0||o!=null||r?"":g @@ -8703,35 +8710,35 @@ m=h.f l=B.b.t(q,h.e,m) if(!r)k=n!=null&&l.length!==0 else k=!0 -if(k&&!B.b.T(l,"/"))l="/"+l +if(k&&!B.b.U(l,"/"))l="/"+l k=h.r j=m0)return b s=b.c if(s>0){r=a.b if(r<=0)return b q=r===4 -if(q&&B.b.T(a.a,"file"))p=b.e!==b.f -else if(q&&B.b.T(a.a,"http"))p=!b.h9("80") -else p=!(r===5&&B.b.T(a.a,"https"))||!b.h9("443") +if(q&&B.b.U(a.a,"file"))p=b.e!==b.f +else if(q&&B.b.U(a.a,"http"))p=!b.ha("80") +else p=!(r===5&&B.b.U(a.a,"https"))||!b.ha("443") if(p){o=r+1 -return new A.bN(B.b.t(a.a,0,o)+B.b.ab(b.a,c+1),r,s+o,b.d+o,b.e+o,b.f+o,b.r+o,a.w)}else return this.hv().d5(b)}n=b.e +return new A.bN(B.b.t(a.a,0,o)+B.b.ab(b.a,c+1),r,s+o,b.d+o,b.e+o,b.f+o,b.r+o,a.w)}else return this.hw().d5(b)}n=b.e c=b.f if(n===c){s=b.r if(c0?l:m o=k-n return new A.bN(B.b.t(a.a,0,k)+B.b.ab(s,n),a.b,a.c,a.d,m,c+o,b.r+o,a.w)}j=a.e @@ -8739,7 +8746,7 @@ i=a.f if(j===i&&a.c>0){while(B.b.aa(s,"../",n))n+=3 o=j-n+1 return new A.bN(B.b.t(a.a,0,j)+"/"+B.b.ab(s,n),a.b,a.c,a.d,j,c+o,b.r+o,a.w)}h=a.a -l=A.tw(this) +l=A.tB(this) if(l>=0)g=l else for(g=j;B.b.aa(h,"../",g);)g+=3 f=0 @@ -8752,91 +8759,91 @@ break}--f d="/"}}if(i===g&&a.b<=0&&!B.b.aa(h,"/",j)){n-=f*3 d=""}o=i-n+d.length return new A.bN(B.b.t(h,0,i)+d+B.b.ab(s,n),a.b,a.c,a.d,j,c+o,b.r+o,a.w)}, -fe(){var s,r=this,q=r.b -if(q>=0){s=!(q===4&&B.b.T(r.a,"file")) +ff(){var s,r=this,q=r.b +if(q>=0){s=!(q===4&&B.b.U(r.a,"file")) q=s}else q=!1 -if(q)throw A.f(A.aj("Cannot extract a file path from a "+r.gaV()+" URI")) +if(q)throw A.f(A.ac("Cannot extract a file path from a "+r.gaV()+" URI")) q=r.f s=r.a -if(q0?s.gc5():r,n=s.geT()?s.gcZ():r,m=s.a,l=s.f,k=B.b.t(m,s.e,l),j=s.r +hw(){var s=this,r=null,q=s.gaV(),p=s.gfg(),o=s.c>0?s.gc6():r,n=s.geU()?s.gcZ():r,m=s.a,l=s.f,k=B.b.t(m,s.e,l),j=s.r l=l864e13)A.O(A.ad(r,-864e13,864e13,"millisecondsSinceEpoch",null)) -A.dO(!0,"isUtc",t.k4) -return new A.dg(r,0,!0)}if(a instanceof RegExp)throw A.f(A.U("structured clone of RegExp",null)) -if(a instanceof Promise)return A.zl(a,t.X) +if(r<-864e13||r>864e13)A.P(A.af(r,-864e13,864e13,"millisecondsSinceEpoch",null)) +A.dP(!0,"isUtc",t.k4) +return new A.dh(r,0,!0)}if(a instanceof RegExp)throw A.f(A.W("structured clone of RegExp",null)) +if(a instanceof Promise)return A.zq(a,t.X) q=Object.getPrototypeOf(a) if(q===Object.prototype||q===null){p=t.X -o=A.aC(p,p) +o=A.az(p,p) s.k(0,a,o) n=Object.keys(a) m=[] -for(s=J.c4(n),p=s.gF(n);p.p();)m.push(A.uk(p.gB())) -for(l=0;l"))}} +return new J.J(s,s.length,A.w(s).h("J<1>"))}} A.bQ.prototype={ bQ(){var s,r -if(this.as==null)this.i2() +if(this.as==null)this.i3() s=this.as -r=s==null?null:s.e0() +r=s==null?null:s.e1() return r==null?null:r.aF()}, -i2(){var s,r +i3(){var s,r if(this.as!=null)return s=this.Q -if(s!=null){r=s.e0().aF() +if(s!=null){r=s.e1().aF() this.as=new A.it(r)}}} A.dV.prototype={ bn(){return"CompressionType."+this.b}} -A.lG.prototype={ +A.lJ.prototype={ ad(a){var s,r,q,p,o,n=this if(a===0)return 0 if(n.c===0){n.c=8 @@ -8858,8 +8865,8 @@ q=B.f.cI(q,p) if(!(a<9))return A.c(B.aY,a) r=s+(q&B.aY[a]) n.c=p}return r}} -A.lE.prototype={ -mj(a,b){var s,r,q,p,o,n=this,m=new A.lG(a) +A.lH.prototype={ +mk(a,b){var s,r,q,p,o,n=this,m=new A.lJ(a) n.cx=n.CW=n.ch=n.ay=0 if(m.ad(8)!==66||m.ad(8)!==90||m.ad(8)!==104)return!1 s=n.a=m.ad(8)-48 @@ -8870,25 +8877,25 @@ for(;;){s=a.c q=a.d q===$&&A.o() if(!(s>>31)^o^4294967295}else if(p===2){m.ad(8) m.ad(8) m.ad(8) m.ad(8) return!0}}return!0}, -kM(a){var s,r,q,p +kN(a){var s,r,q,p for(s=!0,r=!0,q=0;q<6;++q){p=a.ad(8) if(p!==B.jo[q])r=!1 if(p!==B.j_[q])s=!1 if(!s&&!r)return-1}return r?0:2}, -kN(d4,d5){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3,b4,b5,b6,b7,b8,b9,c0,c1,c2,c3,c4,c5,c6,c7,c8,c9,d0=this,d1=4294967295,d2=d4.ad(1),d3=((d4.ad(8)<<8|d4.ad(8))<<8|d4.ad(8))>>>0 +kO(d4,d5){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3,b4,b5,b6,b7,b8,b9,c0,c1,c2,c3,c4,c5,c6,c7,c8,c9,d0=this,d1=4294967295,d2=d4.ad(1),d3=((d4.ad(8)<<8|d4.ad(8))<<8|d4.ad(8))>>>0 d0.c=new Uint8Array(16) for(s=0;s<16;++s){r=d0.c q=d4.ad(1) @@ -8899,7 +8906,7 @@ q=p+o n=d4.ad(1) r.$flags&2&&A.t(r) if(!(q<256))return A.c(r,q) -r[q]=n}d0.kz() +r[q]=n}d0.kA() r=d0.fx if(r===0)return-1 m=r+2 @@ -8923,7 +8930,7 @@ h=k[i] for(;i>0;i=g){g=i-1 k[i]=k[g]}k[0]=h j&2&&A.t(q) -q[s]=h}d0.fr=t.aE.a(A.aD(6,$.uK(),!1,t.ev)) +q[s]=h}d0.fr=t.aE.a(A.aE(6,$.uP(),!1,t.ev)) for(f=0;fc)c=b if(b=0;--a2){for(n=a2*16,a3=15;a3>=0;--a3){if(!(a1>=0&&a1<4096))return A.c(r,a1) r[a1]=n+a3;--a1}q[a2]=a1+1}d0.ay=0 d0.ch=-1 -a4=d0.ei(d4) +a4=d0.ej(d4) if(a4<0)return-1 for(a5=0;;){if(a4===a)break if(a4===0||a4===1){a6=-1 @@ -8977,7 +8984,7 @@ do{if(a7>=2097152)return-1 if(a4===0)a6+=a7 else if(a4===1)a6+=2*a7 a7*=2 -a4=d0.ei(d4)}while(a4===0||a4===1);++a6 +a4=d0.ej(d4)}while(a4===0||a4===1);++a6 r=d0.e r===$&&A.o() q=d0.f @@ -9071,7 +9078,7 @@ q=q[a8] j.$flags&2&&A.t(j) if(!(a5>=0&&a5=a5)return-1 for(r=d0.at,s=0;s<=255;++s){q=r[s] if(q<0||q>a5)return-1}r=d0.dy=new Int32Array(257) @@ -9228,7 +9235,7 @@ b6=q[b7] c9=b6&255 b6=b6>>>8 c5=c5+1+1}return c2}, -ei(a){var s,r,q,p,o=this,n=o.ay +ej(a){var s,r,q,p,o=this,n=o.ay if(n===0){n=++o.ch s=o.ax s===$&&A.o() @@ -9269,7 +9276,7 @@ s=o.db s===$&&A.o() if(!(n>=0&&n=0&&p=0&&q>>0)-l}}, -kz(){var s,r,q,p=this +kA(){var s,r,q,p=this p.fx=0 p.e=new Uint8Array(256) for(s=0;s<256;++s){r=p.d @@ -9313,8 +9320,8 @@ q=p.fx++ r.$flags&2&&A.t(r) if(!(q<256))return A.c(r,q) r[q]=s}}}} -A.op.prototype={ -f9(a,b){var s,r,q,p,o,n=this,m=n.a=n.kr(a) +A.ot.prototype={ +fa(a,b){var s,r,q,p,o,n=this,m=n.a=n.ks(a) if(m<0)return a.c=m if(a.ak()!==101010256)return @@ -9325,21 +9332,21 @@ a.a5() n.f=a.ak() n.r=a.ak() s=a.a5() -if(s>0)a.ir(s,!1) -n.kO(a) +if(s>0)a.is(s,!1) +n.kP(a) m=n.r r=n.f -q=a.fF(Math.min(r,1024),r,m) +q=a.fG(Math.min(r,1024),r,m) m=n.x for(;;){r=q.c p=q.d p===$&&A.o() if(!(r=0;){a.c=p @@ -9372,19 +9379,19 @@ m=a.c l=n.b a.c=m+(l==null?0:l.length-n.c) k=new A.e_(B.F) -k.fL(n.aF(),B.F,null,null) +k.fM(n.aF(),B.F,null,null) for(j=o;j>=0;--j){k.c=j if(k.ak()===101010256){a.c=s return p+j}}p=p>0&&p2){s=k.y s.toString o=A.bv(s,B.F,null,null) @@ -9420,97 +9427,97 @@ if(!(p>=0&&p>>0 +hA(a){var s=this.ch +B.a.k(s,0,A.cI(A.uu(s[0].cw(0),a))) +B.a.k(s,1,s[1].cB(0,s[0].dZ(0,A.cI(255)))) +B.a.k(s,1,s[1].b2(0,A.cI(134775813)).cB(0,A.cI(1)).dZ(0,A.cI(4294967295))) +B.a.k(s,2,A.cI(A.uu(s[2].cw(0),s[1].e5(0,24).cw(0))))}, +h4(){var s=(this.ch[2].dZ(0,A.cI(65535)).cw(0)|2)>>>0 return s*((s^1)>>>0)>>>8&255}, -ke(a){var s,r,q,p,o,n=this,m=null +kf(a){var s,r,q,p,o,n=this,m=null if(n.Q==null)return A.bv(new Uint8Array(0),B.F,m,m) for(s=0;s<12;++s){r=n.Q q=r.b q.toString r=r.c++ if(!(r>=0&&r0)j.at=a.dV(s) -if(r>0){p=a.bd(r).aF() +if(r>0){p=a.be(r).aF() j.ax=p if(r>=4){o=A.bv(p,B.F,null,null) for(;;){p=o.b @@ -9544,38 +9551,38 @@ m-=8}if(m>=8&&j.w===4294967295){j.w=l.bz() m-=8}if(m>=8&&j.as===4294967295){j.as=l.bz() m-=8}if(m>=4&&j.y===65535)j.y=l.ak()}}}}if(q>0)a.dV(q) b.c=j.as -p=new A.ks(B.aW,j,B.aC,A.i([A.cI(0),A.cI(0),A.cI(0)],t.aa)) +p=new A.ku(B.aW,j,B.aC,A.i([A.cI(0),A.cI(0),A.cI(0)],t.aa)) j.ch=p -p.f9(b,c)}, +p.fa(b,c)}, j(a){return this.at}} -A.oo.prototype={ -mk(a,a0,a1,a2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=null,b=new A.op(A.i([],t.iJ)) +A.os.prototype={ +ml(a,a0,a1,a2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=null,b=new A.ot(A.i([],t.iJ)) this.a=b -b.f9(a,a1) +b.fa(a,a1) b=A.i([],t.c_) -s=A.aC(t.N,t.S) +s=A.az(t.N,t.S) r=new A.hQ(b,s) -for(q=this.a.x,p=q.length,o=t.L,n=0;n>>16 j=l.x i=B.b.bu(j,"/")||B.b.bu(j,"\\") -h=s.n(0,j) +h=s.m(0,j) if(h!=null){if(h>>>0!==h||h>=b.length)return A.c(b,h) g=b[h]}else g=c -if(g==null){g=i?new A.bQ(j,B.f.av(Date.now(),1000)):A.r8(j,l.w,l) +if(g==null){g=i?new A.bQ(j,B.f.av(Date.now(),1000)):A.rd(j,l.w,l) r.l(0,g)}g.b=k -if(m.a>>>8===3)if((k&61440)===40960){f=A.r8(j,l.w,l) -if(f.as==null)f.i2() +if(m.a>>>8===3)if((k&61440)===40960){f=A.rd(j,l.w,l) +if(f.as==null)f.i3() j=f.as if(j==null)e=c else{j=j.a e=new A.e_(B.F) -e.fL(j,B.F,c,c)}d=e==null?c:e.aF() +e.fM(j,B.F,c,c)}d=e==null?c:e.aF() if(d!=null){o.a(d) -new A.kW(!1).h0(d,0,c,!0)}}}return r}} -A.mz.prototype={ -jT(a){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=a.length +new A.kZ(!1).h1(d,0,c,!0)}}}return r}} +A.mD.prototype={ +jU(a){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=a.length for(s=0;sg.b)g.b=r if(r>>1}for(h=(l|s)>>>0,i=j;i=0))return A.c(p,i) p[i]=h}++n}++o n=n<<1>>>0 m=m<<1>>>0}}} -A.om.prototype={} -A.p2.prototype={ -i1(a,b,c,d){var s,r,q=null +A.oq.prototype={} +A.p6.prototype={ +i2(a,b,c,d){var s,r,q=null for(;;){s=a.c r=a.d r===$&&A.o() if(!(s=r s=r}else s=!0 if(s)return!1 q=p.b4(3) -switch(B.f.b5(q,1)){case 0:if(p.kG()===-1)return!1 +switch(B.f.b5(q,1)){case 0:if(p.kH()===-1)return!1 break -case 1:if(p.h1($.uM(),$.uL())===-1)return!1 +case 1:if(p.h2($.uR(),$.uQ())===-1)return!1 break -case 2:if(p.kF()===-1)return!1 +case 2:if(p.kG()===-1)return!1 break default:return!1}return(q&1)===0}, b4(a){var s,r,q,p,o=this if(a===0)return 0 -while(s=o.e,s=s)return-1 -s=o.gbh() +s=o.gbi() r=s.b r.toString s=s.c++ @@ -9648,15 +9655,15 @@ p=B.f.bp(1,a) o.d=B.f.dt(r,a) o.e=s-a return(r&p-1)>>>0}, -eq(a){var s,r,q,p,o,n,m,l=this,k=a.a +er(a){var s,r,q,p,o,n,m,l=this,k=a.a k===$&&A.o() s=a.b -while(r=l.e,r=r)return-1 -r=l.gbh() +r=l.gbi() q=r.b q.toString r=r.c++ @@ -9673,15 +9680,15 @@ m=n>>>16 l.d=B.f.dt(q,m) l.e=r-m return n&65535}, -kG(){var s,r,q=this +kH(){var s,r,q=this q.e=q.d=0 s=q.b4(16) r=q.b4(16) if(s!==0&&s!==(r^65535)>>>0)return-1 -if(s>q.gbh().gm(0))return-1 -q.c.oy(q.gbh().bd(s)) +if(s>q.gbi().gn(0))return-1 +q.c.oy(q.gbi().be(s)) return 0}, -kF(){var s,r,q,p,o,n,m,l,k,j,i=this,h=i.b4(5) +kG(){var s,r,q,p,o,n,m,l,k,j,i=this,h=i.b4(5) if(h===-1)return-1 h+=257 if(h>288)return-1 @@ -9697,15 +9704,15 @@ for(p=0;p285)return-1 if(r===256)break if(r<256){s.cA(r&255) @@ -9713,17 +9720,17 @@ continue}q=r-257 if(!(q>=0&&q<29))return A.c(B.d_,q) p=B.d_[q] o=m.b4(B.jn[q]) -n=m.eq(b) +n=m.er(b) if(n<0||n>29)return-1 if(!(n>=0&&n<30))return A.c(B.d0,n) s.ov(B.d0[n]+m.b4(B.iX[n]),p+o)}while(s=m.e,s>=8){m.e=s-8 -s=m.gbh() +s=m.gbi() p=--s.c o=s.d o===$&&A.o() -s.c=B.f.m_(p,0,o)}return 0}, -kc(a,b,c){var s,r,q,p,o,n,m,l,k=this -for(s=0,r=0;rq.byteLength)A.O(A.U("Input buffer too short",null)) -if(16>r.byteLength)A.O(A.U("Output buffer too short",null)) +if(16>q.byteLength)A.P(A.W("Input buffer too short",null)) +if(16>r.byteLength)A.P(A.W("Output buffer too short",null)) k=l.c j=l.b if(k){j===$&&A.o() -l.kk(q,0,r,0,j)}else{j===$&&A.o() -l.kf(q,0,r,0,j)}for(i=0;i=0))return A.c(p,l) j=p[l] if(!(l<4))return A.c(p,l) p[l]=j+1 if(p[l]!==0)break}j=k.a -k.kp(j.a,j.b,p,o,n) +k.kq(j.a,j.b,p,o,n) n+=r}B.k.bD(c,d,d+s,o) return k.a.c}, -kp(a,b,c,d,e){var s,r,q,p,o,n,m,l,k,j,i,h=this -if(b<=0)throw A.f(A.U("Iteration count must be at least 1.",null)) +kq(a,b,c,d,e){var s,r,q,p,o,n,m,l,k,j,i,h=this +if(b<=0)throw A.f(A.W("Iteration count must be at least 1.",null)) s=h.b r=s.a r.bA(a,0,a.length) r.bA(c,0,4) q=h.c q===$&&A.o() -s.c3(q,0) +s.c4(q,0) q=h.c B.k.bD(d,e,e+q.length,q) for(q=d.length,p=1;p>>0 @@ -9865,15 +9872,15 @@ if(s!==q){q=r.a q===$&&A.o();++q r.a=q r.a=q>>>0}}, -j(a){var s=this,r=new A.W(""),q=s.a +j(a){var s=this,r=new A.Y(""),q=s.a q===$&&A.o() -s.hi(r,q) +s.hj(r,q) q=s.b q===$&&A.o() -s.hi(r,q) +s.hj(r,q) q=r.a return q.charCodeAt(0)==0?q:q}, -hi(a,b){var s,r=B.f.d6(b,16) +hj(a,b){var s,r=B.f.d6(b,16) for(s=8-r.length;s>0;--s)a.a+="0" a.a+=r}, gq(a){var s,r=this.a @@ -9881,79 +9888,79 @@ r===$&&A.o() s=this.b s===$&&A.o() return A.aX(r,s,B.u,B.u)}} -A.jw.prototype={ +A.jx.prototype={ aL(){var s,r=this -r.a.jk(0) +r.a.jl(0) r.c=0 -B.k.c4(r.b,0,4,0) +B.k.c5(r.b,0,4,0) r.w=0 s=r.r -B.a.c4(s,0,s.length,0) +B.a.c5(s,0,s.length,0) s=r.f B.a.k(s,0,1732584193) B.a.k(s,1,4023233417) B.a.k(s,2,2562383102) B.a.k(s,3,271733878) B.a.k(s,4,3285377520)}, -dW(a){var s,r=this,q=r.b,p=r.c +dX(a){var s,r=this,q=r.b,p=r.c p===$&&A.o() s=p+1 r.c=s q.$flags&2&&A.t(q) if(!(p<4))return A.c(q,p) q[p]=a&255 -if(s===4){r.hm(q,0) -r.c=0}r.a.fG(1)}, -bA(a,b,c){var s=this.kK(a,b,c) +if(s===4){r.hn(q,0) +r.c=0}r.a.fH(1)}, +bA(a,b,c){var s=this.kL(a,b,c) b+=s c-=s -s=this.kL(a,b,c) -this.kH(a,b+s,c-s)}, -c3(a,b){var s,r=this,q=A.rG(r.a),p=q.a +s=this.kM(a,b,c) +this.kI(a,b+s,c-s)}, +c4(a,b){var s,r=this,q=A.rL(r.a),p=q.a p===$&&A.o() -p=A.qW(p,3) +p=A.r0(p,3) q.a=p s=q.b s===$&&A.o() q.a=(p|s>>>29)>>>0 -q.b=A.qW(s,3) -r.kJ() -r.kI(q) -r.ee() -r.kC(a,b) +q.b=A.r0(s,3) +r.kK() +r.kJ(q) +r.ef() +r.kD(a,b) r.aL() return 20}, -hm(a,b){var s=this,r=s.w +hn(a,b){var s=this,r=s.w r===$&&A.o() s.w=r+1 -B.a.k(s.r,r,J.be(B.k.ga9(a),a.byteOffset,a.length).getUint32(b,B.bE===s.d)) -if(s.w===16)s.ee()}, -ee(){this.nK() +B.a.k(s.r,r,J.bf(B.k.ga9(a),a.byteOffset,a.length).getUint32(b,B.bE===s.d)) +if(s.w===16)s.ef()}, +ef(){this.nL() this.w=0 -B.a.c4(this.r,0,16,0)}, -kH(a,b,c){var s +B.a.c5(this.r,0,16,0)}, +kI(a,b,c){var s for(s=a.length;c>0;){if(!(b4;){this.hm(a,b) +this.dX(a[b]);++b;--c}}, +kM(a,b,c){var s,r +for(s=this.a,r=0;c>4;){this.hn(a,b) b+=4 c-=4 -s.fG(4) +s.fH(4) r+=4}return r}, -kK(a,b,c){var s,r=a.length,q=0 +kL(a,b,c){var s,r=a.length,q=0 for(;;){s=this.c s===$&&A.o() if(!(s!==0&&c>0))break if(!(b14)r.ee() +if(q>14)r.ef() q=r.d switch(q){case B.bE:q=r.r s=a.b @@ -9972,14 +9979,14 @@ s===$&&A.o() B.a.k(q,15,s) break default:throw A.f(A.ce("Invalid endianness: "+q.j(0)))}}, -kC(a,b){var s,r,q,p,o,n,m,l +kD(a,b){var s,r,q,p,o,n,m,l for(s=this.e,r=this.f,q=r.length,p=a.length,o=B.bE===this.d,n=0;n>>31)>>>0)}p=this.f +B.a.k(s,q,((l&$.aM[1])<<1|l>>>31)>>>0)}p=this.f o=p.length if(0>=o)return A.c(p,0) k=p[0] @@ -10004,11 +10011,11 @@ if(3>=o)return A.c(p,3) h=p[3] if(4>=o)return A.c(p,4) g=p[4] -for(f=k,e=0,d=0;d<4;++d,e=c){o=$.aL[5] +for(f=k,e=0,d=0;d<4;++d,e=c){o=$.aM[5] c=e+1 if(!(e>>27)>>>0)+((j&i|~j&h)>>>0)+s[e]+1518500249>>>0 -n=$.aL[30] +n=$.aM[30] j=((j&n)<<30|j>>>2)>>>0 e=c+1 if(!(c>>2)>>>0 c=e+1 if(!(e>>27)>>>0)+((i&h|~i&g)>>>0)+s[e]+1518500249>>>0 -i=((i&n)<<30|i>>>2)>>>0}for(d=0;d<4;++d,e=c){o=$.aL[5] +i=((i&n)<<30|i>>>2)>>>0}for(d=0;d<4;++d,e=c){o=$.aM[5] c=e+1 if(!(e>>27)>>>0)+((j^i^h)>>>0)+s[e]+1859775393>>>0 -n=$.aL[30] +n=$.aM[30] j=((j&n)<<30|j>>>2)>>>0 e=c+1 if(!(c>>2)>>>0 c=e+1 if(!(e>>27)>>>0)+((i^h^g)>>>0)+s[e]+1859775393>>>0 -i=((i&n)<<30|i>>>2)>>>0}for(d=0;d<4;++d,e=c){o=$.aL[5] +i=((i&n)<<30|i>>>2)>>>0}for(d=0;d<4;++d,e=c){o=$.aM[5] c=e+1 if(!(e>>27)>>>0)+((j&i|j&h|i&h)>>>0)+s[e]+2400959708>>>0 -n=$.aL[30] +n=$.aM[30] j=((j&n)<<30|j>>>2)>>>0 e=c+1 if(!(c>>2)>>>0 c=e+1 if(!(e>>27)>>>0)+((i&h|i&g|h&g)>>>0)+s[e]+2400959708>>>0 -i=((i&n)<<30|i>>>2)>>>0}for(d=0;d<4;++d,e=c){o=$.aL[5] +i=((i&n)<<30|i>>>2)>>>0}for(d=0;d<4;++d,e=c){o=$.aM[5] c=e+1 if(!(e>>27)>>>0)+((j^i^h)>>>0)+s[e]+3395469782>>>0 -n=$.aL[30] +n=$.aM[30] j=((j&n)<<30|j>>>2)>>>0 e=c+1 if(!(c>>0) B.a.k(p,2,p[2]+i>>>0) B.a.k(p,3,p[3]+h>>>0) B.a.k(p,4,p[4]+g>>>0)}} -A.jv.prototype={ -i9(a){var s,r,q,p,o=this,n=o.a +A.jw.prototype={ +ia(a){var s,r,q,p,o=this,n=o.a n.aL() s=a.a s===$&&A.o() @@ -10104,54 +10111,54 @@ q===$&&A.o() if(r>q){n.bA(s,0,r) s=o.d s===$&&A.o() -n.c3(s,0) +n.c4(s,0) s=o.b s===$&&A.o() r=s}else{p=o.d p===$&&A.o() B.k.bD(p,0,r,s)}s=o.d s===$&&A.o() -B.k.c4(s,r,s.length,0) +B.k.c5(s,r,s.length,0) s=o.e s===$&&A.o() B.k.bD(s,0,q,o.d) -o.hD(o.d,q,54) -o.hD(o.e,q,92) +o.hE(o.d,q,54) +o.hE(o.e,q,92) q=o.d n.bA(q,0,q.length)}, -c3(a,b){var s,r,q=this,p=q.a,o=q.e +c4(a,b){var s,r,q=this,p=q.a,o=q.e o===$&&A.o() s=q.c s===$&&A.o() -p.c3(o,s) +p.c4(o,s) o=q.e p.bA(o,0,o.length) -r=p.c3(a,b) +r=p.c4(a,b) o=q.e -B.k.c4(o,s,o.length,0) +B.k.c5(o,s,o.length,0) o=q.d o===$&&A.o() p.bA(o,0,o.length) return r}, -hD(a,b,c){var s,r,q,p +hE(a,b,c){var s,r,q,p for(s=a.length,r=a.$flags|0,q=0;q>>8&255]&255)<<8|(B.L[a>>>16&255]&255)<<16|B.L[a>>>24&255]<<24)>>>0}, -iM(a0,a1){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b=this,a=a1.a +iN(a0,a1){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b=this,a=a1.a a===$&&A.o() s=a.length -if(s<16||s>32||(s&7)!==0)throw A.f(A.U("Key length not 128/192/256 bits.",null)) +if(s<16||s>32||(s&7)!==0)throw A.f(A.W("Key length not 128/192/256 bits.",null)) r=s>>>2 q=r+6 b.a=q p=q+1 -o=J.rq(p,t.L) -for(q=t.S,n=0;n=a)return A.c(o,0) @@ -10163,7 +10170,7 @@ j=m.getUint32(8,!0) B.a.k(q,2,j) i=m.getUint32(12,!0) B.a.k(q,3,i) -for(n=1;n<=10;++n){l=(l^b.cJ((i>>>8|(i&$.aL[24])<<24)>>>0)^B.iU[n-1])>>>0 +for(n=1;n<=10;++n){l=(l^b.cJ((i>>>8|(i&$.aM[24])<<24)>>>0)^B.iU[n-1])>>>0 if(!(n>>0 B.a.k(q,2,j) i=(i^j)>>>0 B.a.k(q,3,i)}break -case 6:m=J.be(B.k.ga9(a),a.byteOffset,s) +case 6:m=J.bf(B.k.ga9(a),a.byteOffset,s) l=m.getUint32(0,!0) a=o.length if(0>=a)return A.c(o,0) @@ -10192,7 +10199,7 @@ q=o[n] B.a.k(q,0,h) B.a.k(q,1,g) e=f<<1 -l=(l^b.cJ((g>>>8|(g&$.aL[24])<<24)>>>0)^f)>>>0 +l=(l^b.cJ((g>>>8|(g&$.aM[24])<<24)>>>0)^f)>>>0 B.a.k(q,2,l) k=(k^l)>>>0 B.a.k(q,3,k) @@ -10208,7 +10215,7 @@ B.a.k(q,2,h) g=(g^h)>>>0 B.a.k(q,3,g) f=e<<1 -l=(l^b.cJ((g>>>8|(g&$.aL[24])<<24)>>>0)^e)>>>0 +l=(l^b.cJ((g>>>8|(g&$.aM[24])<<24)>>>0)^e)>>>0 q=n+2 if(!(q=13)break h=(h^i)>>>0 g=(g^h)>>>0}break -case 8:m=J.be(B.k.ga9(a),a.byteOffset,s) +case 8:m=J.bf(B.k.ga9(a),a.byteOffset,s) l=m.getUint32(0,!0) a=o.length if(0>=a)return A.c(o,0) @@ -10246,7 +10253,7 @@ B.a.k(q,2,d) c=m.getUint32(28,!0) B.a.k(q,3,c) for(n=2,f=1;;f=e){e=f<<1 -l=(l^b.cJ((c>>>8|(c&$.aL[24])<<24)>>>0)^f)>>>0 +l=(l^b.cJ((c>>>8|(c&$.aM[24])<<24)>>>0)^f)>>>0 if(!(n>>0 B.a.k(q,3,c);++n}break default:throw A.f(A.ce("Should never get here"))}return o}, -kk(b3,b4,b5,b6,b7){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2 +kl(b3,b4,b5,b6,b7){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2 t.eP.a(b7) -s=J.be(B.k.ga9(b3),b3.byteOffset,16) +s=J.bf(B.k.ga9(b3),b3.byteOffset,16) r=s.getUint32(b4,!0) q=s.getUint32(b4+4,!0) p=s.getUint32(b4+8,!0) @@ -10284,11 +10291,11 @@ j=p^m[2] i=o^m[3] for(m=this.a-1,h=1;h>>8&255] -e=$.aL[8] +e=$.aM[8] d=B.j[j>>>16&255] -c=$.aL[16] +c=$.aM[16] b=B.j[i>>>24&255] -a=$.aL[24] +a=$.aM[24] if(!(h>>24|(f&e)<<8)^(d>>>16|(d&c)<<16)^(b>>>8|(b&a)<<24)^a0[0] @@ -10329,27 +10336,27 @@ a0=B.j[a1>>>8&255] d=B.j[a2>>>16&255] g=B.j[a3>>>24&255];++h i=f^(a0>>>24|(a0&e)<<8)^(d>>>16|(d&c)<<16)^(g>>>8|(g&a)<<24)^b[3]}n=B.j[l&255] -m=A.ar(B.j[k>>>8&255],24) -g=A.ar(B.j[j>>>16&255],16) -f=A.ar(B.j[i>>>24&255],8) +m=A.as(B.j[k>>>8&255],24) +g=A.as(B.j[j>>>16&255],16) +f=A.as(B.j[i>>>24&255],8) if(!(h>>8&255],24) -m=A.ar(B.j[i>>>16&255],16) -n=A.ar(B.j[l>>>24&255],8) +g=A.as(B.j[j>>>8&255],24) +m=A.as(B.j[i>>>16&255],16) +n=A.as(B.j[l>>>24&255],8) if(!(h>>8&255],24) -g=A.ar(B.j[l>>>16&255],16) -f=A.ar(B.j[k>>>24&255],8) +m=A.as(B.j[i>>>8&255],24) +g=A.as(B.j[l>>>16&255],16) +f=A.as(B.j[k>>>24&255],8) if(!(h>>8&255],24) -k=A.ar(B.j[k>>>16&255],16) -j=A.ar(B.j[j>>>24&255],8) +l=A.as(B.j[l>>>8&255],24) +k=A.as(B.j[k>>>16&255],16) +j=A.as(B.j[j>>>24&255],8) i=h+1 g=b7.length if(!(h>>24&255] g=g[3] -m=J.be(B.k.ga9(b5),b5.byteOffset,16) +m=J.bf(B.k.ga9(b5),b5.byteOffset,16) m.$flags&2&&A.t(m,11) m.setUint32(b6,(j&255^(k&255)<<8^(f&255)<<16^n<<24^e)>>>0,!0) -e=J.be(B.k.ga9(b5),b5.byteOffset,16) +e=J.bf(B.k.ga9(b5),b5.byteOffset,16) e.$flags&2&&A.t(e,11) e.setUint32(b6+4,(d&255^(c&255)<<8^(b&255)<<16^a<<24^a0)>>>0,!0) -a0=J.be(B.k.ga9(b5),b5.byteOffset,16) +a0=J.bf(B.k.ga9(b5),b5.byteOffset,16) a0.$flags&2&&A.t(a0,11) a0.setUint32(b6+8,(a5&255^(a6&255)<<8^(a7&255)<<16^a8<<24^a9)>>>0,!0) -a9=J.be(B.k.ga9(b5),b5.byteOffset,16) +a9=J.bf(B.k.ga9(b5),b5.byteOffset,16) a9.$flags&2&&A.t(a9,11) a9.setUint32(b6+12,(b0&255^(b1&255)<<8^(b2&255)<<16^l<<24^g)>>>0,!0)}, -kf(b3,b4,b5,b6,b7){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2 +kg(b3,b4,b5,b6,b7){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2 t.eP.a(b7) -s=J.be(B.k.ga9(b3),b3.byteOffset,16).getUint32(b4,!0) -r=J.be(B.k.ga9(b3),b3.byteOffset,16).getUint32(b4+4,!0) -q=J.be(B.k.ga9(b3),b3.byteOffset,16).getUint32(b4+8,!0) -p=J.be(B.k.ga9(b3),b3.byteOffset,16).getUint32(b4+12,!0) +s=J.bf(B.k.ga9(b3),b3.byteOffset,16).getUint32(b4,!0) +r=J.bf(B.k.ga9(b3),b3.byteOffset,16).getUint32(b4+4,!0) +q=J.bf(B.k.ga9(b3),b3.byteOffset,16).getUint32(b4+8,!0) +p=J.bf(B.k.ga9(b3),b3.byteOffset,16).getUint32(b4+12,!0) o=this.a n=b7.length if(!(o1;){m=B.i[l&255] g=B.i[h>>>8&255] -f=$.aL[8] +f=$.aM[8] e=B.i[j>>>16&255] -d=$.aL[16] +d=$.aM[16] c=B.i[o>>>24&255] -b=$.aL[24] +b=$.aM[24] if(!(i>>24|(g&f)<<8)^(e>>>16|(e&d)<<16)^(c>>>8|(c&b)<<24)^k[0] @@ -10468,27 +10475,27 @@ k=B.i[a1>>>8&255] e=B.i[a0>>>16&255] m=B.i[a>>>24&255];--i h=g^(k>>>24|(k&f)<<8)^(e>>>16|(e&d)<<16)^(m>>>8|(m&b)<<24)^c[3]}n=B.i[l&255] -m=A.ar(B.i[h>>>8&255],24) -g=A.ar(B.i[j>>>16&255],16) -f=A.ar(B.i[o>>>24&255],8) +m=A.as(B.i[h>>>8&255],24) +g=A.as(B.i[j>>>16&255],16) +f=A.as(B.i[o>>>24&255],8) if(!(i>=0&&i>>8&255],24) -m=A.ar(B.i[h>>>16&255],16) -n=A.ar(B.i[j>>>24&255],8) +g=A.as(B.i[l>>>8&255],24) +m=A.as(B.i[h>>>16&255],16) +n=A.as(B.i[j>>>24&255],8) if(!(i>>8&255],24) -g=A.ar(B.i[l>>>16&255],16) -f=A.ar(B.i[h>>>24&255],8) +m=A.as(B.i[o>>>8&255],24) +g=A.as(B.i[l>>>16&255],16) +f=A.as(B.i[h>>>24&255],8) if(!(i>>8&255],24) -o=A.ar(B.i[o>>>16&255],16) -l=A.ar(B.i[l>>>24&255],8) +j=A.as(B.i[j>>>8&255],24) +o=A.as(B.i[o>>>16&255],16) +l=A.as(B.i[l>>>24&255],8) g=b7.length if(!(i>>24&255 if(!(b1>>0,!0) b2.setUint32(b6+4,(d&255^(c&255)<<8^(b&255)<<16^k<<24^a2)>>>0,!0) @@ -10544,25 +10551,25 @@ b2.setUint32(b6+8,(a3&255^(a4&255)<<8^(a5&255)<<16^a6<<24^a7)>>>0,!0) b2.setUint32(b6+12,(a8&255^(a9&255)<<8^(b0&255)<<16^b1<<24^g)>>>0,!0)}} A.fe.prototype={} A.it.prototype={ -gm(a){var s=this.a.length +gn(a){var s=this.a.length return s}, -e0(){return A.bv(this.a,B.F,null,null)}} +e1(){return A.bv(this.a,B.F,null,null)}} A.e_.prototype={ -fL(a,b,c,d){var s,r +fM(a,b,c,d){var s,r if(d==null)d=0 -if(c==null)c=J.b5(a)-d -s=J.ab(a) -if(d+c>s.gm(a))c=s.gm(a)-d +if(c==null)c=J.b6(a)-d +s=J.ad(a) +if(d+c>s.gn(a))c=s.gn(a)-d r=t.ev.b(a)?a:new Uint8Array(A.hC(a)) s=J.dS(B.k.ga9(r),r.byteOffset+d,c) this.b=s this.d=s.length}, -gm(a){var s=this.b +gn(a){var s=this.b return s==null?0:s.length-this.c}, -fF(a,b,c){var s=this.b +fG(a,b,c){var s=this.b if(s==null)return A.bv(A.i([],t.Z),B.F,null,null) return A.bv(s,this.a,b,c)}, -dc(a,b){return this.fF(null,a,b)}, +dc(a,b){return this.fG(null,a,b)}, aK(){var s,r=this.b r.toString s=this.c++ @@ -10570,12 +10577,12 @@ if(!(s>=0&&sq)s=q-r return J.dS(B.k.ga9(o),p.b.byteOffset+p.c,s)}} -A.iN.prototype={ +A.iO.prototype={ a5(){var s=this.aK(),r=this.aK() if(this.a===B.aU)return(s<<8|r)>>>0 return(r<<8|s)>>>0}, @@ -10585,28 +10592,28 @@ return(o<<24|p<<16|q<<8|r)>>>0}, bz(){var s=this,r=s.aK(),q=s.aK(),p=s.aK(),o=s.aK(),n=s.aK(),m=s.aK(),l=s.aK(),k=s.aK() if(s.a===B.aU)return(B.f.bp(r,56)|B.f.bp(q,48)|B.f.bp(p,40)|B.f.bp(o,32)|n<<24|m<<16|l<<8|k)>>>0 return(B.f.bp(k,56)|B.f.bp(l,48)|B.f.bp(m,40)|B.f.bp(n,32)|o<<24|p<<16|q<<8|r)>>>0}, -bd(a){var s=this,r=s.dc(a,s.c) -s.c=s.c+r.gm(0) +be(a){var s=this,r=s.dc(a,s.c) +s.c=s.c+r.gn(0) return r}, -ir(a,b){return new A.mE(b).$1(this.bd(a).aF())}, -dV(a){return this.ir(a,!0)}} -A.mE.prototype={ +is(a,b){return new A.mI(b).$1(this.be(a).aF())}, +dV(a){return this.is(a,!0)}} +A.mI.prototype={ $1(a){var s,r,q t.L.a(a) -try{s=this.a?B.hV.bL(a):A.ay(a,0,null) -return s}catch(r){q=A.ay(a,0,null) +try{s=this.a?B.hV.bL(a):A.aA(a,0,null) +return s}catch(r){q=A.aA(a,0,null) return q}}, -$S:116} +$S:120} A.fy.prototype={ -dZ(){return J.dS(B.k.ga9(this.c),this.c.byteOffset,this.b)}, +e_(){return J.dS(B.k.ga9(this.c),this.c.byteOffset,this.b)}, cA(a){var s,r,q=this -if(q.b===q.c.length)q.kn() +if(q.b===q.c.length)q.ko() s=q.c r=q.b++ s.$flags&2&&A.t(s) if(!(r>=0&&ro)n.dh(q-o) @@ -10620,12 +10627,12 @@ p=q?0:r.length-a.c o=m.c n=o.length if(!(s+p>n))break -m.dh(s+(q?0:r.length-a.c)-n)}if(!q)B.k.ba(o,s,s+a.gm(0),r,a.c) -m.b=m.b+a.gm(0)}, +m.dh(s+(q?0:r.length-a.c)-n)}if(!q)B.k.bb(o,s,s+a.gn(0),r,a.c) +m.b=m.b+a.gn(0)}, ov(a,b){var s,r,q,p,o,n,m,l,k,j,i=this while(s=i.b,r=s+b,q=i.c,p=q.length,r>p)i.dh(r-p) o=s-a -if(a>=b)B.k.ba(q,s,r,q,o) +if(a>=b)B.k.bb(q,s,r,q,o) else for(n=q.$flags|0,m=o;s=0&&m=0;)++r return r}, -ai(a,b){var s,r,q,p,o,n -A.aE(b,"index") +ag(a,b){var s,r,q,p,o,n +A.aF(b,"index") s=this.a r=s.length q=0 if(r!==0){p=new A.cP(s,r,0,240) -for(o=0;n=p.cX(),n>=0;o=n){if(q===b)return B.b.t(s,o,n);++q}}throw A.f(A.vM(b,this,"index",null,q))}, -D(a,b){var s +for(o=0;n=p.cX(),n>=0;o=n){if(q===b)return B.b.t(s,o,n);++q}}throw A.f(A.vR(b,this,"index",null,q))}, +C(a,b){var s if(typeof b!="string")return!1 s=b.length if(s===0)return!1 if(new A.cP(b,s,0,240).cX()!==s)return!1 s=this.a -return A.y_(s,b,0,s.length)>=0}, -hq(a,b,c){var s,r +return A.y4(s,b,0,s.length)>=0}, +hr(a,b,c){var s,r if(a===0||b===this.a.length)return b s=this.a c=new A.cP(s,s.length,b,240) @@ -10674,25 +10681,25 @@ if(--a,a>0){b=r continue}else{b=r break}}while(!0) return b}, -aX(a,b){A.aE(b,"count") -return this.kX(b)}, -kX(a){var s=this.hq(a,0,null),r=this.a +aX(a,b){A.aF(b,"count") +return this.kY(b)}, +kY(a){var s=this.hr(a,0,null),r=this.a if(s===r.length)return B.hT return new A.d3(B.b.ab(r,s))}, -bj(a,b){A.aE(b,"count") -return this.l1(b)}, -l1(a){var s=this.hq(a,0,null),r=this.a +bk(a,b){A.aF(b,"count") +return this.l2(b)}, +l2(a){var s=this.hr(a,0,null),r=this.a if(s===r.length)return this return new A.d3(B.b.t(r,0,s))}, -u(a,b){if(b==null)return!1 +v(a,b){if(b==null)return!1 return b instanceof A.d3&&this.a===b.a}, gq(a){return B.b.gq(this.a)}, j(a){return this.a}} A.fR.prototype={ gB(){var s=this,r=s.d return r==null?s.d=B.b.t(s.a,s.b,s.c):r}, -p(){return this.fQ(1,this.c)}, -fQ(a,b){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=u.j,f=u.e,e=u.U +p(){return this.fR(1,this.c)}, +fR(a,b){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=u.j,f=u.e,e=u.U if(a>0){s=h.c for(r=h.a,q=r.length,p=240;s=0))return A.c(r,s) o=r.charCodeAt(s) @@ -10723,7 +10730,7 @@ h.d=null return a===1&&p!==240}else{h.b=b h.d=null return!0}}, -$iK:1} +$iL:1} A.cP.prototype={ cX(){var s,r,q=this,p=u.U for(s=q.b;r=q.c,r=0&&is;){q.da() if(q.d<280)return r}r=(q.d&-4)+18 if(!(r<380))return A.c(p,r) q.d=p.charCodeAt(r) return s}} A.eR.prototype={ -aI(a,b){return J.M(a,b)}, -Y(a){return J.A(a)}, +aI(a,b){return J.N(a,b)}, +Y(a){return J.B(a)}, $ibS:1} A.e2.prototype={ aI(a,b){var s,r,q,p=this.$ti.h("h<1>?") p.a(a) p.a(b) if(a===b)return!0 -s=J.as(a) -r=J.as(b) +s=J.at(a) +r=J.at(b) for(p=this.a;;){q=s.p() if(q!==r.p())return!1 if(!q)return!0 if(!p.aI(s.gB(),r.gB()))return!1}}, Y(a){var s,r,q this.$ti.h("h<1>?").a(a) -for(s=J.as(a),r=this.a,q=0;s.p();){q=q+r.Y(s.gB())&2147483647 +for(s=J.at(a),r=this.a,q=0;s.p();){q=q+r.Y(s.gB())&2147483647 q=q+(q<<10>>>0)&2147483647 q^=q>>>6}q=q+(q<<3>>>0)&2147483647 q^=q>>>11 @@ -10853,36 +10860,36 @@ aI(a,b){var s,r,q,p,o=this.$ti.h("m<1>?") o.a(a) o.a(b) if(a===b)return!0 -o=J.ab(a) -s=o.gm(a) -r=J.ab(b) -if(s!==r.gm(b))return!1 -for(q=this.a,p=0;p?").a(a) -for(s=J.ab(a),r=this.a,q=0,p=0;p>>0)&2147483647 q^=q>>>6}q=q+(q<<3>>>0)&2147483647 q^=q>>>11 return q+(q<<15>>>0)&2147483647}, $ibS:1} A.bE.prototype={ -aI(a,b){var s,r,q,p,o=A.w(this),n=o.h("bE.T?") +aI(a,b){var s,r,q,p,o=A.x(this),n=o.h("bE.T?") n.a(a) n.a(b) if(a===b)return!0 n=this.a -s=A.rm(o.h("C(bE.E,bE.E)").a(n.gar()),o.h("b(bE.E)").a(n.gdM()),n.gni(),o.h("bE.E"),t.S) -for(o=J.as(a),r=0;o.p();){q=o.gB() -p=s.n(0,q) -s.k(0,q,(p==null?0:p)+1);++r}for(o=J.as(b);o.p();){q=o.gB() -p=s.n(0,q) +s=A.rr(o.h("A(bE.E,bE.E)").a(n.gar()),o.h("b(bE.E)").a(n.gdM()),n.gnj(),o.h("bE.E"),t.S) +for(o=J.at(a),r=0;o.p();){q=o.gB() +p=s.m(0,q) +s.k(0,q,(p==null?0:p)+1);++r}for(o=J.at(b);o.p();){q=o.gB() +p=s.m(0,q) if(p==null||p===0)return!1 s.k(0,q,p-1);--r}return r===0}, Y(a){var s,r,q -A.w(this).h("bE.T?").a(a) -for(s=J.as(a),r=this.a,q=0;s.p();)q=q+r.Y(s.gB())&2147483647 +A.x(this).h("bE.T?").a(a) +for(s=J.at(a),r=this.a,q=0;s.p();)q=q+r.Y(s.gB())&2147483647 q=q+(q<<3>>>0)&2147483647 q^=q>>>11 return q+(q<<15>>>0)&2147483647}, @@ -10891,7 +10898,7 @@ A.ei.prototype={} A.ey.prototype={ gq(a){var s=this.a return 3*s.a.Y(this.b)+7*s.b.Y(this.c)&2147483647}, -u(a,b){var s +v(a,b){var s if(b==null)return!1 if(b instanceof A.ey){s=this.a s=s.a.aI(this.b,b.b)&&s.b.aI(this.c,b.c)}else s=!1 @@ -10901,21 +10908,21 @@ aI(a,b){var s,r,q,p,o=this.$ti.h("d<1,2>?") o.a(a) o.a(b) if(a===b)return!0 -if(a.gm(a)!==b.gm(b))return!1 -s=A.rm(null,null,null,t.fA,t.S) +if(a.gn(a)!==b.gn(b))return!1 +s=A.rr(null,null,null,t.fA,t.S) for(o=a.gaR(),o=o.gF(o);o.p();){r=o.gB() -q=new A.ey(this,r,a.n(0,r)) -p=s.n(0,q) +q=new A.ey(this,r,a.m(0,r)) +p=s.m(0,q) s.k(0,q,(p==null?0:p)+1)}for(o=b.gaR(),o=o.gF(o);o.p();){r=o.gB() -q=new A.ey(this,r,b.n(0,r)) -p=s.n(0,q) +q=new A.ey(this,r,b.m(0,r)) +p=s.m(0,q) if(p==null||p===0)return!1 s.k(0,q,p-1)}return!0}, Y(a){var s,r,q,p,o,n,m,l=this.$ti l.h("d<1,2>?").a(a) for(s=a.gaR(),s=s.gF(s),r=this.a,q=this.b,l=l.y[1],p=0;s.p();){o=s.gB() n=r.Y(o) -m=a.n(0,o) +m=a.m(0,o) p=p+3*n+7*q.Y(m==null?l.a(m):m)&2147483647}p=p+(p<<3>>>0)&2147483647 p^=p>>>11 return p+(p<<15>>>0)&2147483647}, @@ -10929,88 +10936,88 @@ r=t.p if(r.b(a))return r.b(b)&&new A.cX(s,t.hI).aI(a,b) r=t.e7 if(r.b(a))return r.b(b)&&new A.e2(s,t.nZ).aI(a,b) -return J.M(a,b)}, +return J.N(a,b)}, Y(a){var s=this if(t.hj.b(a))return new A.ei(s,t.cu).Y(a) if(t.av.b(a))return new A.e9(s,s,t.a3).Y(a) if(t.p.b(a))return new A.cX(s,t.hI).Y(a) if(t.e7.b(a))return new A.e2(s,t.nZ).Y(a) -return J.A(a)}, -nj(a){return!0}, +return J.B(a)}, +nk(a){return!0}, $ibS:1} A.ev.prototype={ -D(a,b){return B.a.D(this.a,b)}, -ai(a,b){var s=this.a +C(a,b){return B.a.C(this.a,b)}, +ag(a,b){var s=this.a if(!(b>=0&&b"))}, -gm(a){return this.a.length}, -cr(a,b,c){var s=this.a,r=A.x(s) -return new A.R(s,r.v(c).h("1(2)").a(this.$ti.v(c).h("1(2)").a(b)),r.h("@<1>").v(c).h("R<1,2>"))}, +return new J.J(s,s.length,A.w(s).h("J<1>"))}, +gn(a){return this.a.length}, +c8(a,b,c){var s=this.a,r=A.w(s) +return new A.Q(s,r.u(c).h("1(2)").a(this.$ti.u(c).h("1(2)").a(b)),r.h("@<1>").u(c).h("Q<1,2>"))}, aX(a,b){var s=this.a -return A.bX(s,b,null,A.x(s).c)}, -bj(a,b){var s=this.a -return A.bX(s,0,A.dO(b,"count",t.S),A.x(s).c)}, -iF(a,b){return new A.a_(this.a,b.h("a_<0>"))}, -j(a){return A.iS(this.a,"[","]")}, +return A.bX(s,b,null,A.w(s).c)}, +bk(a,b){var s=this.a +return A.bX(s,0,A.dP(b,"count",t.S),A.w(s).c)}, +iG(a,b){return new A.O(this.a,b.h("O<0>"))}, +j(a){return A.iT(this.a,"[","]")}, $ih:1} A.dY.prototype={ -n(a,b){var s=this.a +m(a,b){var s=this.a if(!(b>=0&&b").a(b))}, -giy(a){var s=this.a -return new A.V(s,A.x(s).h("V<1>"))}, -cd(a,b){B.a.cd(this.a,this.$ti.h("b(1,1)?").a(b))}, +giz(a){var s=this.a +return new A.X(s,A.w(s).h("X<1>"))}, +bV(a,b){B.a.bV(this.a,this.$ti.h("b(1,1)?").a(b))}, $iz:1, $im:1} -A.kO.prototype={ +A.kR.prototype={ an(){var s=this,r=s.d r===$&&A.o() s.c=r s.d=s.a.bP(!1) return r}, -he(a,b){var s=this,r=s.d +hf(a,b){var s=this,r=s.d r===$&&A.o() if(r.a===a){s.c=r s.d=s.a.bP(!1) return!0}else return!1}, -dm(a){return this.he(a,!1)}, -aM(a){if(!this.he(a,!1))this.ef(A.rW(a))}, -ef(a){var s,r=this.an(),q=null -try{q="expected "+a+", but found "+A.k(r)}catch(s){q="parsing error expected "+a}this.cg(q,r.b)}, -cg(a,b){$.eE.aY().n_(a,b)}, +dm(a){return this.hf(a,!1)}, +aM(a){if(!this.hf(a,!1))this.eg(A.t0(a))}, +eg(a){var s,r=this.an(),q=null +try{q="expected "+a+", but found "+A.k(r)}catch(s){q="parsing error expected "+a}this.ci(q,r.b)}, +ci(a,b){$.eE.aY().n0(a,b)}, ae(a){var s=this.c -if(s==null||s.b.ah(0,a)<0)return a +if(s==null||s.b.ai(0,a)<0)return a return a.aO(0,this.c.b)}, -io(){var s,r,q=this,p=A.i([],t.fG),o=q.d +ip(){var s,r,q=this,p=A.i([],t.fG),o=q.d o===$&&A.o() s=q.a s.e=!0 -do{r=q.im() +do{r=q.io() if(r!=null)B.a.l(p,r)}while(q.dm(19)) s.e=!1 -if(p.length!==0)return new A.jJ(p,q.ae(o.b)) +if(p.length!==0)return new A.jL(p,q.ae(o.b)) return null}, -im(){var s,r=A.i([],t.iM),q=this.d +io(){var s,r=A.i([],t.iM),q=this.d q===$&&A.o() -for(;;){s=this.jl(r.length===0) +for(;;){s=this.jm(r.length===0) if(s!=null)B.a.l(r,s) else break}if(r.length===0)return null return new A.d_(r,this.ae(q.b))}, -nL(){var s,r,q,p,o,n,m,l=this.im() -if(l!=null)for(s=l.b,r=s.length,q=$.eE.a,p=0;p10)r=B.b.t(r,0,8)+"..." return s+"("+r+")"}else return s}} -A.iy.prototype={ +A.iz.prototype={ gZ(){return this.c}} -A.jV.prototype={ +A.jX.prototype={ bP(a){var s,r,q,p,o,n,m,l,k,j=this j.r=j.f -s=j.ck() -switch(s){case 10:case 13:case 32:case 9:return j.n4() +s=j.cl() +switch(s){case 10:case 13:case 32:case 9:return j.n5() case 0:return new A.I(1,j.a.K(j.r,j.f)) -case 64:r=j.cl() -if(A.jW(r)||r===45){q=j.f +case 64:r=j.cm() +if(A.jY(r)||r===45){q=j.f p=j.r j.r=q -j.ck() +j.cl() j.dI() o=j.b n=j.r -m=A.qg(B.j2,"type",o,n,j.f-n) +m=A.ql(B.j2,"type",o,n,j.f-n) if(m===-1){n=j.r -m=A.qg(B.iY,"type",o,n,j.f-n)}if(m!==-1)return new A.I(m,j.a.K(j.r,j.f)) +m=A.ql(B.iY,"type",o,n,j.f-n)}if(m!==-1)return new A.I(m,j.a.K(j.r,j.f)) else{j.r=p j.f=q}}return new A.I(10,j.a.K(j.r,j.f)) case 46:l=j.r -if(j.nr()){o=j.a +if(j.ns()){o=j.a if(j.dJ().a===60){j.r=l return new A.I(62,o.K(l,j.f))}else return new A.I(65,o.K(j.r,j.f))}return new A.I(8,j.a.K(j.r,j.f)) case 40:return new A.I(2,j.a.K(j.r,j.f)) @@ -11256,15 +11263,15 @@ case 41:return new A.I(3,j.a.K(j.r,j.f)) case 123:return new A.I(6,j.a.K(j.r,j.f)) case 125:return new A.I(7,j.a.K(j.r,j.f)) case 91:return new A.I(4,j.a.K(j.r,j.f)) -case 93:if(j.af(93)&&j.af(62))return j.c7() +case 93:if(j.af(93)&&j.af(62))return j.c9() return new A.I(5,j.a.K(j.r,j.f)) case 35:return new A.I(11,j.a.K(j.r,j.f)) -case 43:if(j.hh(s))return j.dJ() +case 43:if(j.hi(s))return j.dJ() return new A.I(12,j.a.K(j.r,j.f)) case 45:o=j.d if(o)return new A.I(34,j.a.K(j.r,j.f)) -else if(j.hh(s))return j.dJ() -else if(A.jW(s)||s===45)return j.dI() +else if(j.hi(s))return j.dJ() +else if(A.jY(s)||s===45)return j.dI() return new A.I(34,j.a.K(j.r,j.f)) case 62:return new A.I(13,j.a.K(j.r,j.f)) case 126:if(j.af(61))return new A.I(530,j.a.K(j.r,j.f)) @@ -11280,9 +11287,9 @@ case 59:return new A.I(9,j.a.K(j.r,j.f)) case 37:return new A.I(24,j.a.K(j.r,j.f)) case 39:return new A.I(25,j.a.K(j.r,j.f)) case 34:return new A.I(26,j.a.K(j.r,j.f)) -case 47:if(j.af(42))return j.n3() +case 47:if(j.af(42))return j.n4() return new A.I(27,j.a.K(j.r,j.f)) -case 60:if(j.af(33))if(j.af(45)&&j.af(45))return j.n2() +case 60:if(j.af(33))if(j.af(45)&&j.af(45))return j.n3() else{o=!1 if(j.af(91)){n=j.Q.a k=n.length @@ -11291,7 +11298,7 @@ if(j.af(n.charCodeAt(0))){if(1>=k)return A.c(n,1) if(j.af(n.charCodeAt(1))){if(2>=k)return A.c(n,2) if(j.af(n.charCodeAt(2))){if(3>=k)return A.c(n,3) if(j.af(n.charCodeAt(3))){if(4>=k)return A.c(n,4) -o=j.af(n.charCodeAt(4))&&j.af(91)}}}}}if(o)return j.c7()}return new A.I(32,j.a.K(j.r,j.f)) +o=j.af(n.charCodeAt(4))&&j.af(91)}}}}}if(o)return j.c9()}return new A.I(32,j.a.K(j.r,j.f)) case 61:return new A.I(28,j.a.K(j.r,j.f)) case 94:if(j.af(61))return new A.I(532,j.a.K(j.r,j.f)) return new A.I(30,j.a.K(j.r,j.f)) @@ -11299,16 +11306,16 @@ case 36:if(j.af(61))return new A.I(533,j.a.K(j.r,j.f)) return new A.I(31,j.a.K(j.r,j.f)) case 33:return j.dI() default:if(!j.e&&s===92)return new A.I(35,j.a.K(j.r,j.f)) -if(j.c)o=(s===j.w||s===j.x)&&j.cl()===j.y +if(j.c)o=(s===j.w||s===j.x)&&j.cm()===j.y else o=!1 -if(o){j.ck() +if(o){j.cl() o=j.r=j.f return new A.I(508,j.a.K(o,o))}else{o=s===118 if(o&&j.af(97)&&j.af(114)&&j.af(45))return new A.I(400,j.a.K(j.r,j.f)) -else if(o&&j.af(97)&&j.af(114)&&j.cl()===45)return new A.I(401,j.a.K(j.r,j.f)) -else if(A.jW(s)||s===45)return j.dI() +else if(o&&j.af(97)&&j.af(114)&&j.cm()===45)return new A.I(401,j.a.K(j.r,j.f)) +else if(A.jY(s)||s===45)return j.dI() else if(s>=48&&s<=57)return j.dJ()}return new A.I(65,j.a.K(j.r,j.f))}}, -c7(){return this.bP(!1)}, +c9(){return this.bP(!1)}, dI(){var s,r,q,p,o,n,m,l,k,j=this,i=A.i([],t.Z),h=j.f j.f=j.r r=j.b @@ -11318,9 +11325,9 @@ if(!(q=0))return A.c(r,q) p=r.charCodeAt(q) if(p===92&&j.c){o=j.f=q+1 -j.mP(o+6) +j.mQ(o+6) q=j.f -if(q!==o){B.a.l(i,A.lx("0x"+B.b.t(r,o,q),null)) +if(q!==o){B.a.l(i,A.lA("0x"+B.b.t(r,o,q),null)) q=j.f if(q===s){s=q break}if(!(q>=0&&q=0&&q=h)if(j.d){if(!A.jW(p))n=p>=48&&p<=57}else{if(!A.jW(p))n=p>=48&&p<=57 +if(q>=h)if(j.d){if(!A.jY(p))n=p>=48&&p<=57}else{if(!A.jY(p))n=p>=48&&p<=57 else n=!0 n=n||p===45}if(n){B.a.l(i,p);++j.f}else{s=q break}}}m=j.a.K(j.r,s) -l=A.ay(i,0,null) +l=A.aA(i,0,null) if(!j.d&&!j.e){s=j.r -k=A.qg(B.d1,"unit",r,s,j.f-s)}else k=-1 +k=A.ql(B.d1,"unit",r,s,j.f-s)}else k=-1 if(k===-1)k=B.b.t(r,j.r,j.f)==="!important"?505:-1 -return new A.iy(l,k>=0?k:511,m)}, +return new A.iz(l,k>=0?k:511,m)}, dJ(){var s,r=this -r.i3() -if(r.cl()===46){r.ck() -s=r.cl() -if(s>=48&&s<=57){r.i3() +r.i4() +if(r.cm()===46){r.cl() +s=r.cm() +if(s>=48&&s<=57){r.i4() return new A.I(62,r.a.K(r.r,r.f))}else --r.f}return new A.I(60,r.a.K(r.r,r.f))}, -nr(){var s=this.f,r=this.b,q=r.length +ns(){var s=this.f,r=this.b,q=r.length if(s=0))return A.c(r,s) r=r.charCodeAt(s) r=r>=48&&r<=57}else r=!1 if(r){this.f=s+1 return!0}return!1}, -mP(a){var s,r,q,p=this.b,o=p.length +mQ(a){var s,r,q,p=this.b,o=p.length a=Math.min(a,o) while(s=this.f,s=0&&s=0))return A.c(r,s) return r.charCodeAt(s)}else return 0}, -hk(a){var s=this.f+a,r=this.b,q=r.length +hl(a){var s=this.f+a,r=this.b,q=r.length if(s=0))return A.c(r,s) return r.charCodeAt(s)}else return 0}, -cl(){return this.hk(0)}, +cm(){return this.hl(0)}, af(a){var s=this.f,r=this.b,q=r.length if(s=0))return A.c(r,s) if(r.charCodeAt(s)===a){this.f=s+1 return!0}else return!1}else return!1}, -hh(a){var s,r +hi(a){var s,r if(a>=48&&a<=57)return!0 -s=this.cl() +s=this.cm() if(a===46)return s>=48&&s<=57 -if(a===43||a===45){if(!(s>=48&&s<=57))if(s===46){r=this.hk(1) +if(a===43||a===45){if(!(s>=48&&s<=57))if(s===46){r=this.hl(1) r=r>=48&&r<=57}else r=!1 else r=!0 return r}return!1}, -n4(){var s,r,q,p,o=this,n=--o.f +n5(){var s,r,q,p,o=this,n=--o.f for(s=o.b,r=s.length;n=0))return A.c(s,n) p=s.charCodeAt(n) if(!(p===32||p===9||p===13))if(p===10){if(!o.c){n=o.a s=o.r -r=new A.av(n,s,q) +r=new A.aw(n,s,q) r.aG(n,s,q) return new A.I(63,r)}}else{n=o.f=q-1 -if(o.c)return o.c7() +if(o.c)return o.c9() else{s=o.a r=o.r -q=new A.av(s,r,n) +q=new A.aw(s,r,n) q.aG(s,r,n) return new A.I(63,q)}}}return new A.I(1,o.a.K(o.r,n))}, -i3(){var s,r,q,p +i4(){var s,r,q,p for(s=this.b,r=s.length;q=this.f,q=0))return A.c(s,q) p=s.charCodeAt(q) if(p>=48&&p<=57)this.f=q+1 @@ -11434,56 +11441,56 @@ else return}}} A.ec.prototype={ bn(){return"MessageLevel."+this.b}} A.eb.prototype={ -j(a){var s=this,r=s.d&&B.dZ.a8(s.a),q=r?B.dZ.n(0,s.a):null,p=r?A.k(q):"" -p=p+A.k(B.pd.n(0,s.a))+" " +j(a){var s=this,r=s.d&&B.dZ.a7(s.a),q=r?B.dZ.m(0,s.a):null,p=r?A.k(q):"" +p=p+A.k(B.pd.m(0,s.a))+" " if(r)p+="\x1b[0m" -p=p+"on "+s.c.ie(s.b,q) +p=p+"on "+s.c.ig(s.b,q) return p.charCodeAt(0)==0?p:p}} -A.j4.prototype={ -n_(a,b){var s=new A.eb(B.by,a,b,this.b.w) +A.j5.prototype={ +n0(a,b){var s=new A.eb(B.by,a,b,this.b.w) B.a.l(this.c,s) this.a.$1(s)}} -A.no.prototype={} +A.ns.prototype={} A.cs.prototype={ -L(a){return null}, +M(a){return null}, j(a){var s=this.a -s=A.ay(B.aA.am(s.a.c,s.b,s.c),0,null) +s=A.aA(B.aA.am(s.a.c,s.b,s.c),0,null) return s}, -ga7(){return this.b}} +ga8(){return this.b}} A.d4.prototype={ -L(a){return null}, -ga7(){return"*"}} -A.jT.prototype={ -L(a){return null}, -ga7(){return"&"}} -A.jd.prototype={ -L(a){return null}, -ga7(){return"not"}} -A.jJ.prototype={ -L(a){return B.a.aH(this.b,a.gfm())}} +M(a){return null}, +ga8(){return"*"}} +A.jV.prototype={ +M(a){return null}, +ga8(){return"&"}} +A.je.prototype={ +M(a){return null}, +ga8(){return"not"}} +A.jL.prototype={ +M(a){return B.a.aH(this.b,a.gfn())}} A.d_.prototype={ -gm(a){return this.b.length}, -L(a){return a.iE(this)}} +gn(a){return this.b.length}, +M(a){return a.iF(this)}} A.fL.prototype={ -L(a){this.c.L(a) +M(a){this.c.M(a) return null}, -j(a){return this.c.b.ga7()}} -A.ba.prototype={ -ga7(){return this.b.ga7()}, -L(a){return t.in.a(this.b).L(a)}} -A.dh.prototype={ -L(a){var s=this.b -return s instanceof A.d4||a.a.x===s.ga7().toLowerCase()}, -j(a){return this.b.ga7()}} -A.j5.prototype={ -gig(){var s=this.d +j(a){return this.c.b.ga8()}} +A.bc.prototype={ +ga8(){return this.b.ga8()}, +M(a){return t.in.a(this.b).M(a)}} +A.di.prototype={ +M(a){var s=this.b +return s instanceof A.d4||a.a.x===s.ga8().toLowerCase()}, +j(a){return this.b.ga8()}} +A.j6.prototype={ +gih(){var s=this.d if(s instanceof A.d4)s="*" else s=s==null?"":t.gx.a(s).b return s}, -L(a){return a.on(this)}, -j(a){return this.gig()+"|"+t.g9.a(this.b).b.ga7()}} +M(a){return a.on(this)}, +j(a){return this.gih()+"|"+t.g9.a(this.b).b.ga8()}} A.hW.prototype={ -np(){var s,r=this.d +nq(){var s,r=this.d A:{if(28===r){s="=" break A}if(530===r){s="~=" break A}if(531===r){s="|=" @@ -11497,148 +11504,148 @@ oi(){var s=this.e if(s!=null)if(s instanceof A.cs)return s.j(0) else return'"'+A.k(s)+'"' else return""}, -L(a){return a.oj(this)}, -j(a){return"["+this.b.ga7()+A.k(this.np())+this.oi()+"]"}} -A.ix.prototype={ -L(a){return a.a.geV()===this.b.ga7()}, +M(a){return a.oj(this)}, +j(a){return"["+this.b.ga8()+A.k(this.nq())+this.oi()+"]"}} +A.iy.prototype={ +M(a){return a.a.geW()===this.b.ga8()}, j(a){return"#"+A.k(this.b)}} A.i3.prototype={ -L(a){var s,r=a.a +M(a){var s,r=a.a r.toString -s=this.b.ga7() -return new A.ia(r).d0().D(0,s)}, +s=this.b.ga8() +return new A.ia(r).d0().C(0,s)}, j(a){return"."+A.k(this.b)}} A.ed.prototype={ -L(a){return a.op(this)}, -j(a){return":"+this.b.ga7()}} +M(a){return a.op(this)}, +j(a){return":"+this.b.ga8()}} A.ee.prototype={ -L(a){a.or(this) +M(a){a.or(this) return!1}, j(a){var s=this.d?":":"::" -return s+this.b.ga7()}} +return s+this.b.ga8()}} A.fD.prototype={ -L(a){return a.oo(this)}} -A.jC.prototype={ -L(a){return a.oq(this)}} +M(a){return a.oo(this)}} +A.jE.prototype={ +M(a){return a.oq(this)}} A.eh.prototype={ -L(a){a.l3(this.b) +M(a){a.l4(this.b) return null}} -A.je.prototype={ -L(a){return!A.hA(this.d.L(a))}} +A.jf.prototype={ +M(a){return!A.hA(this.d.M(a))}} +A.jo.prototype={ +M(a){return null}} A.jn.prototype={ -L(a){return null}} +M(a){return null}} +A.al.prototype={ +M(a){return null}} A.jm.prototype={ -L(a){return null}} -A.ak.prototype={ -L(a){return null}} -A.jl.prototype={ -L(a){return null}} +M(a){return null}} A.bA.prototype={ -L(a){return null}, -j(a){return this.d+A.k(A.wN(this.f))}} -A.j_.prototype={ -L(a){return null}} -A.jy.prototype={ -L(a){return null}} +M(a){return null}, +j(a){return this.d+A.k(A.wS(this.f))}} +A.j0.prototype={ +M(a){return null}} +A.jz.prototype={ +M(a){return null}} A.ib.prototype={ -L(a){return null}} +M(a){return null}} A.is.prototype={ -L(a){return null}} +M(a){return null}} A.hN.prototype={ -L(a){return null}} -A.jU.prototype={ -L(a){return null}} +M(a){return null}} +A.jW.prototype={ +M(a){return null}} +A.iw.prototype={ +M(a){return null}} A.iv.prototype={ -L(a){return null}} -A.iu.prototype={ -L(a){return null}} -A.jG.prototype={ -L(a){return null}} +M(a){return null}} +A.jI.prototype={ +M(a){return null}} A.i1.prototype={ -L(a){return null}} -A.jE.prototype={ -L(a){return null}} -A.j0.prototype={ -L(a){return null}} -A.k4.prototype={ -L(a){return null}} -A.N.prototype={} -A.an.prototype={} -A.k5.prototype={ -l3(a){var s +M(a){return null}} +A.jG.prototype={ +M(a){return null}} +A.j1.prototype={ +M(a){return null}} +A.k6.prototype={ +M(a){return null}} +A.R.prototype={} +A.ao.prototype={} +A.k7.prototype={ +l4(a){var s t.lR.a(a) -for(s=0;s>>0}, -u(a,b){var s=this +v(a,b){var s=this if(b==null)return!1 t.gF.a(b) if(s===b)return!0 -return b.a.u(0,s.a)&&b.b.u(0,s.b)&&b.c===s.c}} -A.m7.prototype={ +return b.a.v(0,s.a)&&b.b.v(0,s.b)&&b.c===s.c}} +A.ma.prototype={ $1(a){A.q(a) return!0}, $S:4} -A.m8.prototype={ +A.mb.prototype={ $0(){return""}, $S:8} -A.m9.prototype={ +A.mc.prototype={ $1(a){return t.fj.a(a).a}, -$S:67} -A.lJ.prototype={ +$S:70} +A.lM.prototype={ $1(a){var s,r -t.w.a(a) +t.A.a(a) s=this.a r=this.b if(!(r")),r=r.c,q=null,p=null,o=null;s.p();){n=s.d +if(a.b.ga_().toLowerCase()==="meta"){for(s=a.y$.a,r=A.w(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=null,p=null,o=null;s.p();){n=s.d if(n==null)n=r.a(n) m=n.b switch(n.a.ga_().toLowerCase()){case"name":q=m @@ -11646,57 +11653,57 @@ break case"content":p=m break case"scheme":o=m -break}}if(q==null||q.length===0)throw A.f(A.P("Incorrect EPUB navigation meta: meta name is missing.")) -if(p==null)throw A.f(A.P("Incorrect EPUB navigation meta: meta content is missing.")) +break}}if(q==null||q.length===0)throw A.f(A.S("Incorrect EPUB navigation meta: meta name is missing.")) +if(p==null)throw A.f(A.S("Incorrect EPUB navigation meta: meta content is missing.")) B.a.l(this.a,new A.f5(q,p,o))}}, $S:2} -A.mQ.prototype={ +A.mU.prototype={ $1(a){return t.q.a(a)!=null}, $S:5} -A.mS.prototype={ +A.mW.prototype={ $1(a){t.P.a(a) -if(a.b.ga_().toLowerCase()==="navpoint")B.a.l(this.a,A.rC(a))}, +if(a.b.ga_().toLowerCase()==="navpoint")B.a.l(this.a,A.rH(a))}, $S:2} -A.mR.prototype={ +A.mV.prototype={ $1(a){t.P.a(a) -if(a.b.ga_().toLowerCase()==="li")B.a.l(this.a,A.wd(a))}, +if(a.b.ga_().toLowerCase()==="li")B.a.l(this.a,A.wi(a))}, $S:2} -A.mT.prototype={ +A.mX.prototype={ $1(a){t.P.a(a) -switch(a.b.ga_().toLowerCase()){case"navlabel":B.a.l(this.a,A.mP(a)) +switch(a.b.ga_().toLowerCase()){case"navlabel":B.a.l(this.a,A.mT(a)) break -case"content":A.q5(a) +case"content":A.qb(a) break}}, $S:2} -A.mV.prototype={ +A.mZ.prototype={ $1(a){t.P.a(a) -switch(a.b.ga_().toLowerCase()){case"navlabel":B.a.l(this.b,A.mP(a)) +switch(a.b.ga_().toLowerCase()){case"navlabel":B.a.l(this.b,A.mT(a)) break -case"content":this.a.a=A.q5(a) +case"content":this.a.a=A.qb(a) break -case"navpoint":B.a.l(this.c,A.rC(a)) +case"navpoint":B.a.l(this.c,A.rH(a)) break}}, $S:2} -A.mU.prototype={ +A.mY.prototype={ $1(a){var s,r,q,p t.P.a(a) -switch(a.b.ga_().toLowerCase()){case"a":case"span":B.a.l(this.b,new A.cS(B.b.bk(A.cH(a)))) -this.a.a=A.w5(a) +switch(a.b.ga_().toLowerCase()){case"a":case"span":B.a.l(this.b,new A.cS(B.b.ba(A.cH(a)))) +this.a.a=A.wa(a) break -case"ol":for(s=A.rB(a).a,r=s.length,q=this.c,p=0;p")),r=r.c,q=null,p=null,o=null;s.p();){n=s.d +if(a.b.ga_().toLowerCase()==="reference"){for(s=a.y$.a,r=A.w(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=null,p=null,o=null;s.p();){n=s.d if(n==null)n=r.a(n) m=n.b switch(n.a.ga_().toLowerCase()){case"type":q=m @@ -11704,14 +11711,14 @@ break case"title":p=m break case"href":o=m -break}}if(q==null||q.length===0)throw A.f(A.P("Incorrect EPUB guide: item type is missing")) -if(o==null||o.length===0)throw A.f(A.P("Incorrect EPUB guide: item href is missing")) +break}}if(q==null||q.length===0)throw A.f(A.S("Incorrect EPUB guide: item type is missing")) +if(o==null||o.length===0)throw A.f(A.S("Incorrect EPUB guide: item href is missing")) B.a.l(this.a,new A.eZ(q,p,o))}}, $S:2} -A.n5.prototype={ +A.n9.prototype={ $1(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=null t.P.a(a) -if(a.b.ga_().toLowerCase()==="item"){for(s=a.y$.a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=f,p=q,o=p,n=o,m=n,l=m,k=l,j=k,i=j;s.p();){h=s.d +if(a.b.ga_().toLowerCase()==="item"){for(s=a.y$.a,r=A.w(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c,q=f,p=q,o=p,n=o,m=n,l=m,k=l,j=k,i=j;s.p();){h=s.d if(h==null)h=r.a(h) g=h.b switch(h.a.ga_().toLowerCase()){case"id":i=g @@ -11731,135 +11738,135 @@ break case"fallback-style":p=g break case"properties":q=g -break}}if(i==null||i.length===0)throw A.f(A.P("Incorrect EPUB manifest: item ID is missing")) -if(j==null||j.length===0)throw A.f(A.P("Incorrect EPUB manifest: item href is missing")) -if(k==null||k.length===0)throw A.f(A.P("Incorrect EPUB manifest: item media type is missing")) -B.a.l(this.a,new A.dj(i,j,k,l,m,n,o,p,q))}}, +break}}if(i==null||i.length===0)throw A.f(A.S("Incorrect EPUB manifest: item ID is missing")) +if(j==null||j.length===0)throw A.f(A.S("Incorrect EPUB manifest: item href is missing")) +if(k==null||k.length===0)throw A.f(A.S("Incorrect EPUB manifest: item media type is missing")) +B.a.l(this.a,new A.dk(i,j,k,l,m,n,o,p,q))}}, $S:2} -A.n6.prototype={ +A.na.prototype={ $1(a){var s,r,q,p,o,n,m=this t.P.a(a) s=A.cH(a) r=a.b q=r.ga_().toLowerCase() A:{if("title"===q){r=B.a.l(m.b,s) -break A}if("creator"===q){r=B.a.l(m.c,A.wk(a)) +break A}if("creator"===q){r=B.a.l(m.c,A.wp(a)) break A}if("subject"===q){r=B.a.l(m.d,s) break A}if("description"===q){m.a.a=s r=s break A}if("publisher"===q){r=B.a.l(m.e,s) -break A}if("contributor"===q){r=B.a.l(m.f,A.wj(a)) -break A}if("date"===q){p=a.fp("event",r.gcV()) +break A}if("contributor"===q){r=B.a.l(m.f,A.wo(a)) +break A}if("date"===q){p=a.fq("event",r.gcV()) o=p!=null&&p.length!==0?p:null r=B.a.l(m.r,new A.f0(A.cH(a),o)) break A}if("type"===q){r=B.a.l(m.w,s) break A}if("format"===q){r=B.a.l(m.x,s) -break A}if("identifier"===q){r=B.a.l(m.y,A.wl(a)) +break A}if("identifier"===q){r=B.a.l(m.y,A.wq(a)) break A}if("source"===q){r=B.a.l(m.z,s) break A}if("language"===q){r=B.a.l(m.Q,s) break A}if("relation"===q){r=B.a.l(m.as,s) break A}if("coverage"===q){r=B.a.l(m.at,s) break A}if("rights"===q){r=B.a.l(m.ax,s) break A}n="meta"===q -if(n&&m.ay===B.bG){r=B.a.l(m.ch,A.wm(a)) -break A}if(n&&m.ay===B.cT){r=B.a.l(m.ch,A.wn(a)) +if(n&&m.ay===B.bG){r=B.a.l(m.ch,A.wr(a)) +break A}if(n&&m.ay===B.cT){r=B.a.l(m.ch,A.ws(a)) break A}r=null break A}return r}, $S:2} -A.n7.prototype={ +A.nb.prototype={ $1(a){return t.u.a(a).a===this.a}, $S:9} -A.n8.prototype={ +A.nc.prototype={ $1(a){return t.q.a(a)!=null}, $S:5} -A.n9.prototype={ +A.nd.prototype={ $1(a){return t.q.a(a)!=null}, $S:5} -A.na.prototype={ +A.ne.prototype={ $1(a){return t.q.a(a)!=null}, $S:5} -A.nb.prototype={ +A.nf.prototype={ $1(a){return t.q.a(a)!=null}, $S:5} -A.nc.prototype={ +A.ng.prototype={ $1(a){return t.q.a(a)!=null}, $S:5} -A.nd.prototype={ +A.nh.prototype={ $1(a){var s,r,q t.P.a(a) -if(a.b.ga_().toLowerCase()==="itemref"){s=a.cb("idref") -if(s==null||s.length===0)throw A.f(A.P("Incorrect EPUB spine: item ID ref is missing")) -r=a.cb("linear") +if(a.b.ga_().toLowerCase()==="itemref"){s=a.cd("idref") +if(s==null||s.length===0)throw A.f(A.S("Incorrect EPUB spine: item ID ref is missing")) +r=a.cd("linear") q=r==null||r.toLowerCase()==="no" B.a.l(this.a,new A.fa(s,q))}}, $S:2} -A.nz.prototype={ +A.nD.prototype={ $1(a){return t.u.a(a).a==="META-INF/container.xml"}, $S:9} -A.nA.prototype={ +A.nE.prototype={ $1(a){return t.q.a(a)!=null}, $S:5} -A.nB.prototype={ +A.nF.prototype={ $1(a){t.I.a(a) -return a instanceof A.aF&&"rootfile"===a.b.ga_()}, +return a instanceof A.aG&&"rootfile"===a.b.ga_()}, $S:29} A.eY.prototype={ gq(a){var s=this -return(B.b.gq(s.b)^B.b.gq(s.c)^A.dx(s.d)^s.e.gq(0)^J.A(s.f))>>>0}, -u(a,b){var s=this +return(B.b.gq(s.b)^B.b.gq(s.c)^A.dy(s.d)^s.e.gq(0)^J.B(s.f))>>>0}, +v(a,b){var s=this if(b==null)return!1 t.gw.a(b) if(s===b)return!0 -return b.b===s.b&&b.c===s.c&&B.l.gar().$2(b.d,s.d)&&b.e.u(0,s.e)&&J.M(b.f,s.f)}} +return b.b===s.b&&b.c===s.c&&B.l.gar().$2(b.d,s.d)&&b.e.v(0,s.e)&&J.N(b.f,s.f)}} A.bg.prototype={} A.bu.prototype={ -gq(a){var s=this,r=J.A(s.a),q=B.b.gq(s.b),p=B.b.gq(s.c),o=J.A(s.d),n=B.l.gdM().$1(s.e) -if(typeof n!=="number")return A.aM(n) +gq(a){var s=this,r=J.B(s.a),q=B.b.gq(s.b),p=B.b.gq(s.c),o=J.B(s.d),n=B.l.gdM().$1(s.e) +if(typeof n!=="number")return A.aN(n) return(r^q^p^o^n)>>>0}, -u(a,b){var s=this +v(a,b){var s=this if(b==null)return!1 t.k5.a(b) if(s===b)return!0 -return J.M(b.a,s.a)&&b.b===s.b&&b.c===s.c&&b.d==s.d&&B.l.gar().$2(b.e,s.e)}, -fa(){var s=0,r=A.br(t.N),q,p=this -var $async$fa=A.bs(function(a,b){if(a===1)return A.bo(b,r) +return J.N(b.a,s.a)&&b.b===s.b&&b.c===s.c&&b.d==s.d&&B.l.gar().$2(b.e,s.e)}, +fb(){var s=0,r=A.br(t.N),q,p=this +var $async$fb=A.bs(function(a,b){if(a===1)return A.bo(b,r) for(;;)switch(s){case 0:q=p.a.dU() s=1 break case 1:return A.bp(q,r)}}) -return A.bq($async$fa,r)}, +return A.bq($async$fb,r)}, j(a){return"Title: "+this.b+", Subchapter count: "+this.e.length}} -A.di.prototype={ +A.dj.prototype={ gq(a){var s=this -return(s.a.gq(0)^B.b.gq(s.b)^J.A(s.c)^B.b.gq(s.d))>>>0}, -u(a,b){var s=this +return(s.a.gq(0)^B.b.gq(s.b)^J.B(s.c)^B.b.gq(s.d))>>>0}, +v(a,b){var s=this if(b==null)return!1 if(s===b)return!0 -return b instanceof A.di&&b.b===s.b&&b.c==s.c&&b.d===s.d}, -fs(){var s=this.a,r=A.qm(s.e.c,this.b),q=A.bI(new A.cE(s.a.a,t.bW),new A.lR(r),t.u) -if(q==null)throw A.f(A.P("EPUB parsing error: file "+r+" not found in archive.")) +return b instanceof A.dj&&b.b===s.b&&b.c==s.c&&b.d===s.d}, +ft(){var s=this.a,r=A.qr(s.e.c,this.b),q=A.bI(new A.cE(s.a.a,t.bW),new A.lU(r),t.u) +if(q==null)throw A.f(A.S("EPUB parsing error: file "+r+" not found in archive.")) return q}, -f2(a){var s=0,r=A.br(t.L),q,p=this,o,n -var $async$f2=A.bs(function(b,c){if(b===1)return A.bo(c,r) +f3(a){var s=0,r=A.br(t.L),q,p=this,o,n +var $async$f3=A.bs(function(b,c){if(b===1)return A.bo(c,r) for(;;)switch(s){case 0:o=A.i([],t.Z) n=a.bQ() -if((n==null?$.dc():n).length===0)throw A.f(A.P('Incorrect EPUB file: content file "'+p.b+'" specified in manifest is not found.')) +if((n==null?$.dd():n).length===0)throw A.f(A.S('Incorrect EPUB file: content file "'+p.b+'" specified in manifest is not found.')) n=a.bQ() -B.a.a1(o,n==null?$.dc():n) +B.a.a1(o,n==null?$.dd():n) q=o s=1 break case 1:return A.bp(q,r)}}) -return A.bq($async$f2,r)}, -nA(a){var s=A.i([],t.Z),r=a.bQ() -if((r==null?$.dc():r).length===0)throw A.f(A.P('Incorrect EPUB file: content file "'+this.b+'" specified in manifest is not found.')) +return A.bq($async$f3,r)}, +nB(a){var s=A.i([],t.Z),r=a.bQ() +if((r==null?$.dd():r).length===0)throw A.f(A.S('Incorrect EPUB file: content file "'+this.b+'" specified in manifest is not found.')) r=a.bQ() -B.a.a1(s,r==null?$.dc():r) +B.a.a1(s,r==null?$.dd():r) return s}, d1(){var s=0,r=A.br(t.L),q,p=this var $async$d1=A.bs(function(a,b){if(a===1)return A.bo(b,r) for(;;)switch(s){case 0:s=3 -return A.c3(p.f2(p.fs()),$async$d1) +return A.c3(p.f3(p.ft()),$async$d1) case 3:q=b s=1 break @@ -11875,21 +11882,21 @@ s=1 break case 1:return A.bp(q,r)}}) return A.bq($async$dU,r)}} -A.lR.prototype={ +A.lU.prototype={ $1(a){return t.u.a(a).a===this.a}, $S:9} A.ih.prototype={ gq(a){var s,r,q,p=this,o=B.l.gdM(),n=o.$1(p.a),m=o.$1(p.b) -if(typeof n!=="number")return n.jS() -if(typeof m!=="number")return A.aM(m) +if(typeof n!=="number")return n.jT() +if(typeof m!=="number")return A.aN(m) s=o.$1(p.c) -if(typeof s!=="number")return A.aM(s) +if(typeof s!=="number")return A.aN(s) r=o.$1(p.d) -if(typeof r!=="number")return A.aM(r) +if(typeof r!=="number")return A.aN(r) q=o.$1(p.e) -if(typeof q!=="number")return A.aM(q) +if(typeof q!=="number")return A.aN(q) return(n^m^s^r^q)>>>0}, -u(a,b){var s,r=this +v(a,b){var s,r=this if(b==null)return!1 t.aN.a(b) if(r===b)return!0 @@ -11897,64 +11904,64 @@ s=B.l.gar() return s.$2(b.a,r.a)&&s.$2(b.b,r.b)&&s.$2(b.c,r.c)&&s.$2(b.d,r.d)&&s.$2(b.e,r.e)}} A.fb.prototype={ gq(a){var s=this -return(s.a.gq(0)^B.b.gq(s.b)^B.b.gq(s.d)^J.A(s.c))>>>0}, -u(a,b){var s=this +return(s.a.gq(0)^B.b.gq(s.b)^B.b.gq(s.d)^J.B(s.c))>>>0}, +v(a,b){var s=this if(b==null)return!1 t.am.a(b) if(s===b)return!0 -return b.a.u(0,s.a)&&b.b===s.b&&b.d===s.d&&b.c==s.c}} +return b.a.v(0,s.a)&&b.b===s.b&&b.d===s.d&&b.c==s.c}} A.f3.prototype={ -gq(a){return J.A(this.a)^J.A(this.b)}, -u(a,b){if(b==null)return!1 +gq(a){return J.B(this.a)^J.B(this.b)}, +v(a,b){if(b==null)return!1 t.j1.a(b) if(this===b)return!0 return b.a==this.a&&b.b==this.b}, j(a){return"Source: "+A.k(this.b)}} A.f2.prototype={ gq(a){var s=this -return(J.A(s.a)^B.l.Y(s.b.a)^B.l.Y(s.c)^B.l.Y(s.d.a)^J.A(s.e)^B.l.Y(s.f))>>>0}, -u(a,b){var s,r=this +return(J.B(s.a)^B.l.Y(s.b.a)^B.l.Y(s.c)^B.l.Y(s.d.a)^J.B(s.e)^B.l.Y(s.f))>>>0}, +v(a,b){var s,r=this if(b==null)return!1 t.kZ.a(b) if(r===b)return!0 s=B.l.gar() -return J.M(b.a,r.a)&&b.b.u(0,r.b)&&s.$2(b.c,r.c)&&b.d.u(0,r.d)&&J.M(b.e,r.e)&&s.$2(b.f,r.f)}} +return J.N(b.a,r.a)&&b.b.v(0,r.b)&&s.$2(b.c,r.c)&&b.d.v(0,r.d)&&J.N(b.e,r.e)&&s.$2(b.f,r.f)}} A.cm.prototype={ gq(a){return B.l.Y(this.a)}, -u(a,b){if(b==null)return!1 +v(a,b){if(b==null)return!1 t.ck.a(b) if(this===b)return!0 return B.l.gar().$2(b.a,this.a)}} A.f4.prototype={ gq(a){return B.l.Y(this.a)}, -u(a,b){if(b==null)return!1 +v(a,b){if(b==null)return!1 t.f5.a(b) if(this===b)return!0 return B.l.gar().$2(b.a,this.a)}} A.il.prototype={ gq(a){return B.l.Y(this.a)}, -u(a,b){if(b==null)return!1 +v(a,b){if(b==null)return!1 t.aw.a(b) if(this===b)return!0 return B.l.gar().$2(b.a,this.a)}} A.f5.prototype={ -gq(a){return B.b.gq(this.a)^B.b.gq(this.b)^J.A(this.c)}, -u(a,b){var s=this +gq(a){return B.b.gq(this.a)^B.b.gq(this.b)^J.B(this.c)}, +v(a,b){var s=this if(b==null)return!1 t.eo.a(b) if(s===b)return!0 return b.a===s.a&&b.b===s.b&&b.c==s.c}} A.cS.prototype={ gq(a){return B.b.gq(this.a)}, -u(a,b){if(b==null)return!1 +v(a,b){if(b==null)return!1 t.gK.a(b) if(this===b)return!0 return b.a===this.a}, j(a){return this.a}} A.cn.prototype={ gq(a){var s=this -return(J.A(s.a)^J.A(s.b)^B.l.Y(s.c)^B.l.Y(s.d))>>>0}, -u(a,b){var s,r=this +return(J.B(s.a)^J.B(s.b)^B.l.Y(s.c)^B.l.Y(s.d))>>>0}, +v(a,b){var s,r=this if(b==null)return!1 t.c9.a(b) if(r===b)return!0 @@ -11962,20 +11969,20 @@ s=B.l.gar() return b.a==r.a&&b.b==r.b&&s.$2(b.c,r.c)&&s.$2(b.d,r.d)}} A.f6.prototype={ gq(a){return B.l.Y(this.a)}, -u(a,b){if(b==null)return!1 +v(a,b){if(b==null)return!1 t.ni.a(b) if(this===b)return!0 return B.l.gar().$2(b.a,this.a)}} A.im.prototype={ gq(a){return B.l.Y(this.a)}, -u(a,b){if(b==null)return!1 +v(a,b){if(b==null)return!1 t.eH.a(b) if(this===b)return!0 return B.l.gar().$2(b.a,this.a)}} A.f7.prototype={ gq(a){var s=this -return(J.A(s.a)^J.A(s.b)^B.cU.gq(s.c)^J.A(s.d)^J.A(s.e)^B.l.Y(s.f)^B.cU.gq(s.r))>>>0}, -u(a,b){var s=this +return(J.B(s.a)^J.B(s.b)^B.cU.gq(s.c)^J.B(s.d)^J.B(s.e)^B.l.Y(s.f)^B.cU.gq(s.r))>>>0}, +v(a,b){var s=this if(b==null)return!1 t.on.a(b) if(s===b)return!0 @@ -11984,33 +11991,33 @@ A.cT.prototype={ bn(){return"EpubNavigationPageTargetType."+this.b}} A.co.prototype={ gq(a){var s=this -return(J.A(s.a)^J.A(s.b)^J.A(s.c)^B.l.Y(s.d)^J.A(s.e)^B.l.Y(s.f))>>>0}, -u(a,b){var s,r=this +return(J.B(s.a)^J.B(s.b)^J.B(s.c)^B.l.Y(s.d)^J.B(s.e)^B.l.Y(s.f))>>>0}, +v(a,b){var s,r=this if(b==null)return!1 t.iV.a(b) if(r===b)return!0 s=B.l.gar() -return b.a==r.a&&b.b==r.b&&b.c==r.c&&s.$2(b.d,r.d)&&J.M(b.e,r.e)&&s.$2(b.f,r.f)}, +return b.a==r.a&&b.b==r.b&&b.c==r.c&&s.$2(b.d,r.d)&&J.N(b.e,r.e)&&s.$2(b.f,r.f)}, j(a){var s=this.e s=s==null?null:s.b return"Id: "+A.k(this.a)+", Content.Source: "+A.k(s)}} A.f8.prototype={ gq(a){var s=this -return(B.b.gq(s.a)^J.A(s.b)^J.A(s.c)^J.A(s.d)^B.l.Y(s.e)^J.A(s.f))>>>0}, -u(a,b){var s=this +return(B.b.gq(s.a)^J.B(s.b)^J.B(s.c)^J.B(s.d)^B.l.Y(s.e)^J.B(s.f))>>>0}, +v(a,b){var s=this if(b==null)return!1 t.p7.a(b) if(s===b)return!0 -return b.a===s.a&&b.b==s.b&&b.c==s.c&&b.d==s.d&&B.l.gar().$2(b.e,s.e)&&J.M(b.f,s.f)}} +return b.a===s.a&&b.b==s.b&&b.c==s.c&&b.d==s.d&&B.l.gar().$2(b.e,s.e)&&J.N(b.f,s.f)}} A.ii.prototype={ gq(a){return B.l.Y(this.a)}, -u(a,b){if(b==null)return!1 +v(a,b){if(b==null)return!1 t.fc.a(b) if(this===b)return!0 return B.l.gar().$2(b.a,this.a)}} A.eZ.prototype={ -gq(a){return B.b.gq(this.a)^J.A(this.b)^B.b.gq(this.c)}, -u(a,b){var s=this +gq(a){return B.b.gq(this.a)^J.B(this.b)^B.b.gq(this.c)}, +v(a,b){var s=this if(b==null)return!1 t.iA.a(b) if(s===b)return!0 @@ -12018,105 +12025,105 @@ return b.a===s.a&&b.b==s.b&&b.c===s.c}, j(a){return"Type: "+this.a+", Href: "+this.c}} A.ij.prototype={ gq(a){return B.l.Y(this.a)}, -u(a,b){if(b==null)return!1 +v(a,b){if(b==null)return!1 t.pd.a(b) if(this===b)return!0 return B.l.gar().$2(b.a,this.a)}} -A.dj.prototype={ +A.dk.prototype={ gq(a){var s=this -return B.b.gq(s.a)^B.b.gq(s.b)^B.b.gq(s.c)^J.A(s.d)^J.A(s.e)^J.A(s.f)^J.A(s.r)^J.A(s.w)^J.A(s.x)}, -u(a,b){var s=this +return B.b.gq(s.a)^B.b.gq(s.b)^B.b.gq(s.c)^J.B(s.d)^J.B(s.e)^J.B(s.f)^J.B(s.r)^J.B(s.w)^J.B(s.x)}, +v(a,b){var s=this if(b==null)return!1 -t.w.a(b) +t.A.a(b) if(s===b)return!0 return b.a===s.a&&b.b===s.b&&b.c===s.c&&b.d==s.d&&b.e==s.e&&b.f==s.f&&b.r==s.r&&b.w==s.w&&b.x==s.x}, j(a){var s=this return"Id: "+s.a+", Href = "+s.b+", MediaType = "+s.c+", Properties = "+A.k(s.x)+", MediaOverlay = "+A.k(s.d)}} A.ik.prototype={ gq(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this,d=B.l.gdM(),c=d.$1(e.a),b=d.$1(e.b) -if(typeof c!=="number")return c.jS() -if(typeof b!=="number")return A.aM(b) +if(typeof c!=="number")return c.jT() +if(typeof b!=="number")return A.aN(b) s=d.$1(e.c) -if(typeof s!=="number")return A.aM(s) -r=J.A(e.d) +if(typeof s!=="number")return A.aN(s) +r=J.B(e.d) q=d.$1(e.e) -if(typeof q!=="number")return A.aM(q) +if(typeof q!=="number")return A.aN(q) p=d.$1(e.f) -if(typeof p!=="number")return A.aM(p) +if(typeof p!=="number")return A.aN(p) o=d.$1(e.r) -if(typeof o!=="number")return A.aM(o) +if(typeof o!=="number")return A.aN(o) n=d.$1(e.w) -if(typeof n!=="number")return A.aM(n) +if(typeof n!=="number")return A.aN(n) m=d.$1(e.x) -if(typeof m!=="number")return A.aM(m) +if(typeof m!=="number")return A.aN(m) l=d.$1(e.y) -if(typeof l!=="number")return A.aM(l) +if(typeof l!=="number")return A.aN(l) k=d.$1(e.z) -if(typeof k!=="number")return A.aM(k) +if(typeof k!=="number")return A.aN(k) j=d.$1(e.Q) -if(typeof j!=="number")return A.aM(j) +if(typeof j!=="number")return A.aN(j) i=d.$1(e.as) -if(typeof i!=="number")return A.aM(i) +if(typeof i!=="number")return A.aN(i) h=d.$1(e.at) -if(typeof h!=="number")return A.aM(h) +if(typeof h!=="number")return A.aN(h) g=d.$1(e.ax) -if(typeof g!=="number")return A.aM(g) +if(typeof g!=="number")return A.aN(g) f=d.$1(e.ay) -if(typeof f!=="number")return A.aM(f) +if(typeof f!=="number")return A.aN(f) return(c^b^s^r^q^p^o^n^m^l^k^j^i^h^g^f)>>>0}, -u(a,b){var s,r=this +v(a,b){var s,r=this if(b==null)return!1 t.mz.a(b) if(r===b)return!0 s=B.l.gar() return s.$2(b.a,r.a)&&s.$2(b.b,r.b)&&s.$2(b.c,r.c)&&b.d==r.d&&s.$2(b.e,r.e)&&s.$2(b.f,r.f)&&s.$2(b.r,r.r)&&s.$2(b.w,r.w)&&s.$2(b.x,r.x)&&s.$2(b.y,r.y)&&s.$2(b.z,r.z)&&s.$2(b.Q,r.Q)&&s.$2(b.as,r.as)&&s.$2(b.at,r.at)&&s.$2(b.ax,r.ax)&&s.$2(b.ay,r.ay)}} A.f_.prototype={ -gq(a){return B.b.gq(this.a)^J.A(this.b)^J.A(this.c)}, -u(a,b){var s=this +gq(a){return B.b.gq(this.a)^J.B(this.b)^J.B(this.c)}, +v(a,b){var s=this if(b==null)return!1 t.ib.a(b) if(s===b)return!0 return b.a===s.a&&b.b==s.b&&b.c==s.c}} -A.dk.prototype={ -gq(a){return B.b.gq(this.a)^J.A(this.b)^J.A(this.c)}, -u(a,b){var s=this +A.dl.prototype={ +gq(a){return B.b.gq(this.a)^J.B(this.b)^J.B(this.c)}, +v(a,b){var s=this if(b==null)return!1 t.fj.a(b) if(s===b)return!0 return b.a===s.a&&b.b==s.b&&b.c==s.c}} A.f0.prototype={ -gq(a){return B.b.gq(this.a)^J.A(this.b)}, -u(a,b){if(b==null)return!1 +gq(a){return B.b.gq(this.a)^J.B(this.b)}, +v(a,b){if(b==null)return!1 t.fW.a(b) if(this===b)return!0 return b.a===this.a&&b.b==this.b}} A.f1.prototype={ -gq(a){return J.A(this.a)^J.A(this.b)^B.b.gq(this.c)}, -u(a,b){var s=this +gq(a){return J.B(this.a)^J.B(this.b)^B.b.gq(this.c)}, +v(a,b){var s=this if(b==null)return!1 t.mv.a(b) if(s===b)return!0 return b.a==s.a&&b.b==s.b&&b.c===s.c}} A.cR.prototype={ gq(a){var s=this -return(J.A(s.a)^J.A(s.b)^J.A(s.c)^J.A(s.d)^J.A(s.e)^J.A(s.f)^B.l.Y(s.r))>>>0}, -u(a,b){var s=this +return(J.B(s.a)^J.B(s.b)^J.B(s.c)^J.B(s.d)^J.B(s.e)^J.B(s.f)^B.l.Y(s.r))>>>0}, +v(a,b){var s=this if(b==null)return!1 t.az.a(b) if(s===b)return!0 return b.a==s.a&&b.b==s.b&&b.c==s.c&&b.d==s.d&&b.e==s.e&&b.f==s.f&&B.l.gar().$2(b.r,s.r)}} A.io.prototype={ gq(a){var s=this -return(A.dx(s.a)^s.b.gq(0)^B.l.Y(s.c.a)^s.d.gq(0)^J.A(s.e))>>>0}, -u(a,b){var s=this +return(A.dy(s.a)^s.b.gq(0)^B.l.Y(s.c.a)^s.d.gq(0)^J.B(s.e))>>>0}, +v(a,b){var s=this if(b==null)return!1 t.hl.a(b) if(s===b)return!0 -return b.a===s.a&&b.b.u(0,s.b)&&b.c.u(0,s.c)&&b.d.u(0,s.d)&&J.M(b.e,s.e)}} +return b.a===s.a&&b.b.v(0,s.b)&&b.c.v(0,s.c)&&b.d.v(0,s.d)&&J.N(b.e,s.e)}} A.iq.prototype={ -gq(a){var s=J.A(this.a),r=B.l.Y(this.b),q=this.c?519018:218159 +gq(a){var s=J.B(this.a),r=B.l.Y(this.b),q=this.c?519018:218159 return(s^r^q)>>>0}, -u(a,b){var s=this +v(a,b){var s=this if(b==null)return!1 t.oe.a(b) if(s===b)return!0 @@ -12124,7 +12131,7 @@ return b.a==s.a&&B.l.gar().$2(b.b,s.b)&&b.c===s.c}} A.fa.prototype={ gq(a){var s=B.b.gq(this.a) return s^(this.b?519018:218159)}, -u(a,b){if(b==null)return!1 +v(a,b){if(b==null)return!1 t.ad.a(b) if(this===b)return!0 return b.a===this.a&&b.b===this.b}, @@ -12132,119 +12139,119 @@ j(a){return"IdRef: "+this.a}} A.ir.prototype={ bn(){return"EpubVersion."+this.b}} A.ig.prototype={ -iN(a){var s,r,q={} +iO(a){var s,r,q={} q.a=a q.a=A.ch(this.$ti.c).j(0)+"."+a -try{s=B.a.co(this.a,new A.lQ(q,this)) +try{s=B.a.cp(this.a,new A.lT(q,this)) return s}catch(r){return null}}} -A.lQ.prototype={ -$1(a){return J.ax(this.b.$ti.c.a(a)).toUpperCase()===this.a.a.toUpperCase()}, -$S(){return this.b.$ti.h("C(1)")}} -A.aN.prototype={ +A.lT.prototype={ +$1(a){return J.ay(this.b.$ti.c.a(a)).toUpperCase()===this.a.a.toUpperCase()}, +$S(){return this.b.$ti.h("A(1)")}} +A.aO.prototype={ j(a){var s=this.a,r=this.b return s!=null?s+":"+r:r}, -gq(a){return 37*(37*(J.A(this.a)&2097151)+B.b.gq(this.b)&2097151)+B.b.gq(this.c)&1073741823}, -ah(a,b){var s,r,q -if(!(b instanceof A.aN))return 1 +gq(a){return 37*(37*(J.B(this.a)&2097151)+B.b.gq(this.b)&2097151)+B.b.gq(this.c)&1073741823}, +ai(a,b){var s,r,q +if(!(b instanceof A.aO))return 1 s=this.a if(s==null)s="" r=b.a -q=B.b.ah(s,r==null?"":r) +q=B.b.ai(s,r==null?"":r) if(q!==0)return q -q=B.b.ah(this.b,b.b) +q=B.b.ai(this.b,b.b) if(q!==0)return q -return B.b.ah(this.c,b.c)}, -u(a,b){if(b==null)return!1 -return b instanceof A.aN&&this.a==b.a&&this.b===b.b&&this.c===b.c}, -$ia5:1} -A.kN.prototype={} -A.oQ.prototype={} -A.kG.prototype={} -A.al.prototype={ -gO(){var s,r=this,q=r.c +return B.b.ai(this.c,b.c)}, +v(a,b){if(b==null)return!1 +return b instanceof A.aO&&this.a==b.a&&this.b===b.b&&this.c===b.c}, +$ia6:1} +A.kQ.prototype={} +A.oU.prototype={} +A.kI.prototype={} +A.am.prototype={ +gL(){var s,r=this,q=r.c if(q===$){s=A.i([],t.cx) -r.c!==$&&A.dQ() -q=r.c=new A.jh(r,s)}return q}, -fP(a){var s,r,q -for(s=this.gO().a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c;s.p();){q=s.d;(q==null?r.a(q):q).cf(a)}}, -fb(a){var s=this.a -if(s!=null)B.a.V(s.gO().a,this) +r.c!==$&&A.dc() +q=r.c=new A.ji(r,s)}return q}, +fQ(a){var s,r,q +for(s=this.gL().a,r=A.w(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c;s.p();){q=s.d;(q==null?r.a(q):q).cg(a)}}, +dW(a){var s=this.a +if(s!=null)B.a.W(s.gL().a,this) return this}, -na(a,b){var s -if(b==null)this.gO().l(0,a) -else{s=this.gO() +nb(a,b){var s +if(b==null)this.gL().l(0,a) +else{s=this.gL() s.bx(0,s.al(s,b),a)}}, df(a,b,c){var s,r,q,p,o -A.ue(c,t.fh,"T","_clone") +A.uj(c,t.fh,"T","_clone") c.a(a) -if(b)for(s=this.gO().a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c;s.p();){q=s.d +if(b)for(s=this.gL().a,r=A.w(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c;s.p();){q=s.d q=(q==null?r.a(q):q).cM(!0) -p=a.gO() +p=a.gL() o=q.a -if(o!=null)B.a.V(o.gO().a,q) +if(o!=null)B.a.W(o.gL().a,q) q.a=p.b -p.bV(0,q)}return a}, +p.bW(0,q)}return a}, saZ(a){this.b=t.oP.a(a)}} A.eT.prototype={ j(a){return"#document"}, -cf(a){return this.fP(a)}, -cM(a){return this.df(A.rj(),!0,t.dA)}} +cg(a){return this.fQ(a)}, +cM(a){return this.df(A.ro(),!0,t.dA)}} A.i9.prototype={ j(a){var s,r=this,q=r.x,p=q==null if(!p||r.y!=null){if(p)q="" s=r.y if(s==null)s="" return"'}else return""}, -cf(a){var s=this.j(0) +cg(a){var s=this.j(0) a.a+=s}, -cM(a){return A.rk(this.w,this.x,this.y)}} +cM(a){return A.rp(this.w,this.x,this.y)}} A.bY.prototype={ -j(a){var s=J.ax(this.w) +j(a){var s=J.ay(this.w) this.w=s return'"'+s+'"'}, -cf(a){return A.zA(a,this)}, -cM(a){var s=J.ax(this.w) +cg(a){return A.zF(a,this)}, +cM(a){var s=J.ay(this.w) this.w=s -return A.qf(s)}, -hL(a){var s=this.w;(!(s instanceof A.W)?this.w=new A.W(A.k(s)):s).a+=a}} -A.a6.prototype={ +return A.qk(s)}, +hM(a){var s=this.w;(!(s instanceof A.Y)?this.w=new A.Y(A.k(s)):s).a+=a}} +A.K.prototype={ gdR(){var s,r,q,p,o=this.a if(o==null)return null -s=o.gO() +s=o.gL() for(r=s.al(s,this)-1,o=s.a,q=o.length;r>=0;--r){if(!(r=0))return A.c(q,r) o=q[r] -if(o instanceof A.a6)return o}return null}, -j(a){var s=A.rA(this.w) +if(o instanceof A.K)return o}return null}, +j(a){var s=A.rF(this.w) return"<"+(s==null?"":s+" ")+A.k(this.x)+">"}, -cf(a){var s,r,q,p,o=this +cg(a){var s,r,q,p,o=this a.a+="<" -s=A.vD(o.w) +s=A.vI(o.w) r=o.x q=A.k(r) a.a=(a.a+=s)+q s=o.b -if(s.a!==0)s.X(0,new A.lO(a)) +if(s.a!==0)s.T(0,new A.lR(a)) a.a+=">" -s=o.gO() +s=o.gL() if(!s.gN(s)){if(r==="pre"||r==="textarea"||r==="listing"){s=s.a if(0>=s.length)return A.c(s,0) p=s[0] -if(p instanceof A.bY){s=J.ax(p.w) +if(p instanceof A.bY){s=J.ay(p.w) p.w=s -s=B.b.T(s,"\n")}else s=!1 -if(s)a.a+="\n"}o.fP(a)}if(!A.zd(r))a.a+=""}, -cM(a){var s=this,r=A.pW(s.x,s.w) -r.saZ(A.j1(s.b,t.K,t.N)) -return s.df(r,a,t.g)}, -geV(){var s=this.b.n(0,"id") +s=B.b.U(s,"\n")}else s=!1 +if(s)a.a+="\n"}o.fQ(a)}if(!A.zi(r))a.a+=""}, +cM(a){var s=this,r=A.q1(s.x,s.w) +r.saZ(A.j2(s.b,t.K,t.N)) +return s.df(r,a,t.Q)}, +geW(){var s=this.b.m(0,"id") return s==null?"":s}} -A.lO.prototype={ +A.lR.prototype={ $2(a,b){var s,r A.cg(a) A.q(b) @@ -12252,130 +12259,204 @@ s=this.a s.a+=" " r=A.k(a) s.a=(s.a+=r)+'="' -r=A.ur(b,!0) +r=A.uw(b,!0) s.a=(s.a+=r)+'"'}, $S:17} A.i6.prototype={ j(a){return""}, -cf(a){a.a+=""}, -cM(a){return A.rh(this.w)}} -A.jh.prototype={ +cg(a){a.a+=""}, +cM(a){return A.rm(this.w)}} +A.ji.prototype={ l(a,b){t.fh.a(b) -b.fb(0) +b.dW(0) b.a=this.b -this.bV(0,b)}, -a1(a,b){var s,r,q,p,o,n=this.ks(t.fY.a(b)) -for(s=A.x(n).h("V<1>"),r=new A.V(n,s),r=new A.L(r,r.gm(0),s.h("L")),q=this.b,s=s.h("G.E");r.p();){p=r.d +this.bW(0,b)}, +a1(a,b){var s,r,q,p,o,n=this.kt(t.fY.a(b)) +for(s=A.w(n).h("X<1>"),r=new A.X(n,s),r=new A.M(r,r.gn(0),s.h("M")),q=this.b,s=s.h("G.E");r.p();){p=r.d if(p==null)p=s.a(p) o=p.a -if(o!=null)B.a.V(o.gO().a,p) -p.a=q}this.jL(0,n)}, -bx(a,b,c){c.fb(0) +if(o!=null)B.a.W(o.gL().a,p) +p.a=q}this.jM(0,n)}, +bx(a,b,c){c.dW(0) c.a=this.b -this.fJ(0,b,c)}, -bb(a){var s,r,q -for(s=this.a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c;s.p();){q=s.d;(q==null?r.a(q):q).a=null}this.jI(this)}, +this.fK(0,b,c)}, +bc(a){var s,r,q +for(s=this.a,r=A.w(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c;s.p();){q=s.d;(q==null?r.a(q):q).a=null}this.jJ(this)}, k(a,b,c){var s t.fh.a(c) s=this.a if(!(b>=0&&b=0&&b=s)return +else if(b<0)throw A.f(A.W("Invalid list length",null)) +this.fc(0,b,s)}, +l(a,b){this.a.l(0,t.Q.a(b))}, +C(a,b){return!1}, +bV(a,b){t.dU.a(b) +throw A.f(A.ac("TODO(jacobr): should we impl?"))}, +fc(a,b,c){var s=t.w +s=A.a7(new A.O(this.a,s),s.h("h.E")) +s.$flags=1 +B.a.T(B.a.am(s,b,c),new A.md())}, +c8(a,b,c){var s,r +c.h("0(K)").a(b) +s=t.w +s=A.a7(new A.O(this.a,s),s.h("h.E")) +s.$flags=1 +s=s +r=A.w(s) +return new A.Q(s,r.u(c).h("1(2)").a(b),r.h("@<1>").u(c).h("Q<1,2>"))}, +ag(a,b){var s=t.w +s=A.a7(new A.O(this.a,s),s.h("h.E")) +s.$flags=1 +s=s +if(!(b>=0&&b=0&&b"))}, +$iz:1, +$im:1} +A.md.prototype={ +$1(a){return t.Q.a(a).dW(0)}, +$S:96} A.kF.prototype={} +A.kG.prototype={} A.kH.prototype={} -A.kI.prototype={} -A.mx.prototype={ +A.kJ.prototype={} +A.kK.prototype={} +A.kN.prototype={} +A.mB.prototype={ gaD(){var s=this.x return s===$?this.x=this.gbo():s}, gbo(){var s=this,r=s.Q -return r===$?s.Q=new A.iM(s,s.d):r}, -gfT(){var s=this,r=s.as +return r===$?s.Q=new A.iN(s,s.d):r}, +gfU(){var s=this,r=s.as return r===$?s.as=new A.hZ(s,s.d):r}, -gfS(){var s=this,r=s.at +gfT(){var s=this,r=s.at return r===$?s.at=new A.hY(s,s.d):r}, -gc_(){var s=this,r=s.ax -return r===$?s.ax=new A.iF(s,s.d):r}, +gc0(){var s=this,r=s.ax +return r===$?s.ax=new A.iG(s,s.d):r}, ga4(){var s=this,r=s.ch -return r===$?s.ch=new A.iz(s,s.d):r}, -ght(){var s=this,r=s.CW -return r===$?s.CW=new A.jS(s,s.d):r}, +return r===$?s.ch=new A.iA(s,s.d):r}, +ghu(){var s=this,r=s.CW +return r===$?s.CW=new A.jU(s,s.d):r}, gaA(){var s=this,r=s.cx -return r===$?s.cx=new A.iK(s,s.d):r}, -gem(){var s,r=this,q=r.cy +return r===$?s.cx=new A.iL(s,s.d):r}, +gen(){var s,r=this,q=r.cy if(q===$){s=A.i([],t.ks) -r.cy!==$&&A.dQ() +r.cy!==$&&A.dc() q=r.cy=new A.fg(s,r,r.d)}return q}, -gej(){var s=this,r=s.db -return r===$?s.db=new A.iA(s,s.d):r}, -gek(){var s=this,r=s.dx -return r===$?s.dx=new A.iC(s,s.d):r}, -gci(){var s=this,r=s.dy -return r===$?s.dy=new A.iJ(s,s.d):r}, +gek(){var s=this,r=s.db +return r===$?s.db=new A.iB(s,s.d):r}, +gel(){var s=this,r=s.dx +return r===$?s.dx=new A.iD(s,s.d):r}, +gcj(){var s=this,r=s.dy +return r===$?s.dy=new A.iK(s,s.d):r}, gdk(){var s=this,r=s.fr -return r===$?s.fr=new A.iG(s,s.d):r}, +return r===$?s.fr=new A.iH(s,s.d):r}, gdj(){var s=this,r=s.fx -return r===$?s.fx=new A.iB(s,s.d):r}, +return r===$?s.fx=new A.iC(s,s.d):r}, gbH(){var s=this,r=s.fy -return r===$?s.fy=new A.iI(s,s.d):r}, -gel(){var s=this,r=s.k2 -return r===$?s.k2=new A.iE(s,s.d):r}, -kD(){var s +return r===$?s.fy=new A.iJ(s,s.d):r}, +gem(){var s=this,r=s.k2 +return r===$?s.k2=new A.iF(s,s.d):r}, +kE(){var s this.aL() -for(;;)try{this.nm() -break}catch(s){if(A.bP(s) instanceof A.nx)this.aL() +for(;;)try{this.nn() +break}catch(s){if(A.bP(s) instanceof A.nB)this.aL() else throw s}}, aL(){var s=this s.c.aL() s.d.aL() s.f=!1 -B.a.bb(s.e) +B.a.bc(s.e) s.r="no quirks" s.x=s.gbo() s.z=!0}, -ib(a){var s,r=a.x -if(r==="annotation-xml"&&a.w==="http://www.w3.org/1998/Math/MathML"){r=a.b.n(0,"encoding") +ic(a){var s,r=a.x +if(r==="annotation-xml"&&a.w==="http://www.w3.org/1998/Math/MathML"){r=a.b.m(0,"encoding") s=r==null?null:A.c9(r) -return s==="text/html"||s==="application/xhtml+xml"}else return B.Ms.D(0,new A.l(a.w,r))}, -n8(a,b){var s,r=this.d,q=r.c +return s==="text/html"||s==="application/xhtml+xml"}else return B.Mu.C(0,new A.l(a.w,r))}, +n9(a,b){var s,r=this.d,q=r.c if(q.length===0)return!1 s=B.a.gA(q) q=s.w if(q==r.a)return!1 r=s.x -if(B.hP.D(0,new A.l(q,r))){if(b===2){q=t.ny.a(a).b +if(B.hP.C(0,new A.l(q,r))){if(b===2){q=t.ny.a(a).b q=q!=="mglyph"&&q!=="malignmark"}else q=!1 if(q)return!1 if(b===1||b===0)return!1}if(r==="annotation-xml"&&b===2&&t.ny.a(a).b==="svg")return!1 -if(this.ib(s))if(b===2||b===1||b===0)return!1 +if(this.ic(s))if(b===2||b===1||b===0)return!1 return!0}, -nm(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6,a7,a8=this +nn(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6,a7,a8=this for(s=a8.c,r=a8.d,q=t.W,p=t.cw,o=t.ia,n=t.ny,m=t.fp,l=t.g4,k=a8.e,j=t.n,i=t.jK,h=s.a,g=t.N,f=t.X;s.p();){e=s.at e.toString -for(d=e;d!=null;){c=d.gc6() +for(d=e;d!=null;){c=d.gc7() if(c===6){i.a(d) b=d.a a=d.c -if(a==null){a=d.c=J.ax(d.b) +if(a==null){a=d.c=J.ay(d.b) d.b=null}a0=j.a(d.e) if(b==null){a1=h.w if(a1==null)b=null else{a2=h.y -new A.bh(a1,a2).bg(a1,a2) -b=new A.av(a1,a2,a2) -b.aG(a1,a2,a2)}}B.a.l(k,new A.b9(a,b,a0)) +new A.bh(a1,a2).bh(a1,a2) +b=new A.aw(a1,a2,a2) +b.aG(a1,a2,a2)}}B.a.l(k,new A.bb(a,b,a0)) d=null}else{a3=a8.x if(a3===$){a3=a8.gbo() -a8.x=a3}if(a8.n8(e,c)){a3=a8.id -if(a3===$){a4=new A.iD(a8,r) +a8.x=a3}if(a8.n9(e,c)){a3=a8.id +if(a3===$){a4=new A.iE(a8,r) a8.id=a4 a3=a4}a5=a3}else a5=a3 switch(c){case 1:d=a5.a3(l.a(d)) @@ -12386,60 +12467,60 @@ case 2:d=a5.J(n.a(d)) break case 3:d=a5.P(o.a(d)) break -case 4:d=a5.c9(p.a(d)) +case 4:d=a5.cb(p.a(d)) break -case 5:d=a5.il(q.a(d)) +case 5:d=a5.im(q.a(d)) break}}}if(e instanceof A.d2)if(e.c&&!e.r){b=e.a e=j.a(A.v(["name",e.b],g,f)) if(b==null){a=h.w if(a==null)b=null else{a0=h.y -new A.bh(a,a0).bg(a,a0) -b=new A.av(a,a0,a0) -b.aG(a,a0,a0)}}B.a.l(k,new A.b9("non-void-element-with-trailing-solidus",b,e))}}a6=A.i([],t.gg) +new A.bh(a,a0).bh(a,a0) +b=new A.aw(a,a0,a0) +b.aG(a,a0,a0)}}B.a.l(k,new A.bb("non-void-element-with-trailing-solidus",b,e))}}a6=A.i([],t.gg) for(a7=!0;a7;){a3=a8.x B.a.l(a6,a3===$?a8.x=a8.gbo():a3) a3=a8.x a7=(a3===$?a8.x=a8.gbo():a3).ac()}}, -ghc(){var s=this.c.a,r=s.w +ghd(){var s=this.c.a,r=s.w if(r==null)s=null else{s=A.cU(r,s.y) r=s.b -r=A.qt(s.a,r,r) +r=A.qy(s.a,r,r) s=r}return s}, G(a,b,c){var s t.n.a(c) -s=new A.b9(b,a==null?this.ghc():a,c) +s=new A.bb(b,a==null?this.ghd():a,c) B.a.l(this.e,s)}, a2(a,b){return this.G(a,b,B.bi)}, -hG(a){var s=a.e.V(0,"definitionurl") +hH(a){var s=a.e.W(0,"definitionurl") if(s!=null)a.e.k(0,"definitionURL",s)}, -hH(a){var s,r,q,p,o=a.e,n=A.w(o).h("aU<1>") -o=A.aV(new A.aU(o,n),n.h("h.E")) +hI(a){var s,r,q,p,o=a.e,n=A.x(o).h("aV<1>") +o=A.a7(new A.aV(o,n),n.h("h.E")) o.$flags=1 o=o n=o.length s=0 -for(;s") -o=A.aV(new A.aU(o,n),n.h("h.E")) +ex(a){var s,r,q,p,o=a.e,n=A.x(o).h("aV<1>") +o=A.a7(new A.aV(o,n),n.h("h.E")) o.$flags=1 o=o n=o.length s=0 -for(;s"),p=new A.V(r,q),p=new A.L(p,p.gm(0),q.h("L")),q=q.h("G.E"),s=s.a;p.p();){o=p.d +ix(){var s,r,q,p,o,n,m,l=this +for(s=l.d,r=s.c,q=A.w(r).h("X<1>"),p=new A.X(r,q),p=new A.M(p,p.gn(0),q.h("M")),q=q.h("G.E"),s=s.a;p.p();){o=p.d if(o==null)o=q.a(o) n=o.x if(0>=r.length)return A.c(r,0) @@ -12454,15 +12535,15 @@ case"th":l.x=l.gdj() return case"tr":l.x=l.gdk() return -case"tbody":l.x=l.gci() +case"tbody":l.x=l.gcj() return -case"thead":l.x=l.gci() +case"thead":l.x=l.gcj() return -case"tfoot":l.x=l.gci() +case"tfoot":l.x=l.gcj() return -case"caption":l.x=l.gej() +case"caption":l.x=l.gek() return -case"colgroup":l.x=l.gek() +case"colgroup":l.x=l.gel() return case"table":l.x=l.gaA() return @@ -12470,83 +12551,83 @@ case"head":l.x=l.ga4() return case"body":l.x=l.ga4() return -case"frameset":l.x=l.gel() +case"frameset":l.x=l.gem() return -case"html":l.x=l.gfS() +case"html":l.x=l.gfT() return}}l.x=l.ga4()}, cY(a,b){var s,r,q=this -q.d.M(a) +q.d.O(a) s=t.c r=q.c if(b==="RAWTEXT")r.x=s.a(r.gdT()) else r.x=s.a(r.gcu()) q.y=q.gaD() -q.x=q.ght()}} -A.a9.prototype={ -ac(){throw A.f(A.jY(null))}, -c9(a){var s=this.b -s.cq(a,B.a.gA(s.c)) +q.x=q.ghu()}} +A.aa.prototype={ +ac(){throw A.f(A.k_(null))}, +cb(a){var s=this.b +s.cr(a,B.a.gA(s.c)) return null}, -il(a){this.a.a2(a.a,"unexpected-doctype") +im(a){this.a.a2(a.a,"unexpected-doctype") return null}, a3(a){this.b.bN(a.gaC(),a.a) return null}, aJ(a){this.b.bN(a.gaC(),a.a) return null}, -J(a){throw A.f(A.jY(null))}, -bf(a){var s,r=this.a +J(a){throw A.f(A.k_(null))}, +bg(a){var s,r=this.a if(!r.f&&a.b==="html")r.a2(a.a,"non-html-root") s=this.b.c if(0>=s.length)return A.c(s,0) s[0].e=a.a -a.e.X(0,new A.nm(this)) +a.e.T(0,new A.nq(this)) r.f=!1 return null}, -P(a){throw A.f(A.jY(null))}, +P(a){throw A.f(A.k_(null))}, ct(a){var s,r=a.b,q=this.b.c if(0>=q.length)return A.c(q,-1) s=q.pop() while(s.x!=r){if(0>=q.length)return A.c(q,-1) s=q.pop()}}} -A.nm.prototype={ +A.nq.prototype={ $2(a,b){var s A.cg(a) A.q(b) s=this.a.b.c if(0>=s.length)return A.c(s,0) -s[0].b.f6(a,new A.nl(b))}, +s[0].b.f7(a,new A.np(b))}, $S:17} -A.nl.prototype={ +A.np.prototype={ $0(){return this.a}, $S:8} -A.iM.prototype={ +A.iN.prototype={ aJ(a){return null}, -c9(a){var s=this.b,r=s.b +cb(a){var s=this.b,r=s.b r===$&&A.o() -s.cq(a,r) +s.cr(a,r) return null}, -il(a){var s,r,q=this,p=a.d,o=a.b,n=o==null?null:A.c9(o),m=a.c,l=a.e +im(a){var s,r,q=this,p=a.d,o=a.b,n=o==null?null:A.c9(o),m=a.c,l=a.e o=!0 if(p==="html")if(n==null)o=m!=null&&m!=="about:legacy-compat" if(o)q.a.a2(a.a,"unknown-doctype") if(n==null)n="" -s=A.rk(a.d,a.b,a.c) +s=A.rp(a.d,a.b,a.c) s.e=a.a o=q.b.b o===$&&A.o() -o.gO().l(0,s) +o.gL().l(0,s) o=!0 -if(l)if(a.d==="html"){r=B.b.gfE(n) -if(!B.a.aH(B.iW,r))if(!B.a.D(B.jl,n))if(!(B.a.aH(B.cW,r)&&m==null))o=m!=null&&m.toLowerCase()==="http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd"}if(o)q.a.r="quirks" -else{o=B.b.gfE(n) +if(l)if(a.d==="html"){r=B.b.gfF(n) +if(!B.a.aH(B.iW,r))if(!B.a.C(B.jl,n))if(!(B.a.aH(B.cW,r)&&m==null))o=m!=null&&m.toLowerCase()==="http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd"}if(o)q.a.r="quirks" +else{o=B.b.gfF(n) if(!B.a.aH(B.jf,o))o=B.a.aH(B.cW,o)&&m!=null else o=!0 if(o)q.a.r="limited quirks"}o=q.a -o.x=o.gfT() +o.x=o.gfU() return null}, br(){var s=this.a s.r="quirks" -s.x=s.gfT()}, +s.x=s.gfU()}, a3(a){this.a.a2(a.a,"expected-doctype-but-got-chars") this.br() return a}, @@ -12557,22 +12638,22 @@ P(a){this.a.G(a.a,"expected-doctype-but-got-end-tag",A.v(["name",a.b],t.N,t.X)) this.br() return a}, ac(){var s=this.a -s.a2(s.ghc(),"expected-doctype-but-got-eof") +s.a2(s.ghd(),"expected-doctype-but-got-eof") this.br() return!0}} A.hZ.prototype={ -dN(){var s=this.b,r=s.i0(A.aZ("html",A.ac(t.K,t.N),null,!1)) +dN(){var s=this.b,r=s.i1(A.aZ("html",A.ae(t.K,t.N),null,!1)) B.a.l(s.c,r) s=s.b s===$&&A.o() -s.gO().l(0,r) +s.gL().l(0,r) s=this.a -s.x=s.gfS()}, +s.x=s.gfT()}, ac(){this.dN() return!0}, -c9(a){var s=this.b,r=s.b +cb(a){var s=this.b,r=s.b r===$&&A.o() -s.cq(a,r) +s.cr(a,r) return null}, aJ(a){return null}, a3(a){this.dN() @@ -12589,56 +12670,56 @@ A.hY.prototype={ J(a){switch(a.b){case"html":return this.a.ga4().J(a) case"head":this.cF(a) return null -default:this.cF(A.aZ("head",A.ac(t.K,t.N),null,!1)) +default:this.cF(A.aZ("head",A.ae(t.K,t.N),null,!1)) return a}}, P(a){var s=a.b -switch(s){case"head":case"body":case"html":case"br":this.cF(A.aZ("head",A.ac(t.K,t.N),null,!1)) +switch(s){case"head":case"body":case"html":case"br":this.cF(A.aZ("head",A.ae(t.K,t.N),null,!1)) return a default:this.a.G(a.a,"end-tag-after-implied-root",A.v(["name",s],t.N,t.X)) return null}}, -ac(){this.cF(A.aZ("head",A.ac(t.K,t.N),null,!1)) +ac(){this.cF(A.aZ("head",A.ae(t.K,t.N),null,!1)) return!0}, aJ(a){return null}, -a3(a){this.cF(A.aZ("head",A.ac(t.K,t.N),null,!1)) +a3(a){this.cF(A.aZ("head",A.ae(t.K,t.N),null,!1)) return a}, cF(a){var s=this.b -s.M(a) +s.O(a) s.e=B.a.gA(s.c) s=this.a -s.x=s.gc_()}} -A.iF.prototype={ +s.x=s.gc0()}} +A.iG.prototype={ J(a){var s,r,q,p,o,n=this,m=null switch(a.b){case"html":return n.a.ga4().J(a) case"title":n.a.cY(a,"RCDATA") return m case"noscript":case"noframes":case"style":n.a.cY(a,"RAWTEXT") return m -case"script":n.b.M(a) +case"script":n.b.O(a) s=n.a r=s.c r.x=t.c.a(r.gbC()) s.y=s.gaD() -s.x=s.ght() +s.x=s.ghu() return m case"base":case"basefont":case"bgsound":case"command":case"link":s=n.b -s.M(a) +s.O(a) s=s.c if(0>=s.length)return A.c(s,-1) s.pop() a.r=!0 return m case"meta":s=n.b -s.M(a) +s.O(a) s=s.c if(0>=s.length)return A.c(s,-1) s.pop() a.r=!0 q=a.e s=n.a.c.a -if(!s.b){p=q.n(0,"charset") -o=q.n(0,"content") -if(p!=null)s.hR(p) -else if(o!=null)s.hR(new A.lK(new A.lP(o)).nD())}return m +if(!s.b){p=q.m(0,"charset") +o=q.m(0,"content") +if(p!=null)s.hS(p) +else if(o!=null)s.hS(new A.lN(new A.lS(o)).nE())}return m case"head":n.a.a2(a.a,"two-heads-are-not-better-than-one") return m default:n.cO(new A.H("head",!1)) @@ -12664,14 +12745,14 @@ J(a){var s=this,r=null,q=a.b switch(q){case"html":return s.a.ga4().J(a) case"body":q=s.a q.z=!1 -s.b.M(a) +s.b.O(a) q.x=q.ga4() return r -case"frameset":s.b.M(a) +case"frameset":s.b.O(a) q=s.a -q.x=q.gel() +q.x=q.gem() return r -case"base":case"basefont":case"bgsound":case"link":case"meta":case"noframes":case"script":case"style":case"title":s.ju(a) +case"base":case"basefont":case"bgsound":case"link":case"meta":case"noframes":case"script":case"style":case"title":s.jv(a) return r case"head":s.a.G(a.a,"unexpected-start-tag",A.v(["name",q],t.N,t.X)) return r @@ -12686,77 +12767,77 @@ ac(){this.br() return!0}, a3(a){this.br() return a}, -ju(a){var s,r,q,p=this.a +jv(a){var s,r,q,p=this.a p.G(a.a,"unexpected-start-tag-out-of-my-head",A.v(["name",a.b],t.N,t.X)) s=this.b r=s.c -B.a.l(r,t.g.a(s.e)) -p.gc_().J(a) -for(p=A.x(r).h("V<1>"),s=new A.V(r,p),s=new A.L(s,s.gm(0),p.h("L")),p=p.h("G.E");s.p();){q=s.d +B.a.l(r,t.Q.a(s.e)) +p.gc0().J(a) +for(p=A.w(r).h("X<1>"),s=new A.X(r,p),s=new A.M(s,s.gn(0),p.h("M")),p=p.h("G.E");s.p();){q=s.d if(q==null)q=p.a(q) -if(q.x==="head"){B.a.V(r,q) +if(q.x==="head"){B.a.W(r,q) break}}}, -br(){this.b.M(A.aZ("body",A.ac(t.K,t.N),null,!1)) +br(){this.b.O(A.aZ("body",A.ae(t.K,t.N),null,!1)) var s=this.a s.x=s.ga4() s.z=!0}} -A.iz.prototype={ +A.iA.prototype={ J(a){var s,r,q,p,o,n=this,m=null,l="p",k="button",j="unexpected-start-tag",i="unexpected-start-tag-implies-end-tag",h="RAWTEXT",g=a.b -switch(g){case"html":return n.bf(a) -case"base":case"basefont":case"bgsound":case"command":case"link":case"meta":case"noframes":case"script":case"style":case"title":return n.a.gc_().J(a) -case"body":n.jr(a) +switch(g){case"html":return n.bg(a) +case"base":case"basefont":case"bgsound":case"command":case"link":case"meta":case"noframes":case"script":case"style":case"title":return n.a.gc0().J(a) +case"body":n.js(a) return m -case"frameset":n.jt(a) +case"frameset":n.ju(a) return m -case"address":case"article":case"aside":case"blockquote":case"center":case"details":case"dir":case"div":case"dl":case"fieldset":case"figcaption":case"figure":case"footer":case"header":case"hgroup":case"menu":case"nav":case"ol":case"p":case"section":case"summary":case"ul":n.fw(a) +case"address":case"article":case"aside":case"blockquote":case"center":case"details":case"dir":case"div":case"dl":case"fieldset":case"figcaption":case"figure":case"footer":case"header":case"hgroup":case"menu":case"nav":case"ol":case"p":case"section":case"summary":case"ul":n.fz(a) return m case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":g=n.b if(g.a0(l,k))n.bt(new A.H(l,!1)) s=g.c -if(B.hS.D(0,B.a.gA(s).x)){n.a.G(a.a,j,A.v(["name",a.b],t.N,t.X)) +if(B.hS.C(0,B.a.gA(s).x)){n.a.G(a.a,j,A.v(["name",a.b],t.N,t.X)) if(0>=s.length)return A.c(s,-1) -s.pop()}g.M(a) +s.pop()}g.O(a) return m case"pre":case"listing":g=n.b if(g.a0(l,k))n.bt(new A.H(l,!1)) -g.M(a) +g.O(a) n.a.z=!1 n.c=!0 return m case"form":g=n.b if(g.f!=null)n.a.G(a.a,j,A.v(["name","form"],t.N,t.X)) else{if(g.a0(l,k))n.bt(new A.H(l,!1)) -g.M(a) +g.O(a) g.f=B.a.gA(g.c)}return m -case"li":case"dd":case"dt":n.jx(a) +case"li":case"dd":case"dt":n.jy(a) return m case"plaintext":g=n.b if(g.a0(l,k))n.bt(new A.H(l,!1)) -g.M(a) +g.O(a) g=n.a.c -g.x=t.c.a(g.gnG()) +g.x=t.c.a(g.gnH()) return m case"a":g=n.b -r=g.i4("a") +r=g.i5("a") if(r!=null){n.a.G(a.a,i,A.v(["startName","a","endName","a"],t.N,t.X)) -n.i7(new A.H("a",!1)) -B.a.V(g.c,r) -B.a.V(g.d.a,r)}g.aE() -n.ev(a) +n.i8(new A.H("a",!1)) +B.a.W(g.c,r) +B.a.W(g.d.a,r)}g.aE() +n.ew(a) return m case"b":case"big":case"code":case"em":case"font":case"i":case"s":case"small":case"strike":case"strong":case"tt":case"u":n.b.aE() -n.ev(a) +n.ew(a) return m case"nobr":g=n.b g.aE() if(g.b6("nobr")){n.a.G(a.a,i,A.v(["startName","nobr","endName","nobr"],t.N,t.X)) n.P(new A.H("nobr",!1)) -g.aE()}n.ev(a) +g.aE()}n.ew(a) return m -case"button":return n.js(a) +case"button":return n.jt(a) case"applet":case"marquee":case"object":g=n.b g.aE() -g.M(a) +g.O(a) g.d.l(0,m) n.a.z=!1 return m @@ -12769,14 +12850,14 @@ g.cY(a,h) return m case"table":g=n.a if(g.r!=="quirks")if(n.b.a0(l,k))n.P(new A.H(l,!1)) -n.b.M(a) +n.b.O(a) g.z=!1 g.x=g.gaA() return m -case"area":case"br":case"embed":case"img":case"keygen":case"wbr":n.fD(a) +case"area":case"br":case"embed":case"img":case"keygen":case"wbr":n.fE(a) return m case"param":case"source":case"track":g=n.b -g.M(a) +g.O(a) g=g.c if(0>=g.length)return A.c(g,-1) g.pop() @@ -12784,13 +12865,13 @@ a.r=!0 return m case"input":g=n.a q=g.z -n.fD(a) -s=a.e.n(0,"type") +n.fE(a) +s=a.e.m(0,"type") if((s==null?m:A.c9(s))==="hidden")g.z=q return m case"hr":g=n.b if(g.a0(l,k))n.bt(new A.H(l,!1)) -g.M(a) +g.O(a) g=g.c if(0>=g.length)return A.c(g,-1) g.pop() @@ -12800,9 +12881,9 @@ return m case"image":n.a.G(a.a,"unexpected-start-tag-treated-as",A.v(["originalName","image","newName","img"],t.N,t.X)) n.J(A.aZ("img",a.e,m,a.c)) return m -case"isindex":n.jw(a) +case"isindex":n.jx(a) return m -case"textarea":n.b.M(a) +case"textarea":n.b.O(a) g=n.a s=g.c s.x=t.c.a(s.gcu()) @@ -12817,29 +12898,29 @@ case"noembed":case"noscript":n.a.cY(a,h) return m case"select":g=n.b g.aE() -g.M(a) +g.O(a) g=n.a g.z=!1 -if(g.gaA()===g.gaD()||g.gej()===g.gaD()||g.gek()===g.gaD()||g.gci()===g.gaD()||g.gdk()===g.gaD()||g.gdj()===g.gaD()){p=g.go -g.x=p===$?g.go=new A.iH(g,g.d):p}else g.x=g.gbH() +if(g.gaA()===g.gaD()||g.gek()===g.gaD()||g.gel()===g.gaD()||g.gcj()===g.gaD()||g.gdk()===g.gaD()||g.gdj()===g.gaD()){p=g.go +g.x=p===$?g.go=new A.iI(g,g.d):p}else g.x=g.gbH() return m case"rp":case"rt":g=n.b -if(g.b6("ruby")){g.ca() +if(g.b6("ruby")){g.cc() o=B.a.gA(g.c) -if(o.x!=="ruby")n.a.a2(o.e,"undefined-error")}g.M(a) +if(o.x!=="ruby")n.a.a2(o.e,"undefined-error")}g.O(a) return m case"option":case"optgroup":g=n.b if(B.a.gA(g.c).x==="option")n.a.gaD().P(new A.H("option",!1)) g.aE() -n.a.d.M(a) +n.a.d.O(a) return m case"math":g=n.b g.aE() s=n.a -s.hG(a) -s.ew(a) +s.hH(a) +s.ex(a) a.w="http://www.w3.org/1998/Math/MathML" -g.M(a) +g.O(a) if(a.c){g=g.c if(0>=g.length)return A.c(g,-1) g.pop() @@ -12847,10 +12928,10 @@ a.r=!0}return m case"svg":g=n.b g.aE() s=n.a -s.hH(a) -s.ew(a) +s.hI(a) +s.ex(a) a.w="http://www.w3.org/2000/svg" -g.M(a) +g.O(a) if(a.c){g=g.c if(0>=g.length)return A.c(g,-1) g.pop() @@ -12859,16 +12940,16 @@ case"caption":case"col":case"colgroup":case"frame":case"head":case"tbody":case"t return m default:g=n.b g.aE() -g.M(a) +g.O(a) return m}}, P(a){var s,r,q,p,o,n=this,m=null,l="end-tag-too-early",k="unexpected-end-tag",j=a.b -switch(j){case"body":n.i6(a) +switch(j){case"body":n.i7(a) return m -case"html":return n.eO(a) +case"html":return n.eP(a) case"address":case"article":case"aside":case"blockquote":case"button":case"center":case"details":case"dir":case"div":case"dl":case"fieldset":case"figcaption":case"figure":case"footer":case"header":case"hgroup":case"listing":case"menu":case"nav":case"ol":case"pre":case"section":case"summary":case"ul":if(j==="pre")n.c=!1 s=n.b r=s.b6(j) -if(r)s.ca() +if(r)s.cc() j=B.a.gA(s.c) s=a.b if(j.x!=s)n.a.G(a.a,l,A.v(["name",s],t.N,t.X)) @@ -12878,10 +12959,10 @@ case"form":j=n.b q=j.f j.f=null if(q==null||!j.b6(q))n.a.G(a.a,k,A.v(["name","form"],t.N,t.X)) -else{j.ca() +else{j.cc() j=j.c if(B.a.gA(j)!==q)n.a.G(a.a,"end-tag-too-early-ignored",A.v(["name","form"],t.N,t.X)) -B.a.V(j,q)}return m +B.a.W(j,q)}return m case"p":n.bt(a) return m case"dd":case"dt":case"li":p=j==="li"?"list":m @@ -12894,46 +12975,46 @@ j=B.a.gA(s.c) s=a.b if(j.x!=s)n.a.G(a.a,l,A.v(["name",s],t.N,t.X)) n.ct(a)}return m -case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":n.mV(a) +case"h1":case"h2":case"h3":case"h4":case"h5":case"h6":n.mW(a) return m -case"a":case"b":case"big":case"code":case"em":case"font":case"i":case"nobr":case"s":case"small":case"strike":case"strong":case"tt":case"u":n.i7(a) +case"a":case"b":case"big":case"code":case"em":case"font":case"i":case"nobr":case"s":case"small":case"strike":case"strong":case"tt":case"u":n.i8(a) return m case"applet":case"marquee":case"object":s=n.b -if(s.b6(j))s.ca() +if(s.b6(j))s.cc() j=B.a.gA(s.c) o=a.b if(j.x!=o)n.a.G(a.a,l,A.v(["name",o],t.N,t.X)) if(s.b6(a.b)){n.ct(a) -s.eB()}return m +s.eC()}return m case"br":j=t.N n.a.G(a.a,"unexpected-end-tag-treated-as",A.v(["originalName","br","newName","br element"],j,t.X)) s=n.b s.aE() -s.M(A.aZ("br",A.ac(t.K,j),m,!1)) +s.O(A.aZ("br",A.ae(t.K,j),m,!1)) s=s.c if(0>=s.length)return A.c(s,-1) s.pop() return m -default:n.mX(a) +default:n.mY(a) return m}}, -ng(a,b){var s,r +nh(a,b){var s,r if(a.x!=b.x||a.w!=b.w)return!1 else{s=a.b if(s.a!==b.b.a)return!1 -else for(s=new A.cv(s,s.r,s.e,A.w(s).h("cv<1>"));s.p();){r=s.d -if(a.b.n(0,r)!=b.b.n(0,r))return!1}}return!0}, -ev(a){var s,r,q,p,o,n,m=this.b -m.M(a) +else for(s=new A.cv(s,s.r,s.e,A.x(s).h("cv<1>"));s.p();){r=s.d +if(a.b.m(0,r)!=b.b.m(0,r))return!1}}return!0}, +ew(a){var s,r,q,p,o,n,m=this.b +m.O(a) s=B.a.gA(m.c) r=A.i([],t.hg) -for(m=m.d,q=A.w(m).h("V"),p=new A.V(m,q),p=new A.L(p,p.gm(0),q.h("L")),o=t.g,q=q.h("G.E");p.p();){n=p.d +for(m=m.d,q=A.x(m).h("X"),p=new A.X(m,q),p=new A.M(p,p.gn(0),q.h("M")),o=t.Q,q=q.h("G.E");p.p();){n=p.d if(n==null)n=q.a(n) if(n==null)break else{o.a(n) -if(this.ng(n,s))B.a.l(r,n)}}if(r.length===3)B.a.V(m.a,B.a.gA(r)) +if(this.nh(n,s))B.a.l(r,n)}}if(r.length===3)B.a.W(m.a,B.a.gA(r)) m.l(0,s)}, ac(){var s,r,q,p -A:for(s=this.b.c,r=A.x(s).h("V<1>"),s=new A.V(s,r),s=new A.L(s,s.gm(0),r.h("L")),r=r.h("G.E");s.p();){q=s.d +A:for(s=this.b.c,r=A.w(s).h("X<1>"),s=new A.X(s,r),s=new A.M(s,s.gn(0),r.h("M")),r=r.h("G.E");s.p();){q=s.d if(q==null)q=r.a(q) switch(q.x){case"dd":case"dt":case"li":case"p":case"tbody":case"td":case"tfoot":case"th":case"thead":case"tr":case"body":case"html":continue A}s=this.a p=q.e @@ -12942,9 +13023,9 @@ if(p==null){r=s.c.a q=r.w if(q==null)p=null else{r=r.y -new A.bh(q,r).bg(q,r) -p=new A.av(q,r,r) -p.aG(q,r,r)}}B.a.l(s.e,new A.b9("expected-closing-tag-but-got-eof",p,B.bi)) +new A.bh(q,r).bh(q,r) +p=new A.aw(q,r,r) +p.aG(q,r,r)}}B.a.l(s.e,new A.bb("expected-closing-tag-but-got-eof",p,B.bi)) break A}return!1}, a3(a){var s if(a.gaC()==="\x00")return null @@ -12952,27 +13033,27 @@ s=this.b s.aE() s.bN(a.gaC(),a.a) s=this.a -if(s.z&&!A.qL(a.gaC()))s.z=!1 +if(s.z&&!A.qQ(a.gaC()))s.z=!1 return null}, aJ(a){var s,r,q,p=this if(p.c){s=a.gaC() r=p.c=!1 -if(B.b.T(s,"\n")){q=B.a.gA(p.b.c) -if(B.a.D(B.jh,q.x)){r=q.gO() +if(B.b.U(s,"\n")){q=B.a.gA(p.b.c) +if(B.a.C(B.jh,q.x)){r=q.gL() r=r.gN(r)}if(r)s=B.b.ab(s,1)}if(s.length!==0){r=p.b r.aE() r.bN(s,a.a)}}else{r=p.b r.aE() r.bN(a.gaC(),a.a)}return null}, -jr(a){var s,r,q=this.a +js(a){var s,r,q=this.a q.G(a.a,"unexpected-start-tag",A.v(["name","body"],t.N,t.X)) s=this.b.c r=s.length if(r!==1){if(1>=r)return A.c(s,1) s=s[1].x!=="body"}else s=!0 if(!s){q.z=!1 -a.e.X(0,new A.mB(this))}}, -jt(a){var s,r,q,p,o=this.a +a.e.T(0,new A.mF(this))}}, +ju(a){var s,r,q,p,o=this.a o.G(a.a,"unexpected-start-tag",A.v(["name","frameset"],t.N,t.X)) s=this.b r=s.c @@ -12982,76 +13063,76 @@ p=r[1].x!=="body"}else p=!0 if(!p)if(o.z){if(1>=q)return A.c(r,1) q=r[1] p=q.a -if(p!=null){p=p.gO() +if(p!=null){p=p.gL() if(1>=r.length)return A.c(r,1) -B.a.V(p.a,q)}while(B.a.gA(r).x!=="html"){if(0>=r.length)return A.c(r,-1) -r.pop()}s.M(a) -o.x=o.gel()}}, -fw(a){var s=this.b +B.a.W(p.a,q)}while(B.a.gA(r).x!=="html"){if(0>=r.length)return A.c(r,-1) +r.pop()}s.O(a) +o.x=o.gem()}}, +fz(a){var s=this.b if(s.a0("p","button"))this.bt(new A.H("p",!1)) -s.M(a)}, -jx(a){var s,r,q,p,o,n,m,l,k=this.a +s.O(a)}, +jy(a){var s,r,q,p,o,n,m,l,k=this.a k.z=!1 s=a.b s.toString -s=B.qF.n(0,s) +s=B.qF.m(0,s) s.toString -for(r=this.b,q=r.c,p=A.x(q).h("V<1>"),q=new A.V(q,p),q=new A.L(q,q.gm(0),p.h("L")),p=p.h("G.E");q.p();){o=q.d +for(r=this.b,q=r.c,p=A.w(q).h("X<1>"),q=new A.X(q,p),q=new A.M(q,q.gn(0),p.h("M")),p=p.h("G.E");q.p();){o=q.d if(o==null)o=p.a(o) n=o.x -if(B.a.D(s,n)){m=k.x +if(B.a.C(s,n)){m=k.x if(m===$)m=k.x=k.gbo() m.P(new A.H(n,!1)) break}l=o.w -if(B.cC.D(0,new A.l(l==null?"http://www.w3.org/1999/xhtml":l,n))&&!B.a.D(B.j3,n))break}if(r.a0("p","button"))k.gaD().P(new A.H("p",!1)) -r.M(a)}, -js(a){var s=this.b,r=this.a +if(B.cC.C(0,new A.l(l==null?"http://www.w3.org/1999/xhtml":l,n))&&!B.a.C(B.j3,n))break}if(r.a0("p","button"))k.gaD().P(new A.H("p",!1)) +r.O(a)}, +jt(a){var s=this.b,r=this.a if(s.b6("button")){r.G(a.a,"unexpected-start-tag-implies-end-tag",A.v(["startName","button","endName","button"],t.N,t.X)) this.P(new A.H("button",!1)) return a}else{s.aE() -s.M(a) +s.O(a) r.z=!1}return null}, -fD(a){var s=this.b +fE(a){var s=this.b s.aE() -s.M(a) +s.O(a) s=s.c if(0>=s.length)return A.c(s,-1) s.pop() a.r=!0 this.a.z=!1}, -jw(a){var s,r,q,p,o,n=this,m=null,l="action",k=t.N +jx(a){var s,r,q,p,o,n=this,m=null,l="action",k=t.N n.a.G(a.a,"deprecated-tag",A.v(["name","isindex"],k,t.X)) if(n.b.f!=null)return s=t.K -r=A.ac(s,k) -q=a.e.n(0,l) +r=A.ae(s,k) +q=a.e.m(0,l) if(q!=null)r.k(0,l,q) n.J(A.aZ("form",r,m,!1)) -n.J(A.aZ("hr",A.ac(s,k),m,!1)) -n.J(A.aZ("label",A.ac(s,k),m,!1)) -p=a.e.n(0,"prompt") +n.J(A.aZ("hr",A.ae(s,k),m,!1)) +n.J(A.aZ("label",A.ae(s,k),m,!1)) +p=a.e.m(0,"prompt") if(p==null)p="This is a searchable index. Enter search keywords: " -n.a3(new A.B(m,p)) -o=A.j1(a.e,s,k) -o.V(0,l) -o.V(0,"prompt") +n.a3(new A.D(m,p)) +o=A.j2(a.e,s,k) +o.W(0,l) +o.W(0,"prompt") o.k(0,"name","isindex") n.J(A.aZ("input",o,m,a.c)) n.P(new A.H("label",!1)) -n.J(A.aZ("hr",A.ac(s,k),m,!1)) +n.J(A.aZ("hr",A.ae(s,k),m,!1)) n.P(new A.H("form",!1))}, bt(a){var s=this,r="unexpected-end-tag",q=s.b if(!q.a0("p","button")){q=t.N -s.fw(A.aZ("p",A.ac(t.K,q),null,!1)) +s.fz(A.aZ("p",A.ae(t.K,q),null,!1)) s.a.G(a.a,r,A.v(["name","p"],q,t.X)) s.bt(new A.H("p",!1))}else{q.bS("p") if(B.a.gA(q.c).x!=="p")s.a.G(a.a,r,A.v(["name","p"],t.N,t.X)) s.ct(a)}}, -i6(a){var s,r,q,p,o,n,m=this,l=m.b +i7(a){var s,r,q,p,o,n,m=this,l=m.b if(!l.b6("body")){m.a.a2(a.a,"undefined-error") return}else{l=l.c if(B.a.gA(l).x==="body")B.a.gA(l) -else A:for(l=A.qX(l,2,null,t.g),s=l.length,r=0;r=q.length)return A.c(q,-1) +if(p!=null&&B.a.C(B.bH,p)){if(0>=q.length)return A.c(q,-1) q.pop() s.bS(null)}break}q=s.c o=B.a.gA(q) @@ -13078,50 +13159,50 @@ n=a.b if(o.x!=n)this.a.G(a.a,"end-tag-too-early",A.v(["name",n],t.N,t.X)) for(r=0;r<6;++r)if(s.b6(B.cY[r])){if(0>=q.length)return A.c(q,-1) m=q.pop() -while(!B.hS.D(0,m.x)){if(0>=q.length)return A.c(q,-1) +while(!B.hS.C(0,m.x)){if(0>=q.length)return A.c(q,-1) m=q.pop()}break}}, -i7(b4){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3=null -for(s=this.b,r=s.d,q=r.a,p=A.w(r).h("b7.E"),o=s.c,n=t.K,m=t.N,l=t.g,k=this.a,j=t.X,i=t.n,h=k.c.a,g=0;g<8;){++g -f=s.i4(b4.b) -if(f!=null)e=B.a.D(o,f)&&!s.b6(f.x) +i8(b4){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3=null +for(s=this.b,r=s.d,q=r.a,p=A.x(r).h("b9.E"),o=s.c,n=t.K,m=t.N,l=t.Q,k=this.a,j=t.X,i=t.n,h=k.c.a,g=0;g<8;){++g +f=s.i5(b4.b) +if(f!=null)e=B.a.C(o,f)&&!s.b6(f.x) else e=!0 if(e){d=b4.a s=i.a(A.v(["name",b4.b],m,j)) if(d==null){r=h.w if(r==null)d=b3 else{q=h.y -new A.bh(r,q).bg(r,q) -d=new A.av(r,q,q) -d.aG(r,q,q)}}B.a.l(k.e,new A.b9("adoption-agency-1.1",d,s)) -return}else if(!B.a.D(o,f)){d=b4.a +new A.bh(r,q).bh(r,q) +d=new A.aw(r,q,q) +d.aG(r,q,q)}}B.a.l(k.e,new A.bb("adoption-agency-1.1",d,s)) +return}else if(!B.a.C(o,f)){d=b4.a s=i.a(A.v(["name",b4.b],m,j)) if(d==null){r=h.w if(r==null)d=b3 else{p=h.y -new A.bh(r,p).bg(r,p) -d=new A.av(r,p,p) -d.aG(r,p,p)}}B.a.l(k.e,new A.b9("adoption-agency-1.2",d,s)) -B.a.V(q,f) +new A.bh(r,p).bh(r,p) +d=new A.aw(r,p,p) +d.aG(r,p,p)}}B.a.l(k.e,new A.bb("adoption-agency-1.2",d,s)) +B.a.W(q,f) return}if(f!==B.a.gA(o)){d=b4.a e=i.a(A.v(["name",b4.b],m,j)) if(d==null){c=h.w if(c==null)d=b3 else{b=h.y -new A.bh(c,b).bg(c,b) -d=new A.av(c,b,b) -d.aG(c,b,b)}}B.a.l(k.e,new A.b9("adoption-agency-1.3",d,e))}a=B.a.al(o,f) -e=A.qX(o,a,b3,l) +new A.bh(c,b).bh(c,b) +d=new A.aw(c,b,b) +d.aG(c,b,b)}}B.a.l(k.e,new A.bb("adoption-agency-1.3",d,e))}a=B.a.al(o,f) +e=A.r1(o,a,b3,l) c=e.length a1=0 for(;;){if(!(a1=o.length)return A.c(o,-1) +if(B.cC.C(0,new A.l(a3,a2.x))){a0=a2 +break}e.length===c||(0,A.a2)(e);++a1}if(a0==null){if(0>=o.length)return A.c(o,-1) a2=o.pop() while(a2!==f){if(0>=o.length)return A.c(o,-1) -a2=o.pop()}B.a.V(q,a2) +a2=o.pop()}B.a.W(q,a2) return}e=a-1 if(!(e>=0&&e=0&&a6"),p=new A.V(r,q),p=new A.L(p,p.gm(0),q.h("L")),q=q.h("G.E");p.p();){o=p.d +mY(a){var s,r,q,p,o,n,m,l,k,j,i="unexpected-end-tag" +for(s=this.b,r=s.c,q=A.w(r).h("X<1>"),p=new A.X(r,q),p=new A.M(p,p.gn(0),q.h("M")),q=q.h("G.E");p.p();){o=p.d if(o==null)o=q.a(o) n=o.x m=a.b if(n==m){l=B.a.gA(r).x -if(l!=m&&B.a.D(B.bH,l)){if(0>=r.length)return A.c(r,-1) +if(l!=m&&B.a.C(B.bH,l)){if(0>=r.length)return A.c(r,-1) r.pop() s.bS(m)}s=B.a.gA(r) q=a.b @@ -13197,33 +13278,33 @@ if(k==null){p=s.c.a n=p.w if(n==null)k=null else{p=p.y -new A.bh(n,p).bg(n,p) -k=new A.av(n,p,p) -k.aG(n,p,p)}}B.a.l(s.e,new A.b9(i,k,q))}for(;;){if(0>=r.length)return A.c(r,-1) +new A.bh(n,p).bh(n,p) +k=new A.aw(n,p,p) +k.aG(n,p,p)}}B.a.l(s.e,new A.bb(i,k,q))}for(;;){if(0>=r.length)return A.c(r,-1) if(!(r.pop()!==o))break}break}else{j=o.w -if(B.cC.D(0,new A.l(j==null?"http://www.w3.org/1999/xhtml":j,n))){s=this.a +if(B.cC.C(0,new A.l(j==null?"http://www.w3.org/1999/xhtml":j,n))){s=this.a k=a.a r=t.n.a(A.v(["name",a.b],t.N,t.X)) if(k==null){q=s.c.a p=q.w if(p==null)k=null else{q=q.y -new A.bh(p,q).bg(p,q) -k=new A.av(p,q,q) -k.aG(p,q,q)}}B.a.l(s.e,new A.b9(i,k,r)) +new A.bh(p,q).bh(p,q) +k=new A.aw(p,q,q) +k.aG(p,q,q)}}B.a.l(s.e,new A.bb(i,k,r)) break}}}}} -A.mB.prototype={ +A.mF.prototype={ $2(a,b){var s A.cg(a) A.q(b) s=this.a.b.c if(1>=s.length)return A.c(s,1) -s[1].b.f6(a,new A.mA(b))}, +s[1].b.f7(a,new A.mE(b))}, $S:17} -A.mA.prototype={ +A.mE.prototype={ $0(){return this.a}, $S:8} -A.jS.prototype={ +A.jU.prototype={ J(a){throw A.f(A.ce("Cannot process start stag in text phase"))}, P(a){var s,r,q=this if(a.b==="script"){s=q.b.c @@ -13251,42 +13332,42 @@ s=q.y s.toString q.x=s return!0}} -A.iK.prototype={ +A.iL.prototype={ J(a){var s,r,q=this,p=null -switch(a.b){case"html":return q.bf(a) -case"caption":q.eD() +switch(a.b){case"html":return q.bg(a) +case"caption":q.eE() s=q.b s.d.l(0,p) -s.M(a) +s.O(a) s=q.a -s.x=s.gej() +s.x=s.gek() return p -case"colgroup":q.fz(a) +case"colgroup":q.fA(a) return p -case"col":q.fz(A.aZ("colgroup",A.ac(t.K,t.N),p,!1)) +case"col":q.fA(A.aZ("colgroup",A.ae(t.K,t.N),p,!1)) return a -case"tbody":case"tfoot":case"thead":q.fB(a) +case"tbody":case"tfoot":case"thead":q.fC(a) return p -case"td":case"th":case"tr":q.fB(A.aZ("tbody",A.ac(t.K,t.N),p,!1)) +case"td":case"th":case"tr":q.fC(A.aZ("tbody",A.ae(t.K,t.N),p,!1)) return a -case"table":return q.jy(a) -case"style":case"script":return q.a.gc_().J(a) -case"input":s=a.e.n(0,"type") +case"table":return q.jz(a) +case"style":case"script":return q.a.gc0().J(a) +case"input":s=a.e.m(0,"type") if((s==null?p:A.c9(s))==="hidden"){q.a.a2(a.a,"unexpected-hidden-input-in-table") s=q.b -s.M(a) +s.O(a) s=s.c if(0>=s.length)return A.c(s,-1) -s.pop()}else q.fA(a) +s.pop()}else q.fB(a) return p case"form":q.a.a2(a.a,"unexpected-form-in-table") s=q.b -if(s.f==null){s.M(a) +if(s.f==null){s.O(a) r=s.c s.f=B.a.gA(r) if(0>=r.length)return A.c(r,-1) r.pop()}return p -default:q.fA(a) +default:q.fB(a) return p}}, P(a){var s,r=this,q=a.b switch(q){case"table":r.bM(a) @@ -13300,64 +13381,64 @@ q.r=!0 s.ga4().P(a) q.r=!1 return null}}, -eD(){var s=this.b.c +eE(){var s=this.b.c for(;;){if(!(B.a.gA(s).x!=="table"&&B.a.gA(s).x!=="html"))break if(0>=s.length)return A.c(s,-1) s.pop()}}, ac(){var s=B.a.gA(this.b.c) if(s.x!=="html")this.a.a2(s.e,"eof-in-table") return!1}, -aJ(a){var s=this.a,r=s.gaD(),q=s.gem() +aJ(a){var s=this.a,r=s.gaD(),q=s.gen() s.x=q q.c=r s.gaD().aJ(a) return null}, -a3(a){var s=this.a,r=s.gaD(),q=s.gem() +a3(a){var s=this.a,r=s.gaD(),q=s.gen() s.x=q q.c=r s.gaD().a3(a) return null}, -fz(a){var s -this.eD() -this.b.M(a) +fA(a){var s +this.eE() +this.b.O(a) s=this.a -s.x=s.gek()}, -fB(a){var s -this.eD() -this.b.M(a) +s.x=s.gel()}, +fC(a){var s +this.eE() +this.b.O(a) s=this.a -s.x=s.gci()}, -jy(a){var s=this.a +s.x=s.gcj()}, +jz(a){var s=this.a s.G(a.a,"unexpected-start-tag-implies-end-tag",A.v(["startName","table","endName","table"],t.N,t.X)) s.gaD().P(new A.H("table",!1)) return a}, -fA(a){var s,r=this.a +fB(a){var s,r=this.a r.G(a.a,u.M,A.v(["name",a.b],t.N,t.X)) s=this.b s.r=!0 r.ga4().J(a) s.r=!1}, bM(a){var s,r=this,q=r.b -if(q.a0("table","table")){q.ca() +if(q.a0("table","table")){q.cc() q=q.c s=B.a.gA(q).x if(s!=="table")r.a.G(a.a,"end-tag-too-early-named",A.v(["gotName","table","expectedName",s],t.N,t.X)) while(B.a.gA(q).x!=="table"){if(0>=q.length)return A.c(q,-1) q.pop()}if(0>=q.length)return A.c(q,-1) q.pop() -r.a.iw()}else r.a.a2(a.a,"undefined-error")}} +r.a.ix()}else r.a.a2(a.a,"undefined-error")}} A.fg.prototype={ cP(){var s,r,q=this,p=q.d if(p.length===0)return -s=A.x(p) -r=new A.R(p,s.h("e(1)").a(new A.mC()),s.h("R<1,e>")).aq(0,"") -if(!A.qL(r)){p=q.a.gaA() +s=A.w(p) +r=new A.Q(p,s.h("e(1)").a(new A.mG()),s.h("Q<1,e>")).aq(0,"") +if(!A.qQ(r)){p=q.a.gaA() s=p.b s.r=!0 -p.a.ga4().a3(new A.B(null,r)) +p.a.ga4().a3(new A.D(null,r)) s.r=!1}else if(r.length!==0)q.b.bN(r,null) q.d=A.i([],t.ks)}, -c9(a){var s +cb(a){var s this.cP() s=this.c s.toString @@ -13385,15 +13466,15 @@ s=this.c s.toString this.a.x=s return a}} -A.mC.prototype={ +A.mG.prototype={ $1(a){return t.v.a(a).gaC()}, -$S:93} -A.iA.prototype={ -J(a){switch(a.b){case"html":return this.bf(a) -case"caption":case"col":case"colgroup":case"tbody":case"td":case"tfoot":case"th":case"thead":case"tr":return this.jz(a) +$S:101} +A.iB.prototype={ +J(a){switch(a.b){case"html":return this.bg(a) +case"caption":case"col":case"colgroup":case"tbody":case"td":case"tfoot":case"th":case"thead":case"tr":return this.jA(a) default:return this.a.ga4().J(a)}}, P(a){var s=this,r=a.b -switch(r){case"caption":s.mU(a) +switch(r){case"caption":s.mV(a) return null case"table":return s.bM(a) case"body":case"col":case"colgroup":case"html":case"tbody":case"td":case"tfoot":case"th":case"thead":case"tr":s.a.G(a.a,"unexpected-end-tag",A.v(["name",r],t.N,t.X)) @@ -13402,20 +13483,20 @@ default:return s.a.ga4().P(a)}}, ac(){this.a.ga4().ac() return!1}, a3(a){return this.a.ga4().a3(a)}, -jz(a){var s,r=this.a +jA(a){var s,r=this.a r.a2(a.a,"undefined-error") s=this.b.a0("caption","table") r.gaD().P(new A.H("caption",!1)) if(s)return a return null}, -mU(a){var s,r=this,q=r.b -if(q.a0("caption","table")){q.ca() +mV(a){var s,r=this,q=r.b +if(q.a0("caption","table")){q.cc() s=q.c if(B.a.gA(s).x!=="caption")r.a.G(a.a,"expected-one-end-tag-but-got-another",A.v(["gotName","caption","expectedName",B.a.gA(s).x],t.N,t.X)) while(B.a.gA(s).x!=="caption"){if(0>=s.length)return A.c(s,-1) s.pop()}if(0>=s.length)return A.c(s,-1) s.pop() -q.eB() +q.eC() q=r.a q.x=q.gaA()}else r.a.a2(a.a,"undefined-error")}, bM(a){var s,r=this.a @@ -13424,11 +13505,11 @@ s=this.b.a0("caption","table") r.gaD().P(new A.H("caption",!1)) if(s)return a return null}} -A.iC.prototype={ +A.iD.prototype={ J(a){var s,r=this -switch(a.b){case"html":return r.bf(a) +switch(a.b){case"html":return r.bg(a) case"col":s=r.b -s.M(a) +s.O(a) s=s.c if(0>=s.length)return A.c(s,-1) s.pop() @@ -13455,14 +13536,14 @@ if(B.a.gA(s).x==="html")r.a2(a.a,"undefined-error") else{if(0>=s.length)return A.c(s,-1) s.pop() r.x=r.gaA()}}} -A.iJ.prototype={ +A.iK.prototype={ J(a){var s,r=this,q=a.b -switch(q){case"html":return r.bf(a) -case"tr":r.fC(a) +switch(q){case"html":return r.bg(a) +case"tr":r.fD(a) return null case"td":case"th":s=t.N r.a.G(a.a,"unexpected-cell-in-table-body",A.v(["name",q],s,t.X)) -r.fC(A.aZ("tr",A.ac(t.K,s),null,!1)) +r.fD(A.aZ("tr",A.ae(t.K,s),null,!1)) return a case"caption":case"col":case"colgroup":case"tbody":case"tfoot":case"thead":return r.bM(a) default:return r.a.gaA().J(a)}}, @@ -13473,34 +13554,34 @@ case"table":return s.bM(a) case"body":case"caption":case"col":case"colgroup":case"html":case"td":case"th":case"tr":s.a.G(a.a,"unexpected-end-tag-in-table-body",A.v(["name",r],t.N,t.X)) return null default:return s.a.gaA().P(a)}}, -eC(){for(var s=this.b.c;!B.a.D(B.jk,B.a.gA(s).x);){if(0>=s.length)return A.c(s,-1) +eD(){for(var s=this.b.c;!B.a.C(B.jk,B.a.gA(s).x);){if(0>=s.length)return A.c(s,-1) s.pop()}B.a.gA(s)}, ac(){this.a.gaA().ac() return!1}, aJ(a){return this.a.gaA().aJ(a)}, a3(a){return this.a.gaA().a3(a)}, -fC(a){var s -this.eC() -this.b.M(a) +fD(a){var s +this.eD() +this.b.O(a) s=this.a s.x=s.gdk()}, dG(a){var s=this.b,r=this.a -if(s.a0(a.b,"table")){this.eC() +if(s.a0(a.b,"table")){this.eD() s=s.c if(0>=s.length)return A.c(s,-1) s.pop() r.x=r.gaA()}else r.G(a.a,"unexpected-end-tag-in-table-body",A.v(["name",a.b],t.N,t.X))}, bM(a){var s=this,r="table",q=s.b -if(q.a0("tbody",r)||q.a0("thead",r)||q.a0("tfoot",r)){s.eC() +if(q.a0("tbody",r)||q.a0("thead",r)||q.a0("tfoot",r)){s.eD() s.dG(new A.H(B.a.gA(q.c).x,!1)) return a}else s.a.a2(a.a,"undefined-error") return null}} -A.iG.prototype={ +A.iH.prototype={ J(a){var s,r,q=this -switch(a.b){case"html":return q.bf(a) -case"td":case"th":q.hU() +switch(a.b){case"html":return q.bg(a) +case"td":case"th":q.hV() s=q.b -s.M(a) +s.O(a) r=q.a r.x=r.gdj() s.d.l(0,null) @@ -13519,7 +13600,7 @@ case"tbody":case"tfoot":case"thead":return s.dG(a) case"body":case"caption":case"col":case"colgroup":case"html":case"td":case"th":s.a.G(a.a,"unexpected-end-tag-in-table-row",A.v(["name",r],t.N,t.X)) return null default:return s.a.gaA().P(a)}}, -hU(){var s,r,q,p,o,n,m,l,k,j,i +hV(){var s,r,q,p,o,n,m,l,k,j,i for(s=this.b.c,r=this.a,q=t.N,p=t.X,o=t.n,n=r.c.a;;){m=B.a.gA(s) l=m.x if(l==="tr"||l==="html")break @@ -13528,9 +13609,9 @@ l=o.a(A.v(["name",B.a.gA(s).x],q,p)) if(k==null){j=n.w if(j==null)k=null else{i=n.y -new A.bh(j,i).bg(j,i) -k=new A.av(j,i,i) -k.aG(j,i,i)}}B.a.l(r.e,new A.b9("unexpected-implied-end-tag-in-table-row",k,l)) +new A.bh(j,i).bh(j,i) +k=new A.aw(j,i,i) +k.aG(j,i,i)}}B.a.l(r.e,new A.bb("unexpected-implied-end-tag-in-table-row",k,l)) if(0>=s.length)return A.c(s,-1) s.pop()}}, ac(){this.a.gaA().ac() @@ -13538,67 +13619,67 @@ return!1}, aJ(a){return this.a.gaA().aJ(a)}, a3(a){return this.a.gaA().a3(a)}, dH(a){var s=this.b,r=this.a -if(s.a0("tr","table")){this.hU() +if(s.a0("tr","table")){this.hV() s=s.c if(0>=s.length)return A.c(s,-1) s.pop() -r.x=r.gci()}else r.a2(a.a,"undefined-error")}, +r.x=r.gcj()}else r.a2(a.a,"undefined-error")}, dG(a){if(this.b.a0(a.b,"table")){this.dH(new A.H("tr",!1)) return a}else{this.a.a2(a.a,"undefined-error") return null}}} -A.iB.prototype={ -J(a){switch(a.b){case"html":return this.bf(a) -case"caption":case"col":case"colgroup":case"tbody":case"td":case"tfoot":case"th":case"thead":case"tr":return this.jA(a) +A.iC.prototype={ +J(a){switch(a.b){case"html":return this.bg(a) +case"caption":case"col":case"colgroup":case"tbody":case"td":case"tfoot":case"th":case"thead":case"tr":return this.jB(a) default:return this.a.ga4().J(a)}}, P(a){var s=this,r=a.b -switch(r){case"td":case"th":s.eQ(a) +switch(r){case"td":case"th":s.eR(a) return null case"body":case"caption":case"col":case"colgroup":case"html":s.a.G(a.a,"unexpected-end-tag",A.v(["name",r],t.N,t.X)) return null -case"table":case"tbody":case"tfoot":case"thead":case"tr":return s.mW(a) +case"table":case"tbody":case"tfoot":case"thead":case"tr":return s.mX(a) default:return s.a.ga4().P(a)}}, -hV(){var s=this.b -if(s.a0("td","table"))this.eQ(new A.H("td",!1)) -else if(s.a0("th","table"))this.eQ(new A.H("th",!1))}, +hW(){var s=this.b +if(s.a0("td","table"))this.eR(new A.H("td",!1)) +else if(s.a0("th","table"))this.eR(new A.H("th",!1))}, ac(){this.a.ga4().ac() return!1}, a3(a){return this.a.ga4().a3(a)}, -jA(a){var s=this.b -if(s.a0("td","table")||s.a0("th","table")){this.hV() +jB(a){var s=this.b +if(s.a0("td","table")||s.a0("th","table")){this.hW() return a}else{this.a.a2(a.a,"undefined-error") return null}}, -eQ(a){var s,r=this,q=r.b,p=q.a0(a.b,"table"),o=a.b +eR(a){var s,r=this,q=r.b,p=q.a0(a.b,"table"),o=a.b if(p){q.bS(o) p=q.c o=B.a.gA(p) s=a.b if(o.x!=s){r.a.G(a.a,"unexpected-cell-end-tag",A.v(["name",s],t.N,t.X)) r.ct(a)}else{if(0>=p.length)return A.c(p,-1) -p.pop()}q.eB() +p.pop()}q.eC() q=r.a q.x=q.gdk()}else r.a.G(a.a,"unexpected-end-tag",A.v(["name",o],t.N,t.X))}, -mW(a){if(this.b.a0(a.b,"table")){this.hV() +mX(a){if(this.b.a0(a.b,"table")){this.hW() return a}else this.a.a2(a.a,"undefined-error") return null}} -A.iI.prototype={ +A.iJ.prototype={ J(a){var s,r=this,q=null,p=a.b -switch(p){case"html":return r.bf(a) +switch(p){case"html":return r.bg(a) case"option":p=r.b s=p.c if(B.a.gA(s).x==="option"){if(0>=s.length)return A.c(s,-1) -s.pop()}p.M(a) +s.pop()}p.O(a) return q case"optgroup":p=r.b s=p.c if(B.a.gA(s).x==="option"){if(0>=s.length)return A.c(s,-1) s.pop()}if(B.a.gA(s).x==="optgroup"){if(0>=s.length)return A.c(s,-1) -s.pop()}p.M(a) +s.pop()}p.O(a) return q case"select":r.a.a2(a.a,"unexpected-select-in-select") -r.eP(new A.H("select",!1)) +r.eQ(new A.H("select",!1)) return q -case"input":case"keygen":case"textarea":return r.jv(a) -case"script":return r.a.gc_().J(a) +case"input":case"keygen":case"textarea":return r.jw(a) +case"script":return r.a.gc0().J(a) default:r.a.G(a.a,"unexpected-start-tag-in-select",A.v(["name",p],t.N,t.X)) return q}}, P(a){var s,r,q=this,p=null,o="unexpected-end-tag-in-select",n=a.b @@ -13616,7 +13697,7 @@ if(s){if(0>=n.length)return A.c(n,-1) n.pop()}if(B.a.gA(n).x==="optgroup"){if(0>=n.length)return A.c(n,-1) n.pop()}else q.a.G(a.a,o,A.v(["name","optgroup"],t.N,t.X)) return p -case"select":q.eP(a) +case"select":q.eQ(a) return p default:q.a.G(a.a,o,A.v(["name",n],t.N,t.X)) return p}}, @@ -13626,14 +13707,14 @@ return!1}, a3(a){if(a.gaC()==="\x00")return null this.b.bN(a.gaC(),a.a) return null}, -jv(a){var s="select" +jw(a){var s="select" this.a.a2(a.a,"unexpected-input-in-select") -if(this.b.a0(s,s)){this.eP(new A.H(s,!1)) +if(this.b.a0(s,s)){this.eQ(new A.H(s,!1)) return a}return null}, -eP(a){var s=this.a +eQ(a){var s=this.a if(this.b.a0("select","select")){this.ct(a) -s.iw()}else s.a2(a.a,"undefined-error")}} -A.iH.prototype={ +s.ix()}else s.a2(a.a,"undefined-error")}} +A.iI.prototype={ J(a){var s,r=a.b switch(r){case"caption":case"table":case"tbody":case"tfoot":case"thead":case"tr":case"td":case"th":s=this.a s.G(a.a,u.a,A.v(["name",r],t.N,t.X)) @@ -13649,29 +13730,29 @@ bM(a){var s=this.a s.G(a.a,u.r,A.v(["name",a.b],t.N,t.X)) if(this.b.a0(a.b,"table")){s.gbH().P(new A.H("select",!1)) return a}return null}} -A.iD.prototype={ +A.iE.prototype={ a3(a){var s if(a.gaC()==="\x00"){a.c="\ufffd" a.b=null}else{s=this.a -if(s.z&&!A.qL(a.gaC()))s.z=!1}return this.jM(a)}, +if(s.z&&!A.qQ(a.gaC()))s.z=!1}return this.jN(a)}, J(a){var s,r,q,p=this,o=p.b,n=o.c,m=B.a.gA(n) -if(!B.a.D(B.j5,a.b))if(a.b==="font")s=a.e.a8("color")||a.e.a8("face")||a.e.a8("size") +if(!B.a.C(B.j5,a.b))if(a.b==="font")s=a.e.a7("color")||a.e.a7("face")||a.e.a7("size") else s=!1 else s=!0 if(s){s=p.a s.G(a.a,u.G,A.v(["name",a.b],t.N,t.X)) o=o.a for(;;){r=!1 -if(B.a.gA(n).w!=o)if(!s.ib(B.a.gA(n))){r=B.a.gA(n) -r=!B.hP.D(0,new A.l(r.w,r.x))}if(!r)break +if(B.a.gA(n).w!=o)if(!s.ic(B.a.gA(n))){r=B.a.gA(n) +r=!B.hP.C(0,new A.l(r.w,r.x))}if(!r)break if(0>=n.length)return A.c(n,-1) n.pop()}return a}else{s=m.w -if(s==="http://www.w3.org/1998/Math/MathML")p.a.hG(a) -else if(s==="http://www.w3.org/2000/svg"){q=B.rp.n(0,a.b) +if(s==="http://www.w3.org/1998/Math/MathML")p.a.hH(a) +else if(s==="http://www.w3.org/2000/svg"){q=B.rp.m(0,a.b) if(q!=null)a.b=q -p.a.hH(a)}p.a.ew(a) +p.a.hI(a)}p.a.ex(a) a.w=s -o.M(a) +o.O(a) if(a.c){if(0>=n.length)return A.c(n,-1) n.pop() a.r=!0}return null}}, @@ -13684,7 +13765,7 @@ k=k==null?null:A.c9(k) if(k==a.b){o=p.a q=o.x if(q===$)q=o.x=o.gbo() -if(q===o.gem()){q=o.x +if(q===o.gen()){q=o.x if(q===$)q=o.x=o.gbo() t.aB.a(q) q.cP() @@ -13707,32 +13788,32 @@ s.G(a.a,"unexpected-start-tag-after-body",A.v(["name",r],t.N,t.X)) s.x=s.ga4() return a}, P(a){var s,r=a.b -if(r==="html"){this.eO(a) +if(r==="html"){this.eP(a) return null}s=this.a s.G(a.a,"unexpected-end-tag-after-body",A.v(["name",r],t.N,t.X)) s.x=s.ga4() return a}, ac(){return!1}, -c9(a){var s=this.b,r=s.c +cb(a){var s=this.b,r=s.c if(0>=r.length)return A.c(r,0) -s.cq(a,r[0]) +s.cr(a,r[0]) return null}, a3(a){var s=this.a s.a2(a.a,"unexpected-char-after-body") s.x=s.ga4() return a}, -eO(a){var s,r,q,p -for(s=this.b.c,r=A.x(s).h("V<1>"),s=new A.V(s,r),s=new A.L(s,s.gm(0),r.h("L")),r=r.h("G.E");s.p();){q=s.d +eP(a){var s,r,q,p +for(s=this.b.c,r=A.w(s).h("X<1>"),s=new A.X(s,r),s=new A.M(s,s.gn(0),r.h("M")),r=r.h("G.E");s.p();){q=s.d if((q==null?r.a(q):q).x==="html")break}s=this.a p=s.k4 s.x=p===$?s.k4=new A.hI(s,s.d):p}} -A.iE.prototype={ +A.iF.prototype={ J(a){var s=this,r=a.b -switch(r){case"html":return s.bf(a) -case"frameset":s.b.M(a) +switch(r){case"html":return s.bg(a) +case"frameset":s.b.O(a) return null case"frame":r=s.b -r.M(a) +r.O(a) r=r.c if(0>=r.length)return A.c(r,-1) r.pop() @@ -13757,8 +13838,8 @@ a3(a){this.a.a2(a.a,"unexpected-char-in-frameset") return null}} A.hL.prototype={ J(a){var s=a.b -switch(s){case"html":return this.bf(a) -case"noframes":return this.a.gc_().J(a) +switch(s){case"html":return this.bg(a) +case"noframes":return this.a.gc0().J(a) default:this.a.G(a.a,"unexpected-start-tag-after-frameset",A.v(["name",s],t.N,t.X)) return null}}, P(a){var s,r=a.b,q=this.a @@ -13778,9 +13859,9 @@ s.G(a.a,"expected-eof-but-got-start-tag",A.v(["name",r],t.N,t.X)) s.x=s.ga4() return a}, ac(){return!1}, -c9(a){var s=this.b,r=s.b +cb(a){var s=this.b,r=s.b r===$&&A.o() -s.cq(a,r) +s.cr(a,r) return null}, aJ(a){return this.a.ga4().aJ(a)}, a3(a){var s=this.a @@ -13794,83 +13875,83 @@ return a}} A.hJ.prototype={ J(a){var s=a.b,r=this.a switch(s){case"html":return r.ga4().J(a) -case"noframes":return r.gc_().J(a) +case"noframes":return r.gc0().J(a) default:r.G(a.a,"expected-eof-but-got-start-tag",A.v(["name",s],t.N,t.X)) return null}}, ac(){return!1}, -c9(a){var s=this.b,r=s.b +cb(a){var s=this.b,r=s.b r===$&&A.o() -s.cq(a,r) +s.cr(a,r) return null}, aJ(a){return this.a.ga4().aJ(a)}, a3(a){this.a.a2(a.a,"expected-eof-but-got-char") return null}, P(a){this.a.G(a.a,"expected-eof-but-got-end-tag",A.v(["name",a.b],t.N,t.X)) return null}} -A.b9.prototype={ +A.bb.prototype={ j(a){var s,r,q=this,p=q.b -if(p==null){p=B.fX.n(0,q.a) +if(p==null){p=B.fX.m(0,q.a) p.toString -return A.uo(p,q.c)}s=B.fX.n(0,q.a) +return A.ut(p,q.c)}s=B.fX.m(0,q.a) s.toString -r=p.ie(A.uo(s,q.c),null) +r=p.ig(A.ut(s,q.c),null) return p.a.a==null?"ParserError on "+r:"On "+r}, -$iah:1} -A.nx.prototype={} +$iaj:1} +A.nB.prototype={} A.ia.prototype={ -d0(){var s,r,q,p,o=A.vY(t.N),n=this.a.b.n(0,"class") -for(s=(n==null?"":n).split(" "),r=s.length,q=0;q=this.a.length)throw A.f(A.qs("No more elements")) +return A.tv(s,s.r,A.x(s).c)}, +gn(a){return this.d0().a}, +C(a,b){return this.d0().C(0,b)}} +A.lS.prototype={ +sau(a){if(this.b>=this.a.length)throw A.f(A.qx("No more elements")) this.b=a}, gau(){var s=this.b -if(s>=this.a.length)throw A.f(A.qs("No more elements")) +if(s>=this.a.length)throw A.f(A.qx("No more elements")) if(s>=0)return s else return 0}, -kY(a){var s,r,q,p,o=this +kZ(a){var s,r,q,p,o=this t.pi.a(a) -if(a==null)a=A.uh() +if(a==null)a=A.um() s=o.gau() for(r=o.a,q=r.length;s=0))return A.c(r,s) p=r[s] if(!a.$1(p)){o.b=s return p}++s}o.b=s return null}, -hp(){return this.kY(null)}, -kZ(a){var s,r,q,p -t.gS.a(a) +hq(){return this.kZ(null)}, +l_(a){var s,r,q,p +t.dB.a(a) s=this.gau() for(r=this.a,q=r.length;s=0))return A.c(r,s) p=r[s] if(a.$1(p)){this.b=s return p}++s}return null}, -ha(a){var s=B.b.ap(this.a,a,this.gau()) +hb(a){var s=B.b.ap(this.a,a,this.gau()) if(s>=0){this.b=s+a.length-1 -return!0}else throw A.f(A.qs("No more elements"))}, -er(a,b){if(b==null)b=this.a.length +return!0}else throw A.f(A.qx("No more elements"))}, +es(a,b){if(b==null)b=this.a.length if(b<0)b+=this.a.length return B.b.t(this.a,a,b)}, -l_(a){return this.er(a,null)}} -A.lK.prototype={ -nD(){var s,r,q,p,o,n,m,l +l0(a){return this.es(a,null)}} +A.lN.prototype={ +nE(){var s,r,q,p,o,n,m,l try{p=this.a -p.ha("charset") +p.hb("charset") p.sau(p.gau()+1) -p.hp() +p.hq() o=p.a n=p.gau() m=o.length if(!(n>=0&&n=0&&n=0&&n0){r=h.x q=r.length -B.a.o8(r,q-n,q)}}, -hR(a){var s=A.ce("cannot change encoding when parsing a String.") +B.a.fc(r,q-n,q)}}, +hS(a){var s=A.ce("cannot change encoding when parsing a String.") throw A.f(s)}, -C(){var s,r,q,p,o=this,n=o.y,m=o.x,l=m.length +D(){var s,r,q,p,o=this,n=o.y,m=o.x,l=m.length if(n>=l)return null s=o.y=n+1 if(!(n>=0))return A.c(m,n) @@ -13932,200 +14013,200 @@ if((m[n]&64512)===55296){if(!(q>=0))return A.c(m,q) n=(m[q]&64512)===56320}else n=p}else n=p if(n){o.y=s+1 if(!(s>=0&&s=q)return null if(!(s>=0))return A.c(r,s) return r[s]}, -lY(a){var s,r,q=this +lZ(a){var s,r,q=this t.nO.a(a) s=q.y for(;;){r=q.cs() -if(!(r!=null&&!a.D(0,r)))break;++q.y}return A.ay(B.a.am(q.x,s,q.y),0,null)}, -hS(a){var s,r=this,q=r.y +if(!(r!=null&&!a.C(0,r)))break;++q.y}return A.aA(B.a.am(q.x,s,q.y),0,null)}, +hT(a){var s,r=this,q=r.y for(;;){s=r.cs() -if(!(s!=null&&a!==s))break;++r.y}return A.ay(B.a.am(r.x,q,r.y),0,null)}, -cn(a,b){var s,r,q=this,p=q.y +if(!(s!=null&&a!==s))break;++r.y}return A.aA(B.a.am(r.x,q,r.y),0,null)}, +co(a,b){var s,r,q=this,p=q.y for(;;){s=q.cs() if(s!=null)r=!(a===s||b===s) else r=!1 -if(!r)break;++q.y}return A.ay(B.a.am(q.x,p,q.y),0,null)}, -hT(a,b,c){var s,r,q=this,p=q.y +if(!r)break;++q.y}return A.aA(B.a.am(q.x,p,q.y),0,null)}, +hU(a,b,c){var s,r,q=this,p=q.y for(;;){s=q.cs() if(s!=null)r=!(a===s||b===s||c===s) else r=!1 -if(!r)break;++q.y}return A.ay(B.a.am(q.x,p,q.y),0,null)}, -lZ(a){var s,r,q=this,p=q.y +if(!r)break;++q.y}return A.aA(B.a.am(q.x,p,q.y),0,null)}, +m_(a){var s,r,q=this,p=q.y for(;;){s=q.cs() if(s!=null)if(!(s>=65&&s<=90))r=s>=97&&s<=122 else r=!0 else r=!1 -if(!r)break;++q.y}return A.ay(B.a.am(q.x,p,q.y),0,null)}, +if(!r)break;++q.y}return A.aA(B.a.am(q.x,p,q.y),0,null)}, cL(a){var s,r,q=this,p=q.y for(;;){s=q.cs() if(s!=null)r=s===32||s===10||s===13||s===9||s===12 else r=!1 -if(!r)break;++q.y}return A.ay(B.a.am(q.x,p,q.y),0,null)}, -W(a){if(a!=null)this.y=this.y-a.length}} -A.b7.prototype={ -gm(a){return this.a.length}, +if(!r)break;++q.y}return A.aA(B.a.am(q.x,p,q.y),0,null)}, +X(a){if(a!=null)this.y=this.y-a.length}} +A.b9.prototype={ +gn(a){return this.a.length}, gF(a){var s=this.a -return new J.J(s,s.length,A.x(s).h("J<1>"))}, -n(a,b){var s=this.a +return new J.J(s,s.length,A.w(s).h("J<1>"))}, +m(a,b){var s=this.a if(!(b>=0&&b").a(b))}} +k(a,b,c){B.a.k(this.a,b,A.x(this).h("b9.E").a(c))}, +sn(a,b){B.a.sn(this.a,b)}, +l(a,b){B.a.l(this.a,A.x(this).h("b9.E").a(b))}, +bx(a,b,c){return B.a.bx(this.a,b,A.x(this).h("b9.E").a(c))}, +a1(a,b){B.a.a1(this.a,A.x(this).h("h").a(b))}} A.d0.prototype={ -f7(a,b){var s,r,q,p,o,n,m -for(s=a.gO().gF(0),r=new A.bZ(s,t.pl),q=b.b,p=this.gfm(),o=t.g;r.p();){n=o.a(s.gB()) +f8(a,b){var s,r,q,p,o,n,m +for(s=a.gL().gF(0),r=new A.bZ(s,t.pl),q=b.b,p=this.gfn(),o=t.Q;r.p();){n=o.a(s.gB()) this.a=n if(B.a.aH(q,p))return n -m=this.f7(n,b) +m=this.f8(n,b) if(m!=null)return m}return null}, -f8(a,b,c){var s,r,q,p,o,n +f9(a,b,c){var s,r,q,p,o,n t.jB.a(c) -for(s=a.gO().gF(0),r=new A.bZ(s,t.pl),q=b.b,p=this.gfm(),o=t.g;r.p();){n=o.a(s.gB()) +for(s=a.gL().gF(0),r=new A.bZ(s,t.pl),q=b.b,p=this.gfn(),o=t.Q;r.p();){n=o.a(s.gB()) this.a=n if(B.a.aH(q,p))B.a.l(c,n) -this.f8(n,b,c)}}, -iE(a){var s,r,q,p,o,n,m,l,k,j,i=this,h=null +this.f9(n,b,c)}}, +iF(a){var s,r,q,p,o,n,m,l,k,j,i=this,h=null t.dT.a(a) s=i.a -for(r=a.b,q=A.x(r).h("V<1>"),r=new A.V(r,q),r=new A.L(r,r.gm(0),q.h("L")),q=q.h("G.E"),p=h;o=!0,r.p();){n=r.d +for(r=a.b,q=A.w(r).h("X<1>"),r=new A.X(r,q),r=new A.M(r,r.gn(0),q.h("M")),q=q.h("G.E"),p=h;o=!0,r.p();){n=r.d if(n==null)n=q.a(n) -if(p==null)o=A.hA(n.c.L(i)) +if(p==null)o=A.hA(n.c.M(i)) else{if(p===514){m=n.c do{l=i.a.a -k=l instanceof A.a6?l:h -i.a=k}while(k!=null&&!A.hA(m.L(i))) +k=l instanceof A.K?l:h +i.a=k}while(k!=null&&!A.hA(m.M(i))) m=i.a o=m!=null}else if(p===517){m=n.c do{k=i.a.gdR() -i.a=k}while(k!=null&&!A.hA(m.L(i))) +i.a=k}while(k!=null&&!A.hA(m.M(i))) m=i.a o=m!=null}p=h}if(!o)break j=n.b switch(j){case 515:i.a=i.a.gdR() break case 516:l=i.a.a -i.a=l instanceof A.a6?l:h +i.a=l instanceof A.K?l:h break case 514:case 517:p=j break case 513:break -default:throw A.f(i.hy(a))}if(i.a==null){o=!1 +default:throw A.f(i.hz(a))}if(i.a==null){o=!1 break}}i.a=s return o}, cK(a){return new A.fW("'"+a.j(0)+"' selector of type "+A.cN(a).j(0)+" is not implemented")}, -hy(a){return new A.aA("'"+a.j(0)+"' is not a valid selector",null,null)}, +hz(a){return new A.aC("'"+a.j(0)+"' is not a valid selector",null,null)}, op(a){var s=this,r=a.b -switch(r.ga7()){case"root":r=s.a +switch(r.ga8()){case"root":r=s.a return r.x==="html"&&r.a==null -case"empty":r=s.a.gO() -return r.aH(r,new A.nE()) -case"blank":r=s.a.gO() -return r.aH(r,new A.nF()) +case"empty":r=s.a.gL() +return r.aH(r,new A.nI()) +case"blank":r=s.a.gL() +return r.aH(r,new A.nJ()) case"first-child":return s.a.gdR()==null -case"last-child":return s.a.gih()==null -case"only-child":return s.a.gdR()==null&&s.a.gih()==null -case"link":return s.a.b.n(0,"href")!=null -case"visited":return!1}if(A.rR(r.ga7()))return!1 +case"last-child":return s.a.gii()==null +case"only-child":return s.a.gdR()==null&&s.a.gii()==null +case"link":return s.a.b.m(0,"href")!=null +case"visited":return!1}if(A.rW(r.ga8()))return!1 throw A.f(s.cK(a))}, -or(a){if(A.rR(a.b.ga7()))return!1 +or(a){if(A.rW(a.b.ga8()))return!1 throw A.f(this.cK(a))}, -oq(a){return A.O(this.cK(a))}, +oq(a){return A.P(this.cK(a))}, oo(a){var s,r,q,p,o,n,m=this -switch(a.b.ga7()){case"nth-child":s=t.b9.a(a.f).b +switch(a.b.ga8()){case"nth-child":s=t.b9.a(a.f).b r=s.length if(r===1){if(0>=r)return A.c(s,0) -q=s[0] instanceof A.ak}else q=!1 +q=s[0] instanceof A.al}else q=!1 if(q){if(0>=r)return A.c(s,0) r=t.mH.a(s[0]).c if(typeof r!="number")return!1 p=m.a.a q=!1 -if(p!=null)if(r>0){q=p.gO() +if(p!=null)if(r>0){q=p.gL() r=q.al(q,m.a)===r}else r=q else r=q return r}break case"lang":r=t.b9.a(a.f) r=r.a r.toString -o=A.ay(B.aA.am(r.a.c,r.b,r.c),0,null) -n=A.wG(m.a) -return n!=null&&B.b.T(n,o)}throw A.f(m.cK(a))}, -on(a){if(!A.hA(t.g9.a(a.b).L(this)))return!1 +o=A.aA(B.aA.am(r.a.c,r.b,r.c),0,null) +n=A.wL(m.a) +return n!=null&&B.b.U(n,o)}throw A.f(m.cK(a))}, +on(a){if(!A.hA(t.g9.a(a.b).M(this)))return!1 if(a.d instanceof A.d4)return!0 -if(a.gig()==="")return this.a.w==null +if(a.gih()==="")return this.a.w==null throw A.f(this.cK(a))}, -oj(a){var s,r,q,p=this.a.b.n(0,a.b.ga7().toLowerCase()) +oj(a){var s,r,q,p=this.a.b.m(0,a.b.ga8().toLowerCase()) if(p==null)return!1 s=a.d if(s===535)return!0 r=A.k(a.e) A:{if(28===s){s=p===r -break A}if(530===s){s=B.a.aH(A.i(p.split(" "),t.s),new A.nC(r)) -break A}if(531===s){if(B.b.T(p,r)){s=p.length +break A}if(530===s){s=B.a.aH(A.i(p.split(" "),t.s),new A.nG(r)) +break A}if(531===s){if(B.b.U(p,r)){s=p.length q=r.length if(s!==q){if(!(q1114111){l=A.v(["charAsInt",n],t.N,t.X) k.i(new A.j(l,j,i)) m="\ufffd"}else{l=!0 -if(!(1<=n&&n<=8))if(!(14<=n&&n<=31))if(!(127<=n&&n<=159))l=64976<=n&&n<=65007||B.a.D(B.jj,n) +if(!(1<=n&&n<=8))if(!(14<=n&&n<=31))if(!(127<=n&&n<=159))l=64976<=n&&n<=65007||B.a.C(B.jj,n) if(l){l=A.v(["charAsInt",n],t.N,t.X) -k.i(new A.j(l,j,i))}m=A.ay(A.i([n],t.Z),0,j)}if(o!==";"){k.i(new A.j(j,j,"numeric-entity-without-semicolon")) -p.W(o)}return m}, -dF(a,b){var s,r,q,p,o,n,m,l,k,j=this,i=null,h=j.a,g=A.i([h.C()],t.mf) +k.i(new A.j(l,j,i))}m=A.aA(A.i([n],t.Z),0,j)}if(o!==";"){k.i(new A.j(j,j,"numeric-entity-without-semicolon")) +p.X(o)}return m}, +dF(a,b){var s,r,q,p,o,n,m,l,k,j=this,i=null,h=j.a,g=A.i([h.D()],t.mf) if(0>=g.length)return A.c(g,0) -if(!A.a7(g[0])){if(0>=g.length)return A.c(g,0) +if(!A.a8(g[0])){if(0>=g.length)return A.c(g,0) s=g[0] s=s==="<"||s==="&"||s==null||a===s}else s=!0 if(s){if(0>=g.length)return A.c(g,0) -h.W(g[0]) +h.X(g[0]) r="&"}else{if(0>=g.length)return A.c(g,0) -if(g[0]==="#"){B.a.l(g,h.C()) +if(g[0]==="#"){B.a.l(g,h.D()) q=B.a.gA(g)==="x"||B.a.gA(g)==="X" -if(q)B.a.l(g,h.C()) -if(!(q&&A.ut(B.a.gA(g))))s=!q&&A.pD(B.a.gA(g)) +if(q)B.a.l(g,h.D()) +if(!(q&&A.uy(B.a.gA(g))))s=!q&&A.pJ(B.a.gA(g)) else s=!0 -if(s){h.W(B.a.gA(g)) -r=j.md(q)}else{j.i(new A.j(i,i,"expected-numeric-entity")) +if(s){h.X(B.a.gA(g)) +r=j.me(q)}else{j.i(new A.j(i,i,"expected-numeric-entity")) if(0>=g.length)return A.c(g,-1) -h.W(g.pop()) +h.X(g.pop()) r="&"+B.a.aQ(g)}}else{s=B.a.gA(g) if(s==null)s=i else{if(0>=s.length)return A.c(s,0) -s=s.charCodeAt(0)}p=B.kS.n(0,s) +s=s.charCodeAt(0)}p=B.kS.m(0,s) for(;;){if(!(p!=null&&B.a.gA(g)!=null))break -B.a.l(g,h.C()) +B.a.l(g,h.D()) s=B.a.gA(g) if(s==null)s=i else{if(0>=s.length)return A.c(s,0) -s=s.charCodeAt(0)}p=p.n(0,s)}n=g.length-1 +s=s.charCodeAt(0)}p=p.m(0,s)}n=g.length-1 for(;;){if(!(n>1)){o=i break}m=B.a.aQ(B.a.am(g,0,n)) -if(B.fs.a8(m)){o=m +if(B.fs.a7(m)){o=m break}--n}if(o!=null){s=o.length l=s-1 if(!(l>=0))return A.c(o,l) @@ -14217,97 +14298,97 @@ if(s)j.i(new A.j(i,i,"named-entity-without-semicolon")) l=!1 if(s)if(b){if(!(n>=0&&n=g.length)return A.c(g,-1) -h.W(g.pop()) -r="&"+B.a.aQ(g)}else{r=B.fs.n(0,o) +h.X(g.pop()) +r="&"+B.a.aQ(g)}else{r=B.fs.m(0,o) if(0>=g.length)return A.c(g,-1) -h.W(g.pop()) -r=A.k(r)+B.a.aQ(A.qX(g,n,i,t.jv))}}else{if(!b)j.i(new A.j(i,i,"expected-named-entity")) +h.X(g.pop()) +r=A.k(r)+B.a.aQ(A.r1(g,n,i,t.jv))}}else{if(!b)j.i(new A.j(i,i,"expected-named-entity")) if(0>=g.length)return A.c(g,-1) -h.W(g.pop()) +h.X(g.pop()) r="&"+B.a.aQ(g)}}}if(b)j.ay.a+=r -else{if(A.a7(r))k=new A.dB(i,r) -else k=new A.B(i,r) +else{if(A.a8(r))k=new A.dC(i,r) +else k=new A.D(i,r) j.i(k)}}, -i_(){return this.dF(null,!1)}, +i0(){return this.dF(null,!1)}, b7(){var s,r,q,p,o,n,m=this,l=null,k=m.w k.toString if(k instanceof A.cA){s=k.b k.b=s==null?l:A.c9(s) if(k instanceof A.H){if(m.Q!=null)m.i(new A.j(l,l,"attributes-in-end-tag")) -if(k.c)m.i(new A.j(l,l,"this-closing-flag-on-end-tag"))}else if(k instanceof A.d2){k.saC(A.ac(t.K,t.N)) +if(k.c)m.i(new A.j(l,l,"this-closing-flag-on-end-tag"))}else if(k instanceof A.d2){k.saC(A.ae(t.K,t.N)) s=m.Q -if(s!=null)for(r=s.length,q=0;q"){s.i(new A.j(r,r,"expected-tag-name-but-got-right-bracket")) -s.i(new A.B(r,"<>")) +s.i(new A.D(r,"\ufffd"))}else{q=q.hT(0) +s.i(new A.D(r,p+q))}return!0}, +oe(){var s=this,r=null,q=s.a,p=q.D() +if(p==="!")s.x=t.c.a(s.gno()) +else if(p==="/")s.x=t.c.a(s.gm1()) +else if(A.b4(p)){s.w=A.aZ(p,r,r,!1) +s.x=t.c.a(s.giA())}else if(p===">"){s.i(new A.j(r,r,"expected-tag-name-but-got-right-bracket")) +s.i(new A.D(r,"<>")) s.x=t.c.a(s.gE())}else if(p==="?"){s.i(new A.j(r,r,"expected-tag-name-but-got-question-mark")) -q.W(p) -s.x=t.c.a(s.geA())}else{s.i(new A.j(r,r,"expected-tag-name")) -s.i(new A.B(r,"<")) -q.W(p) +q.X(p) +s.x=t.c.a(s.geB())}else{s.i(new A.j(r,r,"expected-tag-name")) +s.i(new A.D(r,"<")) +q.X(p) s.x=t.c.a(s.gE())}return!0}, -m1(){var s,r=this,q=null,p=r.a,o=p.C() -if(A.b3(o)){r.w=new A.H(o,!1) -r.x=t.c.a(r.giz())}else if(o===">"){r.i(new A.j(q,q,u.g)) +m2(){var s,r=this,q=null,p=r.a,o=p.D() +if(A.b4(o)){r.w=new A.H(o,!1) +r.x=t.c.a(r.giA())}else if(o===">"){r.i(new A.j(q,q,u.g)) r.x=t.c.a(r.gE())}else if(o==null){r.i(new A.j(q,q,"expected-closing-tag-but-got-eof")) -r.i(new A.B(q,"")r.b7() else if(p==null){r.i(new A.j(q,q,"eof-in-tag-name")) r.x=t.c.a(r.gE())}else if(p==="/")r.x=t.c.a(r.gbm()) @@ -14315,202 +14396,202 @@ else if(p==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) s=t.fn.a(r.w) s.b=A.k(s.b)+"\ufffd"}else{s=t.fn.a(r.w) s.b=A.k(s.b)+p}return!0}, -o2(){var s=this,r=s.a,q=r.C() +o3(){var s=this,r=s.a,q=r.D() if(q==="/"){s.y.a="" -s.x=t.c.a(s.go_())}else{s.i(new A.B(null,"<")) -r.W(q) +s.x=t.c.a(s.go0())}else{s.i(new A.D(null,"<")) +r.X(q) s.x=t.c.a(s.gcu())}return!0}, -o0(){var s=this,r=s.a,q=r.C() -if(A.b3(q)){s.y.a+=A.k(q) -s.x=t.c.a(s.gnY())}else{s.i(new A.B(null,""&&q){r.w=new A.H(r.y.j(0),!1) r.b7() r.x=t.c.a(r.gE())}else{s=r.y -if(A.b3(o))s.a+=A.k(o) +if(A.b4(o))s.a+=A.k(o) else{s=s.j(0) -r.i(new A.B(null,""&&q){r.w=new A.H(r.y.j(0),!1) r.b7() r.x=t.c.a(r.gE())}else{s=r.y -if(A.b3(o))s.a+=A.k(o) +if(A.b4(o))s.a+=A.k(o) else{s=s.j(0) -r.i(new A.B(null,""&&q){r.w=new A.H(r.y.j(0),!1) r.b7() r.x=t.c.a(r.gE())}else{s=r.y -if(A.b3(o))s.a+=A.k(o) +if(A.b4(o))s.a+=A.k(o) else{s=s.j(0) -r.i(new A.B(null,""){s.i(new A.B(r,">")) +s.i(new A.D(r,"\ufffd")) +s.x=t.c.a(s.gbf())}else if(q==null)s.x=t.c.a(s.gE()) +else{s.i(new A.D(r,q)) +s.x=t.c.a(s.gbf())}return!0}, +j8(){var s=this,r=null,q=s.a.D() +if(q==="-")s.i(new A.D(r,"-")) +else if(q==="<")s.x=t.c.a(s.ge4()) +else if(q===">"){s.i(new A.D(r,">")) s.x=t.c.a(s.gbC())}else if(q==="\x00"){s.i(new A.j(r,r,"invalid-codepoint")) -s.i(new A.B(r,"\ufffd")) -s.x=t.c.a(s.gbe())}else if(q==null)s.x=t.c.a(s.gE()) -else{s.i(new A.B(r,q)) -s.x=t.c.a(s.gbe())}return!0}, -je(){var s,r=this,q=r.a,p=q.C() +s.i(new A.D(r,"\ufffd")) +s.x=t.c.a(s.gbf())}else if(q==null)s.x=t.c.a(s.gE()) +else{s.i(new A.D(r,q)) +s.x=t.c.a(s.gbf())}return!0}, +jf(){var s,r=this,q=r.a,p=q.D() if(p==="/"){r.y.a="" -r.x=t.c.a(r.gjc())}else if(A.b3(p)){q=A.k(p) -r.i(new A.B(null,"<"+q)) +r.x=t.c.a(r.gjd())}else if(A.b4(p)){q=A.k(p) +r.i(new A.D(null,"<"+q)) s=r.y s.a="" s.a=q -r.x=t.c.a(r.giS())}else{r.i(new A.B(null,"<")) -q.W(p) -r.x=t.c.a(r.gbe())}return!0}, -jd(){var s=this,r=s.a,q=r.C() -if(A.b3(q)){r=s.y +r.x=t.c.a(r.giT())}else{r.i(new A.D(null,"<")) +q.X(p) +r.x=t.c.a(r.gbf())}return!0}, +je(){var s=this,r=s.a,q=r.D() +if(A.b4(q)){r=s.y r.a="" r.a=A.k(q) -s.x=t.c.a(s.gja())}else{s.i(new A.B(null,""&&q){r.w=new A.H(r.y.j(0),!1) r.b7() r.x=t.c.a(r.gE())}else{s=r.y -if(A.b3(o))s.a+=A.k(o) +if(A.b4(o))s.a+=A.k(o) else{s=s.j(0) -r.i(new A.B(null,""){s.i(new A.B(q==null?new A.W(""):null,q)) +r.i(new A.D(null,""){s.i(new A.D(q==null?new A.Y(""):null,q)) r=t.c if(s.y.j(0).toLowerCase()==="script")s.x=r.a(s.gbB()) -else s.x=r.a(s.gbe())}else if(A.b3(q)){s.i(new A.B(q==null?new A.W(""):null,q)) -s.y.a+=A.k(q)}else{r.W(q) -s.x=t.c.a(s.gbe())}return!0}, -iZ(){var s=this,r=null,q=s.a.C() -if(q==="-"){s.i(new A.B(r,"-")) -s.x=t.c.a(s.giW())}else if(q==="<"){s.i(new A.B(r,"<")) -s.x=t.c.a(s.ge2())}else if(q==="\x00"){s.i(new A.j(r,r,"invalid-codepoint")) -s.i(new A.B(r,"\ufffd"))}else if(q==null){s.i(new A.j(r,r,"eof-in-script-in-script")) -s.x=t.c.a(s.gE())}else s.i(new A.B(r,q)) +else s.x=r.a(s.gbf())}else if(A.b4(q)){s.i(new A.D(q==null?new A.Y(""):null,q)) +s.y.a+=A.k(q)}else{r.X(q) +s.x=t.c.a(s.gbf())}return!0}, +j_(){var s=this,r=null,q=s.a.D() +if(q==="-"){s.i(new A.D(r,"-")) +s.x=t.c.a(s.giX())}else if(q==="<"){s.i(new A.D(r,"<")) +s.x=t.c.a(s.ge3())}else if(q==="\x00"){s.i(new A.j(r,r,"invalid-codepoint")) +s.i(new A.D(r,"\ufffd"))}else if(q==null){s.i(new A.j(r,r,"eof-in-script-in-script")) +s.x=t.c.a(s.gE())}else s.i(new A.D(r,q)) return!0}, -iX(){var s=this,r=null,q=s.a.C() -if(q==="-"){s.i(new A.B(r,"-")) -s.x=t.c.a(s.giU())}else if(q==="<"){s.i(new A.B(r,"<")) -s.x=t.c.a(s.ge2())}else if(q==="\x00"){s.i(new A.j(r,r,"invalid-codepoint")) -s.i(new A.B(r,"\ufffd")) +iY(){var s=this,r=null,q=s.a.D() +if(q==="-"){s.i(new A.D(r,"-")) +s.x=t.c.a(s.giV())}else if(q==="<"){s.i(new A.D(r,"<")) +s.x=t.c.a(s.ge3())}else if(q==="\x00"){s.i(new A.j(r,r,"invalid-codepoint")) +s.i(new A.D(r,"\ufffd")) s.x=t.c.a(s.gbB())}else if(q==null){s.i(new A.j(r,r,"eof-in-script-in-script")) -s.x=t.c.a(s.gE())}else{s.i(new A.B(r,q)) +s.x=t.c.a(s.gE())}else{s.i(new A.D(r,q)) s.x=t.c.a(s.gbB())}return!0}, -iV(){var s=this,r=null,q=s.a.C() -if(q==="-")s.i(new A.B(r,"-")) -else if(q==="<"){s.i(new A.B(r,"<")) -s.x=t.c.a(s.ge2())}else if(q===">"){s.i(new A.B(r,">")) +iW(){var s=this,r=null,q=s.a.D() +if(q==="-")s.i(new A.D(r,"-")) +else if(q==="<"){s.i(new A.D(r,"<")) +s.x=t.c.a(s.ge3())}else if(q===">"){s.i(new A.D(r,">")) s.x=t.c.a(s.gbC())}else if(q==="\x00"){s.i(new A.j(r,r,"invalid-codepoint")) -s.i(new A.B(r,"\ufffd")) +s.i(new A.D(r,"\ufffd")) s.x=t.c.a(s.gbB())}else if(q==null){s.i(new A.j(r,r,"eof-in-script-in-script")) -s.x=t.c.a(s.gE())}else{s.i(new A.B(r,q)) +s.x=t.c.a(s.gE())}else{s.i(new A.D(r,q)) s.x=t.c.a(s.gbB())}return!0}, -iY(){var s=this,r=s.a,q=r.C() -if(q==="/"){s.i(new A.B(null,"/")) +iZ(){var s=this,r=s.a,q=r.D() +if(q==="/"){s.i(new A.D(null,"/")) s.y.a="" -s.x=t.c.a(s.giQ())}else{r.W(q) +s.x=t.c.a(s.giR())}else{r.X(q) s.x=t.c.a(s.gbB())}return!0}, -iR(){var s=this,r=s.a,q=r.C() -if(A.a7(q)||q==="/"||q===">"){s.i(new A.B(q==null?new A.W(""):null,q)) +iS(){var s=this,r=s.a,q=r.D() +if(A.a8(q)||q==="/"||q===">"){s.i(new A.D(q==null?new A.Y(""):null,q)) r=t.c -if(s.y.j(0).toLowerCase()==="script")s.x=r.a(s.gbe()) -else s.x=r.a(s.gbB())}else if(A.b3(q)){s.i(new A.B(q==null?new A.W(""):null,q)) -s.y.a+=A.k(q)}else{r.W(q) +if(s.y.j(0).toLowerCase()==="script")s.x=r.a(s.gbf()) +else s.x=r.a(s.gbB())}else if(A.b4(q)){s.i(new A.D(q==null?new A.Y(""):null,q)) +s.y.a+=A.k(q)}else{r.X(q) s.x=t.c.a(s.gbB())}return!0}, -lG(){var s=this,r=null,q=s.a,p=q.C() -if(A.a7(p))q.cL(!0) +lH(){var s=this,r=null,q=s.a,p=q.D() +if(A.a8(p))q.cL(!0) else{q=p==null -if(!q&&A.b3(p)){s.bF(p) +if(!q&&A.b4(p)){s.bF(p) s.x=t.c.a(s.gbI())}else if(p===">")s.b7() else if(p==="/")s.x=t.c.a(s.gbm()) else if(q){s.i(new A.j(r,r,"expected-attribute-name-but-got-eof")) -s.x=t.c.a(s.gE())}else if(B.b.D("'\"=<",p)){s.i(new A.j(r,r,"invalid-character-in-attribute-name")) +s.x=t.c.a(s.gE())}else if(B.b.C("'\"=<",p)){s.i(new A.j(r,r,"invalid-character-in-attribute-name")) s.bF(p) s.x=t.c.a(s.gbI())}else if(p==="\x00"){s.i(new A.j(r,r,"invalid-codepoint")) s.bF("\ufffd") s.x=t.c.a(s.gbI())}else{s.bF(p) s.x=t.c.a(s.gbI())}}return!0}, -ls(){var s,r,q=this,p=null,o=q.a,n=o.C(),m=!0,l=!1 -if(n==="=")q.x=t.c.a(q.ghO()) -else if(A.b3(n)){s=q.ax +lt(){var s,r,q=this,p=null,o=q.a,n=o.D(),m=!0,l=!1 +if(n==="=")q.x=t.c.a(q.ghP()) +else if(A.b4(n)){s=q.ax s.a+=A.k(n) -o=o.lZ(!0) +o=o.m_(!0) s.a+=o m=!1}else{l=n===">" -if(!l)if(A.a7(n))q.x=t.c.a(q.glc()) +if(!l)if(A.a8(n))q.x=t.c.a(q.gld()) else if(n==="/")q.x=t.c.a(q.gbm()) else if(n==="\x00"){q.i(new A.j(p,p,"invalid-codepoint")) q.ax.a+="\ufffd" m=!1}else{m=n==null if(m){q.i(new A.j(p,p,"eof-in-attribute-name")) -q.x=t.c.a(q.gE())}else if(B.b.D("'\"<",n)){q.i(new A.j(p,p,"invalid-character-in-attribute-name")) +q.x=t.c.a(q.gE())}else if(B.b.C("'\"<",n)){q.i(new A.j(p,p,"invalid-character-in-attribute-name")) q.ax.a+=n}else q.ax.a+=n}}if(m){q.dl(-1) o=q.ax.a r=A.c9(o.charCodeAt(0)==0?o:o) @@ -14518,124 +14599,124 @@ o=q.Q o.toString B.a.gA(o).a=r o=q.as -if((o==null?q.as=A.j2(t.N):o).D(0,r))q.i(new A.j(p,p,"duplicate-attribute")) +if((o==null?q.as=A.j3(t.N):o).C(0,r))q.i(new A.j(p,p,"duplicate-attribute")) q.as.l(0,r) if(l)q.b7()}return!0}, -ld(){var s=this,r=null,q=s.a,p=q.C() -if(A.a7(p))q.cL(!0) -else if(p==="=")s.x=t.c.a(s.ghO()) +le(){var s=this,r=null,q=s.a,p=q.D() +if(A.a8(p))q.cL(!0) +else if(p==="=")s.x=t.c.a(s.ghP()) else if(p===">")s.b7() else{q=p==null -if(!q&&A.b3(p)){s.bF(p) +if(!q&&A.b4(p)){s.bF(p) s.x=t.c.a(s.gbI())}else if(p==="/")s.x=t.c.a(s.gbm()) else if(p==="\x00"){s.i(new A.j(r,r,"invalid-codepoint")) s.bF("\ufffd") s.x=t.c.a(s.gbI())}else if(q){s.i(new A.j(r,r,"expected-end-of-tag-but-got-eof")) -s.x=t.c.a(s.gE())}else if(B.b.D("'\"<",p)){s.i(new A.j(r,r,"invalid-character-after-attribute-name")) +s.x=t.c.a(s.gE())}else if(B.b.C("'\"<",p)){s.i(new A.j(r,r,"invalid-character-after-attribute-name")) s.bF(p) s.x=t.c.a(s.gbI())}else{s.bF(p) s.x=t.c.a(s.gbI())}}return!0}, -lH(){var s=this,r=null,q=s.a,p=q.C() -if(A.a7(p))q.cL(!0) -else if(p==='"'){s.cj(0) -s.x=t.c.a(s.glw())}else if(p==="&"){s.x=t.c.a(s.gdE()) -q.W(p) -s.cj(0)}else if(p==="'"){s.cj(0) -s.x=t.c.a(s.glC())}else if(p===">"){s.i(new A.j(r,r,u.F)) +lI(){var s=this,r=null,q=s.a,p=q.D() +if(A.a8(p))q.cL(!0) +else if(p==='"'){s.ck(0) +s.x=t.c.a(s.glx())}else if(p==="&"){s.x=t.c.a(s.gdE()) +q.X(p) +s.ck(0)}else if(p==="'"){s.ck(0) +s.x=t.c.a(s.glD())}else if(p===">"){s.i(new A.j(r,r,u.F)) s.b7()}else if(p==="\x00"){s.i(new A.j(r,r,"invalid-codepoint")) -s.cj(-1) +s.ck(-1) s.ay.a+="\ufffd" s.x=t.c.a(s.gdE())}else if(p==null){s.i(new A.j(r,r,"expected-attribute-value-but-got-eof")) -s.x=t.c.a(s.gE())}else if(B.b.D("=<`",p)){s.i(new A.j(r,r,"equals-in-unquoted-attribute-value")) -s.cj(-1) +s.x=t.c.a(s.gE())}else if(B.b.C("=<`",p)){s.i(new A.j(r,r,"equals-in-unquoted-attribute-value")) +s.ck(-1) s.ay.a+=p -s.x=t.c.a(s.gdE())}else{s.cj(-1) +s.x=t.c.a(s.gdE())}else{s.ck(-1) s.ay.a+=p s.x=t.c.a(s.gdE())}return!0}, -lx(){var s,r=this,q=null,p=r.a,o=p.C() -if(o==='"'){r.c0(-1) +ly(){var s,r=this,q=null,p=r.a,o=p.D() +if(o==='"'){r.c1(-1) r.dl(0) -r.x=t.c.a(r.ghI())}else if(o==="&")r.dF('"',!0) +r.x=t.c.a(r.ghJ())}else if(o==="&")r.dF('"',!0) else if(o==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) r.ay.a+="\ufffd"}else if(o==null){r.i(new A.j(q,q,"eof-in-attribute-value-double-quote")) -r.c0(-1) +r.c1(-1) r.x=t.c.a(r.gE())}else{s=r.ay s.a+=o -p=p.cn(34,38) +p=p.co(34,38) s.a+=p}return!0}, -lD(){var s,r=this,q=null,p=r.a,o=p.C() -if(o==="'"){r.c0(-1) +lE(){var s,r=this,q=null,p=r.a,o=p.D() +if(o==="'"){r.c1(-1) r.dl(0) -r.x=t.c.a(r.ghI())}else if(o==="&")r.dF("'",!0) +r.x=t.c.a(r.ghJ())}else if(o==="&")r.dF("'",!0) else if(o==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) r.ay.a+="\ufffd"}else if(o==null){r.i(new A.j(q,q,"eof-in-attribute-value-single-quote")) -r.c0(-1) +r.c1(-1) r.x=t.c.a(r.gE())}else{s=r.ay s.a+=o -p=p.cn(39,38) +p=p.co(39,38) s.a+=p}return!0}, -lE(){var s,r=this,q=null,p=r.a,o=p.C() -if(A.a7(o)){r.c0(-1) +lF(){var s,r=this,q=null,p=r.a,o=p.D() +if(A.a8(o)){r.c1(-1) r.x=t.c.a(r.gbs())}else if(o==="&")r.dF(">",!0) -else if(o===">"){r.c0(-1) +else if(o===">"){r.c1(-1) r.b7()}else if(o==null){r.i(new A.j(q,q,"eof-in-attribute-value-no-quotes")) -r.c0(-1) -r.x=t.c.a(r.gE())}else if(B.b.D("\"'=<`",o)){r.i(new A.j(q,q,u.V)) +r.c1(-1) +r.x=t.c.a(r.gE())}else if(B.b.C("\"'=<`",o)){r.i(new A.j(q,q,u.V)) r.ay.a+=o}else if(o==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) r.ay.a+="\ufffd"}else{s=r.ay s.a+=o -p=p.lY(B.Mk) +p=p.lZ(B.Ml) s.a+=p}return!0}, -le(){var s=this,r=null,q=s.a,p=q.C() -if(A.a7(p))s.x=t.c.a(s.gbs()) +lf(){var s=this,r=null,q=s.a,p=q.D() +if(A.a8(p))s.x=t.c.a(s.gbs()) else if(p===">")s.b7() else if(p==="/")s.x=t.c.a(s.gbm()) else if(p==null){s.i(new A.j(r,r,"unexpected-EOF-after-attribute-value")) -q.W(p) +q.X(p) s.x=t.c.a(s.gE())}else{s.i(new A.j(r,r,u.H)) -q.W(p) +q.X(p) s.x=t.c.a(s.gbs())}return!0}, -jj(){var s=this,r=null,q=s.a,p=q.C() +jk(){var s=this,r=null,q=s.a,p=q.D() if(p===">"){t.fn.a(s.w).c=!0 s.b7()}else if(p==null){s.i(new A.j(r,r,"unexpected-EOF-after-solidus-in-tag")) -q.W(p) +q.X(p) s.x=t.c.a(s.gE())}else{s.i(new A.j(r,r,u.B)) -q.W(p) +q.X(p) s.x=t.c.a(s.gbs())}return!0}, -lO(){var s=this,r=s.a,q=r.hS(62) +lP(){var s=this,r=s.a,q=r.hT(62) q=A.cO(q,"\x00","\ufffd") s.i(new A.dU(null,q)) -r.C() +r.D() s.x=t.c.a(s.gE()) return!0}, -no(){var s,r,q,p,o,n,m=this,l=m.a,k=A.i([l.C()],t.mf) -if(B.a.gA(k)==="-"){B.a.l(k,l.C()) -if(B.a.gA(k)==="-"){m.w=new A.dU(new A.W(""),null) -m.x=t.c.a(m.gma()) +np(){var s,r,q,p,o,n,m=this,l=m.a,k=A.i([l.D()],t.mf) +if(B.a.gA(k)==="-"){B.a.l(k,l.D()) +if(B.a.gA(k)==="-"){m.w=new A.dU(new A.Y(""),null) +m.x=t.c.a(m.gmb()) return!0}}else if(B.a.gA(k)==="d"||B.a.gA(k)==="D"){r=0 for(;;){if(!(r<6)){s=!0 break}q=B.j1[r] -p=l.C() +p=l.D() B.a.l(k,p) -if(p==null||!B.b.D(q,p)){s=!1 +if(p==null||!B.b.C(q,p)){s=!1 break}++r}if(s){m.w=new A.eS(!0) -m.x=t.c.a(m.gmL()) +m.x=t.c.a(m.gmM()) return!0}}else{o=!1 if(B.a.gA(k)==="["){n=m.f if(n!=null){o=n.d.c o=o.length!==0&&B.a.gA(o).w!=m.f.d.a}}if(o){r=0 for(;;){if(!(r<6)){s=!0 break}q=B.j0[r] -B.a.l(k,l.C()) +B.a.l(k,l.D()) if(B.a.gA(k)!==q){s=!1 -break}++r}if(s){m.x=t.c.a(m.glS()) +break}++r}if(s){m.x=t.c.a(m.glT()) return!0}}}m.i(new A.j(null,null,"expected-dashes-or-doctype")) while(o=k.length,o!==0){if(0>=o)return A.c(k,-1) o=k.pop() -if(o!=null)l.y=l.y-o.length}m.x=t.c.a(m.geA()) +if(o!=null)l.y=l.y-o.length}m.x=t.c.a(m.geB()) return!0}, -mb(){var s,r=this,q=null,p=r.a.C() -if(p==="-")r.x=t.c.a(r.gm8()) +mc(){var s,r=this,q=null,p=r.a.D() +if(p==="-")r.x=t.c.a(r.gm9()) else if(p==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) t.v.a(r.w).b.a+="\ufffd"}else if(p===">"){r.i(new A.j(q,q,"incorrect-comment")) s=r.w @@ -14647,8 +14728,8 @@ s.toString r.i(s) r.x=t.c.a(r.gE())}else{t.v.a(r.w).b.a+=p r.x=t.c.a(r.gbJ())}return!0}, -m9(){var s,r=this,q=null,p=r.a.C() -if(p==="-")r.x=t.c.a(r.ghY()) +ma(){var s,r=this,q=null,p=r.a.D() +if(p==="-")r.x=t.c.a(r.ghZ()) else if(p==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) t.v.a(r.w).b.a+="-\ufffd"}else if(p===">"){r.i(new A.j(q,q,"incorrect-comment")) s=r.w @@ -14661,8 +14742,8 @@ r.i(s) r.x=t.c.a(r.gE())}else{s=t.v.a(r.w).b s.a=(s.a+="-")+p r.x=t.c.a(r.gbJ())}return!0}, -mc(){var s,r=this,q=null,p=r.a,o=p.C() -if(o==="-")r.x=t.c.a(r.ghX()) +md(){var s,r=this,q=null,p=r.a,o=p.D() +if(o==="-")r.x=t.c.a(r.ghY()) else if(o==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) t.v.a(r.w).b.a+="\ufffd"}else if(o==null){r.i(new A.j(q,q,"eof-in-comment")) p=r.w @@ -14670,11 +14751,11 @@ p.toString r.i(p) r.x=t.c.a(r.gE())}else{s=t.v.a(r.w) s.b.a+=o -p=p.cn(45,0) +p=p.co(45,0) s=s.b s.a+=p}return!0}, -m6(){var s,r=this,q=null,p=r.a.C() -if(p==="-")r.x=t.c.a(r.ghY()) +m7(){var s,r=this,q=null,p=r.a.D() +if(p==="-")r.x=t.c.a(r.ghZ()) else if(p==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) t.v.a(r.w).b.a+="-\ufffd" r.x=t.c.a(r.gbJ())}else if(p==null){r.i(new A.j(q,q,"eof-in-comment-end-dash")) @@ -14684,14 +14765,14 @@ r.i(s) r.x=t.c.a(r.gE())}else{s=t.v.a(r.w).b s.a=(s.a+="-")+p r.x=t.c.a(r.gbJ())}return!0}, -m7(){var s,r=this,q=null,p=r.a.C() +m8(){var s,r=this,q=null,p=r.a.D() if(p===">"){s=r.w s.toString r.i(s) r.x=t.c.a(r.gE())}else if(p==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) t.v.a(r.w).b.a+="--\ufffd" r.x=t.c.a(r.gbJ())}else if(p==="!"){r.i(new A.j(q,q,u.x)) -r.x=t.c.a(r.gm4())}else if(p==="-"){r.i(new A.j(q,q,u.K)) +r.x=t.c.a(r.gm5())}else if(p==="-"){r.i(new A.j(q,q,u.K)) s=t.v.a(r.w) p.toString s.b.a+=p}else if(p==null){r.i(new A.j(q,q,"eof-in-comment-double-dash")) @@ -14702,12 +14783,12 @@ r.x=t.c.a(r.gE())}else{r.i(new A.j(q,q,"unexpected-char-in-comment")) s=t.v.a(r.w).b s.a=(s.a+="--")+p r.x=t.c.a(r.gbJ())}return!0}, -m5(){var s,r=this,q=null,p=r.a.C() +m6(){var s,r=this,q=null,p=r.a.D() if(p===">"){s=r.w s.toString r.i(s) r.x=t.c.a(r.gE())}else if(p==="-"){t.v.a(r.w).b.a+="--!" -r.x=t.c.a(r.ghX())}else if(p==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) +r.x=t.c.a(r.ghY())}else if(p==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) t.v.a(r.w).b.a+="--!\ufffd" r.x=t.c.a(r.gbJ())}else if(p==null){r.i(new A.j(q,q,"eof-in-comment-end-bang-state")) s=r.w @@ -14716,34 +14797,34 @@ r.i(s) r.x=t.c.a(r.gE())}else{s=t.v.a(r.w).b s.a=(s.a+="--!")+p r.x=t.c.a(r.gbJ())}return!0}, -mM(){var s=this,r=null,q=s.a,p=q.C() -if(A.a7(p))s.x=t.c.a(s.ghP()) +mN(){var s=this,r=null,q=s.a,p=q.D() +if(A.a8(p))s.x=t.c.a(s.ghQ()) else if(p==null){s.i(new A.j(r,r,"expected-doctype-name-but-got-eof")) q=t.W.a(s.w) q.e=!1 s.i(q) s.x=t.c.a(s.gE())}else{s.i(new A.j(r,r,"need-space-after-doctype")) -q.W(p) -s.x=t.c.a(s.ghP())}return!0}, -lI(){var s,r=this,q=null,p=r.a.C() -if(A.a7(p))return!0 +q.X(p) +s.x=t.c.a(s.ghQ())}return!0}, +lJ(){var s,r=this,q=null,p=r.a.D() +if(A.a8(p))return!0 else if(p===">"){r.i(new A.j(q,q,u.f)) s=t.W.a(r.w) s.e=!1 r.i(s) r.x=t.c.a(r.gE())}else if(p==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) t.W.a(r.w).d="\ufffd" -r.x=t.c.a(r.geK())}else if(p==null){r.i(new A.j(q,q,"expected-doctype-name-but-got-eof")) +r.x=t.c.a(r.geL())}else if(p==null){r.i(new A.j(q,q,"expected-doctype-name-but-got-eof")) s=t.W.a(r.w) s.e=!1 r.i(s) r.x=t.c.a(r.gE())}else{t.W.a(r.w).d=p -r.x=t.c.a(r.geK())}return!0}, -mC(){var s,r,q=this,p=null,o=q.a.C() -if(A.a7(o)){s=t.W.a(q.w) +r.x=t.c.a(r.geL())}return!0}, +mD(){var s,r,q=this,p=null,o=q.a.D() +if(A.a8(o)){s=t.W.a(q.w) r=s.d s.d=r==null?p:A.c9(r) -q.x=t.c.a(q.glf())}else if(o===">"){s=t.W.a(q.w) +q.x=t.c.a(q.glg())}else if(o===">"){s=t.W.a(q.w) r=s.d s.d=r==null?p:A.c9(r) s=q.w @@ -14752,7 +14833,7 @@ q.i(s) q.x=t.c.a(q.gE())}else if(o==="\x00"){q.i(new A.j(p,p,"invalid-codepoint")) s=t.W.a(q.w) s.d=A.k(s.d)+"\ufffd" -q.x=t.c.a(q.geK())}else if(o==null){q.i(new A.j(p,p,"eof-in-doctype-name")) +q.x=t.c.a(q.geL())}else if(o==null){q.i(new A.j(p,p,"eof-in-doctype-name")) s=t.W.a(q.w) s.e=!1 r=s.d @@ -14762,13 +14843,13 @@ s.toString q.i(s) q.x=t.c.a(q.gE())}else{s=t.W.a(q.w) s.d=A.k(s.d)+o}return!0}, -lg(){var s,r,q,p=this,o=p.a,n=o.C() -if(A.a7(n))return!0 +lh(){var s,r,q,p=this,o=p.a,n=o.D() +if(A.a8(n))return!0 else if(n===">"){o=p.w o.toString p.i(o) p.x=t.c.a(p.gE())}else if(n==null){t.W.a(p.w).e=!1 -o.W(n) +o.X(n) p.i(new A.j(null,null,"eof-in-doctype")) o=p.w o.toString @@ -14776,35 +14857,35 @@ p.i(o) p.x=t.c.a(p.gE())}else{if(n==="p"||n==="P"){r=0 for(;;){if(!(r<5)){s=!0 break}q=B.ji[r] -n=o.C() -if(n==null||!B.b.D(q,n)){s=!1 -break}++r}if(s){p.x=t.c.a(p.gli()) +n=o.D() +if(n==null||!B.b.C(q,n)){s=!1 +break}++r}if(s){p.x=t.c.a(p.glj()) return!0}}else if(n==="s"||n==="S"){r=0 for(;;){if(!(r<5)){s=!0 break}q=B.iZ[r] -n=o.C() -if(n==null||!B.b.D(q,n)){s=!1 -break}++r}if(s){p.x=t.c.a(p.gll()) -return!0}}o.W(n) +n=o.D() +if(n==null||!B.b.C(q,n)){s=!1 +break}++r}if(s){p.x=t.c.a(p.glm()) +return!0}}o.X(n) o=A.v(["data",n],t.N,t.X) p.i(new A.j(o,null,u.p)) t.W.a(p.w).e=!1 -p.x=t.c.a(p.gcm())}return!0}, -lj(){var s=this,r=null,q=s.a,p=q.C() -if(A.a7(p))s.x=t.c.a(s.gey()) +p.x=t.c.a(p.gcn())}return!0}, +lk(){var s=this,r=null,q=s.a,p=q.D() +if(A.a8(p))s.x=t.c.a(s.gez()) else if(p==="'"||p==='"'){s.i(new A.j(r,r,"unexpected-char-in-doctype")) -q.W(p) -s.x=t.c.a(s.gey())}else if(p==null){s.i(new A.j(r,r,"eof-in-doctype")) +q.X(p) +s.x=t.c.a(s.gez())}else if(p==null){s.i(new A.j(r,r,"eof-in-doctype")) q=t.W.a(s.w) q.e=!1 s.i(q) -s.x=t.c.a(s.gE())}else{q.W(p) -s.x=t.c.a(s.gey())}return!0}, -lJ(){var s,r=this,q=null,p=r.a.C() -if(A.a7(p))return!0 +s.x=t.c.a(s.gE())}else{q.X(p) +s.x=t.c.a(s.gez())}return!0}, +lK(){var s,r=this,q=null,p=r.a.D() +if(A.a8(p))return!0 else if(p==='"'){t.W.a(r.w).b="" -r.x=t.c.a(r.gmF())}else if(p==="'"){t.W.a(r.w).b="" -r.x=t.c.a(r.gmH())}else if(p===">"){r.i(new A.j(q,q,"unexpected-end-of-doctype")) +r.x=t.c.a(r.gmG())}else if(p==="'"){t.W.a(r.w).b="" +r.x=t.c.a(r.gmI())}else if(p===">"){r.i(new A.j(q,q,"unexpected-end-of-doctype")) s=t.W.a(r.w) s.e=!1 r.i(s) @@ -14814,9 +14895,9 @@ s.e=!1 r.i(s) r.x=t.c.a(r.gE())}else{r.i(new A.j(q,q,"unexpected-char-in-doctype")) t.W.a(r.w).e=!1 -r.x=t.c.a(r.gcm())}return!0}, -mG(){var s,r=this,q=null,p=r.a.C() -if(p==='"')r.x=t.c.a(r.ghJ()) +r.x=t.c.a(r.gcn())}return!0}, +mH(){var s,r=this,q=null,p=r.a.D() +if(p==='"')r.x=t.c.a(r.ghK()) else if(p==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) s=t.W.a(r.w) s.b=A.k(s.b)+"\ufffd"}else if(p===">"){r.i(new A.j(q,q,"unexpected-end-of-doctype")) @@ -14829,8 +14910,8 @@ s.e=!1 r.i(s) r.x=t.c.a(r.gE())}else{s=t.W.a(r.w) s.b=A.k(s.b)+p}return!0}, -mI(){var s,r=this,q=null,p=r.a.C() -if(p==="'")r.x=t.c.a(r.ghJ()) +mJ(){var s,r=this,q=null,p=r.a.D() +if(p==="'")r.x=t.c.a(r.ghK()) else if(p==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) s=t.W.a(r.w) s.b=A.k(s.b)+"\ufffd"}else if(p===">"){r.i(new A.j(q,q,"unexpected-end-of-doctype")) @@ -14843,51 +14924,51 @@ s.e=!1 r.i(s) r.x=t.c.a(r.gE())}else{s=t.W.a(r.w) s.b=A.k(s.b)+p}return!0}, -lh(){var s,r=this,q=null,p="unexpected-char-in-doctype",o=r.a.C() -if(A.a7(o))r.x=t.c.a(r.glL()) +li(){var s,r=this,q=null,p="unexpected-char-in-doctype",o=r.a.D() +if(A.a8(o))r.x=t.c.a(r.glM()) else if(o===">"){s=r.w s.toString r.i(s) r.x=t.c.a(r.gE())}else if(o==='"'){r.i(new A.j(q,q,p)) t.W.a(r.w).c="" -r.x=t.c.a(r.geL())}else if(o==="'"){r.i(new A.j(q,q,p)) +r.x=t.c.a(r.geM())}else if(o==="'"){r.i(new A.j(q,q,p)) t.W.a(r.w).c="" -r.x=t.c.a(r.geM())}else if(o==null){r.i(new A.j(q,q,"eof-in-doctype")) +r.x=t.c.a(r.geN())}else if(o==null){r.i(new A.j(q,q,"eof-in-doctype")) s=t.W.a(r.w) s.e=!1 r.i(s) r.x=t.c.a(r.gE())}else{r.i(new A.j(q,q,p)) t.W.a(r.w).e=!1 -r.x=t.c.a(r.gcm())}return!0}, -lM(){var s,r=this,q=null,p=r.a.C() -if(A.a7(p))return!0 +r.x=t.c.a(r.gcn())}return!0}, +lN(){var s,r=this,q=null,p=r.a.D() +if(A.a8(p))return!0 else if(p===">"){s=r.w s.toString r.i(s) r.x=t.c.a(r.gE())}else if(p==='"'){t.W.a(r.w).c="" -r.x=t.c.a(r.geL())}else if(p==="'"){t.W.a(r.w).c="" -r.x=t.c.a(r.geM())}else if(p==null){r.i(new A.j(q,q,"eof-in-doctype")) +r.x=t.c.a(r.geM())}else if(p==="'"){t.W.a(r.w).c="" +r.x=t.c.a(r.geN())}else if(p==null){r.i(new A.j(q,q,"eof-in-doctype")) s=t.W.a(r.w) s.e=!1 r.i(s) r.x=t.c.a(r.gE())}else{r.i(new A.j(q,q,"unexpected-char-in-doctype")) t.W.a(r.w).e=!1 -r.x=t.c.a(r.gcm())}return!0}, -lm(){var s=this,r=null,q=s.a,p=q.C() -if(A.a7(p))s.x=t.c.a(s.gez()) +r.x=t.c.a(r.gcn())}return!0}, +ln(){var s=this,r=null,q=s.a,p=q.D() +if(A.a8(p))s.x=t.c.a(s.geA()) else if(p==="'"||p==='"'){s.i(new A.j(r,r,"unexpected-char-in-doctype")) -q.W(p) -s.x=t.c.a(s.gez())}else if(p==null){s.i(new A.j(r,r,"eof-in-doctype")) +q.X(p) +s.x=t.c.a(s.geA())}else if(p==null){s.i(new A.j(r,r,"eof-in-doctype")) q=t.W.a(s.w) q.e=!1 s.i(q) -s.x=t.c.a(s.gE())}else{q.W(p) -s.x=t.c.a(s.gez())}return!0}, -lK(){var s,r=this,q=null,p="unexpected-char-in-doctype",o=r.a.C() -if(A.a7(o))return!0 +s.x=t.c.a(s.gE())}else{q.X(p) +s.x=t.c.a(s.geA())}return!0}, +lL(){var s,r=this,q=null,p="unexpected-char-in-doctype",o=r.a.D() +if(A.a8(o))return!0 else if(o==='"'){t.W.a(r.w).c="" -r.x=t.c.a(r.geL())}else if(o==="'"){t.W.a(r.w).c="" -r.x=t.c.a(r.geM())}else if(o===">"){r.i(new A.j(q,q,p)) +r.x=t.c.a(r.geM())}else if(o==="'"){t.W.a(r.w).c="" +r.x=t.c.a(r.geN())}else if(o===">"){r.i(new A.j(q,q,p)) s=t.W.a(r.w) s.e=!1 r.i(s) @@ -14897,9 +14978,9 @@ s.e=!1 r.i(s) r.x=t.c.a(r.gE())}else{r.i(new A.j(q,q,p)) t.W.a(r.w).e=!1 -r.x=t.c.a(r.gcm())}return!0}, -mN(){var s,r=this,q=null,p=r.a.C() -if(p==='"')r.x=t.c.a(r.ghK()) +r.x=t.c.a(r.gcn())}return!0}, +mO(){var s,r=this,q=null,p=r.a.D() +if(p==='"')r.x=t.c.a(r.ghL()) else if(p==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) s=t.W.a(r.w) s.c=A.k(s.c)+"\ufffd"}else if(p===">"){r.i(new A.j(q,q,"unexpected-end-of-doctype")) @@ -14912,8 +14993,8 @@ s.e=!1 r.i(s) r.x=t.c.a(r.gE())}else{s=t.W.a(r.w) s.c=A.k(s.c)+p}return!0}, -mO(){var s,r=this,q=null,p=r.a.C() -if(p==="'")r.x=t.c.a(r.ghK()) +mP(){var s,r=this,q=null,p=r.a.D() +if(p==="'")r.x=t.c.a(r.ghL()) else if(p==="\x00"){r.i(new A.j(q,q,"invalid-codepoint")) s=t.W.a(r.w) s.c=A.k(s.c)+"\ufffd"}else if(p===">"){r.i(new A.j(q,q,"unexpected-end-of-doctype")) @@ -14926,8 +15007,8 @@ s.e=!1 r.i(s) r.x=t.c.a(r.gE())}else{s=t.W.a(r.w) s.c=A.k(s.c)+p}return!0}, -lk(){var s,r=this,q=null,p=r.a.C() -if(A.a7(p))return!0 +ll(){var s,r=this,q=null,p=r.a.D() +if(A.a8(p))return!0 else if(p===">"){s=r.w s.toString r.i(s) @@ -14936,18 +15017,18 @@ s=t.W.a(r.w) s.e=!1 r.i(s) r.x=t.c.a(r.gE())}else{r.i(new A.j(q,q,"unexpected-char-in-doctype")) -r.x=t.c.a(r.gcm())}return!0}, -lP(){var s=this,r=s.a,q=r.C() +r.x=t.c.a(r.gcn())}return!0}, +lQ(){var s=this,r=s.a,q=r.D() if(q===">"){r=s.w r.toString s.i(r) -s.x=t.c.a(s.gE())}else if(q==null){r.W(q) +s.x=t.c.a(s.gE())}else if(q==null){r.X(q) r=s.w r.toString s.i(r) s.x=t.c.a(s.gE())}return!0}, -lT(){var s,r,q,p=this,o=A.i([],t.s) -for(s=p.a,r=0;;){q=s.C() +lU(){var s,r,q,p=this,o=A.i([],t.s) +for(s=p.a,r=0;;){q=s.D() if(q==null)break if(q==="\x00"){p.i(new A.j(null,null,"invalid-codepoint")) q="\ufffd"}B.a.l(o,q) @@ -14959,11 +15040,11 @@ o.pop() if(0>=o.length)return A.c(o,-1) o.pop() break}r=0}}if(o.length!==0){s=B.a.aQ(o) -p.i(new A.B(null,s))}p.x=t.c.a(p.gE()) +p.i(new A.D(null,s))}p.x=t.c.a(p.gE()) return!0}, -$iK:1, -jC(){return this.gjB().$0()}} -A.my.prototype={ +$iL:1, +jD(){return this.gjC().$0()}} +A.mC.prototype={ $0(){var s=this.a.b s===$&&A.o() return s}, @@ -14971,39 +15052,39 @@ $S:8} A.hH.prototype={ l(a,b){var s,r,q,p,o,n,m,l,k,j=this,i="http://www.w3.org/1999/xhtml" t.mV.a(b) -if(b!=null)for(s=A.w(j).h("V"),r=new A.V(j,s),r=new A.L(r,r.gm(0),s.h("L")),q=b.x,p=b.w,s=s.h("G.E"),o=0;r.p();){n=r.d +if(b!=null)for(s=A.x(j).h("X"),r=new A.X(j,s),r=new A.M(r,r.gn(0),s.h("M")),q=b.x,p=b.w,s=s.h("G.E"),o=0;r.p();){n=r.d if(n==null)n=s.a(n) if(n==null)break m=n.w if(m==null)m=i l=n.x k=p==null?i:p -if(new A.l(m,l).$s===new A.l(k,q).$s&&m===k&&l==q&&A.yj(n.b,b.b))++o -if(o===3){B.a.V(j.a,n) -break}}j.bV(0,b)}} -A.nL.prototype={ +if(new A.l(m,l).$s===new A.l(k,q).$s&&m===k&&l==q&&A.yo(n.b,b.b))++o +if(o===3){B.a.W(j.a,n) +break}}j.bW(0,b)}} +A.nP.prototype={ aL(){var s=this -B.a.bb(s.c) -s.d.sm(0,0) +B.a.bc(s.c) +s.d.sn(0,0) s.f=s.e=null s.r=!1 -s.b=A.rj()}, -a0(a,b){var s,r,q,p,o,n,m,l,k,j="We should never reach this point",i="http://www.w3.org/1999/xhtml",h=a instanceof A.al,g=!1 +s.b=A.ro()}, +a0(a,b){var s,r,q,p,o,n,m,l,k,j="We should never reach this point",i="http://www.w3.org/1999/xhtml",h=a instanceof A.am,g=!1 if(b!=null)switch(b){case"button":s=B.cE -r=B.Mi +r=B.Mj break case"list":s=B.cE -r=B.Mm +r=B.Mo break -case"table":s=B.Mq +case"table":s=B.Ms r=B.cD break -case"select":s=B.Mo +case"select":s=B.Mq r=B.cD g=!0 break default:throw A.f(A.ce(j))}else{s=B.cE -r=B.cD}for(q=this.c,p=A.x(q).h("V<1>"),q=new A.V(q,p),q=new A.L(q,q.gm(0),p.h("L")),o=!h,p=p.h("G.E");q.p();){n=q.d +r=B.cD}for(q=this.c,p=A.w(q).h("X<1>"),q=new A.X(q,p),q=new A.M(q,q.gn(0),p.h("M")),o=!h,p=p.h("G.E");q.p();){n=q.d if(n==null)n=p.a(n) if(o){m=n.x m=m==null?a==null:m===a}else m=!1 @@ -15014,82 +15095,82 @@ else{l=n.w m=l==null k=m?i:l n=n.x -if(!s.D(0,new A.l(k,n)))n=r.D(0,new A.l(m?i:l,n)) +if(!s.C(0,new A.l(k,n)))n=r.C(0,new A.l(m?i:l,n)) else n=!0 if(g!==n)return!1}}throw A.f(A.ce(j))}, b6(a){return this.a0(a,null)}, aE(){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=h.d -if(g.gm(0)===0)return +if(g.gn(0)===0)return s=g.a r=s.length q=r-1 if(!(q>=0))return A.c(s,q) p=s[q] -if(p==null||B.a.D(h.c,p))return +if(p==null||B.a.C(h.c,p))return r=h.c -for(;;){if(!(p!=null&&!B.a.D(r,p)))break +for(;;){if(!(p!=null&&!B.a.C(r,p)))break if(q===0){q=-1 break}--q if(!(q>=0&&q=0&&q"),s=new A.V(s,r),s=new A.L(s,s.gm(0),r.h("L")),r=r.h("G.E");s.p();){q=s.d +i5(a){var s,r,q +for(s=this.d,r=A.x(s).h("X"),s=new A.X(s,r),s=new A.M(s,s.gn(0),r.h("M")),r=r.h("G.E");s.p();){q=s.d if(q==null)q=r.a(q) if(q==null)break else if(q.x==a)return q}return null}, -cq(a,b){var s=b.gO(),r=A.rh(a.gaC()) +cr(a,b){var s=b.gL(),r=A.rm(a.gaC()) r.e=a.a s.l(0,r)}, -i0(a){var s,r=a.b,q=a.w +i1(a){var s,r=a.b,q=a.w if(q==null)q=this.a this.b===$&&A.o() -s=A.pW(r,q===""?null:q) +s=A.q1(r,q===""?null:q) s.saZ(a.e) s.e=a.a return s}, -M(a){if(this.r)return this.nb(a) -return this.ia(a)}, -ia(a){var s,r,q=a.b,p=a.w +O(a){if(this.r)return this.nc(a) +return this.ib(a)}, +ib(a){var s,r,q=a.b,p=a.w if(p==null)p=this.a this.b===$&&A.o() -s=A.pW(q,p===""?null:p) +s=A.q1(q,p===""?null:p) s.saZ(a.e) s.e=a.a r=this.c -B.a.gA(r).gO().l(0,s) +B.a.gA(r).gL().l(0,s) B.a.l(r,s) return s}, -nb(a){var s,r,q=this,p=q.i0(a),o=q.c -if(!B.hQ.D(0,B.a.gA(o).x))return q.ia(a) -else{s=q.e1() +nc(a){var s,r,q=this,p=q.i1(a),o=q.c +if(!B.hQ.C(0,B.a.gA(o).x))return q.ib(a) +else{s=q.e2() r=s[1] -if(r==null)s[0].gO().l(0,p) -else s[0].na(p,r) +if(r==null)s[0].gL().l(0,p) +else s[0].nb(p,r) B.a.l(o,p)}return p}, bN(a,b){var s,r=this.c,q=B.a.gA(r) -if(this.r)r=!B.hQ.D(0,B.a.gA(r).x) +if(this.r)r=!B.hQ.C(0,B.a.gA(r).x) else r=!0 -if(r)A.rY(q,a,b,null) -else{s=this.e1() +if(r)A.t2(q,a,b,null) +else{s=this.e2() r=s[0] r.toString -A.rY(r,a,b,t.mV.a(s[1]))}}, -e1(){var s,r,q,p,o=this.c,n=A.x(o).h("V<1>"),m=new A.V(o,n) -m=new A.L(m,m.gm(0),n.h("L")) +A.t2(r,a,b,t.mV.a(s[1]))}}, +e2(){var s,r,q,p,o=this.c,n=A.w(o).h("X<1>"),m=new A.X(o,n) +m=new A.M(m,m.gn(0),n.h("M")) n=n.h("G.E") for(;;){if(!m.p()){s=null break}r=m.d @@ -15102,18 +15183,18 @@ if(!(n>=0&&n=o.length)return A.c(o,0) p=o[0]}return A.i([p,q],t.hg)}, bS(a){var s=this.c,r=B.a.gA(s).x -if(r!=a&&B.a.D(B.bH,r)){if(0>=s.length)return A.c(s,-1) +if(r!=a&&B.a.C(B.bH,r)){if(0>=s.length)return A.c(s,-1) s.pop() this.bS(a)}}, -ca(){return this.bS(null)}} -A.pv.prototype={ -$2(a,b){var s,r,q,p,o,n,m,l,k,j=new A.W(""),i="%("+A.q(a)+")" +cc(){return this.bS(null)}} +A.pB.prototype={ +$2(a,b){var s,r,q,p,o,n,m,l,k,j=new A.Y(""),i="%("+A.q(a)+")" for(s=this.a,r=i.length,q=J.ci(b),p=0,o="";n=s.a,m=B.b.ap(n,i,p),m>=0;){j.a=o+B.b.t(n,p,m) m+=r l=m for(;;){o=s.a if(!(lm){k=A.lx(B.b.t(s.a,m,l),null) +if(!A.pJ(o[l]))break;++l}if(l>m){k=A.lA(B.b.t(s.a,m,l),null) m=l}else k=0 o=s.a if(!(m")).gn(0) +q=n}else q=1 +s=r?-1:1 +this.a.k(0,k,q+s) +return""+q+". "}, +$S:44} +A.po.prototype={ +$1(a){return t.Q.a(a).x==="li"}, +$S:45} +A.pj.prototype={ $0(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6=this.b if(a6.length===0)return -s=B.a.cQ(a6,0,new A.pg(),t.S) -if(B.a.aH(a6,new A.ph())){r=A.x(a6) -q=new A.R(a6,r.h("e(1)").a(new A.pi()),r.h("R<1,e>")).aQ(0) +s=B.a.cQ(a6,0,new A.pk(),t.S) +if(B.a.aH(a6,new A.pl())){r=A.w(a6) +q=new A.Q(a6,r.h("e(1)").a(new A.pm()),r.h("Q<1,e>")).aQ(0) p=A.i([0],t.Z) r=(q.length===0?B.hT:new A.d3(q)).a o=new A.fR(r,0,0) n=0 -while(o.fQ(1,o.c)){m=o.d +while(o.fR(1,o.c)){m=o.d n+=(m==null?o.d=B.b.t(r,o.b,o.c):m).length B.a.l(p,n)}for(r=this.c,o=this.a,l=t.N,k=t.X,j=t.ke,i=0,h=0;i2048)g=i+f+1 e=p.length for(;;){d=h+1 @@ -15155,137 +15269,137 @@ g=p[h] if(g<=i){if(!(d>=0&&da3){a5=A.ac(l,k) +if(a4>a3){a5=A.ae(l,k) a5.a1(0,a1) a5.k(0,"text",B.b.t(a2,a3,a4)) B.a.l(b,a5)}a+=c -if(a>=g)break}B.a.l(r,A.v(["kind",o.b,"offset",o.a+i,"length",g-i,"runs",b,"paragraphEnd",g===s],l,k))}o.a=o.a+(s+1)}B.a.bb(a6)}, +if(a>=g)break}B.a.l(r,A.v(["kind",o.b,"offset",o.a+i,"length",g-i,"runs",b,"paragraphEnd",g===s],l,k))}o.a=o.a+(s+1)}B.a.bc(a6)}, $S:1} -A.pg.prototype={ -$2(a,b){return A.aw(a)+A.q(t.f.a(b).n(0,"text")).length}, +A.pk.prototype={ +$2(a,b){return A.ax(a)+A.q(t.f.a(b).m(0,"text")).length}, $S:19} -A.ph.prototype={ -$1(a){return B.b.bk(A.q(t.f.a(a).n(0,"text"))).length!==0}, -$S:44} -A.pi.prototype={ -$1(a){return A.q(t.f.a(a).n(0,"text"))}, -$S:45} -A.pj.prototype={ +A.pl.prototype={ +$1(a){return B.b.ba(A.q(t.f.a(a).m(0,"text"))).length!==0}, +$S:47} +A.pm.prototype={ +$1(a){return A.q(t.f.a(a).m(0,"text"))}, +$S:48} +A.pp.prototype={ $2(a,b){var s,r t.f.a(b) s=this.a -if(!s.c){r=A.a4("\\s+",!0) +if(!s.c){r=A.a5("\\s+",!0) a=A.cO(a,r," ")}r=this.b if(r.length===0&&!s.c)a=B.b.og(a) -if(a.length!==0){s=A.aC(t.N,t.X) +if(a.length!==0){s=A.az(t.N,t.X) s.k(0,"text",a) s.a1(0,b) B.a.l(r,s)}}, -$S:46} -A.pk.prototype={ +$S:49} +A.pq.prototype={ $2(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this t.f.a(b) -if(a instanceof A.bY){s=J.ax(a.w) +if(a instanceof A.bY){s=J.ay(a.w) a.w=s f.b.$2(s,b) -return}if(!(a instanceof A.a6))return +return}if(!(a instanceof A.K))return r=a.x if(r==null)r="" -q=B.Mj.D(0,r) +q=B.Mk.C(0,r) s=f.a p=s.b o=s.c if(q){f.c.$0() s.b=r -s.c=r==="pre"}n=a.geV().length===0?a.b.n(0,"name"):a.geV() -if(n!=null&&n.length!==0)f.d.k(0,n,s.a+B.a.cQ(f.e,0,new A.pl(),t.S)) +s.c=r==="pre"}n=a.geW().length===0?a.b.m(0,"name"):a.geW() +if(n!=null&&n.length!==0)f.d.k(0,n,s.a+B.a.cQ(f.e,0,new A.pr(),t.S)) m=t.N l=t.X -k=A.vX(b,m,l) -if(B.Mp.D(0,r))k.k(0,"bold",!0) -if(B.Mn.D(0,r))k.k(0,"italic",!0) +k=A.w1(b,m,l) +if(B.Mr.C(0,r))k.k(0,"bold",!0) +if(B.Mp.C(0,r))k.k(0,"italic",!0) if(r==="u"||r==="a")k.k(0,"underline",!0) if(r==="s"||r==="del")k.k(0,"strike",!0) if(r==="code"||r==="pre")k.k(0,"code",!0) -if(r==="br"){j=A.aC(m,l) +if(r==="br"){j=A.az(m,l) j.k(0,"text","\n") j.a1(0,k) -B.a.l(f.e,j)}if(r==="li")f.b.$2("\u2022 ",k) +B.a.l(f.e,j)}if(r==="li")f.b.$2(f.f.$1(a),k) if(r==="td"||r==="th")if(f.e.length!==0)f.b.$2(" | ",k) if(r==="img"){f.c.$0() -i=a.b.n(0,"src") -if(i!=null){k=a.b.n(0,"width") -h=A.q9(k==null?"":k) -k=a.b.n(0,"height") -g=A.q9(k==null?"":k) +i=a.b.m(0,"src") +if(i!=null){k=a.b.m(0,"width") +h=A.qf(k==null?"":k) +k=a.b.m(0,"height") +g=A.qf(k==null?"":k) k=s.a -j=a.b.n(0,"alt") +j=a.b.m(0,"alt") if(j==null)j="Illustration" -B.a.l(f.f,A.v(["kind","image","offset",k,"length",1,"src",i,"alt",j,"aspect",h!=null&&g!=null&&h>0&&g>0?h/g:1.5],m,l)) -s.a+=2}}else for(m=a.gO().a,l=A.x(m),m=new J.J(m,m.length,l.h("J<1>")),l=l.c;m.p();){j=m.d +B.a.l(f.r,A.v(["kind","image","offset",k,"length",1,"src",i,"alt",j,"aspect",h!=null&&g!=null&&h>0&&g>0?h/g:1.5],m,l)) +s.a+=2}}else for(m=a.gL().a,l=A.w(m),m=new J.J(m,m.length,l.h("J<1>")),l=l.c;m.p();){j=m.d f.$2(j==null?l.a(j):j,k)}if(q){f.c.$0() s.b=p s.c=o}}, -$S:47} -A.pl.prototype={ -$2(a,b){return A.aw(a)+A.q(t.f.a(b).n(0,"text")).length}, +$S:50} +A.pr.prototype={ +$2(a,b){return A.ax(a)+A.q(t.f.a(b).m(0,"text")).length}, $S:19} -A.lS.prototype={ -eI(a,b){var s=0,r=A.br(t.f),q,p=this -var $async$eI=A.bs(function(c,d){if(c===1)return A.bo(d,r) +A.lV.prototype={ +eJ(a,b){var s=0,r=A.br(t.f),q,p=this +var $async$eJ=A.bs(function(c,d){if(c===1)return A.bo(d,r) for(;;)switch(s){case 0:if(a==="open"){q=p.dn(t.ev.a(b)) s=1 -break}if(a==="chapter"){q=p.cH(A.aw(b)) +break}if(a==="chapter"){q=p.cH(A.ax(b)) s=1 -break}throw A.f(A.U("Unknown EPUB worker command: "+a,null)) +break}throw A.f(A.W("Unknown EPUB worker command: "+a,null)) case 1:return A.bp(q,r)}}) -return A.bq($async$eI,r)}, +return A.bq($async$eJ,r)}, dn(a2){var s=0,r=A.br(t.f),q,p=this,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1 var $async$dn=A.bs(function(a3,a4){if(a3===1)return A.bo(a4,r) for(;;)switch(s){case 0:s=3 -return A.c3(A.m6(a2),$async$dn) +return A.c3(A.m9(a2),$async$dn) case 3:c=a4 b=c.e a=b.a a0=a.b -a1=a0==null?null:B.a.aH(a0.ay,new A.lU()) +a1=a0==null?null:B.a.aH(a0.ay,new A.lX()) if(a1===!0)throw A.f(B.ih) -o=A.vu(c) +o=A.vz(c) a1=c.f n=a1==null?null:a1.a -if(n==null)n=A.aC(t.N,t.am) -a1=A.aC(t.jv,t.w) +if(n==null)n=A.az(t.N,t.am) +a1=A.az(t.jv,t.A) m=a.c.a if(m==null)m=A.i([],t.bz) l=m.length k=0 -for(;k>") -d=A.aV(new A.R(o,b.h("d(1)").a(new A.m_(i)),a1),a1.h("G.E"))}else d=new A.lV(i).$1(e) +if(e==null||e.length===0){b=A.w(o) +a1=b.h("Q<1,d>") +d=A.a7(new A.Q(o,b.h("d(1)").a(new A.m2(i)),a1),a1.h("G.E"))}else d=new A.lY(i).$1(e) p.a=c p.b=i -p.c.bb(0) +p.c.bc(0) q=A.v(["count",i.length,"toc",d],t.N,t.X) s=1 break @@ -15294,7 +15408,7 @@ return A.bq($async$dn,r)}, cH(a){var s=0,r=A.br(t.f),q,p=this,o,n,m,l,k,j,i,h,g,f var $async$cH=A.bs(function(b,c){if(b===1)return A.bo(c,r) for(;;)switch(s){case 0:g=p.c -f=g.V(0,a) +f=g.W(0,a) if(f!=null){g.k(0,a,f) q=f s=1 @@ -15304,45 +15418,45 @@ if(!(a>=0&&a")).cQ(0,0,new A.lT(),t.S) -j=j.h("aU<1>") +j=A.x(g) +i=new A.fo(g,j.h("fo<2>")).cQ(0,0,new A.lW(),t.S) +j=j.h("aV<1>") for(;;){if(!(g.a>3||i>4194304))break -h=new A.aU(g,j).gF(0) -if(!h.p())A.O(A.bi()) -i-=A.q(g.V(0,h.gB()).n(0,"html")).length}q=o +h=new A.aV(g,j).gF(0) +if(!h.p())A.P(A.bi()) +i-=A.q(g.W(0,h.gB()).m(0,"html")).length}q=o s=1 break case 1:return A.bp(q,r)}}) return A.bq($async$cH,r)}, ds(a6,a7,a8){var s=0,r=A.br(t.N),q,p=this,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5 var $async$ds=A.bs(function(a9,b0){if(a9===1)return A.bo(b0,r) -for(;;)switch(s){case 0:a5=A.uz(a6) +for(;;)switch(s){case 0:a5=A.uE(a6) for(o=B.hR.gF(B.hR),n=t.il,m=t.kU;o.p();){l=o.gB() k=A.i([],n) j=A.i([],m) -i=A.zj(l,j) -if(i==null||j.length!==0)A.O(A.aB("'"+l+"' is not a valid selector: "+A.k(j),null,null)) -new A.d0().f8(a5,i,k) +i=A.zo(l,j) +if(i==null||j.length!==0)A.P(A.aD("'"+l+"' is not a valid selector: "+A.k(j),null,null)) +new A.d0().f9(a5,i,k) l=A.i(k.slice(0),n) h=l.length g=0 -for(;g") -a0=A.vQ(new A.b8(new A.bb(new A.dp(d,a1),a1.h("C(h.E)").a(new A.m4(p,a)),a1.h("bb")),a1.h("bg(h.E)").a(new A.m5()),a1.h("b8")),l)}if(a0==null){d=f.a -if(d!=null)B.a.V(d.gO().a,f) +a1=A.x(d).h("dq<1,2>") +a0=A.vV(new A.ba(new A.b_(new A.dq(d,a1),a1.h("A(h.E)").a(new A.m7(p,a)),a1.h("b_")),a1.h("bg(h.E)").a(new A.m8()),a1.h("ba")),l)}if(a0==null){d=f.a +if(d!=null)B.a.W(d.gL().a,f) s=4 break}s=6 return A.c3(a0.d1(),$async$ds) case 6:a2=b0 a3=a0.d -if(!B.b.T(a3.toLowerCase(),"image/")){d=f.a -if(d!=null)B.a.V(d.gO().a,f) +if(!B.b.U(a3.toLowerCase(),"image/")){d=f.a +if(d!=null)B.a.W(d.gL().a,f) s=4 break}d=f.b m.a(a2) -d.k(0,"src","data:"+a3+";base64,"+B.cJ.geN().bL(a2)) -case 4:o.length===n||(0,A.a1)(o),++g +d.k(0,"src","data:"+a3+";base64,"+B.cJ.geO().bL(a2)) +case 4:o.length===n||(0,A.a2)(o),++g s=3 break -case 5:a4=new A.W("") -a5.cf(a4) +case 5:a4=new A.Y("") +a5.cg(a4) o=a4.a q=o.charCodeAt(0)==0?o:o s=1 break case 1:return A.bp(q,r)}}) return A.bq($async$ds,r)}, -kT(a){var s,r,q,p,o,n,m,l,k="style",j=a.b,i=A.w(j).h("aU<1>") -j=A.aV(new A.aU(j,i),i.h("h.E")) +kU(a){var s,r,q,p,o,n,m,l,k="style",j=a.b,i=A.x(j).h("aV<1>") +j=A.a7(new A.aV(j,i),i.h("h.E")) i=j.length s=0 -for(;s=n.length)return A.c(n,-1) n.pop() for(s=b.split("/"),r=s.length,q=0;q=o)return A.c(n,-1) n.pop()}}else if(p!=="."&&p.length!==0)B.a.l(n,p)}return B.a.aq(n,"/")}} -A.lU.prototype={ +A.lX.prototype={ $1(a){var s,r="rendition:layout" t.az.a(a) -if(a.e===r||a.a===r)s=a.b==="pre-paginated"||a.r.n(0,"content")==="pre-paginated" +if(a.e===r||a.a===r)s=a.b==="pre-paginated"||a.r.m(0,"content")==="pre-paginated" else s=!1 return s}, -$S:48} -A.m1.prototype={ +$S:51} +A.m4.prototype={ $1(a){var s,r,q,p=B.a.gbv(a.c.split("#")) if(this.a.l(0,p))B.a.l(this.b,a) -for(s=a.e,r=s.length,q=0;q>") -p=A.aV(new A.R(p,o.h("d(1)").a(this),n),n.h("G.E")) +o=A.w(p) +n=o.h("Q<1,d>") +p=A.a7(new A.Q(p,o.h("d(1)").a(this),n),n.h("G.E")) return A.v(["title",a.b,"index",q,"anchor",a.d,"children",p],t.N,t.X)}, -$S:50} -A.m0.prototype={ +$S:53} +A.m3.prototype={ $1(a){return t.k5.a(a).c===this.a}, $S:32} -A.lV.prototype={ +A.lY.prototype={ $1(a){var s,r,q,p,o,n,m,l,k,j,i,h,g t.nw.a(a) s=A.i([],t.ke) -for(r=a.length,q=t.N,p=t.X,o=this.a,n=0;n")).cp(0,new A.lY(),new A.lZ()) +h=A.w(l) +g=new A.Q(l,h.h("e(1)").a(new A.m_()),h.h("Q<1,e>")).cq(0,new A.m0(),new A.m1()) if(k.gdK()){l=k.gcR() l=A.d9(l,0,l.length,B.E,!1)}else l=null B.a.l(s,A.v(["title",g,"index",j,"anchor",l,"children",i],q,p))}return s}, -$S:52} -A.lW.prototype={ +$S:55} +A.lZ.prototype={ $1(a){return t.k5.a(a).c===this.a}, $S:32} -A.lX.prototype={ -$1(a){var s=B.b.bk(t.gK.a(a).a) +A.m_.prototype={ +$1(a){var s=B.b.ba(t.gK.a(a).a) return s}, -$S:53} -A.lY.prototype={ +$S:56} +A.m0.prototype={ $1(a){return A.q(a).length!==0}, $S:4} -A.lZ.prototype={ +A.m1.prototype={ $0(){return"Chapter"}, $S:8} -A.lT.prototype={ -$2(a,b){return A.aw(a)+A.q(t.f.a(b).n(0,"html")).length}, +A.lW.prototype={ +$2(a,b){return A.ax(a)+A.q(t.f.a(b).m(0,"html")).length}, $S:19} -A.m4.prototype={ -$1(a){return B.b.d4(B.b.d4(t.kY.a(a).a,A.a4("^OEBPS/",!0),""),A.a4("^/",!0),"")===B.b.d4(B.b.d4(this.b,A.a4("^OEBPS/",!0),""),A.a4("^/",!0),"")}, -$S:54} -A.m5.prototype={ +A.m7.prototype={ +$1(a){return B.b.d4(B.b.d4(t.kY.a(a).a,A.a5("^OEBPS/",!0),""),A.a5("^/",!0),"")===B.b.d4(B.b.d4(this.b,A.a5("^OEBPS/",!0),""),A.a5("^/",!0),"")}, +$S:57} +A.m8.prototype={ $1(a){return t.kY.a(a).b}, -$S:55} -A.m2.prototype={ -$1(a){return B.b.bk(A.q(a))}, +$S:58} +A.m5.prototype={ +$1(a){return B.b.ba(A.q(a))}, $S:33} -A.m3.prototype={ +A.m6.prototype={ $1(a){var s A.q(a) -if(a.length!==0){s=A.a4("(?:url\\s*\\(|@import|expression\\s*\\()",!1) +if(a.length!==0){s=A.a5("(?:url\\s*\\(|@import|expression\\s*\\()",!1) s=!s.b.test(a)}else s=!1 return s}, $S:4} -A.f9.prototype={$iah:1} -A.lL.prototype={ -la(a){var s,r,q=t.mf -A.ua("absolute",A.i([a,null,null,null,null,null,null,null,null,null,null,null,null,null,null],q)) +A.f9.prototype={$iaj:1} +A.lO.prototype={ +lb(a){var s,r,q=t.mf +A.uf("absolute",A.i([a,null,null,null,null,null,null,null,null,null,null,null,null,null,null],q)) s=this.a s=s.aU(a)>0&&!s.bO(a) if(s)return a -s=A.uj() +s=A.uo() r=A.i([s,a,null,null,null,null,null,null,null,null,null,null,null,null,null,null],q) -A.ua("join",r) -return this.nk(new A.a_(r,t.lS))}, -nk(a){var s,r,q,p,o,n,m,l,k,j +A.uf("join",r) +return this.nl(new A.O(r,t.lS))}, +nl(a){var s,r,q,p,o,n,m,l,k,j t.bq.a(a) -for(s=a.$ti,r=s.h("C(h.E)").a(new A.lM()),q=a.gF(0),s=new A.cF(q,r,s.h("cF")),r=this.a,p=!1,o=!1,n="";s.p();){m=q.gB() -if(r.bO(m)&&o){l=A.jq(m,r) +for(s=a.$ti,r=s.h("A(h.E)").a(new A.lP()),q=a.gF(0),s=new A.cF(q,r,s.h("cF")),r=this.a,p=!1,o=!1,n="";s.p();){m=q.gB() +if(r.bO(m)&&o){l=A.jr(m,r) k=n.charCodeAt(0)==0?n:n n=B.b.t(k,0,r.cv(k,!0)) l.b=n -if(r.cW(n))B.a.k(l.e,0,r.gcc()) +if(r.cW(n))B.a.k(l.e,0,r.gce()) n=l.j(0)}else if(r.aU(m)>0){o=!r.bO(m) n=m}else{j=m.length if(j!==0){if(0>=j)return A.c(m,0) -j=r.eG(m[0])}else j=!1 -if(!j)if(p)n+=r.gcc() +j=r.eH(m[0])}else j=!1 +if(!j)if(p)n+=r.gce() n+=m}p=r.cW(m)}return n.charCodeAt(0)==0?n:n}, -d9(a,b){var s=A.jq(b,this.a),r=s.d,q=A.x(r),p=q.h("bb<1>") -r=A.aV(new A.bb(r,q.h("C(1)").a(new A.lN()),p),p.h("h.E")) -s.snE(r) +d9(a,b){var s=A.jr(b,this.a),r=s.d,q=A.w(r),p=q.h("b_<1>") +r=A.a7(new A.b_(r,q.h("A(1)").a(new A.lQ()),p),p.h("h.E")) +s.snF(r) r=s.b if(r!=null)B.a.bx(s.d,0,r) return s.d}, dP(a){var s -if(!this.kB(a))return a -s=A.jq(a,this.a) -s.f1() +if(!this.kC(a))return a +s=A.jr(a,this.a) +s.f2() return s.j(0)}, -kB(a){var s,r,q,p,o,n,m,l=this.a,k=l.aU(a) -if(k!==0){if(l===$.lz())for(s=a.length,r=0;r=0))return A.c(a,r) n=a.charCodeAt(r) -if(l.by(n)){if(l===$.lz()&&n===47)return!0 +if(l.by(n)){if(l===$.lC()&&n===47)return!0 if(p!=null&&l.by(p))return!0 if(p===46)m=o==null||o===46||l.by(o) else m=!1 @@ -15549,16 +15663,16 @@ if(p===46)l=o==null||l.by(o)||o===46 else l=!1 if(l)return!0 return!1}, -o6(a){var s,r,q,p,o,n,m,l=this,k='Unable to find a path to "',j=l.a,i=j.aU(a) +o7(a){var s,r,q,p,o,n,m,l=this,k='Unable to find a path to "',j=l.a,i=j.aU(a) if(i<=0)return l.dP(a) -s=A.uj() +s=A.uo() if(j.aU(s)<=0&&j.aU(a)>0)return l.dP(a) -if(j.aU(a)<=0||j.bO(a))a=l.la(a) -if(j.aU(a)<=0&&j.aU(s)>0)throw A.f(A.rD(k+a+'" from "'+s+'".')) -r=A.jq(s,j) -r.f1() -q=A.jq(a,j) -q.f1() +if(j.aU(a)<=0||j.bO(a))a=l.lb(a) +if(j.aU(a)<=0&&j.aU(s)>0)throw A.f(A.rI(k+a+'" from "'+s+'".')) +r=A.jr(s,j) +r.f2() +q=A.jr(a,j) +q.f2() i=r.d p=i.length if(p!==0){if(0>=p)return A.c(i,0) @@ -15566,7 +15680,7 @@ i=i[0]==="."}else i=!1 if(i)return q.j(0) i=r.b p=q.b -if(i!=p)i=i==null||p==null||!j.f4(i,p) +if(i!=p)i=i==null||p==null||!j.f5(i,p) else i=!1 if(i)return q.j(0) for(;;){i=r.d @@ -15577,7 +15691,7 @@ m=n.length if(m!==0){if(0>=p)return A.c(i,0) i=i[0] if(0>=m)return A.c(n,0) -n=j.f4(i,n[0]) +n=j.f5(i,n[0]) i=n}else i=o}else i=o if(!i)break B.a.d2(r.d,0) @@ -15587,11 +15701,11 @@ B.a.d2(q.e,1)}i=r.d p=i.length if(p!==0){if(0>=p)return A.c(i,0) i=i[0]===".."}else i=!1 -if(i)throw A.f(A.rD(k+a+'" from "'+s+'".')) +if(i)throw A.f(A.rI(k+a+'" from "'+s+'".')) i=t.N -B.a.eX(q.d,0,A.aD(p,"..",!1,i)) +B.a.eY(q.d,0,A.aE(p,"..",!1,i)) B.a.k(q.e,0,"") -B.a.eX(q.e,1,A.aD(r.d.length,j.gcc(),!1,i)) +B.a.eY(q.e,1,A.aE(r.d.length,j.gce(),!1,i)) j=q.d i=j.length if(i===0)return"." @@ -15602,33 +15716,33 @@ j.pop() if(0>=j.length)return A.c(j,-1) j.pop() B.a.l(j,"")}q.b="" -q.iu() +q.iv() return q.j(0)}, -ik(a){var s,r,q=this,p=A.u3(a) +il(a){var s,r,q=this,p=A.u8(a) if(p.gaV()==="file"&&q.a===$.hF())return p.j(0) else if(p.gaV()!=="file"&&p.gaV()!==""&&q.a!==$.hF())return p.j(0) -s=q.dP(q.a.f3(A.u3(p))) -r=q.o6(s) +s=q.dP(q.a.f4(A.u8(p))) +r=q.o7(s) return q.d9(0,r).length>q.d9(0,s).length?s:r}} -A.lM.prototype={ +A.lP.prototype={ $1(a){return A.q(a)!==""}, $S:4} -A.lN.prototype={ +A.lQ.prototype={ $1(a){return A.q(a).length!==0}, $S:4} -A.pc.prototype={ +A.pg.prototype={ $1(a){A.hB(a) return a==null?"null":'"'+a+'"'}, -$S:57} +$S:60} A.e1.prototype={ -iP(a){var s,r=this.aU(a) +iQ(a){var s,r=this.aU(a) if(r>0)return B.b.t(a,0,r) if(this.bO(a)){if(0>=a.length)return A.c(a,0) s=a[0]}else s=null return s}, -f4(a,b){return a===b}} -A.ne.prototype={ -iu(){var s,r,q=this +f5(a,b){return a===b}} +A.ni.prototype={ +iv(){var s,r,q=this for(;;){s=q.d if(!(s.length!==0&&B.a.gA(s)===""))break B.a.d3(q.d) @@ -15637,33 +15751,33 @@ if(0>=s.length)return A.c(s,-1) s.pop()}s=q.e r=s.length if(r!==0)B.a.k(s,r-1,"")}, -f1(){var s,r,q,p,o,n,m=this,l=A.i([],t.s) -for(s=m.d,r=s.length,q=0,p=0;p=n)return A.c(l,-1) -l.pop()}else ++q}else B.a.l(l,o)}if(m.b==null)B.a.eX(l,0,A.aD(q,"..",!1,t.N)) +l.pop()}else ++q}else B.a.l(l,o)}if(m.b==null)B.a.eY(l,0,A.aE(q,"..",!1,t.N)) if(l.length===0&&m.b==null)B.a.l(l,".") m.d=l s=m.a -m.e=A.aD(l.length+1,s.gcc(),!0,t.N) +m.e=A.aE(l.length+1,s.gce(),!0,t.N) r=m.b if(r==null||l.length===0||!s.cW(r))B.a.k(m.e,0,"") r=m.b -if(r!=null&&s===$.lz())m.b=A.cO(r,"/","\\") -m.iu()}, +if(r!=null&&s===$.lC())m.b=A.cO(r,"/","\\") +m.iv()}, j(a){var s,r,q,p,o,n=this.b n=n!=null?n:"" for(s=this.d,r=s.length,q=this.e,p=q.length,o=0;o=s)return A.c(a,0) s=a.charCodeAt(0)===47}else s=!1 return s}, -f3(a){return a.j(0)}, -ga7(){return"url"}, -gcc(){return"/"}} -A.k7.prototype={ -eG(a){return B.b.D(a,"/")}, +f4(a){return a.j(0)}, +ga8(){return"url"}, +gce(){return"/"}} +A.k9.prototype={ +eH(a){return B.b.C(a,"/")}, by(a){return a===47||a===92}, cW(a){var s,r=a.length if(r===0)return!1 @@ -15732,42 +15846,42 @@ if(s)return 1 r=B.b.ap(a,"\\",2) if(r>0){r=B.b.ap(a,"\\",r+1) if(r>0)return r}return q}if(q<3)return 0 -if(!A.us(a.charCodeAt(0)))return 0 +if(!A.ux(a.charCodeAt(0)))return 0 if(a.charCodeAt(1)!==58)return 0 q=a.charCodeAt(2) if(!(q===47||q===92))return 0 return 3}, aU(a){return this.cv(a,!1)}, bO(a){return this.aU(a)===1}, -f3(a){var s,r -if(a.gaV()!==""&&a.gaV()!=="file")throw A.f(A.U("Uri "+a.j(0)+" must have scheme 'file:'.",null)) +f4(a){var s,r +if(a.gaV()!==""&&a.gaV()!=="file")throw A.f(A.W("Uri "+a.j(0)+" must have scheme 'file:'.",null)) s=a.gaT() -if(a.gc5()===""){if(s.length>=3&&B.b.T(s,"/")&&A.um(s,1)!=null)s=B.b.d4(s,"/","")}else s="\\\\"+a.gc5()+s +if(a.gc6()===""){if(s.length>=3&&B.b.U(s,"/")&&A.ur(s,1)!=null)s=B.b.d4(s,"/","")}else s="\\\\"+a.gc6()+s r=A.cO(s,"/","\\") return A.d9(r,0,r.length,B.E,!1)}, -m2(a,b){var s +m3(a,b){var s if(a===b)return!0 if(a===47)return b===92 if(a===92)return b===47 if((a^b)!==32)return!1 s=a|32 return s>=97&&s<=122}, -f4(a,b){var s,r,q +f5(a,b){var s,r,q if(a===b)return!0 s=a.length r=b.length if(s!==r)return!1 for(q=0;q=0)return A.c(s,0) return!1}return!0}return!1}, -gq(a){return J.A(this.a)}, -$iny:1} +gq(a){return J.B(this.a)}, +$inC:1} A.fr.prototype={ gF(a){var s=this return new A.fs(s.a,s.b,!1,s.c,s.$ti.h("fs<1>"))}} @@ -15816,12 +15930,12 @@ s=n.d if(s===o)n.d=s+1 else n.d=o return!0}}return!1}, -$iK:1} +$iL:1} A.cp.prototype={ H(a){var s,r=a.a,q=a.b,p=this.a.I(r,q) if(p<0)return new A.F(this.b,r,q) s=B.b.t(r,q,p) -return new A.Q(s,r,p,t.y)}, +return new A.T(s,r,p,t.y)}, I(a,b){return this.a.I(a,b)}, j(a){var s=this.bE(0) return s+"["+this.b+"]"}} @@ -15830,7 +15944,7 @@ H(a){var s,r,q=this.a.H(a) if(q instanceof A.F)return q s=this.$ti r=s.y[1].a(this.b.$1(q.gR())) -return new A.Q(r,q.a,q.b,s.h("Q<2>"))}, +return new A.T(r,q.a,q.b,s.h("T<2>"))}, I(a,b){var s=this.a.I(a,b) return s}} A.fU.prototype={ @@ -15840,31 +15954,31 @@ s=p.b r=this.$ti q=r.h("cB<1>") q=q.a(new A.cB(p.gR(),a.a,a.b,s,q)) -return new A.Q(q,p.a,s,r.h("Q>"))}, +return new A.T(q,p.a,s,r.h("T>"))}, I(a,b){return this.a.I(a,b)}} -A.pK.prototype={ +A.pQ.prototype={ $1(a){return this.a.H(new A.cb(A.q(a),0)).gR()}, -$S:58} -A.p8.prototype={ +$S:61} +A.pc.prototype={ $1(a){var s,r,q A.q(a) s=this.a -r=s?new A.bV(a):new A.af(a) +r=s?new A.bV(a):new A.ah(a) q=r.gbU(r) -r=s?new A.bV(a):new A.af(a) -return new A.aa(q,r.gbU(r))}, -$S:59} -A.p9.prototype={ +r=s?new A.bV(a):new A.ah(a) +return new A.ab(q,r.gbU(r))}, +$S:62} +A.pd.prototype={ $3(a,b,c){var s,r,q A.q(a) A.q(b) A.q(c) s=this.a -r=s?new A.bV(a):new A.af(a) +r=s?new A.bV(a):new A.ah(a) q=r.gbU(r) -r=s?new A.bV(c):new A.af(c) -return new A.aa(q,r.gbU(r))}, -$S:60} +r=s?new A.bV(c):new A.ah(c) +return new A.ab(q,r.gbU(r))}, +$S:63} A.ca.prototype={ j(a){return A.cN(this).j(0)}} A.fM.prototype={ @@ -15873,8 +15987,8 @@ j(a){return this.cG(0)+"("+this.a+")"}} A.ck.prototype={ b9(a){return this.a}, j(a){return this.cG(0)+"("+this.a+")"}} -A.j3.prototype={ -jU(a){var s,r,q,p,o,n,m,l,k,j,i,h +A.j4.prototype={ +jV(a){var s,r,q,p,o,n,m,l,k,j,i,h for(s=a.length,r=this.a,q=this.c,p=q.length,o=q.$flags|0,n=0;n=0)return q}return q}} -A.at.prototype={ -gaN(){return A.i([this.a],t.U)}, +A.au.prototype={ +gaN(){return A.i([this.a],t.a)}, b8(a,b){var s=this -s.bW(a,b) -if(s.a.u(0,a))s.a=A.w(s).h("n").a(b)}} +s.bX(a,b) +if(s.a.v(0,a))s.a=A.x(s).h("n").a(b)}} A.fH.prototype={ H(a){var s,r,q=this.a.H(a) if(q instanceof A.F)return q @@ -15945,22 +16059,22 @@ s=this.b.H(q) if(s instanceof A.F)return s r=this.$ti q=r.h("+(1,2)").a(new A.l(q.gR(),s.gR())) -return new A.Q(q,s.a,s.b,r.h("Q<+(1,2)>"))}, +return new A.T(q,s.a,s.b,r.h("T<+(1,2)>"))}, I(a,b){b=this.a.I(a,b) if(b<0)return-1 b=this.b.I(a,b) if(b<0)return-1 return b}, -gaN(){return A.i([this.a,this.b],t.U)}, +gaN(){return A.i([this.a,this.b],t.a)}, b8(a,b){var s=this -s.bW(a,b) -if(s.a.u(0,a))s.a=s.$ti.h("n<1>").a(b) -if(s.b.u(0,a))s.b=s.$ti.h("n<2>").a(b)}} -A.nr.prototype={ -$1(a){this.b.h("@<0>").v(this.c).h("+(1,2)").a(a) +s.bX(a,b) +if(s.a.v(0,a))s.a=s.$ti.h("n<1>").a(b) +if(s.b.v(0,a))s.b=s.$ti.h("n<2>").a(b)}} +A.nv.prototype={ +$1(a){this.b.h("@<0>").u(this.c).h("+(1,2)").a(a) return this.a.$2(a.a,a.b)}, -$S(){return this.d.h("@<0>").v(this.b).v(this.c).h("1(+(2,3))")}} -A.dA.prototype={ +$S(){return this.d.h("@<0>").u(this.b).u(this.c).h("1(+(2,3))")}} +A.dB.prototype={ H(a){var s,r,q,p=this,o=p.a.H(a) if(o instanceof A.F)return o s=p.b.H(o) @@ -15969,7 +16083,7 @@ r=p.c.H(s) if(r instanceof A.F)return r q=p.$ti s=q.h("+(1,2,3)").a(new A.hl(o.gR(),s.gR(),r.gR())) -return new A.Q(s,r.a,r.b,q.h("Q<+(1,2,3)>"))}, +return new A.T(s,r.a,r.b,q.h("T<+(1,2,3)>"))}, I(a,b){b=this.a.I(a,b) if(b<0)return-1 b=this.b.I(a,b) @@ -15977,18 +16091,18 @@ if(b<0)return-1 b=this.c.I(a,b) if(b<0)return-1 return b}, -gaN(){return A.i([this.a,this.b,this.c],t.U)}, +gaN(){return A.i([this.a,this.b,this.c],t.a)}, b8(a,b){var s=this -s.bW(a,b) -if(s.a.u(0,a))s.a=s.$ti.h("n<1>").a(b) -if(s.b.u(0,a))s.b=s.$ti.h("n<2>").a(b) -if(s.c.u(0,a))s.c=s.$ti.h("n<3>").a(b)}} -A.ns.prototype={ +s.bX(a,b) +if(s.a.v(0,a))s.a=s.$ti.h("n<1>").a(b) +if(s.b.v(0,a))s.b=s.$ti.h("n<2>").a(b) +if(s.c.v(0,a))s.c=s.$ti.h("n<3>").a(b)}} +A.nw.prototype={ $1(a){var s=this -s.b.h("@<0>").v(s.c).v(s.d).h("+(1,2,3)").a(a) +s.b.h("@<0>").u(s.c).u(s.d).h("+(1,2,3)").a(a) return s.a.$3(a.a,a.b,a.c)}, $S(){var s=this -return s.e.h("@<0>").v(s.b).v(s.c).v(s.d).h("1(+(2,3,4))")}} +return s.e.h("@<0>").u(s.b).u(s.c).u(s.d).h("1(+(2,3,4))")}} A.fI.prototype={ H(a){var s,r,q,p,o=this,n=o.a.H(a) if(n instanceof A.F)return n @@ -16000,7 +16114,7 @@ q=o.d.H(r) if(q instanceof A.F)return q p=o.$ti r=p.h("+(1,2,3,4)").a(new A.hm([n.gR(),s.gR(),r.gR(),q.gR()])) -return new A.Q(r,q.a,q.b,p.h("Q<+(1,2,3,4)>"))}, +return new A.T(r,q.a,q.b,p.h("T<+(1,2,3,4)>"))}, I(a,b){var s=this b=s.a.I(a,b) if(b<0)return-1 @@ -16012,18 +16126,18 @@ b=s.d.I(a,b) if(b<0)return-1 return b}, gaN(){var s=this -return A.i([s.a,s.b,s.c,s.d],t.U)}, +return A.i([s.a,s.b,s.c,s.d],t.a)}, b8(a,b){var s=this -s.bW(a,b) -if(s.a.u(0,a))s.a=s.$ti.h("n<1>").a(b) -if(s.b.u(0,a))s.b=s.$ti.h("n<2>").a(b) -if(s.c.u(0,a))s.c=s.$ti.h("n<3>").a(b) -if(s.d.u(0,a))s.d=s.$ti.h("n<4>").a(b)}} -A.nu.prototype={ -$1(a){var s=this,r=s.b.h("@<0>").v(s.c).v(s.d).v(s.e).h("+(1,2,3,4)").a(a).a +s.bX(a,b) +if(s.a.v(0,a))s.a=s.$ti.h("n<1>").a(b) +if(s.b.v(0,a))s.b=s.$ti.h("n<2>").a(b) +if(s.c.v(0,a))s.c=s.$ti.h("n<3>").a(b) +if(s.d.v(0,a))s.d=s.$ti.h("n<4>").a(b)}} +A.ny.prototype={ +$1(a){var s=this,r=s.b.h("@<0>").u(s.c).u(s.d).u(s.e).h("+(1,2,3,4)").a(a).a return s.a.$4(r[0],r[1],r[2],r[3])}, $S(){var s=this -return s.f.h("@<0>").v(s.b).v(s.c).v(s.d).v(s.e).h("1(+(2,3,4,5))")}} +return s.f.h("@<0>").u(s.b).u(s.c).u(s.d).u(s.e).h("1(+(2,3,4,5))")}} A.fJ.prototype={ H(a){var s,r,q,p,o,n=this,m=n.a.H(a) if(m instanceof A.F)return m @@ -16037,7 +16151,7 @@ p=n.e.H(q) if(p instanceof A.F)return p o=n.$ti q=o.h("+(1,2,3,4,5)").a(new A.hn([m.gR(),s.gR(),r.gR(),q.gR(),p.gR()])) -return new A.Q(q,p.a,p.b,o.h("Q<+(1,2,3,4,5)>"))}, +return new A.T(q,p.a,p.b,o.h("T<+(1,2,3,4,5)>"))}, I(a,b){var s=this b=s.a.I(a,b) if(b<0)return-1 @@ -16051,19 +16165,19 @@ b=s.e.I(a,b) if(b<0)return-1 return b}, gaN(){var s=this -return A.i([s.a,s.b,s.c,s.d,s.e],t.U)}, +return A.i([s.a,s.b,s.c,s.d,s.e],t.a)}, b8(a,b){var s=this -s.bW(a,b) -if(s.a.u(0,a))s.a=s.$ti.h("n<1>").a(b) -if(s.b.u(0,a))s.b=s.$ti.h("n<2>").a(b) -if(s.c.u(0,a))s.c=s.$ti.h("n<3>").a(b) -if(s.d.u(0,a))s.d=s.$ti.h("n<4>").a(b) -if(s.e.u(0,a))s.e=s.$ti.h("n<5>").a(b)}} -A.nv.prototype={ -$1(a){var s=this,r=s.b.h("@<0>").v(s.c).v(s.d).v(s.e).v(s.f).h("+(1,2,3,4,5)").a(a).a +s.bX(a,b) +if(s.a.v(0,a))s.a=s.$ti.h("n<1>").a(b) +if(s.b.v(0,a))s.b=s.$ti.h("n<2>").a(b) +if(s.c.v(0,a))s.c=s.$ti.h("n<3>").a(b) +if(s.d.v(0,a))s.d=s.$ti.h("n<4>").a(b) +if(s.e.v(0,a))s.e=s.$ti.h("n<5>").a(b)}} +A.nz.prototype={ +$1(a){var s=this,r=s.b.h("@<0>").u(s.c).u(s.d).u(s.e).u(s.f).h("+(1,2,3,4,5)").a(a).a return s.a.$5(r[0],r[1],r[2],r[3],r[4])}, $S(){var s=this -return s.r.h("@<0>").v(s.b).v(s.c).v(s.d).v(s.e).v(s.f).h("1(+(2,3,4,5,6))")}} +return s.r.h("@<0>").u(s.b).u(s.c).u(s.d).u(s.e).u(s.f).h("1(+(2,3,4,5,6))")}} A.fK.prototype={ H(a){var s,r,q,p,o,n,m,l,k=this,j=k.a.H(a) if(j instanceof A.F)return j @@ -16083,7 +16197,7 @@ m=k.w.H(n) if(m instanceof A.F)return m l=k.$ti n=l.h("+(1,2,3,4,5,6,7,8)").a(new A.ho([j.gR(),s.gR(),r.gR(),q.gR(),p.gR(),o.gR(),n.gR(),m.gR()])) -return new A.Q(n,m.a,m.b,l.h("Q<+(1,2,3,4,5,6,7,8)>"))}, +return new A.T(n,m.a,m.b,l.h("T<+(1,2,3,4,5,6,7,8)>"))}, I(a,b){var s=this b=s.a.I(a,b) if(b<0)return-1 @@ -16103,33 +16217,33 @@ b=s.w.I(a,b) if(b<0)return-1 return b}, gaN(){var s=this -return A.i([s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w],t.U)}, +return A.i([s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w],t.a)}, b8(a,b){var s=this -s.bW(a,b) -if(s.a.u(0,a))s.a=s.$ti.h("n<1>").a(b) -if(s.b.u(0,a))s.b=s.$ti.h("n<2>").a(b) -if(s.c.u(0,a))s.c=s.$ti.h("n<3>").a(b) -if(s.d.u(0,a))s.d=s.$ti.h("n<4>").a(b) -if(s.e.u(0,a))s.e=s.$ti.h("n<5>").a(b) -if(s.f.u(0,a))s.f=s.$ti.h("n<6>").a(b) -if(s.r.u(0,a))s.r=s.$ti.h("n<7>").a(b) -if(s.w.u(0,a))s.w=s.$ti.h("n<8>").a(b)}} -A.nw.prototype={ -$1(a){var s=this,r=s.b.h("@<0>").v(s.c).v(s.d).v(s.e).v(s.f).v(s.r).v(s.w).v(s.x).h("+(1,2,3,4,5,6,7,8)").a(a).a +s.bX(a,b) +if(s.a.v(0,a))s.a=s.$ti.h("n<1>").a(b) +if(s.b.v(0,a))s.b=s.$ti.h("n<2>").a(b) +if(s.c.v(0,a))s.c=s.$ti.h("n<3>").a(b) +if(s.d.v(0,a))s.d=s.$ti.h("n<4>").a(b) +if(s.e.v(0,a))s.e=s.$ti.h("n<5>").a(b) +if(s.f.v(0,a))s.f=s.$ti.h("n<6>").a(b) +if(s.r.v(0,a))s.r=s.$ti.h("n<7>").a(b) +if(s.w.v(0,a))s.w=s.$ti.h("n<8>").a(b)}} +A.nA.prototype={ +$1(a){var s=this,r=s.b.h("@<0>").u(s.c).u(s.d).u(s.e).u(s.f).u(s.r).u(s.w).u(s.x).h("+(1,2,3,4,5,6,7,8)").a(a).a return s.a.$8(r[0],r[1],r[2],r[3],r[4],r[5],r[6],r[7])}, $S(){var s=this -return s.y.h("@<0>").v(s.b).v(s.c).v(s.d).v(s.e).v(s.f).v(s.r).v(s.w).v(s.x).h("1(+(2,3,4,5,6,7,8,9))")}} -A.dr.prototype={ +return s.y.h("@<0>").u(s.b).u(s.c).u(s.d).u(s.e).u(s.f).u(s.r).u(s.w).u(s.x).h("1(+(2,3,4,5,6,7,8,9))")}} +A.ds.prototype={ b8(a,b){var s,r,q,p -this.bW(a,b) -for(s=this.a,r=s.length,q=this.$ti.h("n"),p=0;p"),p=0;p"))}, +return new A.T(r,a.a,a.b,s.h("T<1>"))}, I(a,b){var s=this.a.I(a,b) return s<0?b:s}} A.fP.prototype={ @@ -16141,35 +16255,35 @@ r=o.c.H(s) if(r instanceof A.F)return r q=o.$ti p=q.c.a(s.gR()) -return new A.Q(p,r.a,r.b,q.h("Q<1>"))}, +return new A.T(p,r.a,r.b,q.h("T<1>"))}, I(a,b){b=this.b.I(a,b) if(b<0)return-1 b=this.a.I(a,b) if(b<0)return-1 return this.c.I(a,b)}, -gaN(){return A.i([this.b,this.a,this.c],t.U)}, +gaN(){return A.i([this.b,this.a,this.c],t.a)}, b8(a,b){var s=this -s.fI(a,b) -if(s.b.u(0,a))s.b=b -if(s.c.u(0,a))s.c=b}} +s.fJ(a,b) +if(s.b.v(0,a))s.b=b +if(s.c.v(0,a))s.c=b}} A.id.prototype={ H(a){var s=a.b,r=a.a if(s"))}, +return new A.T(r,a.a,a.b,s.h("T<1>"))}, I(a,b){return b}, j(a){return this.bE(0)+"["+A.k(this.a)+"]"}} -A.jf.prototype={ +A.jg.prototype={ H(a){var s,r=a.a,q=a.b,p=r.length -if(q=s.c){o=B.b.t(r,q,m) -o=new A.Q(o,r,m,t.y)}else o=new A.F(s.b,r,m) +o=new A.T(o,r,m,t.y)}else o=new A.F(s.b,r,m) return o}, I(a,b){var s=a.length,r=this.d,q=this.a,p=0 for(;;){if(!(p=this.c?b:-1}, @@ -16242,16 +16356,16 @@ if(p instanceof A.F){if(m.length>=s)return p q=o.a.H(r) if(q instanceof A.F)return p B.a.l(m,q.gR())}else{n.h("m<1>").a(m) -return new A.Q(m,r.a,r.b,n.h("Q>"))}}}, +return new A.T(m,r.a,r.b,n.h("T>"))}}}, I(a,b){var s,r,q,p,o=this for(s=o.b,r=b,q=0;q=s)return-1 p=o.a.I(a,r) if(p<0)return-1;++q}else return r}} A.fm.prototype={ -gaN(){return A.i([this.a,this.e],t.U)}, -b8(a,b){this.fI(a,b) -if(this.e.u(0,a))this.e=b}} +gaN(){return A.i([this.a,this.e],t.a)}, +b8(a,b){this.fJ(a,b) +if(this.e.v(0,a))this.e=b}} A.fB.prototype={ H(a){var s,r,q,p=this,o=p.$ti,n=A.i([],o.h("y<1>")) for(s=p.b,r=a;n.length").a(n) -return new A.Q(n,r.a,r.b,o.h("Q>"))}, +return new A.T(n,r.a,r.b,o.h("T>"))}, I(a,b){var s,r,q,p,o=this for(s=o.b,r=b,q=0;q=q.gm(a)||q.n(a,l)!==10)m=10}if(m===10)B.a.l(o,n+1)}}, -K(a,b){return A.qt(this,a,b)}, +if(l>=q.gn(a)||q.m(a,l)!==10)m=10}if(m===10)B.a.l(o,n+1)}}, +K(a,b){return A.qy(this,a,b)}, cC(a){var s,r=this -if(a<0)throw A.f(A.aP("Offset may not be negative, was "+a+".")) -else if(a>r.c.length)throw A.f(A.aP("Offset "+a+u.D+r.gm(0)+".")) +if(a<0)throw A.f(A.aQ("Offset may not be negative, was "+a+".")) +else if(a>r.c.length)throw A.f(A.aQ("Offset "+a+u.D+r.gn(0)+".")) s=r.b if(a=B.a.gA(s))return s.length-1 -if(r.kw(a)){s=r.d +if(r.kx(a)){s=r.d s.toString -return s}return r.d=r.k5(a)-1}, -kw(a){var s,r,q,p=this.d +return s}return r.d=r.k6(a)-1}, +kx(a){var s,r,q,p=this.d if(p==null)return!1 s=this.b r=s.length @@ -16302,106 +16416,106 @@ q=a=0&&ra)o=r else s=r+1}return o}, -e_(a){var s,r,q,p=this -if(a<0)throw A.f(A.aP("Offset may not be negative, was "+a+".")) -else if(a>p.c.length)throw A.f(A.aP("Offset "+a+" must be not be greater than the number of characters in the file, "+p.gm(0)+".")) +e0(a){var s,r,q,p=this +if(a<0)throw A.f(A.aQ("Offset may not be negative, was "+a+".")) +else if(a>p.c.length)throw A.f(A.aQ("Offset "+a+" must be not be greater than the number of characters in the file, "+p.gn(0)+".")) s=p.cC(a) r=p.b if(!(s>=0&&sa)throw A.f(A.aP("Line "+s+" comes after offset "+a+".")) +if(q>a)throw A.f(A.aQ("Line "+s+" comes after offset "+a+".")) return a-q}, d7(a){var s,r,q,p -if(a<0)throw A.f(A.aP("Line may not be negative, was "+a+".")) +if(a<0)throw A.f(A.aQ("Line may not be negative, was "+a+".")) else{s=this.b r=s.length -if(a>=r)throw A.f(A.aP("Line "+a+" must be less than the number of lines in the file, "+this.gnl()+"."))}q=s[a] +if(a>=r)throw A.f(A.aQ("Line "+a+" must be less than the number of lines in the file, "+this.gnm()+"."))}q=s[a] if(q<=this.c.length){p=a+1 s=p=s[p]}else s=!0 -if(s)throw A.f(A.aP("Line "+a+" doesn't have 0 columns.")) +if(s)throw A.f(A.aQ("Line "+a+" doesn't have 0 columns.")) return q}} A.bh.prototype={ ga6(){return this.a.a}, gaj(){return this.a.cC(this.b)}, -gao(){return this.a.e_(this.b)}, -bg(a,b){var s,r=this.b -if(r<0)throw A.f(A.aP("Offset may not be negative, was "+r+".")) +gao(){return this.a.e0(this.b)}, +bh(a,b){var s,r=this.b +if(r<0)throw A.f(A.aQ("Offset may not be negative, was "+r+".")) else{s=this.a -if(r>s.c.length)throw A.f(A.aP("Offset "+r+u.D+s.gm(0)+"."))}}, +if(r>s.c.length)throw A.f(A.aQ("Offset "+r+u.D+s.gn(0)+"."))}}, gaw(){return this.b}} -A.av.prototype={ +A.aw.prototype={ ga6(){return this.a.a}, -gm(a){return this.c-this.b}, +gn(a){return this.c-this.b}, gS(){return A.cU(this.a,this.b)}, -gU(){return A.cU(this.a,this.c)}, -gZ(){return A.ay(B.aA.am(this.a.c,this.b,this.c),0,null)}, +gV(){return A.cU(this.a,this.c)}, +gZ(){return A.aA(B.aA.am(this.a.c,this.b,this.c),0,null)}, gb_(){var s=this,r=s.a,q=s.c,p=r.cC(q) -if(r.e_(q)===0&&p!==0){if(q-s.b===0)return p===r.b.length-1?"":A.ay(B.aA.am(r.c,r.d7(p),r.d7(p+1)),0,null)}else q=p===r.b.length-1?r.c.length:r.d7(p+1) -return A.ay(B.aA.am(r.c,r.d7(r.cC(s.b)),q),0,null)}, +if(r.e0(q)===0&&p!==0){if(q-s.b===0)return p===r.b.length-1?"":A.aA(B.aA.am(r.c,r.d7(p),r.d7(p+1)),0,null)}else q=p===r.b.length-1?r.c.length:r.d7(p+1) +return A.aA(B.aA.am(r.c,r.d7(r.cC(s.b)),q),0,null)}, aG(a,b,c){var s,r=this.c,q=this.b -if(rs.c.length)throw A.f(A.aP("End "+r+u.D+s.gm(0)+".")) -else if(q<0)throw A.f(A.aP("Start may not be negative, was "+q+"."))}}, -ah(a,b){var s +if(r>s.c.length)throw A.f(A.aQ("End "+r+u.D+s.gn(0)+".")) +else if(q<0)throw A.f(A.aQ("Start may not be negative, was "+q+"."))}}, +ai(a,b){var s t.hs.a(b) -if(!(b instanceof A.av))return this.jO(0,b) -s=B.f.ah(this.b,b.b) -return s===0?B.f.ah(this.c,b.c):s}, -u(a,b){var s=this +if(!(b instanceof A.aw))return this.jP(0,b) +s=B.f.ai(this.b,b.b) +return s===0?B.f.ai(this.c,b.c):s}, +v(a,b){var s=this if(b==null)return!1 -if(!(b instanceof A.av))return s.jN(0,b) -return s.b===b.b&&s.c===b.c&&J.M(s.a.a,b.a.a)}, +if(!(b instanceof A.aw))return s.jO(0,b) +return s.b===b.b&&s.c===b.c&&J.N(s.a.a,b.a.a)}, gq(a){return A.aX(this.b,this.c,this.a.a,B.u)}, aO(a,b){var s,r=this,q=r.a -if(!J.M(q.a,b.a.a))throw A.f(A.U('Source URLs "'+A.k(r.ga6())+'" and "'+A.k(b.ga6())+"\" don't match.",null)) +if(!J.N(q.a,b.a.a))throw A.f(A.W('Source URLs "'+A.k(r.ga6())+'" and "'+A.k(b.ga6())+"\" don't match.",null)) s=Math.min(r.b,b.b) -return A.qt(q,s,Math.max(r.c,b.c))}, -$irl:1, +return A.qy(q,s,Math.max(r.c,b.c))}, +$irq:1, $icd:1} -A.ma.prototype={ -n6(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a=this,a0=null,a1=a.a -a.hB(B.a.gbv(a1).c) +A.me.prototype={ +n7(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a=this,a0=null,a1=a.a +a.hC(B.a.gbv(a1).c) s=a.e -r=A.aD(s,a0,!1,t.dd) +r=A.aE(s,a0,!1,t.dd) for(q=a.r,s=s!==0,p=a.b,o=0;o0){m=a1[o-1] l=n.c -if(!J.M(m.c,l)){a.dw("\u2575") +if(!J.N(m.c,l)){a.dw("\u2575") q.a+="\n" -a.hB(l)}else if(m.b+1!==n.b){a.l9("...") -q.a+="\n"}}for(l=n.d,k=A.x(l).h("V<1>"),j=new A.V(l,k),j=new A.L(j,j.gm(0),k.h("L")),k=k.h("G.E"),i=n.b,h=n.a;j.p();){g=j.d +a.hC(l)}else if(m.b+1!==n.b){a.la("...") +q.a+="\n"}}for(l=n.d,k=A.w(l).h("X<1>"),j=new A.X(l,k),j=new A.M(j,j.gn(0),k.h("M")),k=k.h("G.E"),i=n.b,h=n.a;j.p();){g=j.d if(g==null)g=k.a(g) f=g.a -if(f.gS().gaj()!==f.gU().gaj()&&f.gS().gaj()===i&&a.kx(B.b.t(h,0,f.gS().gao()))){e=B.a.al(r,a0) -if(e<0)A.O(A.U(A.k(r)+" contains no null elements.",a0)) -B.a.k(r,e,g)}}a.l8(i) +if(f.gS().gaj()!==f.gV().gaj()&&f.gS().gaj()===i&&a.ky(B.b.t(h,0,f.gS().gao()))){e=B.a.al(r,a0) +if(e<0)A.P(A.W(A.k(r)+" contains no null elements.",a0)) +B.a.k(r,e,g)}}a.l9(i) q.a+=" " -a.l7(n,r) +a.l8(n,r) if(s)q.a+=" " -d=B.a.eW(l,new A.mv()) +d=B.a.eX(l,new A.mz()) if(d===-1)c=a0 else{if(!(d>=0&&d")),q=this.r,r=r.h("D.E");s.p();){p=s.d +for(s=new A.ah(a),r=t.gS,s=new A.M(s,s.gn(0),r.h("M")),q=this.r,r=r.h("C.E");s.p();){p=s.d if(p==null)p=r.a(p) if(p===9)q.a+=B.b.b2(" ",4) -else{p=A.a3(p) +else{p=A.a4(p) q.a+=p}}}, dz(a,b,c){var s={} s.a=c if(b!=null)s.a=B.f.j(b+1) -this.b3(new A.mt(s,this,a),"\x1b[34m",t.a)}, +this.b3(new A.mx(s,this,a),"\x1b[34m",t.d)}, dw(a){return this.dz(a,null,null)}, -l9(a){return this.dz(null,null,a)}, -l8(a){return this.dz(null,a,null)}, -eu(){return this.dz(null,null,null)}, -ec(a){var s,r,q,p -for(s=new A.af(a),r=t.G,s=new A.L(s,s.gm(0),r.h("L")),r=r.h("D.E"),q=0;s.p();){p=s.d +la(a){return this.dz(null,null,a)}, +l9(a){return this.dz(null,a,null)}, +ev(){return this.dz(null,null,null)}, +ed(a){var s,r,q,p +for(s=new A.ah(a),r=t.gS,s=new A.M(s,s.gn(0),r.h("M")),r=r.h("C.E"),q=0;s.p();){p=s.d if((p==null?r.a(p):p)===9)++q}return q}, -kx(a){var s,r,q -for(s=new A.af(a),r=t.G,s=new A.L(s,s.gm(0),r.h("L")),r=r.h("D.E");s.p();){q=s.d +ky(a){var s,r,q +for(s=new A.ah(a),r=t.gS,s=new A.M(s,s.gn(0),r.h("M")),r=r.h("C.E");s.p();){q=s.d if(q==null)q=r.a(q) if(q!==32&&q!==9)return!1}return!0}, b3(a,b,c){var s,r @@ -16483,29 +16597,29 @@ if(s&&b!=null)this.r.a+=b r=a.$0() if(s&&b!=null)this.r.a+="\x1b[0m" return r}} -A.mu.prototype={ +A.my.prototype={ $0(){return this.a}, -$S:65} -A.mc.prototype={ -$1(a){var s=t.nR.a(a).d,r=A.x(s) -return new A.bb(s,r.h("C(1)").a(new A.mb()),r.h("bb<1>")).gm(0)}, -$S:66} -A.mb.prototype={ +$S:68} +A.mg.prototype={ +$1(a){var s=t.nR.a(a).d,r=A.w(s) +return new A.b_(s,r.h("A(1)").a(new A.mf()),r.h("b_<1>")).gn(0)}, +$S:69} +A.mf.prototype={ $1(a){var s=t.D.a(a).a -return s.gS().gaj()!==s.gU().gaj()}, +return s.gS().gaj()!==s.gV().gaj()}, $S:21} -A.md.prototype={ +A.mh.prototype={ $1(a){return t.nR.a(a).c}, -$S:68} -A.mf.prototype={ +$S:71} +A.mj.prototype={ $1(a){var s=t.D.a(a).a.ga6() return s==null?new A.p():s}, -$S:69} -A.mg.prototype={ +$S:72} +A.mk.prototype={ $2(a,b){var s=t.D -return s.a(a).a.ah(0,s.a(b).a)}, -$S:70} -A.mh.prototype={ +return s.a(a).a.ai(0,s.a(b).a)}, +$S:73} +A.ml.prototype={ $1(a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a t.lO.a(a0) s=a0.a @@ -16513,187 +16627,187 @@ r=a0.b q=A.i([],t.dg) for(p=J.c4(r),o=p.gF(r),n=t.g7;o.p();){m=o.gB().a l=m.gb_() -k=A.pu(l,m.gZ(),m.gS().gao()) +k=A.pA(l,m.gZ(),m.gS().gao()) k.toString -j=B.b.dB("\n",B.b.t(l,0,k)).gm(0) +j=B.b.dB("\n",B.b.t(l,0,k)).gn(0) i=m.gS().gaj()-j for(m=l.split("\n"),k=m.length,h=0;hB.a.gA(q).b)B.a.l(q,new A.bD(g,i,s,A.i([],n)));++i}}f=A.i([],n) -for(o=q.length,n=t.aP,e=f.$flags|0,d=0,h=0;h")),b=g.b,k=k.h("G.E");m.p();){a=m.d +for(m=p.aX(r,d),k=m.$ti,m=new A.M(m,m.gn(0),k.h("M")),b=g.b,k=k.h("G.E");m.p();){a=m.d if(a==null)a=k.a(a) if(a.a.gS().gaj()>b)break B.a.l(f,a)}d+=f.length-c B.a.a1(g.d,f)}return q}, -$S:71} -A.me.prototype={ -$1(a){return t.D.a(a).a.gU().gaj()" return null}, $S:1} -A.mp.prototype={ +A.mt.prototype={ $0(){var s=this.a.r,r=this.b===this.c.b?"\u250c":"\u2514" s.a+=r}, $S:3} -A.mq.prototype={ +A.mu.prototype={ $0(){var s=this.a.r,r=this.b==null?"\u2500":"\u253c" s.a+=r}, $S:3} -A.mr.prototype={ +A.mv.prototype={ $0(){this.a.r.a+="\u2500" return null}, $S:1} -A.ms.prototype={ +A.mw.prototype={ $0(){var s,r,q=this,p=q.a,o=p.a?"\u253c":"\u2502" if(q.c!=null)q.b.r.a+=o else{s=q.e r=s.b if(q.d===r){s=q.b -s.b3(new A.mn(p,s),p.b,t.a) +s.b3(new A.mr(p,s),p.b,t.d) p.a=!0 -if(p.b==null)p.b=s.b}else{s=q.r===r&&q.f.a.gU().gao()===s.a.length +if(p.b==null)p.b=s.b}else{s=q.r===r&&q.f.a.gV().gao()===s.a.length r=q.b if(s)r.r.a+="\u2514" -else r.b3(new A.mo(r,o),p.b,t.a)}}}, +else r.b3(new A.ms(r,o),p.b,t.d)}}}, $S:3} -A.mn.prototype={ +A.mr.prototype={ $0(){var s=this.b.r,r=this.a.a?"\u252c":"\u250c" s.a+=r}, $S:3} -A.mo.prototype={ +A.ms.prototype={ $0(){this.a.r.a+=this.b}, $S:3} -A.mj.prototype={ +A.mn.prototype={ $0(){var s=this return s.a.dA(B.b.t(s.b,s.c,s.d))}, $S:1} -A.mk.prototype={ -$0(){var s,r,q=this.a,p=q.r,o=p.a,n=this.c.a,m=n.gS().gao(),l=n.gU().gao() +A.mo.prototype={ +$0(){var s,r,q=this.a,p=q.r,o=p.a,n=this.c.a,m=n.gS().gao(),l=n.gV().gao() n=this.b.a -s=q.ec(B.b.t(n,0,m)) -r=q.ec(B.b.t(n,m,l)) +s=q.ed(B.b.t(n,0,m)) +r=q.ed(B.b.t(n,m,l)) m+=s*3 n=(p.a+=B.b.b2(" ",m))+B.b.b2("^",Math.max(l+(s+r)*3-m,1)) p.a=n return n.length-o.length}, $S:34} -A.ml.prototype={ -$0(){return this.a.l4(this.b,this.c.a.gS().gao())}, +A.mp.prototype={ +$0(){return this.a.l5(this.b,this.c.a.gS().gao())}, $S:1} -A.mm.prototype={ +A.mq.prototype={ $0(){var s=this,r=s.a,q=r.r,p=q.a if(s.b)q.a=p+B.b.b2("\u2500",3) -else r.hA(s.c,Math.max(s.d.a.gU().gao()-1,0),!1) +else r.hB(s.c,Math.max(s.d.a.gV().gao()-1,0),!1) return q.a.length-p.length}, $S:34} -A.mt.prototype={ +A.mx.prototype={ $0(){var s=this.b,r=s.r,q=this.a.a if(q==null)q="" -s=B.b.nC(q,s.d) +s=B.b.nD(q,s.d) s=r.a+=s q=this.c r.a=s+(q==null?"\u2502":q)}, $S:3} -A.aK.prototype={ +A.aL.prototype={ j(a){var s=this.a -s="primary "+(""+s.gS().gaj()+":"+s.gS().gao()+"-"+s.gU().gaj()+":"+s.gU().gao()) +s="primary "+(""+s.gS().gaj()+":"+s.gS().gao()+"-"+s.gV().gaj()+":"+s.gV().gao()) return s.charCodeAt(0)==0?s:s}} -A.oL.prototype={ +A.oP.prototype={ $0(){var s,r,q,p,o=this.a -if(!(t.ol.b(o)&&A.pu(o.gb_(),o.gZ(),o.gS().gao())!=null)){s=A.jM(o.gS().gaw(),0,0,o.ga6()) -r=o.gU().gaw() +if(!(t.ol.b(o)&&A.pA(o.gb_(),o.gZ(),o.gS().gao())!=null)){s=A.jO(o.gS().gaw(),0,0,o.ga6()) +r=o.gV().gaw() q=o.ga6() -p=A.yQ(o.gZ(),10) -o=A.nH(s,A.jM(r,A.tp(o.gZ()),p,q),o.gZ(),o.gZ())}return A.x9(A.xb(A.xa(o)))}, -$S:73} +p=A.yV(o.gZ(),10) +o=A.nL(s,A.jO(r,A.tu(o.gZ()),p,q),o.gZ(),o.gZ())}return A.xe(A.xg(A.xf(o)))}, +$S:76} A.bD.prototype={ j(a){return""+this.b+': "'+this.a+'" ('+B.a.aq(this.d,", ")+")"}} A.bW.prototype={ -eJ(a){var s=this.a -if(!J.M(s,a.ga6()))throw A.f(A.U('Source URLs "'+A.k(s)+'" and "'+A.k(a.ga6())+"\" don't match.",null)) +eK(a){var s=this.a +if(!J.N(s,a.ga6()))throw A.f(A.W('Source URLs "'+A.k(s)+'" and "'+A.k(a.ga6())+"\" don't match.",null)) return Math.abs(this.b-a.gaw())}, -ah(a,b){var s +ai(a,b){var s t.hq.a(b) s=this.a -if(!J.M(s,b.ga6()))throw A.f(A.U('Source URLs "'+A.k(s)+'" and "'+A.k(b.ga6())+"\" don't match.",null)) +if(!J.N(s,b.ga6()))throw A.f(A.W('Source URLs "'+A.k(s)+'" and "'+A.k(b.ga6())+"\" don't match.",null)) return this.b-b.gaw()}, -u(a,b){if(b==null)return!1 -return t.hq.b(b)&&J.M(this.a,b.ga6())&&this.b===b.gaw()}, +v(a,b){if(b==null)return!1 +return t.hq.b(b)&&J.N(this.a,b.ga6())&&this.b===b.gaw()}, gq(a){var s=this.a s=s==null?null:s.gq(s) if(s==null)s=0 return s+this.b}, j(a){var s=this,r=A.cN(s).j(0),q=s.a return"<"+r+": "+s.b+" "+(A.k(q==null?"unknown source":q)+":"+(s.c+1)+":"+(s.d+1))+">"}, -$ia5:1, +$ia6:1, ga6(){return this.a}, gaw(){return this.b}, gaj(){return this.c}, gao(){return this.d}} -A.jN.prototype={ -eJ(a){if(!J.M(this.a.a,a.ga6()))throw A.f(A.U('Source URLs "'+A.k(this.ga6())+'" and "'+A.k(a.ga6())+"\" don't match.",null)) +A.jP.prototype={ +eK(a){if(!J.N(this.a.a,a.ga6()))throw A.f(A.W('Source URLs "'+A.k(this.ga6())+'" and "'+A.k(a.ga6())+"\" don't match.",null)) return Math.abs(this.b-a.gaw())}, -ah(a,b){t.hq.a(b) -if(!J.M(this.a.a,b.ga6()))throw A.f(A.U('Source URLs "'+A.k(this.ga6())+'" and "'+A.k(b.ga6())+"\" don't match.",null)) +ai(a,b){t.hq.a(b) +if(!J.N(this.a.a,b.ga6()))throw A.f(A.W('Source URLs "'+A.k(this.ga6())+'" and "'+A.k(b.ga6())+"\" don't match.",null)) return this.b-b.gaw()}, -u(a,b){if(b==null)return!1 -return t.hq.b(b)&&J.M(this.a.a,b.ga6())&&this.b===b.gaw()}, +v(a,b){if(b==null)return!1 +return t.hq.b(b)&&J.N(this.a.a,b.ga6())&&this.b===b.gaw()}, gq(a){var s=this.a.a s=s==null?null:s.gq(s) if(s==null)s=0 return s+this.b}, j(a){var s=A.cN(this).j(0),r=this.b,q=this.a,p=q.a -return"<"+s+": "+r+" "+(A.k(p==null?"unknown source":p)+":"+(q.cC(r)+1)+":"+(q.e_(r)+1))+">"}, -$ia5:1, +return"<"+s+": "+r+" "+(A.k(p==null?"unknown source":p)+":"+(q.cC(r)+1)+":"+(q.e0(r)+1))+">"}, +$ia6:1, $ibW:1} -A.jO.prototype={ -jV(a,b,c){var s,r=this.b,q=this.a -if(!J.M(r.ga6(),q.ga6()))throw A.f(A.U('Source URLs "'+A.k(q.ga6())+'" and "'+A.k(r.ga6())+"\" don't match.",null)) -else if(r.gaw()'}, -$ia5:1, +return"<"+A.cN(s).j(0)+": from "+s.gS().j(0)+" to "+s.gV().j(0)+' "'+s.gZ()+'">'}, +$ia6:1, $ibJ:1} A.cd.prototype={ gb_(){return this.d}} -A.aI.prototype={ +A.aJ.prototype={ j(a){var s,r=this,q=r.a if(q!=null){s=r.b.c s="PUBLIC "+s+q+s @@ -16702,21 +16816,21 @@ s=r.d.c s=q+" "+s+r.c+s return s.charCodeAt(0)==0?s:s}, gq(a){return A.aX(this.c,this.a,B.u,B.u)}, -u(a,b){if(b==null)return!1 -return b instanceof A.aI}} -A.kb.prototype={ -mh(a){var s=a.length +v(a,b){if(b==null)return!1 +return b instanceof A.aJ}} +A.kd.prototype={ +mi(a){var s=a.length if(s>1&&a[0]==="#"){if(s>2){s=a[1] s=s==="x"||s==="X"}else s=!1 -if(s)return this.h2(B.b.ab(a,2),16) -else return this.h2(B.b.ab(a,1),10)}else return B.qL.n(0,a)}, -h2(a,b){var s=A.qa(a,b) +if(s)return this.h3(B.b.ab(a,2),16) +else return this.h3(B.b.ab(a,1),10)}else return B.qL.m(0,a)}, +h3(a,b){var s=A.jD(a,b) if(s==null||s<0||1114111=r)return A.c(s,-1) s=s.pop() this.b=s -this.iq(s) +this.ir(s) return!0}}, -$iK:1} -A.oj.prototype={ +$iL:1} +A.on.prototype={ $1(a){t.I.a(a) return a instanceof A.es||a instanceof A.en}, $S:29} -A.ok.prototype={ +A.oo.prototype={ $1(a){return t.I.a(a).gR()}, -$S:74} -A.nT.prototype={ +$S:77} +A.nX.prototype={ gaZ(){return B.j9}, -fq(a,b){return null}} +fs(a,b){return null}} A.ep.prototype={ -fp(a,b){var s=this.fq(a,b) +fq(a,b){var s=this.fs(a,b) return s==null?null:s.b}, -cb(a){return this.fp(a,null)}, -fq(a,b){var s,r,q,p=A.ui(a,b) -for(s=this.gaZ().a,r=A.x(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c;s.p();){q=s.d +cd(a){return this.fq(a,null)}, +fs(a,b){var s,r,q,p=A.un(a,b) +for(s=this.gaZ().a,r=A.w(s),s=new J.J(s,s.length,r.h("J<1>")),r=r.c;s.p();){q=s.d if(q==null)q=r.a(q) if(p.$1(q))return q}return null}, gaZ(){return this.y$}} -A.nU.prototype={ +A.nY.prototype={ gaN(){return B.cZ}} A.d6.prototype={ gaN(){return this.w$}} A.cG.prototype={} -A.aR.prototype={ -gc8(){return null}, -ex(a){return this.es()}, -es(){return A.O(A.aj(this.j(0)+" does not have a parent"))}} -A.X.prototype={ -gc8(){return this.x$}, -ex(a){A.w(this).h("X.T").a(a) -A.kn(this) +A.aS.prototype={ +gca(){return null}, +ey(a){return this.eu()}, +eu(){return A.P(A.ac(this.j(0)+" does not have a parent"))}} +A.Z.prototype={ +gca(){return this.x$}, +ey(a){A.x(this).h("Z.T").a(a) +A.kp(this) this.x$=a}} -A.ol.prototype={ +A.op.prototype={ gR(){return null}} -A.aG.prototype={} -A.kl.prototype={ -iB(){var s,r=new A.W(""),q=new A.kr(r,B.bF) -this.ag(q) +A.aH.prototype={} +A.kn.prototype={ +iC(){var s,r=new A.Y(""),q=new A.kt(r,B.bF) +this.ah(q) s=r.a return s.charCodeAt(0)==0?s:s}, -j(a){return this.iB()}} -A.aQ.prototype={ +j(a){return this.iC()}} +A.aR.prototype={ gaS(){return B.hW}, -aB(){return A.nS(this.a.aB(),this.b,this.c)}, -ag(a){var s,r,q -this.a.ag(a) +aB(){return A.nW(this.a.aB(),this.b,this.c)}, +ah(a){var s,r,q +this.a.ah(a) s=a.a s.a+="=" r=this.c q=r.c -q=q+a.b.i5(this.b,r)+q +q=q+a.b.i6(this.b,r)+q s.a+=q return null}, -ga7(){return this.a}, +ga8(){return this.a}, gR(){return this.b}} -A.kX.prototype={} -A.kY.prototype={} +A.l_.prototype={} +A.l0.prototype={} A.en.prototype={ gaS(){return B.bA}, aB(){return new A.en(this.a,null)}, -ag(a){var s=a.a,r=(s.a+="" return null}} A.fY.prototype={ gaS(){return B.bD}, aB(){return new A.fY(this.a,null)}, -ag(a){var s=a.a,r=(s.a+="" return null}} -A.k9.prototype={ +A.kb.prototype={ gR(){return this.a}} -A.kZ.prototype={} -A.ka.prototype={ +A.l1.prototype={} +A.kc.prototype={ gR(){if(this.y$.a.length===0)return"" -var s=this.iB() +var s=this.iC() return B.b.t(s,6,s.length-2)}, gaS(){return B.cH}, -aB(){var s=this.y$,r=s.a,q=A.x(r) -return A.t6(new A.R(r,q.h("aQ(1)").a(s.$ti.h("aQ(1)").a(new A.nV())),q.h("R<1,aQ>")))}, -ag(a){var s=a.a +aB(){var s=this.y$,r=s.a,q=A.w(r) +return A.tb(new A.Q(r,q.h("aR(1)").a(s.$ti.h("aR(1)").a(new A.nZ())),q.h("Q<1,aR>")))}, +ah(a){var s=a.a s.a+="" return null}} -A.nV.prototype={ -$1(a){t.F.a(a) -return A.nS(a.a.aB(),a.b,a.c)}, +A.nZ.prototype={ +$1(a){t.G.a(a) +return A.nW(a.a.aB(),a.b,a.c)}, $S:35} -A.l_.prototype={} -A.l0.prototype={} +A.l2.prototype={} +A.l3.prototype={} A.fZ.prototype={ gaS(){return B.cI}, aB(){return new A.fZ(this.a,this.b,this.c,null)}, -ag(a){var s,r=a.a,q=(r.a+="" return null}} -A.l1.prototype={} -A.kd.prototype={ -gaS(){return B.MH}, -aB(){var s=this.w$,r=s.a,q=A.x(r) -return A.t7(new A.R(r,q.h("E(1)").a(s.$ti.h("E(1)").a(new A.nX())),q.h("R<1,E>")))}, -ag(a){return a.ol(this)}} -A.nX.prototype={ +A.l4.prototype={} +A.kf.prototype={ +gaS(){return B.MJ}, +aB(){var s=this.w$,r=s.a,q=A.w(r) +return A.tc(new A.Q(r,q.h("E(1)").a(s.$ti.h("E(1)").a(new A.o0())),q.h("Q<1,E>")))}, +ah(a){return a.ol(this)}} +A.o0.prototype={ $1(a){return t.I.a(a).aB()}, $S:36} -A.l2.prototype={} -A.aF.prototype={ +A.l5.prototype={} +A.aG.prototype={ gaS(){return B.aT}, -aB(){var s=this,r=s.y$,q=r.a,p=A.x(q),o=s.w$,n=o.a,m=A.x(n) -return A.wT(s.b.aB(),new A.R(q,p.h("aQ(1)").a(r.$ti.h("aQ(1)").a(new A.nY())),p.h("R<1,aQ>")),new A.R(n,m.h("E(1)").a(o.$ti.h("E(1)").a(new A.nZ())),m.h("R<1,E>")),s.a)}, -ag(a){return a.om(this)}, -ga7(){return this.b}} -A.nY.prototype={ -$1(a){t.F.a(a) -return A.nS(a.a.aB(),a.b,a.c)}, +aB(){var s=this,r=s.y$,q=r.a,p=A.w(q),o=s.w$,n=o.a,m=A.w(n) +return A.wY(s.b.aB(),new A.Q(q,p.h("aR(1)").a(r.$ti.h("aR(1)").a(new A.o1())),p.h("Q<1,aR>")),new A.Q(n,m.h("E(1)").a(o.$ti.h("E(1)").a(new A.o2())),m.h("Q<1,E>")),s.a)}, +ah(a){return a.om(this)}, +ga8(){return this.b}} +A.o1.prototype={ +$1(a){t.G.a(a) +return A.nW(a.a.aB(),a.b,a.c)}, $S:35} -A.nZ.prototype={ +A.o2.prototype={ $1(a){return t.I.a(a).aB()}, $S:36} -A.l3.prototype={} -A.l4.prototype={} -A.l5.prototype={} A.l6.prototype={} +A.l7.prototype={} +A.l8.prototype={} +A.l9.prototype={} A.E.prototype={} -A.li.prototype={} -A.lj.prototype={} -A.lk.prototype={} A.ll.prototype={} A.lm.prototype={} A.ln.prototype={} +A.lo.prototype={} +A.lp.prototype={} +A.lq.prototype={} A.h4.prototype={ gaS(){return B.bB}, aB(){return new A.h4(this.c,this.a,null)}, -ag(a){var s=a.a,r=s.a=(s.a+="");s.a>r;){p=new A.aU(s,q).gF(0) -if(!p.p())A.O(A.bi()) -s.V(0,p.gB())}}s=s.n(0,b) +if(!s.a7(b)){s.k(0,b,o.a.$1(b)) +for(r=o.b,q=A.x(s).h("aV<1>");s.a>r;){p=new A.aV(s,q).gF(0) +if(!p.p())A.P(A.bi()) +s.W(0,p.gB())}}s=s.m(0,b) s.toString return s}} A.eo.prototype={ @@ -16966,169 +17080,169 @@ H(a){var s,r=a.a,q=a.b,p=r.length,o=q").a(b)) -o.jF(0,n) -for(s=n.length,r=0;r").a(b)) +o.jG(0,n) +for(s=n.length,r=0;r").a(a) s=A.i([],p.h("y<1>")) -for(p=J.as(a);p.p();){r=p.gB() -if(r.gaS()===B.hX)B.a.a1(s,this.h6(r)) +for(p=J.at(a);p.p();){r=p.gB() +if(r.gaS()===B.hX)B.a.a1(s,this.h7(r)) else{q=this.c q===$&&A.o() -if(!q.D(0,r.gaS()))A.O(A.wU("Got "+r.gaS().j(0)+", but expected one of "+q.aq(0,", "),r,q)) -if(r.gc8()!=null)A.O(A.tb(u.d,r,r.gc8())) +if(!q.C(0,r.gaS()))A.P(A.wZ("Got "+r.gaS().j(0)+", but expected one of "+q.aq(0,", "),r,q)) +if(r.gca()!=null)A.P(A.tg(u.d,r,r.gca())) B.a.l(s,r)}}return s}} -A.oi.prototype={ +A.om.prototype={ $1(a){var s,r t.I.a(a) s=this.a r=s.c r===$&&A.o() -A.ta(a,r) +A.tf(a,r) return s.$ti.c.a(a.aB())}, $S(){return this.a.$ti.h("1(E)")}} A.h3.prototype={ -es(){return A.O(A.n2(this,A.rr(B.hU,"oA",0,[],[],0)))}, -gcV(){var s=A.uv(this.x$,"xmlns",this.b) +eu(){return A.P(A.n6(this,A.rw(B.hU,"oA",0,[],[],0)))}, +gcV(){var s=A.uA(this.x$,"xmlns",this.b) return s==null?null:s.b}, aB(){return new A.h3(this.b,this.c,this.d,null)}, -gij(){return this.b}, +gik(){return this.b}, ga_(){return this.c}, gdS(){return this.d}} A.h5.prototype={ -es(){return A.O(A.n2(this,A.rr(B.hU,"oB",0,[],[],0)))}, -gij(){return null}, +eu(){return A.P(A.n6(this,A.rw(B.hU,"oB",0,[],[],0)))}, +gik(){return null}, gdS(){return this.b}, -gcV(){var s=A.uv(this.x$,null,"xmlns") +gcV(){var s=A.uA(this.x$,null,"xmlns") return s==null?null:s.b}, aB(){return new A.h5(this.b,null)}, ga_(){return this.b}} -A.kq.prototype={} -A.kr.prototype={ -ol(a){this.iI(a.w$)}, +A.ks.prototype={} +A.kt.prototype={ +ol(a){this.iJ(a.w$)}, om(a){var s,r,q,p,o=this,n=o.a n.a+="<" s=a.b -s.ag(o) -o.iG(a) +s.ah(o) +o.iH(a) r=a.w$ q=r.a.length===0&&a.a p=n.a if(q)n.a=p+"/>" else{n.a=p+">" -o.iI(r) +o.iJ(r) n.a+=""}}, -iG(a){var s=a.y$ +iH(a){var s=a.y$ if(s.a.length!==0){this.a.a+=" " -this.iJ(s," ")}}, -iJ(a,b){var s,r,q,p,o=this,n=J.as(t.b7.a(a)) +this.iK(s," ")}}, +iK(a,b){var s,r,q,p,o=this,n=J.at(t.b7.a(a)) if(n.p())if(b==null||b.length===0){s=t.ax r=n.$ti.c do{q=n.d -s.a(q==null?r.a(q):q).ag(o)}while(n.p())}else{s=n.d +s.a(q==null?r.a(q):q).ah(o)}while(n.p())}else{s=n.d if(s==null)s=n.$ti.c.a(s) r=t.ax -r.a(s).ag(o) +r.a(s).ah(o) for(s=o.a,q=n.$ti.c;n.p();){s.a+=b p=n.d -r.a(p==null?q.a(p):p).ag(o)}}}, -iI(a){return this.iJ(a,null)}} -A.lr.prototype={} -A.nR.prototype={ -ln(a,b,c,d){var s=this,r=s.r,q=r.length +r.a(p==null?q.a(p):p).ah(o)}}}, +iJ(a){return this.iK(a,null)}} +A.lu.prototype={} +A.nV.prototype={ +lo(a,b,c,d){var s=this,r=s.r,q=r.length if(q===0)A:{if(a instanceof A.bB){q=s.f -if(!new A.a_(q,t.nk).gN(0))throw A.f(A.er("Expected at most one XML declaration",b,c)) +if(!new A.O(q,t.nk).gN(0))throw A.f(A.er("Expected at most one XML declaration",b,c)) else if(q.length!==0)throw A.f(A.er("Unexpected XML declaration",b,c)) B.a.l(q,a) break A}if(a instanceof A.bC){q=s.f -if(!new A.a_(q,t.os).gN(0))throw A.f(A.er("Expected at most one doctype declaration",b,c)) -else if(!new A.a_(q,t.lH).gN(0))throw A.f(A.er("Unexpected doctype declaration",b,c)) +if(!new A.O(q,t.os).gN(0))throw A.f(A.er("Expected at most one doctype declaration",b,c)) +else if(!new A.O(q,t.lH).gN(0))throw A.f(A.er("Unexpected doctype declaration",b,c)) B.a.l(q,a) -break A}if(a instanceof A.bc){q=s.f -if(!new A.a_(q,t.lH).gN(0))throw A.f(A.er("Unexpected root element",b,c)) -B.a.l(q,a)}}B:{if(a instanceof A.bc){if(!a.r)B.a.l(r,a) -break B}if(a instanceof A.bM){if(r.length===0)throw A.f(A.td(a.e,b,c)) +break A}if(a instanceof A.bd){q=s.f +if(!new A.O(q,t.lH).gN(0))throw A.f(A.er("Unexpected root element",b,c)) +B.a.l(q,a)}}B:{if(a instanceof A.bd){if(!a.r)B.a.l(r,a) +break B}if(a instanceof A.bM){if(r.length===0)throw A.f(A.ti(a.e,b,c)) else{q=a.e -if(B.a.gA(r).e!==q)throw A.f(A.tc(B.a.gA(r).e,q,b,c))}q=r.length +if(B.a.gA(r).e!==q)throw A.f(A.th(B.a.gA(r).e,q,b,c))}q=r.length if(q!==0){if(0>=q)return A.c(r,-1) r.pop()}}}}} -A.og.prototype={} -A.oh.prototype={} -A.kk.prototype={} -A.ke.prototype={ -bL(a){var s,r=new A.W("") -J.vf(t.iF.a(a),new A.la(t.i3.a(new A.df(r.got(),t.nP)),this.a).giD()) +A.ok.prototype={} +A.ol.prototype={} +A.km.prototype={} +A.kg.prototype={ +bL(a){var s,r=new A.Y("") +J.vk(t.iF.a(a),new A.ld(t.i3.a(new A.dg(r.got(),t.nP)),this.a).giE()) s=r.a return s.charCodeAt(0)==0?s:s}} -A.la.prototype={ -fg(a){var s=this.a,r=s.$ti.c +A.ld.prototype={ +fh(a){var s=this.a,r=s.$ti.c r.a(""))}, -fh(a){var s=this.a,r=s.$ti.c +fi(a){var s=this.a,r=s.$ti.c r.a(""))}, -fi(a){var s=this.a,r=s.$ti.c +fj(a){var s=this.a,r=s.$ti.c r.a(""))}, -fj(a){var s,r,q=this.a,p=q.$ti.c +fk(a){var s,r,q=this.a,p=q.$ti.c p.a(""))}, -fk(a){var s=this.a,r=s.$ti.c +fl(a){var s=this.a,r=s.$ti.c r.a(""))}, -fl(a){var s,r=this.a,q=r.$ti.c +fm(a){var s,r=this.a,q=r.$ti.c q.a(""))}, -fn(a){var s=this.a,r=s.$ti.c +fo(a){var s=this.a,r=s.$ti.c r.a("<") s=s.a s.$1("<") s.$1(r.a(a.e)) -this.hF(a.f) +this.hG(a.f) if(a.r)s.$1(r.a("/>")) else s.$1(r.a(">"))}, -fo(a){var s=this.a,r=s.$ti.c.a(A.pP(a.gR(),$.r2(),t.jt.a(t.po.a(A.ul())),null)) +fp(a){var s=this.a,r=s.$ti.c.a(A.pV(a.gR(),$.r7(),t.jt.a(t.po.a(A.uq())),null)) s.a.$1(r)}, -hF(a){var s,r,q,p,o,n,m,l -for(s=J.as(t.p6.a(a)),r=this.a,q=r.$ti.c,p=this.b;s.p();){o=s.gB() +hG(a){var s,r,q,p,o,n,m,l +for(s=J.at(t.p6.a(a)),r=this.a,q=r.$ti.c,p=this.b;s.p();){o=s.gB() q.a(" ") n=r.a n.$1(" ") @@ -17176,267 +17290,267 @@ n.$1(q.a("=")) m=o.b o=o.c l=o.c -n.$1(q.a(l+p.i5(m,o)+l))}}, +n.$1(q.a(l+p.i6(m,o)+l))}}, $ifN:1} -A.ls.prototype={} -A.lh.prototype={ -fg(a){return this.bK(new A.en(a.e,null),a)}, -fh(a){return this.bK(new A.fY(a.e,null),a)}, -fi(a){return this.bK(A.t6(this.eH(a.e)),a)}, -fj(a){return this.bK(new A.fZ(a.e,a.f,a.r,null),a)}, -fk(a){var s,r,q,p,o=this.b -if(o==null)throw A.f(A.td(a.e,a.at$,a.Q$)) +A.lv.prototype={} +A.lk.prototype={ +fh(a){return this.bK(new A.en(a.e,null),a)}, +fi(a){return this.bK(new A.fY(a.e,null),a)}, +fj(a){return this.bK(A.tb(this.eI(a.e)),a)}, +fk(a){return this.bK(new A.fZ(a.e,a.f,a.r,null),a)}, +fl(a){var s,r,q,p,o=this.b +if(o==null)throw A.f(A.ti(a.e,a.at$,a.Q$)) s=o.b.gdS() r=a.e q=a.at$ p=a.Q$ -if(s!==r)A.O(A.tc(s,r,q,p)) +if(s!==r)A.P(A.th(s,r,q,p)) o.a=o.w$.a.length!==0 -s=A.wV(o) +s=A.x_(o) this.b=s if(s==null)this.bK(o,a.z$)}, -fl(a){return this.bK(new A.h4(a.e,a.f,null),a)}, -fn(a){var s,r=this,q=A.t8(a.e,r.eH(a.f),B.cZ,!0) +fm(a){return this.bK(new A.h4(a.e,a.f,null),a)}, +fo(a){var s,r=this,q=A.td(a.e,r.eI(a.f),B.cZ,!0) if(a.r)r.bK(q,a) else{s=r.b if(s!=null)s.w$.l(0,q) r.b=q}}, -fo(a){return this.bK(new A.es(a.gR(),null),a)}, +fp(a){return this.bK(new A.es(a.gR(),null),a)}, bK(a,b){var s,r,q,p=this.b if(p==null){s=b==null?null:b.z$ p=t.eB r=a -for(;s!=null;s=s.z$)r=A.t8(s.e,this.eH(s.f),A.i([r],p),s.r) +for(;s!=null;s=s.z$)r=A.td(s.e,this.eI(s.f),A.i([r],p),s.r) q=this.a p=q.$ti.c.a(A.i([a],p)) q.a.$1(p)}else p.w$.l(0,a)}, -eH(a){return J.r6(t.eh.a(a),new A.p1(),t.F)}, +eI(a){return J.rb(t.eh.a(a),new A.p5(),t.G)}, $ifN:1} -A.p1.prototype={ +A.p5.prototype={ $1(a){t.fw.a(a) -return A.nS(A.t9(a.a),a.b,a.c)}, -$S:78} -A.lt.prototype={} -A.a0.prototype={ -j(a){return new A.ke(B.bF).bL(A.i([this],t.pp))}} -A.lb.prototype={} -A.lc.prototype={} -A.ld.prototype={} +return A.nW(A.te(a.a),a.b,a.c)}, +$S:122} +A.lw.prototype={} +A.a1.prototype={ +j(a){return new A.kg(B.bF).bL(A.i([this],t.pp))}} +A.le.prototype={} +A.lf.prototype={} +A.lg.prototype={} A.c_.prototype={ -ag(a){return a.fg(this)}, +ah(a){return a.fh(this)}, gq(a){return A.aX(B.bA,this.e,B.u,B.u)}, -u(a,b){if(b==null)return!1 +v(a,b){if(b==null)return!1 return b instanceof A.c_&&b.e===this.e}} A.c0.prototype={ -ag(a){return a.fh(this)}, +ah(a){return a.fi(this)}, gq(a){return A.aX(B.bD,this.e,B.u,B.u)}, -u(a,b){if(b==null)return!1 +v(a,b){if(b==null)return!1 return b instanceof A.c0&&b.e===this.e}} A.bB.prototype={ -ag(a){return a.fi(this)}, +ah(a){return a.fj(this)}, gq(a){return A.aX(B.cH,B.aX.Y(this.e),B.u,B.u)}, -u(a,b){if(b==null)return!1 +v(a,b){if(b==null)return!1 return b instanceof A.bB&&B.aX.aI(b.e,this.e)}} A.bC.prototype={ -ag(a){return a.fj(this)}, +ah(a){return a.fk(this)}, gq(a){return A.aX(B.cI,this.e,this.f,this.r)}, -u(a,b){if(b==null)return!1 -return b instanceof A.bC&&this.e===b.e&&J.M(this.f,b.f)&&this.r==b.r}} +v(a,b){if(b==null)return!1 +return b instanceof A.bC&&this.e===b.e&&J.N(this.f,b.f)&&this.r==b.r}} A.bM.prototype={ -ag(a){return a.fk(this)}, +ah(a){return a.fl(this)}, gq(a){return A.aX(B.aT,this.e,B.u,B.u)}, -u(a,b){if(b==null)return!1 +v(a,b){if(b==null)return!1 return b instanceof A.bM&&b.e===this.e}} -A.l7.prototype={} +A.la.prototype={} A.c2.prototype={ -ag(a){return a.fl(this)}, +ah(a){return a.fm(this)}, gq(a){return A.aX(B.bB,this.f,this.e,B.u)}, -u(a,b){if(b==null)return!1 +v(a,b){if(b==null)return!1 return b instanceof A.c2&&b.e===this.e&&b.f===this.f}} -A.bc.prototype={ -ag(a){return a.fn(this)}, +A.bd.prototype={ +ah(a){return a.fo(this)}, gq(a){return A.aX(B.aT,this.e,this.r,B.aX.Y(this.f))}, -u(a,b){if(b==null)return!1 -return b instanceof A.bc&&b.e===this.e&&b.r===this.r&&B.aX.aI(b.f,this.f)}} -A.lp.prototype={} -A.dH.prototype={ +v(a,b){if(b==null)return!1 +return b instanceof A.bd&&b.e===this.e&&b.r===this.r&&B.aX.aI(b.f,this.f)}} +A.ls.prototype={} +A.dI.prototype={ gR(){var s,r=this,q=r.r if(q===$){s=r.f.b0(r.e) -r.r!==$&&A.dQ() +r.r!==$&&A.dc() r.r=s q=s}return q}, -ag(a){return a.fo(this)}, +ah(a){return a.fp(this)}, gq(a){return A.aX(B.bC,this.gR(),B.u,B.u)}, -u(a,b){if(b==null)return!1 -return b instanceof A.dH&&b.gR()===this.gR()}, +v(a,b){if(b==null)return!1 +return b instanceof A.dI&&b.gR()===this.gR()}, $ih6:1} -A.kf.prototype={ +A.kh.prototype={ gF(a){var s=A.i([],t.pp),r=A.i([],t.oi) -return new A.kg($.va().n(0,this.b),new A.nR(!0,!0,!1,!1,!1,s,r),new A.F("",this.a,0))}} -A.kg.prototype={ +return new A.ki($.vf().m(0,this.b),new A.nV(!0,!0,!1,!1,!1,s,r),new A.F("",this.a,0))}} +A.ki.prototype={ gB(){var s=this.d s.toString return s}, p(){var s,r,q,p,o,n,m=this,l=m.c if(l!=null){s=m.a.H(l) -if(s instanceof A.Q){m.c=s +if(s instanceof A.T){m.c=s r=s.e m.d=r -m.b.ln(r,l.a,l.b,s.b) +m.b.lo(r,l.a,l.b,s.b) return!0}else{r=l.b q=l.a -if(r"),A.S("/>")],t.ig),A.yZ(),r),r,r,q,r,r),new A.of(),r,r,q,r,r,t.l3)}, -lF(){return A.nn(new A.u(this.glo(),B.h,t.jk),0,9007199254740991,t.fw)}, -lp(){var s=this,r=t.h,q=t.N,p=t.R -return A.dy(A.c5(new A.u(s.gcD(),B.h,r),new A.u(s.gbc(),B.h,r),new A.u(s.glq(),B.h,t.b),q,q,p),new A.o3(s),q,q,p,t.fw)}, -lr(){var s=this.gcE(),r=t.h,q=t.N,p=t.R -return new A.bT(B.Mf,A.nt(A.pO(new A.u(s,B.h,r),A.S("="),new A.u(s,B.h,r),new A.u(this.gc1(),B.h,t.b),q,q,q,p),new A.o_(),q,q,q,p,p),t.bQ)}, -lt(){var s=t.b -return A.cj(A.i([new A.u(this.glu(),B.h,s),new A.u(this.glA(),B.h,s),new A.u(this.gly(),B.h,s)],t.ge),null,t.R)}, -lv(){var s=t.N -return A.dy(A.c5(A.S('"'),new A.eo('"',0),A.S('"'),s,s,s),new A.o0(),s,s,s,t.R)}, -lB(){var s=t.N -return A.dy(A.c5(A.S("'"),new A.eo("'",0),A.S("'"),s,s,s),new A.o2(),s,s,s,t.R)}, -lz(){return A.ds(new A.u(this.gbc(),B.h,t.h),new A.o1(),!1,t.N,t.R)}, -mT(){var s=t.h,r=t.N -return A.nt(A.pO(A.S(""),r,r,r,r),new A.oc(),r,r,r,r,t.cW)}, -m3(){var s=A.S("" expected',new A.bj(A.S("-->"),0,9007199254740991,r,t.ln)),A.S("-->"),q,q,q),new A.o6(),q,q,q,t.lY)}, -lR(){var s=A.S("" expected',new A.bj(A.S("]]>"),0,9007199254740991,r,t.ln)),A.S("]]>"),q,q,q),new A.o4(),q,q,q,t.bf)}, -mg(){var s=t.N,r=t.p6 -return A.nt(A.pO(A.S(""),s,r,s,s),new A.o7(),s,r,s,s,t.ee)}, -nQ(){var s=A.S("" expected',new A.bj(A.S("?>"),0,9007199254740991,q,t.ln)),p,p),new A.od(),p,p,p),t.g1),A.S("?>"),p,p,p,p),new A.oe(),p,p,p,p,t.co)}, -mn(){var s=this,r=s.gcD(),q=t.h,p=s.gcE(),o=t.N -return A.wE(new A.fK(A.S(""),t.i6),new A.ob(),o,o,o,t.g0,o,t.jv,o,o,t.dH)}, -mv(){var s=t.by -return A.cj(A.i([new A.u(this.gmy(),B.h,s),new A.u(this.gmw(),B.h,s)],t.jj),null,t.hd)}, -mz(){var s=t.N,r=t.R -return A.dy(A.c5(A.S("SYSTEM"),new A.u(this.gcD(),B.h,t.h),new A.u(this.gc1(),B.h,t.b),s,s,r),new A.o9(),s,s,r,t.hd)}, -mx(){var s=this.gcD(),r=t.h,q=this.gc1(),p=t.b,o=t.N,n=t.R -return A.rO(A.uG(A.S("PUBLIC"),new A.u(s,B.h,r),new A.u(q,B.h,p),new A.u(s,B.h,r),new A.u(q,B.h,p),o,o,n,o,n),new A.o8(),o,o,n,o,n,t.hd)}, -mB(){var s,r=this,q=A.S("["),p=t.gy -p=A.cj(A.i([new A.u(r.gmq(),B.h,p),new A.u(r.gmo(),B.h,p),new A.u(r.gms(),B.h,p),new A.u(r.gmD(),B.h,p),new A.u(r.gip(),B.h,t.hN),new A.u(r.ghW(),B.h,t.dE),new A.u(r.gmJ(),B.h,p),A.bH(B.W,"input expected",!1)],t.U),null,t.z) +$iL:1} +A.kj.prototype={ +n2(){var s=this +return A.cj(A.i([new A.u(s.glV(),B.h,t.br),new A.u(s.gjq(),B.h,t.d8),new A.u(s.gmT(),B.h,t.gV),new A.u(s.ghX(),B.h,t.dE),new A.u(s.glR(),B.h,t.eM),new A.u(s.gmg(),B.h,t.cB),new A.u(s.giq(),B.h,t.hN),new A.u(s.gmn(),B.h,t.i8)],t.dy),A.z2(),t.mX)}, +lW(){return A.dt(new A.eo("<",1),new A.o9(this),!1,t.N,t.hO)}, +jr(){var s=t.h,r=t.N,q=t.p6 +return A.rT(A.uL(A.U("<"),new A.u(this.gbd(),B.h,s),new A.u(this.gaZ(),B.h,t.mD),new A.u(this.gcE(),B.h,s),A.cj(A.i([A.U(">"),A.U("/>")],t.ig),A.z3(),r),r,r,q,r,r),new A.oj(),r,r,q,r,r,t.l3)}, +lG(){return A.nr(new A.u(this.glp(),B.h,t.jk),0,9007199254740991,t.fw)}, +lq(){var s=this,r=t.h,q=t.N,p=t.R +return A.dz(A.c5(new A.u(s.gcD(),B.h,r),new A.u(s.gbd(),B.h,r),new A.u(s.glr(),B.h,t.g),q,q,p),new A.o7(s),q,q,p,t.fw)}, +ls(){var s=this.gcE(),r=t.h,q=t.N,p=t.R +return new A.bT(B.Mg,A.nx(A.pU(new A.u(s,B.h,r),A.U("="),new A.u(s,B.h,r),new A.u(this.gc2(),B.h,t.g),q,q,q,p),new A.o3(),q,q,q,p,p),t.bQ)}, +lu(){var s=t.g +return A.cj(A.i([new A.u(this.glv(),B.h,s),new A.u(this.glB(),B.h,s),new A.u(this.glz(),B.h,s)],t.ge),null,t.R)}, +lw(){var s=t.N +return A.dz(A.c5(A.U('"'),new A.eo('"',0),A.U('"'),s,s,s),new A.o4(),s,s,s,t.R)}, +lC(){var s=t.N +return A.dz(A.c5(A.U("'"),new A.eo("'",0),A.U("'"),s,s,s),new A.o6(),s,s,s,t.R)}, +lA(){return A.dt(new A.u(this.gbd(),B.h,t.h),new A.o5(),!1,t.N,t.R)}, +mU(){var s=t.h,r=t.N +return A.nx(A.pU(A.U(""),r,r,r,r),new A.og(),r,r,r,r,t.cW)}, +m4(){var s=A.U("" expected',new A.bj(A.U("-->"),0,9007199254740991,r,t.ln)),A.U("-->"),q,q,q),new A.oa(),q,q,q,t.lY)}, +lS(){var s=A.U("" expected',new A.bj(A.U("]]>"),0,9007199254740991,r,t.ln)),A.U("]]>"),q,q,q),new A.o8(),q,q,q,t.bf)}, +mh(){var s=t.N,r=t.p6 +return A.nx(A.pU(A.U(""),s,r,s,s),new A.ob(),s,r,s,s,t.ee)}, +nR(){var s=A.U("" expected',new A.bj(A.U("?>"),0,9007199254740991,q,t.ln)),p,p),new A.oh(),p,p,p),t.g1),A.U("?>"),p,p,p,p),new A.oi(),p,p,p,p,t.co)}, +mo(){var s=this,r=s.gcD(),q=t.h,p=s.gcE(),o=t.N +return A.wJ(new A.fK(A.U(""),t.i6),new A.of(),o,o,o,t.g0,o,t.jv,o,o,t.dH)}, +mw(){var s=t.by +return A.cj(A.i([new A.u(this.gmz(),B.h,s),new A.u(this.gmx(),B.h,s)],t.jj),null,t.hd)}, +mA(){var s=t.N,r=t.R +return A.dz(A.c5(A.U("SYSTEM"),new A.u(this.gcD(),B.h,t.h),new A.u(this.gc2(),B.h,t.g),s,s,r),new A.od(),s,s,r,t.hd)}, +my(){var s=this.gcD(),r=t.h,q=this.gc2(),p=t.g,o=t.N,n=t.R +return A.rT(A.uL(A.U("PUBLIC"),new A.u(s,B.h,r),new A.u(q,B.h,p),new A.u(s,B.h,r),new A.u(q,B.h,p),o,o,n,o,n),new A.oc(),o,o,n,o,n,t.hd)}, +mC(){var s,r=this,q=A.U("["),p=t.gy +p=A.cj(A.i([new A.u(r.gmr(),B.h,p),new A.u(r.gmp(),B.h,p),new A.u(r.gmt(),B.h,p),new A.u(r.gmE(),B.h,p),new A.u(r.giq(),B.h,t.hN),new A.u(r.ghX(),B.h,t.dE),new A.u(r.gmK(),B.h,p),A.bH(B.W,"input expected",!1)],t.a),null,t.z) s=t.N -return A.dy(A.c5(q,new A.cp('"]" expected',new A.bj(A.S("]"),0,9007199254740991,p,t.mP)),A.S("]"),s,s,s),new A.oa(),s,s,s,s)}, -mr(){var s=A.S(""),0,9007199254740991,r,t.du),A.S(">"),q,t.ez,q)}, -mp(){var s=A.S(""),0,9007199254740991,r,t.du),A.S(">"),q,t.ez,q)}, -mt(){var s=A.S(""),0,9007199254740991,r,t.du),A.S(">"),q,t.ez,q)}, -mE(){var s=A.S(""),0,9007199254740991,r,t.du),A.S(">"),q,t.ez,q)}, -mK(){var s=t.N -return A.c5(A.S("%"),new A.u(this.gbc(),B.h,t.h),A.S(";"),s,s,s)}, -jn(){var s="whitespace expected" -return A.rP(A.bH(B.cO,s,!1),1,9007199254740991,s)}, +return A.dz(A.c5(q,new A.cp('"]" expected',new A.bj(A.U("]"),0,9007199254740991,p,t.mP)),A.U("]"),s,s,s),new A.oe(),s,s,s,s)}, +ms(){var s=A.U(""),0,9007199254740991,r,t.du),A.U(">"),q,t.ez,q)}, +mq(){var s=A.U(""),0,9007199254740991,r,t.du),A.U(">"),q,t.ez,q)}, +mu(){var s=A.U(""),0,9007199254740991,r,t.du),A.U(">"),q,t.ez,q)}, +mF(){var s=A.U(""),0,9007199254740991,r,t.du),A.U(">"),q,t.ez,q)}, +mL(){var s=t.N +return A.c5(A.U("%"),new A.u(this.gbd(),B.h,t.h),A.U(";"),s,s,s)}, jo(){var s="whitespace expected" -return A.rP(A.bH(B.cO,s,!1),0,9007199254740991,s)}, -nx(){var s=t.h,r=t.N -return new A.cp("name expected",A.uF(new A.u(this.gnv(),B.h,s),A.nn(new A.u(this.gnt(),B.h,s),0,9007199254740991,r),r,t.bF))}, -nw(){return A.uB(":A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd\ud800\udc00-\udb7f\udfff",!1,null,!0)}, -nu(){return A.uB(":A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd\ud800\udc00-\udb7f\udfff-.0-9\xb7\u0300-\u036f\u203f-\u2040",!1,null,!0)}} -A.o5.prototype={ +return A.rU(A.bH(B.cO,s,!1),1,9007199254740991,s)}, +jp(){var s="whitespace expected" +return A.rU(A.bH(B.cO,s,!1),0,9007199254740991,s)}, +ny(){var s=t.h,r=t.N +return new A.cp("name expected",A.uK(new A.u(this.gnw(),B.h,s),A.nr(new A.u(this.gnu(),B.h,s),0,9007199254740991,r),r,t.bF))}, +nx(){return A.uG(":A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd\ud800\udc00-\udb7f\udfff",!1,null,!0)}, +nv(){return A.uG(":A-Z_a-z\xc0-\xd6\xd8-\xf6\xf8-\u02ff\u0370-\u037d\u037f-\u1fff\u200c-\u200d\u2070-\u218f\u2c00-\u2fef\u3001-\ud7ff\uf900-\ufdcf\ufdf0-\ufffd\ud800\udc00-\udb7f\udfff-.0-9\xb7\u0300-\u036f\u203f-\u2040",!1,null,!0)}} +A.o9.prototype={ $1(a){var s=null -return new A.dH(A.q(a),this.a.a,s,s,s,s)}, -$S:94} -A.of.prototype={ +return new A.dI(A.q(a),this.a.a,s,s,s,s)}, +$S:97} +A.oj.prototype={ $5(a,b,c,d,e){var s=null A.q(a) A.q(b) t.p6.a(c) A.q(d) -return new A.bc(b,c,A.q(e)==="/>",s,s,s,s)}, -$S:95} -A.o3.prototype={ +return new A.bd(b,c,A.q(e)==="/>",s,s,s,s)}, +$S:98} +A.o7.prototype={ $3(a,b,c){A.q(a) A.q(b) t.R.a(c) -return new A.au(b,this.a.a.b0(c.a),c.b,null)}, -$S:96} -A.o_.prototype={ +return new A.av(b,this.a.a.b0(c.a),c.b,null)}, +$S:99} +A.o3.prototype={ $4(a,b,c,d){A.q(a) A.q(b) A.q(c) return t.R.a(d)}, -$S:97} -A.o0.prototype={ +$S:100} +A.o4.prototype={ $3(a,b,c){A.q(a) A.q(b) A.q(c) return new A.l(b,B.cG)}, $S:39} -A.o2.prototype={ +A.o6.prototype={ $3(a,b,c){A.q(a) A.q(b) A.q(c) -return new A.l(b,B.MG)}, +return new A.l(b,B.MI)}, $S:39} -A.o1.prototype={ +A.o5.prototype={ $1(a){return new A.l(A.q(a),B.cG)}, -$S:99} -A.oc.prototype={ +$S:102} +A.og.prototype={ $4(a,b,c,d){var s=null A.q(a) A.q(b) A.q(c) A.q(d) return new A.bM(b,s,s,s,s)}, -$S:100} -A.o6.prototype={ +$S:103} +A.oa.prototype={ $3(a,b,c){var s=null A.q(a) A.q(b) A.q(c) return new A.c0(b,s,s,s,s)}, -$S:101} -A.o4.prototype={ +$S:104} +A.o8.prototype={ $3(a,b,c){var s=null A.q(a) A.q(b) A.q(c) return new A.c_(b,s,s,s,s)}, -$S:102} -A.o7.prototype={ +$S:105} +A.ob.prototype={ $4(a,b,c,d){var s=null A.q(a) t.p6.a(b) A.q(c) A.q(d) return new A.bB(b,s,s,s,s)}, -$S:103} -A.od.prototype={ +$S:106} +A.oh.prototype={ $2(a,b){A.q(a) return A.q(b)}, -$S:104} -A.oe.prototype={ +$S:107} +A.oi.prototype={ $4(a,b,c,d){var s=null A.q(a) A.q(b) A.q(c) A.q(d) return new A.c2(b,c,s,s,s,s)}, -$S:105} -A.ob.prototype={ +$S:108} +A.of.prototype={ $8(a,b,c,d,e,f,g,h){var s=null A.q(a) A.q(b) @@ -17447,14 +17561,14 @@ A.hB(f) A.q(g) A.q(h) return new A.bC(c,d,f,s,s,s,s)}, -$S:106} -A.o9.prototype={ +$S:109} +A.od.prototype={ $3(a,b,c){A.q(a) A.q(b) t.R.a(c) -return new A.aI(null,null,c.a,c.b)}, -$S:107} -A.o8.prototype={ +return new A.aJ(null,null,c.a,c.b)}, +$S:110} +A.oc.prototype={ $5(a,b,c,d,e){var s A.q(a) A.q(b) @@ -17462,414 +17576,416 @@ s=t.R s.a(c) A.q(d) s.a(e) -return new A.aI(c.a,c.b,e.a,e.b)}, -$S:108} -A.oa.prototype={ +return new A.aJ(c.a,c.b,e.a,e.b)}, +$S:111} +A.oe.prototype={ $3(a,b,c){A.q(a) A.q(b) A.q(c) return b}, -$S:109} -A.pt.prototype={ -$1(a){return A.zo(new A.u(new A.kh(t.j7.a(a)).gn0(),B.h,t.bj),t.mX)}, -$S:110} -A.df.prototype={$ifN:1} -A.au.prototype={ +$S:112} +A.pz.prototype={ +$1(a){return A.zt(new A.u(new A.kj(t.j7.a(a)).gn1(),B.h,t.bj),t.mX)}, +$S:113} +A.dg.prototype={$ifN:1} +A.av.prototype={ gq(a){return A.aX(this.a,this.b,this.c,B.u)}, -u(a,b){if(b==null)return!1 -return b instanceof A.au&&b.a===this.a&&b.b===this.b&&b.c===this.c}} -A.l8.prototype={} -A.l9.prototype={} +v(a,b){if(b==null)return!1 +return b instanceof A.av&&b.a===this.a&&b.b===this.b&&b.c===this.c}} +A.lb.prototype={} +A.lc.prototype={} A.h_.prototype={} -A.dG.prototype={ -L(a){return t.mX.a(a).ag(this)}, -fg(a){}, +A.dH.prototype={ +M(a){return t.mX.a(a).ah(this)}, fh(a){}, fi(a){}, fj(a){}, fk(a){}, fl(a){}, -fn(a){}, -fo(a){}} -A.pF.prototype={ -$1(a){var s,r=t.av.a(A.uk(A.p3(a).data)).c2(0,t.N,t.X),q=r.n(0,"bytes") +fm(a){}, +fo(a){}, +fp(a){}} +A.pL.prototype={ +$1(a){var s,r=t.av.a(A.up(A.p7(a).data)).c3(0,t.N,t.X),q=r.m(0,"bytes") if(q!=null)r.k(0,"argument",q) s=this.a -s.a=s.a.of(new A.pE(this.b,r),t.H)}, -$S:112} -A.pE.prototype={ +s.a=s.a.of(new A.pK(this.b,r),t.H)}, +$S:115} +A.pK.prototype={ $1(a){var s=0,r=A.br(t.H),q=this,p,o var $async$$1=A.bs(function(b,c){if(b===1)return A.bo(c,r) -for(;;)switch(s){case 0:p=A.p3(v.G.self) +for(;;)switch(s){case 0:p=A.p7(v.G.self) o=B.iq s=2 -return A.c3(A.pL(q.a,q.b),$async$$1) -case 2:p.postMessage(o.mQ(c,null)) +return A.c3(A.pR(q.a,q.b),$async$$1) +case 2:p.postMessage(o.mR(c,null)) return A.bp(null,r)}}) return A.bq($async$$1,r)}, -$S:113};(function aliases(){var s=J.cW.prototype -s.jH=s.j +$S:116};(function aliases(){var s=J.cW.prototype +s.jI=s.j s=A.cJ.prototype -s.jP=s.h_ -s.jQ=s.h7 -s.jR=s.ho -s=A.D.prototype -s.jI=s.bb -s.jJ=s.ba +s.jQ=s.h0 +s.jR=s.h8 +s.jS=s.hp +s=A.C.prototype +s.jJ=s.bc +s.jK=s.bb s=A.h.prototype -s.jG=s.os +s.jH=s.os s=A.dY.prototype -s.jE=s.l -s.jF=s.a1 -s=A.a9.prototype -s.jM=s.a3 -s=A.b7.prototype -s.jK=s.k -s.bV=s.l -s.fJ=s.bx -s.jL=s.a1 +s.jF=s.l +s.jG=s.a1 +s=A.aa.prototype +s.jN=s.a3 +s=A.b9.prototype +s.jL=s.k +s.bW=s.l +s.fK=s.bx +s.jM=s.a1 s=A.cb.prototype -s.fH=s.j +s.fI=s.j s=A.n.prototype -s.bW=s.b8 +s.bX=s.b8 s.bE=s.j s=A.ca.prototype s.cG=s.j -s=A.at.prototype -s.fI=s.b8 +s=A.au.prototype +s.fJ=s.b8 s=A.ek.prototype -s.jO=s.ah -s.jN=s.u})();(function installTearOffs(){var s=hunkHelpers._static_2,r=hunkHelpers._instance_1i,q=hunkHelpers.installInstanceTearOff,p=hunkHelpers._static_1,o=hunkHelpers._static_0,n=hunkHelpers._instance_1u,m=hunkHelpers._instance_2u,l=hunkHelpers._instance_0u,k=hunkHelpers.installStaticTearOff -s(J,"y5","vU",40) +s.jP=s.ai +s.jO=s.v})();(function installTearOffs(){var s=hunkHelpers._static_2,r=hunkHelpers._instance_1i,q=hunkHelpers.installInstanceTearOff,p=hunkHelpers._static_1,o=hunkHelpers._static_0,n=hunkHelpers._instance_1u,m=hunkHelpers._instance_2u,l=hunkHelpers._instance_0u,k=hunkHelpers.installStaticTearOff +s(J,"ya","vZ",40) var j -r(j=J.y.prototype,"ghE","l",18) -r(j,"glb","a1",18) -q(J.ct.prototype,"gfE",1,1,null,["$2","$1"],["aa","T"],79,0,0) -p(A,"yA","x_",24) -p(A,"yB","x0",24) -p(A,"yC","x1",24) -o(A,"uc","yt",1) -s(A,"uf","xQ",13) -p(A,"ug","xR",14) -s(A,"yF","w_",40) -p(A,"yM","xS",38) -p(A,"yP","z6",14) -s(A,"yO","z5",13) -p(A,"yN","wS",33) -n(A.W.prototype,"got","ou",18) +r(j=J.y.prototype,"ghF","l",18) +r(j,"glc","a1",18) +q(J.ct.prototype,"gfF",1,1,null,["$2","$1"],["aa","U"],81,0,0) +p(A,"yF","x4",24) +p(A,"yG","x5",24) +p(A,"yH","x6",24) +o(A,"uh","yy",1) +s(A,"uk","xV",13) +p(A,"ul","xW",14) +s(A,"yK","w4",40) +p(A,"yR","xX",38) +p(A,"yU","zb",14) +s(A,"yT","za",13) +p(A,"yS","wX",33) +n(A.Y.prototype,"got","ou",18) m(j=A.eQ.prototype,"gar","aI",13) n(j,"gdM","Y",14) -n(j,"gni","nj",31) -p(A,"uh","a7",20) -p(A,"yJ","pD",20) -p(A,"yK","ut",20) -p(A,"yI","vo",30) -p(A,"yH","vn",26) -n(A.d0.prototype,"gfm","iE",98) -l(j=A.ff.prototype,"gE","me",0) -l(j,"gmY","mZ",0) -l(j,"gcu","o3",0) -l(j,"glW","lX",0) -l(j,"gdT","nX",0) -l(j,"gbC","ji",0) -l(j,"gnG","nH",0) +n(j,"gnj","nk",31) +p(A,"um","a8",20) +p(A,"yO","pJ",20) +p(A,"yP","uy",20) +p(A,"yN","vt",27) +p(A,"yM","vs",26) +n(A.d0.prototype,"gfn","iF",117) +l(j=A.ff.prototype,"gE","mf",0) +l(j,"gmZ","n_",0) +l(j,"gcu","o4",0) +l(j,"glX","lY",0) +l(j,"gdT","nY",0) +l(j,"gbC","jj",0) +l(j,"gnH","nI",0) l(j,"god","oe",0) -l(j,"gm0","m1",0) -l(j,"giz","oc",0) -l(j,"go1","o2",0) -l(j,"go_","o0",0) -l(j,"gnY","nZ",0) -l(j,"gnV","nW",0) -l(j,"gnT","nU",0) -l(j,"gnR","nS",0) -l(j,"gjg","jh",0) -l(j,"gj1","j2",0) -l(j,"gj_","j0",0) -l(j,"gj5","j6",0) -l(j,"gj3","j4",0) -l(j,"gbe","jf",0) -l(j,"gj8","j9",0) -l(j,"gft","j7",0) -l(j,"ge3","je",0) -l(j,"gjc","jd",0) -l(j,"gja","jb",0) -l(j,"giS","iT",0) -l(j,"gbB","iZ",0) -l(j,"giW","iX",0) -l(j,"giU","iV",0) -l(j,"ge2","iY",0) -l(j,"giQ","iR",0) -l(j,"gbs","lG",0) -l(j,"gbI","ls",0) -l(j,"glc","ld",0) -l(j,"ghO","lH",0) -l(j,"glw","lx",0) -l(j,"glC","lD",0) -l(j,"gdE","lE",0) -l(j,"ghI","le",0) -l(j,"gbm","jj",0) -l(j,"geA","lO",0) -l(j,"gnn","no",0) -l(j,"gma","mb",0) -l(j,"gm8","m9",0) -l(j,"gbJ","mc",0) -l(j,"ghX","m6",0) -l(j,"ghY","m7",0) -l(j,"gm4","m5",0) -l(j,"gmL","mM",0) +l(j,"gm1","m2",0) +l(j,"giA","oc",0) +l(j,"go2","o3",0) +l(j,"go0","o1",0) +l(j,"gnZ","o_",0) +l(j,"gnW","nX",0) +l(j,"gnU","nV",0) +l(j,"gnS","nT",0) +l(j,"gjh","ji",0) +l(j,"gj2","j3",0) +l(j,"gj0","j1",0) +l(j,"gj6","j7",0) +l(j,"gj4","j5",0) +l(j,"gbf","jg",0) +l(j,"gj9","ja",0) +l(j,"gfu","j8",0) +l(j,"ge4","jf",0) +l(j,"gjd","je",0) +l(j,"gjb","jc",0) +l(j,"giT","iU",0) +l(j,"gbB","j_",0) +l(j,"giX","iY",0) +l(j,"giV","iW",0) +l(j,"ge3","iZ",0) +l(j,"giR","iS",0) +l(j,"gbs","lH",0) +l(j,"gbI","lt",0) +l(j,"gld","le",0) l(j,"ghP","lI",0) -l(j,"geK","mC",0) -l(j,"glf","lg",0) -l(j,"gli","lj",0) -l(j,"gey","lJ",0) -l(j,"gmF","mG",0) -l(j,"gmH","mI",0) -l(j,"ghJ","lh",0) -l(j,"glL","lM",0) -l(j,"gll","lm",0) +l(j,"glx","ly",0) +l(j,"glD","lE",0) +l(j,"gdE","lF",0) +l(j,"ghJ","lf",0) +l(j,"gbm","jk",0) +l(j,"geB","lP",0) +l(j,"gno","np",0) +l(j,"gmb","mc",0) +l(j,"gm9","ma",0) +l(j,"gbJ","md",0) +l(j,"ghY","m7",0) +l(j,"ghZ","m8",0) +l(j,"gm5","m6",0) +l(j,"gmM","mN",0) +l(j,"ghQ","lJ",0) +l(j,"geL","mD",0) +l(j,"glg","lh",0) +l(j,"glj","lk",0) l(j,"gez","lK",0) -l(j,"geL","mN",0) +l(j,"gmG","mH",0) +l(j,"gmI","mJ",0) +l(j,"ghK","li",0) +l(j,"glM","lN",0) +l(j,"glm","ln",0) +l(j,"geA","lL",0) l(j,"geM","mO",0) -l(j,"ghK","lk",0) -l(j,"gcm","lP",0) -l(j,"glS","lT",0) -p(A,"ul","yw",15) -p(A,"yT","yr",15) -p(A,"yS","xU",15) -l(j=A.kh.prototype,"gn0","n1",119) -l(j,"glU","lV",80) -l(j,"gjp","jq",81) -l(j,"gaZ","lF",82) -l(j,"glo","lp",83) -l(j,"glq","lr",7) -l(j,"gc1","lt",7) -l(j,"glu","lv",7) -l(j,"glA","lB",7) -l(j,"gly","lz",7) -l(j,"gmS","mT",85) -l(j,"ghW","m3",86) -l(j,"glQ","lR",87) -l(j,"gmf","mg",88) -l(j,"gip","nQ",89) -l(j,"gmm","mn",90) -l(j,"gmu","mv",23) -l(j,"gmy","mz",23) -l(j,"gmw","mx",23) -l(j,"gmA","mB",6) -l(j,"gmq","mr",11) -l(j,"gmo","mp",11) -l(j,"gms","mt",11) -l(j,"gmD","mE",11) -l(j,"gmJ","mK",11) -l(j,"gcD","jn",6) -l(j,"gcE","jo",6) -l(j,"gbc","nx",6) -l(j,"gnv","nw",6) -l(j,"gnt","nu",6) -n(A.dG.prototype,"giD","L",111) -k(A,"zh",2,null,["$1$2","$2"],["uw",function(a,b){return A.uw(a,b,t.cZ)}],118,1) -s(A,"yZ","zq",22) -s(A,"z_","zr",22) -s(A,"yY","zp",22)})();(function inheritance(){var s=hunkHelpers.mixin,r=hunkHelpers.inherit,q=hunkHelpers.inheritMany +l(j,"geN","mP",0) +l(j,"ghL","ll",0) +l(j,"gcn","lQ",0) +l(j,"glT","lU",0) +p(A,"uq","yB",15) +p(A,"yY","yw",15) +p(A,"yX","xZ",15) +l(j=A.kj.prototype,"gn1","n2",82) +l(j,"glV","lW",83) +l(j,"gjq","jr",84) +l(j,"gaZ","lG",85) +l(j,"glp","lq",86) +l(j,"glr","ls",7) +l(j,"gc2","lu",7) +l(j,"glv","lw",7) +l(j,"glB","lC",7) +l(j,"glz","lA",7) +l(j,"gmT","mU",88) +l(j,"ghX","m4",89) +l(j,"glR","lS",90) +l(j,"gmg","mh",91) +l(j,"giq","nR",92) +l(j,"gmn","mo",93) +l(j,"gmv","mw",23) +l(j,"gmz","mA",23) +l(j,"gmx","my",23) +l(j,"gmB","mC",6) +l(j,"gmr","ms",11) +l(j,"gmp","mq",11) +l(j,"gmt","mu",11) +l(j,"gmE","mF",11) +l(j,"gmK","mL",11) +l(j,"gcD","jo",6) +l(j,"gcE","jp",6) +l(j,"gbd","ny",6) +l(j,"gnw","nx",6) +l(j,"gnu","nv",6) +n(A.dH.prototype,"giE","M",114) +k(A,"zm",2,null,["$1$2","$2"],["uB",function(a,b){return A.uB(a,b,t.cZ)}],121,1) +s(A,"z3","zv",22) +s(A,"z4","zw",22) +s(A,"z2","zu",22)})();(function inheritance(){var s=hunkHelpers.mixin,r=hunkHelpers.inherit,q=hunkHelpers.inheritMany r(A.p,null) -q(A.p,[A.pZ,J.iR,A.fF,J.J,A.h,A.eN,A.a8,A.b6,A.Z,A.D,A.nG,A.L,A.dt,A.cF,A.fd,A.fT,A.fO,A.eX,A.bZ,A.ai,A.bL,A.cf,A.bn,A.ea,A.dW,A.cK,A.aY,A.fj,A.nM,A.jk,A.fc,A.hq,A.oS,A.mI,A.cv,A.dq,A.fn,A.cV,A.hg,A.et,A.fS,A.kS,A.kz,A.oX,A.bU,A.kL,A.kU,A.oU,A.kv,A.bG,A.kA,A.dI,A.az,A.kw,A.kQ,A.hz,A.hd,A.kM,A.dK,A.hv,A.hf,A.bt,A.cl,A.ou,A.oO,A.kW,A.ap,A.dg,A.oA,A.jo,A.fQ,A.kK,A.aA,A.iQ,A.b_,A.aJ,A.kT,A.jH,A.W,A.hw,A.nO,A.bN,A.jj,A.ie,A.bQ,A.lG,A.lE,A.op,A.on,A.fe,A.kt,A.oo,A.mz,A.om,A.mD,A.lD,A.ni,A.nh,A.ju,A.jt,A.fA,A.ng,A.iN,A.jp,A.fR,A.cP,A.lF,A.eR,A.e2,A.cX,A.bE,A.ey,A.e9,A.eQ,A.ev,A.kO,A.I,A.nK,A.eb,A.j4,A.no,A.N,A.k5,A.ip,A.eY,A.di,A.bu,A.ih,A.f3,A.f2,A.cm,A.f4,A.il,A.f5,A.cS,A.cn,A.f6,A.im,A.f7,A.co,A.f8,A.ii,A.eZ,A.ij,A.dj,A.ik,A.f_,A.dk,A.f0,A.f1,A.cR,A.io,A.iq,A.fa,A.ig,A.aN,A.kN,A.oQ,A.kG,A.al,A.mx,A.a9,A.b9,A.nx,A.lP,A.lK,A.ew,A.mw,A.bl,A.jQ,A.ff,A.nL,A.lS,A.f9,A.lL,A.nI,A.ne,A.js,A.cb,A.jr,A.n,A.cB,A.fs,A.ca,A.jL,A.jN,A.ek,A.ma,A.aK,A.bD,A.bW,A.aI,A.d5,A.ki,A.kj,A.kc,A.nT,A.ep,A.nU,A.d6,A.cG,A.aR,A.X,A.ol,A.aG,A.kl,A.li,A.k8,A.le,A.kq,A.lr,A.nR,A.og,A.oh,A.kk,A.ls,A.lt,A.lb,A.kg,A.kh,A.df,A.l8,A.h_,A.dG]) -q(J.iR,[J.iU,J.e4,J.fk,J.e6,J.e7,J.e5,J.ct]) -q(J.fk,[J.cW,J.y,A.du,A.fu]) -q(J.cW,[J.jz,J.dE,J.cu]) -r(J.iT,A.fF) -r(J.mF,J.y) -q(J.e5,[J.fi,J.iV]) -q(A.h,[A.eu,A.z,A.b8,A.bb,A.dm,A.dD,A.cx,A.a_,A.he,A.ku,A.kR,A.bV,A.hQ,A.d3,A.fr,A.c1,A.kf]) -r(A.dd,A.eu) -r(A.hb,A.dd) -q(A.a8,[A.de,A.bx,A.cJ]) -q(A.b6,[A.i5,A.iO,A.i4,A.jR,A.pz,A.pB,A.or,A.oq,A.p5,A.oJ,A.oz,A.ox,A.pM,A.pN,A.pr,A.mE,A.m7,A.m9,A.lJ,A.lI,A.mX,A.mY,A.mZ,A.n_,A.n0,A.n1,A.mM,A.mN,A.mO,A.mQ,A.mS,A.mR,A.mT,A.mV,A.mU,A.mW,A.n4,A.n5,A.n6,A.n7,A.n8,A.n9,A.na,A.nb,A.nc,A.nd,A.nz,A.nA,A.nB,A.lR,A.lQ,A.mC,A.nE,A.nF,A.nD,A.nC,A.ph,A.pi,A.lU,A.m1,A.m_,A.m0,A.lV,A.lW,A.lX,A.lY,A.m4,A.m5,A.m2,A.m3,A.lM,A.lN,A.pc,A.pK,A.p8,A.p9,A.pS,A.pJ,A.nr,A.ns,A.nu,A.nv,A.nw,A.pQ,A.pR,A.mc,A.mb,A.md,A.mf,A.mh,A.me,A.mv,A.p4,A.oj,A.ok,A.nV,A.nX,A.nY,A.nZ,A.pm,A.pn,A.po,A.pp,A.pq,A.oi,A.p1,A.o5,A.of,A.o3,A.o_,A.o0,A.o2,A.o1,A.oc,A.o6,A.o4,A.o7,A.oe,A.ob,A.o9,A.o8,A.oa,A.pt,A.pF,A.pE]) -q(A.i5,[A.lH,A.np,A.mG,A.pA,A.p6,A.pd,A.oK,A.mJ,A.mK,A.oP,A.ow,A.n3,A.nQ,A.lO,A.nm,A.mB,A.pv,A.pg,A.pj,A.pk,A.pl,A.lT,A.pH,A.pI,A.mg,A.od]) -q(A.Z,[A.e8,A.jD,A.cC,A.iW,A.jZ,A.jI,A.kJ,A.fl,A.hU,A.bR,A.jg,A.fX,A.fW,A.dC,A.i7]) -q(A.D,[A.em,A.b7]) -q(A.em,[A.af,A.cE]) -q(A.z,[A.G,A.eW,A.aU,A.fo,A.dp,A.hc]) -q(A.G,[A.cy,A.R,A.V,A.fp]) -r(A.eU,A.b8) -r(A.eV,A.dD) +q(A.p,[A.q4,J.iS,A.fF,J.J,A.h,A.eN,A.a9,A.b7,A.a0,A.C,A.nK,A.M,A.du,A.cF,A.fd,A.fT,A.fO,A.eX,A.bZ,A.ak,A.bL,A.cf,A.bn,A.ea,A.dW,A.cK,A.aY,A.fj,A.nQ,A.jl,A.fc,A.hq,A.oW,A.mM,A.cv,A.dr,A.fn,A.cV,A.hg,A.et,A.fS,A.kV,A.kB,A.p0,A.bU,A.kO,A.kX,A.oY,A.kx,A.bG,A.kC,A.dJ,A.aB,A.ky,A.kT,A.hz,A.hd,A.kP,A.dL,A.hv,A.hf,A.bt,A.cl,A.oy,A.oS,A.kZ,A.aq,A.dh,A.oE,A.jp,A.fQ,A.kM,A.aC,A.iR,A.b0,A.aK,A.kW,A.jJ,A.Y,A.hw,A.nS,A.bN,A.jk,A.ie,A.bQ,A.lJ,A.lH,A.ot,A.or,A.fe,A.kv,A.os,A.mD,A.oq,A.mH,A.lG,A.nm,A.nl,A.jv,A.ju,A.fA,A.nk,A.iO,A.jq,A.fR,A.cP,A.lI,A.eR,A.e2,A.cX,A.bE,A.ey,A.e9,A.eQ,A.ev,A.kR,A.I,A.nO,A.eb,A.j5,A.ns,A.R,A.k7,A.ip,A.eY,A.dj,A.bu,A.ih,A.f3,A.f2,A.cm,A.f4,A.il,A.f5,A.cS,A.cn,A.f6,A.im,A.f7,A.co,A.f8,A.ii,A.eZ,A.ij,A.dk,A.ik,A.f_,A.dl,A.f0,A.f1,A.cR,A.io,A.iq,A.fa,A.ig,A.aO,A.kQ,A.oU,A.kI,A.am,A.mB,A.aa,A.bb,A.nB,A.lS,A.lN,A.ew,A.mA,A.bl,A.jS,A.ff,A.nP,A.lV,A.f9,A.lO,A.nM,A.ni,A.jt,A.cb,A.js,A.n,A.cB,A.fs,A.ca,A.jN,A.jP,A.ek,A.me,A.aL,A.bD,A.bW,A.aJ,A.d5,A.kk,A.kl,A.ke,A.nX,A.ep,A.nY,A.d6,A.cG,A.aS,A.Z,A.op,A.aH,A.kn,A.ll,A.ka,A.lh,A.ks,A.lu,A.nV,A.ok,A.ol,A.km,A.lv,A.lw,A.le,A.ki,A.kj,A.dg,A.lb,A.h_,A.dH]) +q(J.iS,[J.iV,J.e4,J.fk,J.e6,J.e7,J.e5,J.ct]) +q(J.fk,[J.cW,J.y,A.dv,A.fu]) +q(J.cW,[J.jA,J.dF,J.cu]) +r(J.iU,A.fF) +r(J.mJ,J.y) +q(J.e5,[J.fi,J.iW]) +q(A.h,[A.eu,A.z,A.ba,A.b_,A.dn,A.dE,A.cx,A.O,A.he,A.kw,A.kU,A.bV,A.hQ,A.d3,A.kN,A.fr,A.c1,A.kh]) +r(A.de,A.eu) +r(A.hb,A.de) +q(A.a9,[A.df,A.bx,A.cJ]) +q(A.b7,[A.i5,A.iP,A.i4,A.jT,A.pF,A.pH,A.ov,A.ou,A.p9,A.oN,A.oD,A.oB,A.pS,A.pT,A.px,A.mI,A.ma,A.mc,A.lM,A.lL,A.n0,A.n1,A.n2,A.n3,A.n4,A.n5,A.mQ,A.mR,A.mS,A.mU,A.mW,A.mV,A.mX,A.mZ,A.mY,A.n_,A.n8,A.n9,A.na,A.nb,A.nc,A.nd,A.ne,A.nf,A.ng,A.nh,A.nD,A.nE,A.nF,A.lU,A.lT,A.md,A.mG,A.nI,A.nJ,A.nH,A.nG,A.pn,A.po,A.pl,A.pm,A.lX,A.m4,A.m2,A.m3,A.lY,A.lZ,A.m_,A.m0,A.m7,A.m8,A.m5,A.m6,A.lP,A.lQ,A.pg,A.pQ,A.pc,A.pd,A.pY,A.pP,A.nv,A.nw,A.ny,A.nz,A.nA,A.pW,A.pX,A.mg,A.mf,A.mh,A.mj,A.ml,A.mi,A.mz,A.p8,A.on,A.oo,A.nZ,A.o0,A.o1,A.o2,A.ps,A.pt,A.pu,A.pv,A.pw,A.om,A.p5,A.o9,A.oj,A.o7,A.o3,A.o4,A.o6,A.o5,A.og,A.oa,A.o8,A.ob,A.oi,A.of,A.od,A.oc,A.oe,A.pz,A.pL,A.pK]) +q(A.i5,[A.lK,A.nt,A.mK,A.pG,A.pa,A.ph,A.oO,A.mN,A.mO,A.oT,A.oA,A.n7,A.nU,A.lR,A.nq,A.mF,A.pB,A.pk,A.pp,A.pq,A.pr,A.lW,A.pN,A.pO,A.mk,A.oh]) +q(A.a0,[A.e8,A.jF,A.cC,A.iX,A.k0,A.jK,A.kL,A.fl,A.hU,A.bR,A.jh,A.fX,A.fW,A.dD,A.i7]) +q(A.C,[A.em,A.b9]) +q(A.em,[A.ah,A.cE]) +q(A.z,[A.G,A.eW,A.aV,A.fo,A.dq,A.hc]) +q(A.G,[A.cy,A.Q,A.X,A.fp]) +r(A.eU,A.ba) +r(A.eV,A.dE) r(A.dZ,A.cx) q(A.bn,[A.ez,A.eA,A.d7]) r(A.l,A.ez) r(A.hl,A.eA) q(A.d7,[A.hm,A.hn,A.ho]) r(A.eC,A.ea) -r(A.dF,A.eC) -r(A.eP,A.dF) +r(A.dG,A.eC) +r(A.eP,A.dG) q(A.dW,[A.r,A.a]) -q(A.aY,[A.dX,A.hp,A.kB]) -q(A.dX,[A.bf,A.aO]) -r(A.e0,A.iO) +q(A.aY,[A.dX,A.hp,A.kD]) +q(A.dX,[A.b8,A.aP]) +r(A.e0,A.iP) r(A.fx,A.cC) -q(A.jR,[A.jP,A.dT]) -r(A.dn,A.bx) -q(A.fu,[A.j6,A.aW]) +q(A.jT,[A.jR,A.dT]) +r(A.dp,A.bx) +q(A.fu,[A.j7,A.aW]) q(A.aW,[A.hh,A.hj]) r(A.hi,A.hh) r(A.ft,A.hi) r(A.hk,A.hj) r(A.by,A.hk) -q(A.ft,[A.j7,A.j8]) -q(A.by,[A.j9,A.ja,A.jb,A.jc,A.fv,A.fw,A.dv]) -r(A.eB,A.kJ) -q(A.i4,[A.os,A.ot,A.oV,A.oB,A.oF,A.oE,A.oD,A.oC,A.oI,A.oH,A.oG,A.oT,A.pb,A.p_,A.oZ,A.m8,A.nl,A.mA,A.my,A.pf,A.lZ,A.mu,A.mi,A.mp,A.mq,A.mr,A.ms,A.mn,A.mo,A.mj,A.mk,A.ml,A.mm,A.mt,A.oL]) -r(A.h8,A.kA) -r(A.kP,A.hz) -q(A.cJ,[A.dJ,A.ha]) +q(A.ft,[A.j8,A.j9]) +q(A.by,[A.ja,A.jb,A.jc,A.jd,A.fv,A.fw,A.dw]) +r(A.eB,A.kL) +q(A.i4,[A.ow,A.ox,A.oZ,A.oF,A.oJ,A.oI,A.oH,A.oG,A.oM,A.oL,A.oK,A.oX,A.pf,A.p3,A.p2,A.mb,A.np,A.mE,A.mC,A.pj,A.m1,A.my,A.mm,A.mt,A.mu,A.mv,A.mw,A.mr,A.ms,A.mn,A.mo,A.mp,A.mq,A.mx,A.oP]) +r(A.h8,A.kC) +r(A.kS,A.hz) +q(A.cJ,[A.dK,A.ha]) r(A.cL,A.hp) -q(A.bt,[A.ic,A.eL,A.iX]) -q(A.ic,[A.hS,A.k2]) -q(A.cl,[A.kV,A.hX,A.iZ,A.k3,A.ke]) -r(A.hT,A.kV) -r(A.iY,A.fl) -r(A.oN,A.oO) +q(A.bt,[A.ic,A.eL,A.iY]) +q(A.ic,[A.hS,A.k4]) +q(A.cl,[A.kY,A.hX,A.j_,A.k5,A.kg]) +r(A.hT,A.kY) +r(A.iZ,A.fl) +r(A.oR,A.oS) q(A.bR,[A.ef,A.fh]) -r(A.kC,A.hw) -q(A.oA,[A.dV,A.h7,A.i0,A.ec,A.aS,A.cT,A.ir,A.ae,A.bm]) -q(A.fe,[A.ks,A.it]) -r(A.p2,A.om) -q(A.ni,[A.nk,A.fz]) -r(A.nj,A.nh) -r(A.jw,A.jt) -r(A.jx,A.jw) -r(A.jv,A.ju) -r(A.nf,A.ng) -r(A.e_,A.iN) -r(A.fy,A.jp) +r(A.kE,A.hw) +q(A.oE,[A.dV,A.h7,A.i0,A.ec,A.aT,A.cT,A.ir,A.ag,A.bm]) +q(A.fe,[A.ku,A.it]) +r(A.p6,A.oq) +q(A.nm,[A.no,A.fz]) +r(A.nn,A.nl) +r(A.jx,A.ju) +r(A.jy,A.jx) +r(A.jw,A.jv) +r(A.nj,A.nk) +r(A.e_,A.iO) +r(A.fy,A.jq) r(A.ei,A.bE) r(A.dY,A.ev) -r(A.iy,A.I) -r(A.jV,A.nK) -q(A.N,[A.cs,A.d4,A.jT,A.jd,A.jJ,A.d_,A.fL,A.ba,A.eh,A.an]) -q(A.ba,[A.dh,A.j5,A.hW,A.ix,A.i3,A.ed,A.ee,A.je]) +r(A.iz,A.I) +r(A.jX,A.nO) +q(A.R,[A.cs,A.d4,A.jV,A.je,A.jL,A.d_,A.fL,A.bc,A.eh,A.ao]) +q(A.bc,[A.di,A.j6,A.hW,A.iy,A.i3,A.ed,A.ee,A.jf]) r(A.fD,A.ed) -r(A.jC,A.ee) -q(A.an,[A.jn,A.jm,A.ak]) -q(A.ak,[A.jl,A.bA,A.jy,A.ib,A.is,A.iu]) -q(A.bA,[A.j_,A.hN,A.jU,A.iv,A.jG,A.i1,A.jE,A.j0,A.k4]) -q(A.di,[A.bg,A.fb]) -q(A.al,[A.kD,A.i9,A.bY,A.kH,A.i6]) -r(A.kE,A.kD) -r(A.kF,A.kE) -r(A.eT,A.kF) -r(A.kI,A.kH) -r(A.a6,A.kI) -q(A.b7,[A.jh,A.hH]) -q(A.a9,[A.iM,A.hZ,A.hY,A.iF,A.hM,A.iz,A.jS,A.iK,A.fg,A.iA,A.iC,A.iJ,A.iG,A.iB,A.iI,A.iH,A.iD,A.hK,A.iE,A.hL,A.hI,A.hJ]) -r(A.ia,A.kB) -r(A.d0,A.k5) +r(A.jE,A.ee) +q(A.ao,[A.jo,A.jn,A.al]) +q(A.al,[A.jm,A.bA,A.jz,A.ib,A.is,A.iv]) +q(A.bA,[A.j0,A.hN,A.jW,A.iw,A.jI,A.i1,A.jG,A.j1,A.k6]) +q(A.dj,[A.bg,A.fb]) +q(A.am,[A.kF,A.i9,A.bY,A.kJ,A.i6]) +r(A.kG,A.kF) +r(A.kH,A.kG) +r(A.eT,A.kH) +r(A.kK,A.kJ) +r(A.K,A.kK) +q(A.b9,[A.ji,A.hH]) +r(A.iu,A.kN) +q(A.aa,[A.iN,A.hZ,A.hY,A.iG,A.hM,A.iA,A.jU,A.iL,A.fg,A.iB,A.iD,A.iK,A.iH,A.iC,A.iJ,A.iI,A.iE,A.hK,A.iF,A.hL,A.hI,A.hJ]) +r(A.ia,A.kD) +r(A.d0,A.k7) q(A.bl,[A.cA,A.bK,A.eS]) q(A.cA,[A.d2,A.H]) -q(A.bK,[A.j,A.B,A.dB,A.dU]) -r(A.e1,A.nI) -q(A.e1,[A.jA,A.k1,A.k7]) +q(A.bK,[A.j,A.D,A.dC,A.dU]) +r(A.e1,A.nM) +q(A.e1,[A.jB,A.k3,A.k9]) r(A.eg,A.cb) -q(A.eg,[A.Q,A.F]) -q(A.n,[A.u,A.at,A.dr,A.fH,A.dA,A.fI,A.fJ,A.fK,A.id,A.cQ,A.jf,A.i2,A.fC,A.jF,A.eo]) -q(A.at,[A.cp,A.fq,A.fU,A.bT,A.fP,A.dz]) -q(A.ca,[A.fM,A.ck,A.j3,A.ji,A.aa,A.k6]) -r(A.eO,A.dr) +q(A.eg,[A.T,A.F]) +q(A.n,[A.u,A.au,A.ds,A.fH,A.dB,A.fI,A.fJ,A.fK,A.id,A.cQ,A.jg,A.i2,A.fC,A.jH,A.eo]) +q(A.au,[A.cp,A.fq,A.fU,A.bT,A.fP,A.dA]) +q(A.ca,[A.fM,A.ck,A.j4,A.jj,A.ab,A.k8]) +r(A.eO,A.ds) q(A.i2,[A.ej,A.fV]) r(A.hO,A.ej) r(A.hP,A.fV) -q(A.dz,[A.fm,A.fB]) +q(A.dA,[A.fm,A.fB]) r(A.bj,A.fm) -r(A.bh,A.jN) -q(A.ek,[A.av,A.jO]) -r(A.cd,A.jO) -r(A.kb,A.d5) -q(A.ki,[A.km,A.lo,A.lq,A.h2]) -r(A.ko,A.lo) -r(A.kp,A.lq) -r(A.lj,A.li) -r(A.lk,A.lj) -r(A.ll,A.lk) +r(A.bh,A.jP) +q(A.ek,[A.aw,A.jQ]) +r(A.cd,A.jQ) +r(A.kd,A.d5) +q(A.kk,[A.ko,A.lr,A.lt,A.h2]) +r(A.kq,A.lr) +r(A.kr,A.lt) r(A.lm,A.ll) r(A.ln,A.lm) -r(A.E,A.ln) -q(A.E,[A.kX,A.kZ,A.l_,A.l1,A.l2,A.l3]) -r(A.kY,A.kX) -r(A.aQ,A.kY) -r(A.k9,A.kZ) -q(A.k9,[A.en,A.fY,A.h4,A.es]) +r(A.lo,A.ln) +r(A.lp,A.lo) +r(A.lq,A.lp) +r(A.E,A.lq) +q(A.E,[A.l_,A.l1,A.l2,A.l4,A.l5,A.l6]) r(A.l0,A.l_) -r(A.ka,A.l0) -r(A.fZ,A.l1) -r(A.kd,A.l2) -r(A.l4,A.l3) -r(A.l5,A.l4) -r(A.l6,A.l5) -r(A.aF,A.l6) -r(A.lf,A.le) -r(A.lg,A.lf) -r(A.eq,A.lg) +r(A.aR,A.l0) +r(A.kb,A.l1) +q(A.kb,[A.en,A.fY,A.h4,A.es]) +r(A.l3,A.l2) +r(A.kc,A.l3) +r(A.fZ,A.l4) +r(A.kf,A.l5) +r(A.l7,A.l6) +r(A.l8,A.l7) +r(A.l9,A.l8) +r(A.aG,A.l9) +r(A.li,A.lh) +r(A.lj,A.li) +r(A.eq,A.lj) r(A.h0,A.dY) q(A.eq,[A.h3,A.h5]) -r(A.kr,A.lr) -r(A.la,A.ls) -r(A.lh,A.lt) +r(A.kt,A.lu) +r(A.ld,A.lv) +r(A.lk,A.lw) +r(A.lf,A.le) +r(A.lg,A.lf) +r(A.a1,A.lg) +q(A.a1,[A.c_,A.c0,A.bB,A.bC,A.la,A.c2,A.ls,A.dI]) +r(A.bM,A.la) +r(A.bd,A.ls) r(A.lc,A.lb) -r(A.ld,A.lc) -r(A.a0,A.ld) -q(A.a0,[A.c_,A.c0,A.bB,A.bC,A.l7,A.c2,A.lp,A.dH]) -r(A.bM,A.l7) -r(A.bc,A.lp) -r(A.l9,A.l8) -r(A.au,A.l9) +r(A.av,A.lc) s(A.em,A.bL) -s(A.hh,A.D) -s(A.hi,A.ai) -s(A.hj,A.D) -s(A.hk,A.ai) +s(A.hh,A.C) +s(A.hi,A.ak) +s(A.hj,A.C) +s(A.hk,A.ak) s(A.eC,A.hv) -s(A.kD,A.kN) -s(A.kE,A.oQ) -s(A.kF,A.kG) -s(A.kH,A.kN) -s(A.kI,A.kG) -s(A.lo,A.kj) -s(A.lq,A.kj) -s(A.kX,A.cG) -s(A.kY,A.X) -s(A.kZ,A.X) -s(A.l_,A.X) -s(A.l0,A.ep) -s(A.l1,A.X) -s(A.l2,A.d6) -s(A.l3,A.cG) -s(A.l4,A.X) -s(A.l5,A.ep) -s(A.l6,A.d6) -s(A.li,A.nT) -s(A.lj,A.nU) -s(A.lk,A.aG) -s(A.ll,A.kl) -s(A.lm,A.aR) -s(A.ln,A.ol) -s(A.le,A.aG) -s(A.lf,A.kl) -s(A.lg,A.X) -s(A.lr,A.kq) -s(A.ls,A.dG) -s(A.lt,A.dG) -s(A.lb,A.kk) -s(A.lc,A.oh) -s(A.ld,A.og) -s(A.l7,A.h_) -s(A.lp,A.h_) -s(A.l8,A.h_) -s(A.l9,A.kk)})() -var v={G:typeof self!="undefined"?self:globalThis,typeUniverse:{eC:new Map(),tR:{},eT:{},tPV:{},sEA:[]},mangledGlobalNames:{b:"int",T:"double",b4:"num",e:"String",C:"bool",aJ:"Null",m:"List",p:"Object",d:"Map",ao:"JSObject"},mangledNames:{},types:["C()","~()","~(aF)","aJ()","C(e)","C(aF?)","n()","n<+(e,ae)>()","e()","C(bQ)","C(cG)","n<@>()","C(dj)","C(p?,p?)","b(p?)","e(cc)","~(@)","~(p,e)","~(p?)","b(b,d)","C(e?)","C(aK)","F(F,F)","n()","~(~())","@()","b(b)","C(al)","aJ(@)","C(E)","C(b)","C(p?)","C(bu)","e(e)","b()","aQ(aQ)","E(E)","e(b)","@(@)","+(e,ae)(e,e,e)","b(@,@)","~(p?,p?)","~(el,@)","aJ(@,d1)","C(d)","e(d)","~(e,d)","~(al,d)","C(cR)","~(bu)","d(bu)","~(b,@)","m>(m)","e(cS)","C(b_)","bg(b_)","aJ(p,d1)","e(e?)","m(e)","aa(e)","aa(e,e,e)","~(e,@)","aa(b)","b(aa,aa)","b(b,aa)","e?()","b(bD)","e?(dk)","p(bD)","p(aK)","b(aK,aK)","m(b_>)","~(@,@)","cd()","e?(E)","aJ(~())","cm(aF)","cn(aF)","aQ(au)","C(dw[b])","n
()","n()","n>()","n()","b(b,b)","n()","n()","n()","n()","n()","n()","@(@,e)","@(e)","e(bK)","dH(e)","bc(e,e,m,e,e)","au(e,e,+(e,ae))","+(e,ae)(e,e,e,+(e,ae))","C(d_)","+(e,ae)(e)","bM(e,e,e,e)","c0(e,e,e)","c_(e,e,e)","bB(e,m,e,e)","e(e,e)","c2(e,e,e,e)","bC(e,e,e,aI?,e,e?,e,e)","aI(e,e,+(e,ae))","aI(e,e,+(e,ae),e,+(e,ae))","e(e,e,e)","n(d5)","~(a0)","aJ(ao)","cr<~>(~)","0&(e,b?)","p?(p?)","e(m)","~(e,p?)","0^(0^,0^)","n()"],interceptorsByTag:null,leafTags:null,arrayRti:Symbol("$ti"),rttc:{"2;":(a,b)=>c=>c instanceof A.l&&a.b(c.a)&&b.b(c.b),"3;":(a,b,c)=>d=>d instanceof A.hl&&a.b(d.a)&&b.b(d.b)&&c.b(d.c),"4;":a=>b=>b instanceof A.hm&&A.qV(a,b.a),"5;":a=>b=>b instanceof A.hn&&A.qV(a,b.a),"8;":a=>b=>b instanceof A.ho&&A.qV(a,b.a)}} -A.xt(v.typeUniverse,JSON.parse('{"cu":"cW","jz":"cW","dE":"cW","zJ":"du","iU":{"C":[],"a2":[]},"e4":{"aJ":[],"a2":[]},"fk":{"ao":[]},"cW":{"ao":[]},"y":{"m":["1"],"z":["1"],"ao":[],"h":["1"],"aT":["1"]},"iT":{"fF":[]},"mF":{"y":["1"],"m":["1"],"z":["1"],"ao":[],"h":["1"],"aT":["1"]},"J":{"K":["1"]},"e5":{"T":[],"b4":[],"a5":["b4"]},"fi":{"T":[],"b":[],"b4":[],"a5":["b4"],"a2":[]},"iV":{"T":[],"b4":[],"a5":["b4"],"a2":[]},"ct":{"e":[],"a5":["e"],"dw":[],"aT":["@"],"a2":[]},"eu":{"h":["2"]},"eN":{"K":["2"]},"dd":{"eu":["1","2"],"h":["2"],"h.E":"2"},"hb":{"dd":["1","2"],"eu":["1","2"],"z":["2"],"h":["2"],"h.E":"2"},"de":{"a8":["3","4"],"d":["3","4"],"a8.K":"3","a8.V":"4"},"e8":{"Z":[]},"jD":{"Z":[]},"af":{"D":["b"],"bL":["b"],"m":["b"],"z":["b"],"h":["b"],"D.E":"b","bL.E":"b"},"z":{"h":["1"]},"G":{"z":["1"],"h":["1"]},"cy":{"G":["1"],"z":["1"],"h":["1"],"h.E":"1","G.E":"1"},"L":{"K":["1"]},"b8":{"h":["2"],"h.E":"2"},"eU":{"b8":["1","2"],"z":["2"],"h":["2"],"h.E":"2"},"dt":{"K":["2"]},"R":{"G":["2"],"z":["2"],"h":["2"],"h.E":"2","G.E":"2"},"bb":{"h":["1"],"h.E":"1"},"cF":{"K":["1"]},"dm":{"h":["2"],"h.E":"2"},"fd":{"K":["2"]},"dD":{"h":["1"],"h.E":"1"},"eV":{"dD":["1"],"z":["1"],"h":["1"],"h.E":"1"},"fT":{"K":["1"]},"cx":{"h":["1"],"h.E":"1"},"dZ":{"cx":["1"],"z":["1"],"h":["1"],"h.E":"1"},"fO":{"K":["1"]},"eW":{"z":["1"],"h":["1"],"h.E":"1"},"eX":{"K":["1"]},"a_":{"h":["1"],"h.E":"1"},"bZ":{"K":["1"]},"em":{"D":["1"],"bL":["1"],"m":["1"],"z":["1"],"h":["1"]},"V":{"G":["1"],"z":["1"],"h":["1"],"h.E":"1","G.E":"1"},"cf":{"el":[]},"l":{"ez":[],"bn":[]},"hl":{"eA":[],"bn":[]},"hm":{"d7":[],"bn":[]},"hn":{"d7":[],"bn":[]},"ho":{"d7":[],"bn":[]},"eP":{"dF":["1","2"],"eC":["1","2"],"ea":["1","2"],"hv":["1","2"],"d":["1","2"]},"dW":{"d":["1","2"]},"r":{"dW":["1","2"],"d":["1","2"]},"he":{"h":["1"],"h.E":"1"},"cK":{"K":["1"]},"a":{"dW":["1","2"],"d":["1","2"]},"dX":{"aY":["1"],"bk":["1"],"z":["1"],"h":["1"]},"bf":{"dX":["1"],"aY":["1"],"bk":["1"],"z":["1"],"h":["1"],"aY.E":"1"},"aO":{"dX":["1"],"aY":["1"],"bk":["1"],"z":["1"],"h":["1"],"aY.E":"1"},"iO":{"b6":[],"cq":[]},"e0":{"b6":[],"cq":[]},"fj":{"rn":[]},"fx":{"cC":[],"Z":[]},"iW":{"Z":[]},"jZ":{"Z":[]},"jk":{"ah":[]},"hq":{"d1":[]},"b6":{"cq":[]},"i4":{"b6":[],"cq":[]},"i5":{"b6":[],"cq":[]},"jR":{"b6":[],"cq":[]},"jP":{"b6":[],"cq":[]},"dT":{"b6":[],"cq":[]},"jI":{"Z":[]},"bx":{"a8":["1","2"],"mH":["1","2"],"d":["1","2"],"a8.K":"1","a8.V":"2"},"aU":{"z":["1"],"h":["1"],"h.E":"1"},"cv":{"K":["1"]},"fo":{"z":["1"],"h":["1"],"h.E":"1"},"dq":{"K":["1"]},"dp":{"z":["b_<1,2>"],"h":["b_<1,2>"],"h.E":"b_<1,2>"},"fn":{"K":["b_<1,2>"]},"dn":{"bx":["1","2"],"a8":["1","2"],"mH":["1","2"],"d":["1","2"],"a8.K":"1","a8.V":"2"},"ez":{"bn":[]},"eA":{"bn":[]},"d7":{"bn":[]},"cV":{"qb":[],"dw":[]},"hg":{"fE":[],"cc":[]},"ku":{"h":["fE"],"h.E":"fE"},"et":{"K":["fE"]},"fS":{"cc":[]},"kR":{"h":["cc"],"h.E":"cc"},"kS":{"K":["cc"]},"du":{"ao":[],"a2":[]},"fu":{"ao":[]},"j6":{"ao":[],"a2":[]},"aW":{"bw":["1"],"ao":[],"aT":["1"]},"ft":{"D":["T"],"aW":["T"],"m":["T"],"bw":["T"],"z":["T"],"ao":[],"aT":["T"],"h":["T"],"ai":["T"]},"by":{"D":["b"],"aW":["b"],"m":["b"],"bw":["b"],"z":["b"],"ao":[],"aT":["b"],"h":["b"],"ai":["b"]},"j7":{"D":["T"],"aW":["T"],"m":["T"],"bw":["T"],"z":["T"],"ao":[],"aT":["T"],"h":["T"],"ai":["T"],"a2":[],"D.E":"T","ai.E":"T"},"j8":{"D":["T"],"aW":["T"],"m":["T"],"bw":["T"],"z":["T"],"ao":[],"aT":["T"],"h":["T"],"ai":["T"],"a2":[],"D.E":"T","ai.E":"T"},"j9":{"by":[],"D":["b"],"aW":["b"],"m":["b"],"bw":["b"],"z":["b"],"ao":[],"aT":["b"],"h":["b"],"ai":["b"],"a2":[],"D.E":"b","ai.E":"b"},"ja":{"by":[],"iP":[],"D":["b"],"aW":["b"],"m":["b"],"bw":["b"],"z":["b"],"ao":[],"aT":["b"],"h":["b"],"ai":["b"],"a2":[],"D.E":"b","ai.E":"b"},"jb":{"by":[],"D":["b"],"aW":["b"],"m":["b"],"bw":["b"],"z":["b"],"ao":[],"aT":["b"],"h":["b"],"ai":["b"],"a2":[],"D.E":"b","ai.E":"b"},"jc":{"by":[],"qi":[],"D":["b"],"aW":["b"],"m":["b"],"bw":["b"],"z":["b"],"ao":[],"aT":["b"],"h":["b"],"ai":["b"],"a2":[],"D.E":"b","ai.E":"b"},"fv":{"by":[],"qj":[],"D":["b"],"aW":["b"],"m":["b"],"bw":["b"],"z":["b"],"ao":[],"aT":["b"],"h":["b"],"ai":["b"],"a2":[],"D.E":"b","ai.E":"b"},"fw":{"by":[],"D":["b"],"aW":["b"],"m":["b"],"bw":["b"],"z":["b"],"ao":[],"aT":["b"],"h":["b"],"ai":["b"],"a2":[],"D.E":"b","ai.E":"b"},"dv":{"by":[],"jX":[],"D":["b"],"aW":["b"],"m":["b"],"bw":["b"],"z":["b"],"ao":[],"aT":["b"],"h":["b"],"ai":["b"],"a2":[],"D.E":"b","ai.E":"b"},"kJ":{"Z":[]},"eB":{"cC":[],"Z":[]},"bG":{"Z":[]},"h8":{"kA":["1"]},"az":{"cr":["1"]},"hz":{"te":[]},"kP":{"hz":[],"te":[]},"cJ":{"a8":["1","2"],"d":["1","2"],"a8.K":"1","a8.V":"2"},"dJ":{"cJ":["1","2"],"a8":["1","2"],"d":["1","2"],"a8.K":"1","a8.V":"2"},"ha":{"cJ":["1","2"],"a8":["1","2"],"d":["1","2"],"a8.K":"1","a8.V":"2"},"hc":{"z":["1"],"h":["1"],"h.E":"1"},"hd":{"K":["1"]},"cL":{"hp":["1"],"aY":["1"],"rw":["1"],"bk":["1"],"z":["1"],"h":["1"],"aY.E":"1"},"dK":{"K":["1"]},"cE":{"D":["1"],"bL":["1"],"m":["1"],"z":["1"],"h":["1"],"D.E":"1","bL.E":"1"},"D":{"m":["1"],"z":["1"],"h":["1"]},"a8":{"d":["1","2"]},"ea":{"d":["1","2"]},"dF":{"eC":["1","2"],"ea":["1","2"],"hv":["1","2"],"d":["1","2"]},"fp":{"wC":["1"],"G":["1"],"z":["1"],"h":["1"],"h.E":"1","G.E":"1"},"hf":{"K":["1"]},"aY":{"bk":["1"],"z":["1"],"h":["1"]},"hp":{"aY":["1"],"bk":["1"],"z":["1"],"h":["1"]},"hS":{"bt":["e","m"],"bt.S":"e"},"kV":{"cl":["m","e"]},"hT":{"cl":["m","e"]},"eL":{"bt":["m","e"],"bt.S":"m"},"hX":{"cl":["m","e"]},"ic":{"bt":["e","m"]},"fl":{"Z":[]},"iY":{"Z":[]},"iX":{"bt":["p?","e"],"bt.S":"p?"},"iZ":{"cl":["p?","e"]},"k2":{"bt":["e","m"],"bt.S":"e"},"k3":{"cl":["m","e"]},"i_":{"a5":["i_"]},"dg":{"a5":["dg"]},"T":{"b4":[],"a5":["b4"]},"b":{"b4":[],"a5":["b4"]},"m":{"z":["1"],"h":["1"]},"b4":{"a5":["b4"]},"qb":{"dw":[]},"fE":{"cc":[]},"bk":{"z":["1"],"h":["1"]},"e":{"a5":["e"],"dw":[]},"ap":{"i_":[],"a5":["i_"]},"hU":{"Z":[]},"cC":{"Z":[]},"bR":{"Z":[]},"ef":{"Z":[]},"fh":{"Z":[]},"jg":{"Z":[]},"fX":{"Z":[]},"fW":{"Z":[]},"dC":{"Z":[]},"i7":{"Z":[]},"jo":{"Z":[]},"fQ":{"Z":[]},"kK":{"ah":[]},"aA":{"ah":[]},"iQ":{"ah":[],"Z":[]},"kT":{"d1":[]},"bV":{"h":["b"],"h.E":"b"},"jH":{"K":["b"]},"W":{"wK":[]},"hw":{"k_":[]},"bN":{"k_":[]},"kC":{"k_":[]},"jj":{"ah":[]},"vP":{"m":["b"],"z":["b"],"h":["b"]},"jX":{"m":["b"],"z":["b"],"h":["b"]},"wO":{"m":["b"],"z":["b"],"h":["b"]},"vO":{"m":["b"],"z":["b"],"h":["b"]},"qi":{"m":["b"],"z":["b"],"h":["b"]},"iP":{"m":["b"],"z":["b"],"h":["b"]},"qj":{"m":["b"],"z":["b"],"h":["b"]},"vH":{"m":["T"],"z":["T"],"h":["T"]},"vI":{"m":["T"],"z":["T"],"h":["T"]},"hQ":{"h":["bQ"],"h.E":"bQ"},"ks":{"fe":[]},"ju":{"rF":[]},"jt":{"q8":[]},"jw":{"q8":[]},"jx":{"q8":[]},"jv":{"rF":[]},"it":{"fe":[]},"e_":{"iN":[]},"fy":{"jp":[]},"d3":{"h":["e"],"h.E":"e"},"fR":{"K":["e"]},"eR":{"bS":["1"]},"e2":{"bS":["h<1>"]},"cX":{"bS":["m<1>"]},"bE":{"bS":["2"]},"ei":{"bE":["1","bk<1>"],"bS":["bk<1>"],"bE.E":"1","bE.T":"bk<1>"},"e9":{"bS":["d<1,2>"]},"eQ":{"bS":["@"]},"ev":{"h":["1"]},"dY":{"m":["1"],"ev":["1"],"z":["1"],"h":["1"]},"iy":{"I":[]},"d_":{"N":[]},"fL":{"N":[]},"an":{"N":[]},"cs":{"N":[]},"d4":{"N":[]},"jT":{"N":[]},"jd":{"N":[]},"jJ":{"N":[]},"ba":{"N":[]},"dh":{"ba":[],"N":[]},"j5":{"ba":[],"N":[]},"hW":{"ba":[],"N":[]},"ix":{"ba":[],"N":[]},"i3":{"ba":[],"N":[]},"ed":{"ba":[],"N":[]},"ee":{"ba":[],"N":[]},"fD":{"ed":[],"ba":[],"N":[]},"jC":{"ee":[],"ba":[],"N":[]},"eh":{"N":[]},"je":{"ba":[],"N":[]},"jn":{"an":[],"N":[]},"jm":{"an":[],"N":[]},"ak":{"an":[],"N":[]},"jl":{"ak":[],"an":[],"N":[]},"bA":{"ak":[],"an":[],"N":[]},"j_":{"bA":[],"ak":[],"an":[],"N":[]},"jy":{"ak":[],"an":[],"N":[]},"ib":{"ak":[],"an":[],"N":[]},"is":{"ak":[],"an":[],"N":[]},"hN":{"bA":[],"ak":[],"an":[],"N":[]},"jU":{"bA":[],"ak":[],"an":[],"N":[]},"iv":{"bA":[],"ak":[],"an":[],"N":[]},"iu":{"ak":[],"an":[],"N":[]},"jG":{"bA":[],"ak":[],"an":[],"N":[]},"i1":{"bA":[],"ak":[],"an":[],"N":[]},"jE":{"bA":[],"ak":[],"an":[],"N":[]},"j0":{"bA":[],"ak":[],"an":[],"N":[]},"k4":{"bA":[],"ak":[],"an":[],"N":[]},"k5":{"t5":[]},"bg":{"di":[]},"fb":{"di":[]},"aN":{"a5":["p"]},"eT":{"al":[]},"a6":{"al":[]},"i9":{"al":[]},"bY":{"al":[]},"i6":{"al":[]},"jh":{"b7":["al"],"D":["al"],"m":["al"],"z":["al"],"h":["al"],"D.E":"al","b7.E":"al"},"b9":{"ah":[]},"iM":{"a9":[]},"hZ":{"a9":[]},"hY":{"a9":[]},"iF":{"a9":[]},"hM":{"a9":[]},"iz":{"a9":[]},"jS":{"a9":[]},"iK":{"a9":[]},"fg":{"a9":[]},"iA":{"a9":[]},"iC":{"a9":[]},"iJ":{"a9":[]},"iG":{"a9":[]},"iB":{"a9":[]},"iI":{"a9":[]},"iH":{"a9":[]},"iD":{"a9":[]},"hK":{"a9":[]},"iE":{"a9":[]},"hL":{"a9":[]},"hI":{"a9":[]},"hJ":{"a9":[]},"ia":{"aY":["e"],"bk":["e"],"z":["e"],"h":["e"],"aY.E":"e"},"kB":{"aY":["e"],"bk":["e"],"z":["e"],"h":["e"]},"ew":{"ah":[]},"b7":{"D":["1"],"m":["1"],"z":["1"],"h":["1"]},"d0":{"t5":[]},"bK":{"bl":[]},"cA":{"bl":[]},"d2":{"cA":[],"bl":[]},"H":{"cA":[],"bl":[]},"j":{"bK":[],"bl":[]},"B":{"bK":[],"bl":[]},"dB":{"bK":[],"bl":[]},"dU":{"bK":[],"bl":[]},"eS":{"bl":[]},"ff":{"K":["bl"]},"hH":{"b7":["a6?"],"D":["a6?"],"m":["a6?"],"z":["a6?"],"h":["a6?"],"D.E":"a6?","b7.E":"a6?"},"f9":{"ah":[]},"js":{"ah":[]},"jA":{"e1":[]},"k1":{"e1":[]},"k7":{"e1":[]},"jr":{"aA":[],"ah":[]},"F":{"eg":["0&"],"cb":[]},"eg":{"cb":[]},"Q":{"eg":["1"],"cb":[]},"u":{"ny":["1"],"n":["1"]},"fr":{"h":["1"],"h.E":"1"},"fs":{"K":["1"]},"cp":{"at":["~","e"],"n":["e"],"at.T":"~"},"fq":{"at":["1","2"],"n":["2"],"at.T":"1"},"fU":{"at":["1","cB<1>"],"n":["cB<1>"],"at.T":"1"},"fM":{"ca":[]},"ck":{"ca":[]},"j3":{"ca":[]},"ji":{"ca":[]},"aa":{"ca":[]},"k6":{"ca":[]},"eO":{"dr":["1","1"],"n":["1"],"dr.R":"1"},"at":{"n":["2"]},"fH":{"n":["+(1,2)"]},"dA":{"n":["+(1,2,3)"]},"fI":{"n":["+(1,2,3,4)"]},"fJ":{"n":["+(1,2,3,4,5)"]},"fK":{"n":["+(1,2,3,4,5,6,7,8)"]},"dr":{"n":["2"]},"bT":{"at":["1","1"],"n":["1"],"at.T":"1"},"fP":{"at":["1","1"],"n":["1"],"at.T":"1"},"id":{"n":["~"]},"cQ":{"n":["1"]},"jf":{"n":["e"]},"i2":{"n":["e"]},"fC":{"n":["e"]},"ej":{"n":["e"]},"hO":{"n":["e"]},"fV":{"n":["e"]},"hP":{"n":["e"]},"jF":{"n":["e"]},"bj":{"fm":["1"],"dz":["1","m<1>"],"at":["1","m<1>"],"n":["m<1>"],"at.T":"1"},"fm":{"dz":["1","m<1>"],"at":["1","m<1>"],"n":["m<1>"]},"fB":{"dz":["1","m<1>"],"at":["1","m<1>"],"n":["m<1>"],"at.T":"1"},"dz":{"at":["1","2"],"n":["2"]},"rl":{"cd":[],"bJ":[],"a5":["bJ"]},"bh":{"bW":[],"a5":["bW"]},"av":{"rl":[],"cd":[],"bJ":[],"a5":["bJ"]},"bW":{"a5":["bW"]},"jN":{"bW":[],"a5":["bW"]},"bJ":{"a5":["bJ"]},"jO":{"bJ":[],"a5":["bJ"]},"ek":{"bJ":[],"a5":["bJ"]},"cd":{"bJ":[],"a5":["bJ"]},"kb":{"d5":[]},"ki":{"ah":[]},"km":{"ah":[]},"ko":{"aA":[],"ah":[]},"kp":{"aA":[],"ah":[]},"h2":{"ah":[]},"c1":{"h":["E"],"h.E":"E"},"kc":{"K":["E"]},"aQ":{"E":[],"X":["E"],"aG":[],"aR":[],"cG":[],"X.T":"E"},"en":{"E":[],"X":["E"],"aG":[],"aR":[],"X.T":"E"},"fY":{"E":[],"X":["E"],"aG":[],"aR":[],"X.T":"E"},"k9":{"E":[],"X":["E"],"aG":[],"aR":[]},"ka":{"ep":[],"E":[],"X":["E"],"aG":[],"aR":[],"X.T":"E"},"fZ":{"E":[],"X":["E"],"aG":[],"aR":[],"X.T":"E"},"kd":{"E":[],"d6":["E"],"aG":[],"aR":[],"d6.T":"E"},"aF":{"ep":[],"E":[],"X":["E"],"d6":["E"],"aG":[],"aR":[],"cG":[],"d6.T":"E","X.T":"E"},"E":{"aG":[],"aR":[]},"h4":{"E":[],"X":["E"],"aG":[],"aR":[],"X.T":"E"},"es":{"E":[],"X":["E"],"aG":[],"aR":[],"X.T":"E"},"eo":{"n":["e"]},"eq":{"X":["E"],"aG":[],"aR":[]},"h0":{"dY":["1"],"m":["1"],"ev":["1"],"z":["1"],"h":["1"]},"h3":{"eq":[],"X":["E"],"aG":[],"aR":[],"X.T":"E"},"h5":{"eq":[],"X":["E"],"aG":[],"aR":[],"X.T":"E"},"kr":{"kq":[]},"ke":{"cl":["m","e"]},"la":{"dG":[],"fN":["m"]},"lh":{"dG":[],"fN":["m"]},"c_":{"a0":[]},"c0":{"a0":[]},"bB":{"a0":[]},"bC":{"a0":[]},"bM":{"a0":[]},"c2":{"a0":[]},"bc":{"a0":[]},"h6":{"a0":[]},"dH":{"h6":[],"a0":[]},"kf":{"h":["a0"],"h.E":"a0"},"kg":{"K":["a0"]},"df":{"fN":["1"]},"ny":{"n":["1"]}}')) -A.xs(v.typeUniverse,JSON.parse('{"em":1,"aW":1}')) +s(A.kF,A.kQ) +s(A.kG,A.oU) +s(A.kH,A.kI) +s(A.kJ,A.kQ) +s(A.kK,A.kI) +s(A.kN,A.C) +s(A.lr,A.kl) +s(A.lt,A.kl) +s(A.l_,A.cG) +s(A.l0,A.Z) +s(A.l1,A.Z) +s(A.l2,A.Z) +s(A.l3,A.ep) +s(A.l4,A.Z) +s(A.l5,A.d6) +s(A.l6,A.cG) +s(A.l7,A.Z) +s(A.l8,A.ep) +s(A.l9,A.d6) +s(A.ll,A.nX) +s(A.lm,A.nY) +s(A.ln,A.aH) +s(A.lo,A.kn) +s(A.lp,A.aS) +s(A.lq,A.op) +s(A.lh,A.aH) +s(A.li,A.kn) +s(A.lj,A.Z) +s(A.lu,A.ks) +s(A.lv,A.dH) +s(A.lw,A.dH) +s(A.le,A.km) +s(A.lf,A.ol) +s(A.lg,A.ok) +s(A.la,A.h_) +s(A.ls,A.h_) +s(A.lb,A.h_) +s(A.lc,A.km)})() +var v={G:typeof self!="undefined"?self:globalThis,typeUniverse:{eC:new Map(),tR:{},eT:{},tPV:{},sEA:[]},mangledGlobalNames:{b:"int",V:"double",b5:"num",e:"String",A:"bool",aK:"Null",m:"List",p:"Object",d:"Map",ap:"JSObject"},mangledNames:{},types:["A()","~()","~(aG)","aK()","A(e)","A(aG?)","n()","n<+(e,ag)>()","e()","A(bQ)","A(cG)","n<@>()","A(dk)","A(p?,p?)","b(p?)","e(cc)","~(@)","~(p,e)","~(p?)","b(b,d)","A(e?)","A(aL)","F(F,F)","n()","~(~())","@()","b(b)","A(b)","aK(@)","A(E)","A(am)","A(p?)","A(bu)","e(e)","b()","aR(aR)","E(E)","e(b)","@(@)","+(e,ag)(e,e,e)","b(@,@)","~(p?,p?)","~(el,@)","~(e,p?)","e(K)","A(K)","aK(@,d1)","A(d)","e(d)","~(e,d)","~(am,d)","A(cR)","~(bu)","d(bu)","~(b,@)","m>(m)","e(cS)","A(b0)","bg(b0)","aK(p,d1)","e(e?)","m(e)","ab(e)","ab(e,e,e)","~(e,@)","ab(b)","b(ab,ab)","b(b,ab)","e?()","b(bD)","e?(dl)","p(bD)","p(aL)","b(aL,aL)","m(b0>)","~(@,@)","cd()","e?(E)","aK(~())","cm(aG)","cn(aG)","A(dx[b])","n()","n
()","n()","n>()","n()","b(b,b)","n()","n()","n()","n()","n()","n()","@(@,e)","@(e)","~(K)","dI(e)","bd(e,e,m,e,e)","av(e,e,+(e,ag))","+(e,ag)(e,e,e,+(e,ag))","e(bK)","+(e,ag)(e)","bM(e,e,e,e)","c0(e,e,e)","c_(e,e,e)","bB(e,m,e,e)","e(e,e)","c2(e,e,e,e)","bC(e,e,e,aJ?,e,e?,e,e)","aJ(e,e,+(e,ag))","aJ(e,e,+(e,ag),e,+(e,ag))","e(e,e,e)","n(d5)","~(a1)","aK(ap)","cr<~>(~)","A(d_)","0&(e,b?)","p?(p?)","e(m)","0^(0^,0^)","aR(av)"],interceptorsByTag:null,leafTags:null,arrayRti:Symbol("$ti"),rttc:{"2;":(a,b)=>c=>c instanceof A.l&&a.b(c.a)&&b.b(c.b),"3;":(a,b,c)=>d=>d instanceof A.hl&&a.b(d.a)&&b.b(d.b)&&c.b(d.c),"4;":a=>b=>b instanceof A.hm&&A.r_(a,b.a),"5;":a=>b=>b instanceof A.hn&&A.r_(a,b.a),"8;":a=>b=>b instanceof A.ho&&A.r_(a,b.a)}} +A.xy(v.typeUniverse,JSON.parse('{"cu":"cW","jA":"cW","dF":"cW","zO":"dv","iV":{"A":[],"a3":[]},"e4":{"aK":[],"a3":[]},"fk":{"ap":[]},"cW":{"ap":[]},"y":{"m":["1"],"z":["1"],"ap":[],"h":["1"],"aU":["1"]},"iU":{"fF":[]},"mJ":{"y":["1"],"m":["1"],"z":["1"],"ap":[],"h":["1"],"aU":["1"]},"J":{"L":["1"]},"e5":{"V":[],"b5":[],"a6":["b5"]},"fi":{"V":[],"b":[],"b5":[],"a6":["b5"],"a3":[]},"iW":{"V":[],"b5":[],"a6":["b5"],"a3":[]},"ct":{"e":[],"a6":["e"],"dx":[],"aU":["@"],"a3":[]},"eu":{"h":["2"]},"eN":{"L":["2"]},"de":{"eu":["1","2"],"h":["2"],"h.E":"2"},"hb":{"de":["1","2"],"eu":["1","2"],"z":["2"],"h":["2"],"h.E":"2"},"df":{"a9":["3","4"],"d":["3","4"],"a9.K":"3","a9.V":"4"},"e8":{"a0":[]},"jF":{"a0":[]},"ah":{"C":["b"],"bL":["b"],"m":["b"],"z":["b"],"h":["b"],"C.E":"b","bL.E":"b"},"z":{"h":["1"]},"G":{"z":["1"],"h":["1"]},"cy":{"G":["1"],"z":["1"],"h":["1"],"h.E":"1","G.E":"1"},"M":{"L":["1"]},"ba":{"h":["2"],"h.E":"2"},"eU":{"ba":["1","2"],"z":["2"],"h":["2"],"h.E":"2"},"du":{"L":["2"]},"Q":{"G":["2"],"z":["2"],"h":["2"],"h.E":"2","G.E":"2"},"b_":{"h":["1"],"h.E":"1"},"cF":{"L":["1"]},"dn":{"h":["2"],"h.E":"2"},"fd":{"L":["2"]},"dE":{"h":["1"],"h.E":"1"},"eV":{"dE":["1"],"z":["1"],"h":["1"],"h.E":"1"},"fT":{"L":["1"]},"cx":{"h":["1"],"h.E":"1"},"dZ":{"cx":["1"],"z":["1"],"h":["1"],"h.E":"1"},"fO":{"L":["1"]},"eW":{"z":["1"],"h":["1"],"h.E":"1"},"eX":{"L":["1"]},"O":{"h":["1"],"h.E":"1"},"bZ":{"L":["1"]},"em":{"C":["1"],"bL":["1"],"m":["1"],"z":["1"],"h":["1"]},"X":{"G":["1"],"z":["1"],"h":["1"],"h.E":"1","G.E":"1"},"cf":{"el":[]},"l":{"ez":[],"bn":[]},"hl":{"eA":[],"bn":[]},"hm":{"d7":[],"bn":[]},"hn":{"d7":[],"bn":[]},"ho":{"d7":[],"bn":[]},"eP":{"dG":["1","2"],"eC":["1","2"],"ea":["1","2"],"hv":["1","2"],"d":["1","2"]},"dW":{"d":["1","2"]},"r":{"dW":["1","2"],"d":["1","2"]},"he":{"h":["1"],"h.E":"1"},"cK":{"L":["1"]},"a":{"dW":["1","2"],"d":["1","2"]},"dX":{"aY":["1"],"bk":["1"],"z":["1"],"h":["1"]},"b8":{"dX":["1"],"aY":["1"],"bk":["1"],"z":["1"],"h":["1"],"aY.E":"1"},"aP":{"dX":["1"],"aY":["1"],"bk":["1"],"z":["1"],"h":["1"],"aY.E":"1"},"iP":{"b7":[],"cq":[]},"e0":{"b7":[],"cq":[]},"fj":{"rs":[]},"fx":{"cC":[],"a0":[]},"iX":{"a0":[]},"k0":{"a0":[]},"jl":{"aj":[]},"hq":{"d1":[]},"b7":{"cq":[]},"i4":{"b7":[],"cq":[]},"i5":{"b7":[],"cq":[]},"jT":{"b7":[],"cq":[]},"jR":{"b7":[],"cq":[]},"dT":{"b7":[],"cq":[]},"jK":{"a0":[]},"bx":{"a9":["1","2"],"mL":["1","2"],"d":["1","2"],"a9.K":"1","a9.V":"2"},"aV":{"z":["1"],"h":["1"],"h.E":"1"},"cv":{"L":["1"]},"fo":{"z":["1"],"h":["1"],"h.E":"1"},"dr":{"L":["1"]},"dq":{"z":["b0<1,2>"],"h":["b0<1,2>"],"h.E":"b0<1,2>"},"fn":{"L":["b0<1,2>"]},"dp":{"bx":["1","2"],"a9":["1","2"],"mL":["1","2"],"d":["1","2"],"a9.K":"1","a9.V":"2"},"ez":{"bn":[]},"eA":{"bn":[]},"d7":{"bn":[]},"cV":{"qg":[],"dx":[]},"hg":{"fE":[],"cc":[]},"kw":{"h":["fE"],"h.E":"fE"},"et":{"L":["fE"]},"fS":{"cc":[]},"kU":{"h":["cc"],"h.E":"cc"},"kV":{"L":["cc"]},"dv":{"ap":[],"a3":[]},"fu":{"ap":[]},"j7":{"ap":[],"a3":[]},"aW":{"bw":["1"],"ap":[],"aU":["1"]},"ft":{"C":["V"],"aW":["V"],"m":["V"],"bw":["V"],"z":["V"],"ap":[],"aU":["V"],"h":["V"],"ak":["V"]},"by":{"C":["b"],"aW":["b"],"m":["b"],"bw":["b"],"z":["b"],"ap":[],"aU":["b"],"h":["b"],"ak":["b"]},"j8":{"C":["V"],"aW":["V"],"m":["V"],"bw":["V"],"z":["V"],"ap":[],"aU":["V"],"h":["V"],"ak":["V"],"a3":[],"C.E":"V","ak.E":"V"},"j9":{"C":["V"],"aW":["V"],"m":["V"],"bw":["V"],"z":["V"],"ap":[],"aU":["V"],"h":["V"],"ak":["V"],"a3":[],"C.E":"V","ak.E":"V"},"ja":{"by":[],"C":["b"],"aW":["b"],"m":["b"],"bw":["b"],"z":["b"],"ap":[],"aU":["b"],"h":["b"],"ak":["b"],"a3":[],"C.E":"b","ak.E":"b"},"jb":{"by":[],"iQ":[],"C":["b"],"aW":["b"],"m":["b"],"bw":["b"],"z":["b"],"ap":[],"aU":["b"],"h":["b"],"ak":["b"],"a3":[],"C.E":"b","ak.E":"b"},"jc":{"by":[],"C":["b"],"aW":["b"],"m":["b"],"bw":["b"],"z":["b"],"ap":[],"aU":["b"],"h":["b"],"ak":["b"],"a3":[],"C.E":"b","ak.E":"b"},"jd":{"by":[],"qn":[],"C":["b"],"aW":["b"],"m":["b"],"bw":["b"],"z":["b"],"ap":[],"aU":["b"],"h":["b"],"ak":["b"],"a3":[],"C.E":"b","ak.E":"b"},"fv":{"by":[],"qo":[],"C":["b"],"aW":["b"],"m":["b"],"bw":["b"],"z":["b"],"ap":[],"aU":["b"],"h":["b"],"ak":["b"],"a3":[],"C.E":"b","ak.E":"b"},"fw":{"by":[],"C":["b"],"aW":["b"],"m":["b"],"bw":["b"],"z":["b"],"ap":[],"aU":["b"],"h":["b"],"ak":["b"],"a3":[],"C.E":"b","ak.E":"b"},"dw":{"by":[],"jZ":[],"C":["b"],"aW":["b"],"m":["b"],"bw":["b"],"z":["b"],"ap":[],"aU":["b"],"h":["b"],"ak":["b"],"a3":[],"C.E":"b","ak.E":"b"},"kL":{"a0":[]},"eB":{"cC":[],"a0":[]},"bG":{"a0":[]},"h8":{"kC":["1"]},"aB":{"cr":["1"]},"hz":{"tj":[]},"kS":{"hz":[],"tj":[]},"cJ":{"a9":["1","2"],"d":["1","2"],"a9.K":"1","a9.V":"2"},"dK":{"cJ":["1","2"],"a9":["1","2"],"d":["1","2"],"a9.K":"1","a9.V":"2"},"ha":{"cJ":["1","2"],"a9":["1","2"],"d":["1","2"],"a9.K":"1","a9.V":"2"},"hc":{"z":["1"],"h":["1"],"h.E":"1"},"hd":{"L":["1"]},"cL":{"hp":["1"],"aY":["1"],"rB":["1"],"bk":["1"],"z":["1"],"h":["1"],"aY.E":"1"},"dL":{"L":["1"]},"cE":{"C":["1"],"bL":["1"],"m":["1"],"z":["1"],"h":["1"],"C.E":"1","bL.E":"1"},"C":{"m":["1"],"z":["1"],"h":["1"]},"a9":{"d":["1","2"]},"ea":{"d":["1","2"]},"dG":{"eC":["1","2"],"ea":["1","2"],"hv":["1","2"],"d":["1","2"]},"fp":{"wH":["1"],"G":["1"],"z":["1"],"h":["1"],"h.E":"1","G.E":"1"},"hf":{"L":["1"]},"aY":{"bk":["1"],"z":["1"],"h":["1"]},"hp":{"aY":["1"],"bk":["1"],"z":["1"],"h":["1"]},"hS":{"bt":["e","m"],"bt.S":"e"},"kY":{"cl":["m","e"]},"hT":{"cl":["m","e"]},"eL":{"bt":["m","e"],"bt.S":"m"},"hX":{"cl":["m","e"]},"ic":{"bt":["e","m"]},"fl":{"a0":[]},"iZ":{"a0":[]},"iY":{"bt":["p?","e"],"bt.S":"p?"},"j_":{"cl":["p?","e"]},"k4":{"bt":["e","m"],"bt.S":"e"},"k5":{"cl":["m","e"]},"i_":{"a6":["i_"]},"dh":{"a6":["dh"]},"V":{"b5":[],"a6":["b5"]},"b":{"b5":[],"a6":["b5"]},"m":{"z":["1"],"h":["1"]},"b5":{"a6":["b5"]},"qg":{"dx":[]},"fE":{"cc":[]},"bk":{"z":["1"],"h":["1"]},"e":{"a6":["e"],"dx":[]},"aq":{"i_":[],"a6":["i_"]},"hU":{"a0":[]},"cC":{"a0":[]},"bR":{"a0":[]},"ef":{"a0":[]},"fh":{"a0":[]},"jh":{"a0":[]},"fX":{"a0":[]},"fW":{"a0":[]},"dD":{"a0":[]},"i7":{"a0":[]},"jp":{"a0":[]},"fQ":{"a0":[]},"kM":{"aj":[]},"aC":{"aj":[]},"iR":{"aj":[],"a0":[]},"kW":{"d1":[]},"bV":{"h":["b"],"h.E":"b"},"jJ":{"L":["b"]},"Y":{"wP":[]},"hw":{"k1":[]},"bN":{"k1":[]},"kE":{"k1":[]},"jk":{"aj":[]},"vU":{"m":["b"],"z":["b"],"h":["b"]},"jZ":{"m":["b"],"z":["b"],"h":["b"]},"wT":{"m":["b"],"z":["b"],"h":["b"]},"vT":{"m":["b"],"z":["b"],"h":["b"]},"qn":{"m":["b"],"z":["b"],"h":["b"]},"iQ":{"m":["b"],"z":["b"],"h":["b"]},"qo":{"m":["b"],"z":["b"],"h":["b"]},"vM":{"m":["V"],"z":["V"],"h":["V"]},"vN":{"m":["V"],"z":["V"],"h":["V"]},"hQ":{"h":["bQ"],"h.E":"bQ"},"ku":{"fe":[]},"jv":{"rK":[]},"ju":{"qe":[]},"jx":{"qe":[]},"jy":{"qe":[]},"jw":{"rK":[]},"it":{"fe":[]},"e_":{"iO":[]},"fy":{"jq":[]},"d3":{"h":["e"],"h.E":"e"},"fR":{"L":["e"]},"eR":{"bS":["1"]},"e2":{"bS":["h<1>"]},"cX":{"bS":["m<1>"]},"bE":{"bS":["2"]},"ei":{"bE":["1","bk<1>"],"bS":["bk<1>"],"bE.E":"1","bE.T":"bk<1>"},"e9":{"bS":["d<1,2>"]},"eQ":{"bS":["@"]},"ev":{"h":["1"]},"dY":{"m":["1"],"ev":["1"],"z":["1"],"h":["1"]},"iz":{"I":[]},"d_":{"R":[]},"fL":{"R":[]},"ao":{"R":[]},"cs":{"R":[]},"d4":{"R":[]},"jV":{"R":[]},"je":{"R":[]},"jL":{"R":[]},"bc":{"R":[]},"di":{"bc":[],"R":[]},"j6":{"bc":[],"R":[]},"hW":{"bc":[],"R":[]},"iy":{"bc":[],"R":[]},"i3":{"bc":[],"R":[]},"ed":{"bc":[],"R":[]},"ee":{"bc":[],"R":[]},"fD":{"ed":[],"bc":[],"R":[]},"jE":{"ee":[],"bc":[],"R":[]},"eh":{"R":[]},"jf":{"bc":[],"R":[]},"jo":{"ao":[],"R":[]},"jn":{"ao":[],"R":[]},"al":{"ao":[],"R":[]},"jm":{"al":[],"ao":[],"R":[]},"bA":{"al":[],"ao":[],"R":[]},"j0":{"bA":[],"al":[],"ao":[],"R":[]},"jz":{"al":[],"ao":[],"R":[]},"ib":{"al":[],"ao":[],"R":[]},"is":{"al":[],"ao":[],"R":[]},"hN":{"bA":[],"al":[],"ao":[],"R":[]},"jW":{"bA":[],"al":[],"ao":[],"R":[]},"iw":{"bA":[],"al":[],"ao":[],"R":[]},"iv":{"al":[],"ao":[],"R":[]},"jI":{"bA":[],"al":[],"ao":[],"R":[]},"i1":{"bA":[],"al":[],"ao":[],"R":[]},"jG":{"bA":[],"al":[],"ao":[],"R":[]},"j1":{"bA":[],"al":[],"ao":[],"R":[]},"k6":{"bA":[],"al":[],"ao":[],"R":[]},"k7":{"ta":[]},"bg":{"dj":[]},"fb":{"dj":[]},"aO":{"a6":["p"]},"eT":{"am":[]},"K":{"am":[]},"i9":{"am":[]},"bY":{"am":[]},"i6":{"am":[]},"ji":{"b9":["am"],"C":["am"],"m":["am"],"z":["am"],"h":["am"],"C.E":"am","b9.E":"am"},"iu":{"C":["K"],"m":["K"],"z":["K"],"h":["K"],"C.E":"K","h.E":"K"},"bb":{"aj":[]},"iN":{"aa":[]},"hZ":{"aa":[]},"hY":{"aa":[]},"iG":{"aa":[]},"hM":{"aa":[]},"iA":{"aa":[]},"jU":{"aa":[]},"iL":{"aa":[]},"fg":{"aa":[]},"iB":{"aa":[]},"iD":{"aa":[]},"iK":{"aa":[]},"iH":{"aa":[]},"iC":{"aa":[]},"iJ":{"aa":[]},"iI":{"aa":[]},"iE":{"aa":[]},"hK":{"aa":[]},"iF":{"aa":[]},"hL":{"aa":[]},"hI":{"aa":[]},"hJ":{"aa":[]},"ia":{"aY":["e"],"bk":["e"],"z":["e"],"h":["e"],"aY.E":"e"},"kD":{"aY":["e"],"bk":["e"],"z":["e"],"h":["e"]},"ew":{"aj":[]},"b9":{"C":["1"],"m":["1"],"z":["1"],"h":["1"]},"d0":{"ta":[]},"bK":{"bl":[]},"cA":{"bl":[]},"d2":{"cA":[],"bl":[]},"H":{"cA":[],"bl":[]},"j":{"bK":[],"bl":[]},"D":{"bK":[],"bl":[]},"dC":{"bK":[],"bl":[]},"dU":{"bK":[],"bl":[]},"eS":{"bl":[]},"ff":{"L":["bl"]},"hH":{"b9":["K?"],"C":["K?"],"m":["K?"],"z":["K?"],"h":["K?"],"C.E":"K?","b9.E":"K?"},"f9":{"aj":[]},"jt":{"aj":[]},"jB":{"e1":[]},"k3":{"e1":[]},"k9":{"e1":[]},"js":{"aC":[],"aj":[]},"F":{"eg":["0&"],"cb":[]},"eg":{"cb":[]},"T":{"eg":["1"],"cb":[]},"u":{"nC":["1"],"n":["1"]},"fr":{"h":["1"],"h.E":"1"},"fs":{"L":["1"]},"cp":{"au":["~","e"],"n":["e"],"au.T":"~"},"fq":{"au":["1","2"],"n":["2"],"au.T":"1"},"fU":{"au":["1","cB<1>"],"n":["cB<1>"],"au.T":"1"},"fM":{"ca":[]},"ck":{"ca":[]},"j4":{"ca":[]},"jj":{"ca":[]},"ab":{"ca":[]},"k8":{"ca":[]},"eO":{"ds":["1","1"],"n":["1"],"ds.R":"1"},"au":{"n":["2"]},"fH":{"n":["+(1,2)"]},"dB":{"n":["+(1,2,3)"]},"fI":{"n":["+(1,2,3,4)"]},"fJ":{"n":["+(1,2,3,4,5)"]},"fK":{"n":["+(1,2,3,4,5,6,7,8)"]},"ds":{"n":["2"]},"bT":{"au":["1","1"],"n":["1"],"au.T":"1"},"fP":{"au":["1","1"],"n":["1"],"au.T":"1"},"id":{"n":["~"]},"cQ":{"n":["1"]},"jg":{"n":["e"]},"i2":{"n":["e"]},"fC":{"n":["e"]},"ej":{"n":["e"]},"hO":{"n":["e"]},"fV":{"n":["e"]},"hP":{"n":["e"]},"jH":{"n":["e"]},"bj":{"fm":["1"],"dA":["1","m<1>"],"au":["1","m<1>"],"n":["m<1>"],"au.T":"1"},"fm":{"dA":["1","m<1>"],"au":["1","m<1>"],"n":["m<1>"]},"fB":{"dA":["1","m<1>"],"au":["1","m<1>"],"n":["m<1>"],"au.T":"1"},"dA":{"au":["1","2"],"n":["2"]},"rq":{"cd":[],"bJ":[],"a6":["bJ"]},"bh":{"bW":[],"a6":["bW"]},"aw":{"rq":[],"cd":[],"bJ":[],"a6":["bJ"]},"bW":{"a6":["bW"]},"jP":{"bW":[],"a6":["bW"]},"bJ":{"a6":["bJ"]},"jQ":{"bJ":[],"a6":["bJ"]},"ek":{"bJ":[],"a6":["bJ"]},"cd":{"bJ":[],"a6":["bJ"]},"kd":{"d5":[]},"kk":{"aj":[]},"ko":{"aj":[]},"kq":{"aC":[],"aj":[]},"kr":{"aC":[],"aj":[]},"h2":{"aj":[]},"c1":{"h":["E"],"h.E":"E"},"ke":{"L":["E"]},"aR":{"E":[],"Z":["E"],"aH":[],"aS":[],"cG":[],"Z.T":"E"},"en":{"E":[],"Z":["E"],"aH":[],"aS":[],"Z.T":"E"},"fY":{"E":[],"Z":["E"],"aH":[],"aS":[],"Z.T":"E"},"kb":{"E":[],"Z":["E"],"aH":[],"aS":[]},"kc":{"ep":[],"E":[],"Z":["E"],"aH":[],"aS":[],"Z.T":"E"},"fZ":{"E":[],"Z":["E"],"aH":[],"aS":[],"Z.T":"E"},"kf":{"E":[],"d6":["E"],"aH":[],"aS":[],"d6.T":"E"},"aG":{"ep":[],"E":[],"Z":["E"],"d6":["E"],"aH":[],"aS":[],"cG":[],"d6.T":"E","Z.T":"E"},"E":{"aH":[],"aS":[]},"h4":{"E":[],"Z":["E"],"aH":[],"aS":[],"Z.T":"E"},"es":{"E":[],"Z":["E"],"aH":[],"aS":[],"Z.T":"E"},"eo":{"n":["e"]},"eq":{"Z":["E"],"aH":[],"aS":[]},"h0":{"dY":["1"],"m":["1"],"ev":["1"],"z":["1"],"h":["1"]},"h3":{"eq":[],"Z":["E"],"aH":[],"aS":[],"Z.T":"E"},"h5":{"eq":[],"Z":["E"],"aH":[],"aS":[],"Z.T":"E"},"kt":{"ks":[]},"kg":{"cl":["m","e"]},"ld":{"dH":[],"fN":["m"]},"lk":{"dH":[],"fN":["m"]},"c_":{"a1":[]},"c0":{"a1":[]},"bB":{"a1":[]},"bC":{"a1":[]},"bM":{"a1":[]},"c2":{"a1":[]},"bd":{"a1":[]},"h6":{"a1":[]},"dI":{"h6":[],"a1":[]},"kh":{"h":["a1"],"h.E":"a1"},"ki":{"L":["a1"]},"dg":{"fN":["1"]},"nC":{"n":["1"]}}')) +A.xx(v.typeUniverse,JSON.parse('{"em":1,"aW":1}')) var u={S:"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\u03f6\x00\u0404\u03f4 \u03f4\u03f6\u01f6\u01f6\u03f6\u03fc\u01f4\u03ff\u03ff\u0584\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u05d4\u01f4\x00\u01f4\x00\u0504\u05c4\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u0400\x00\u0400\u0200\u03f7\u0200\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u03ff\u0200\u0200\u0200\u03f7\x00",t:"\x01\x01)==\xb5\x8d\x15)QeyQQ\xc9===\xf1\xf0\x00\x01)==\xb5\x8d\x15)QeyQQ\xc9===\xf1\xf0\x01\x01)==\xb5\x8d\x15(QeyQQ\xc9===\xf1\xf0\x01\x01(<<\xb4\x8c\x15(PdxPP\xc8<<<\xf1\xf0\x01\x01)==\xb5\x8d\x15(PeyQQ\xc9===\xf1\xf0\x01\x01)==\xb5\x8d\x15(PdyPQ\xc9===\xf1\xf0\x01\x01)==\xb5\x8d\x15(QdxPP\xc9===\xf1\xf0\x01\x01)==\xb5\x8d\x15(QeyQQ\xc9\u011a==\xf1\xf0\xf0\xf0\xf0\xf0\xf0\xdc\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\x01\x01)==\u0156\x8d\x15(QeyQQ\xc9===\xf1\xf0\x01\x01)==\xb5\x8d\x15(QeyQQ\xc9\u012e\u012e\u0142\xf1\xf0\x01\x01)==\xa1\x8d\x15(QeyQQ\xc9===\xf1\xf0\x00\x00(<<\xb4\x8c\x14(PdxPP\xc8<<<\xf0\xf0\x01\x01)==\xb5\x8d\x15)QeyQQ\xc9===\xf0\xf0??)\u0118=\xb5\x8c?)QeyQQ\xc9=\u0118\u0118?\xf0??)==\xb5\x8d?)QeyQQ\xc9\u012c\u012c\u0140?\xf0??)==\xb5\x8d?)QeyQQ\xc8\u0140\u0140\u0140?\xf0\xdc\xdc\xdc\xdc\xdc\u0168\xdc\xdc\xdc\xdc\xdc\xdc\xdc\xdc\xdc\xdc\xdc\xdc\xdc\x00\xa1\xa1\xa1\xa1\xa1\u0154\xa1\xa1\xa1\xa1\xa1\xa1\xa1\xa1\xa1\xa1\xa1\xa1\xa1\x00",e:"\x10\x10\b\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x10\x10\x10\x10\x10\x02\x02\x02\x04\x04\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x02\x01\x01\x01\x01\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x02\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x02\x0e\x02\x02\x02\x0e\x0e\x0e\x0e\x02\x02\x10\x02\x10\x04\x10\x04\x04\x02\x10\x10\x10\x02\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x02\x02\x06\x02\x02\x02\x02\x06\x02\x06\x02\x02\x02\x02\x06\x06\x06\x02\x06\x02\x02\x02\x02\x02\x02\x02\x02\x04\x10\x10\x10\x10\x02\x02\x04\x04\x02\x02\x04\x04\x11\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x0e\x0e\x02\x0e\x10\x04\x04\x04\x04\x02\x10\x10\x10\x02\x10\x10\x10\x11\x02\x02\x02\x02\x02\x02\x02\x10\x10\x02\x0e\x0e\x0e\x02\x02\x02\x02\x02\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x0e\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x04\x10\x10\x10\x10\x10\x10\x02\x10\x10\x04\x04\x10\x10\x02\x10\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x04\x04\x04\x04\x04\x04\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x10\x10\x02\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x04\x10\x10\x10\x10\x10\x10\x10\x04\x04\x04\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x02\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x02\x02\x10\x02\x10\x10\x10\x02\x10\x10\x02\x02\x02\x02\x02\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x04\x04\x10\x02\x02\x02\x02\x04\x10\x10\x10\x10\x10\x10\x10\x10\x04\x04\x04\x04\x11\x04\x04\x02\x10\x10\x10\x10\x10\x10\x10\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\f\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\r\f\r\r\r\r\r\r\r\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\x02\x02\x02\x02\x04\x10\x10\x10\x10\x02\x04\x04\x04\x02\x04\x04\x04\x11\b\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x04\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x01\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x10\x10\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x10\x10\x10\x10\x10\x10\x10\x02\x10\x10\x02\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x02\x02\x02\x10\x10\x10\x10\x10\x10\x01\x01\x01\x01\x01\x01\x01\x01\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x02\x02\x02\x02\x02\x02\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x0e\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x02\x02\x02\x06\x06\x06\x02\x02\x02\x02\x02\x10\x04\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x04\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\x02\x02\x02\x04\x04\x10\x04\x04\x10\x04\x04\x02\x04\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x02\x02\x02\x02\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x02\x02\x02\x10\x04\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x02\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x02\x0e\x0e\x02\x0e\x0e\x0e\x0e\x0e\x02\x02\x10\x02\x10\x10\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x02\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x02\x0e\x0e\x02\x0e\x0e\x0e\x0e\x0e\x02\x02\x10\x02\x04\x04\x10\x10\x10\x10\x02\x02\x04\x04\x02\x02\x04\x04\x11\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x02\x02\x02\x02\x0e\x0e\x02\x0e\n\n\n\n\n\n\n\x02\x02\x02\x02\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\v\x10\x10\b\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x10\x10\x10\x10\x10\x10\x10\x02\x10\x10\x10\x10\x10\x10\x04\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x04\x10\x10\x10\x10\x10\x10\x10\x04\x10\x10\x04\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x02\x02\x02\x10\x02\x10\x10\x02\x10\x10\x10\x10\x10\x10\x10\b\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x04\x04\x04\x02\x10\x10\x02\x04\x04\x10\x04\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x04\x04\x04\x04\x04\x02\x04\x04\x02\x02\x10\x10\x10\x10\b\x04\b\x04\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x04\x10\x10\x10\x10\x02\x02\x10\x10\x04\x04\x04\x04\x10\x02\x02\x02\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x06\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x07\x01\x01\x00\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x02\x02\x02\x02\x04\x04\x10\x10\x04\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x04\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\b\x02\x10\x10\x10\x10\x02\x10\x10\x10\x02\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x10\x04\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x10\x02\x02\x04\x10\x10\x02\x02\x02\x02\x02\x02\x10\x04\x10\x10\x04\x04\x04\x10\x04\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x01\x03\x0f\x01\x01\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x04\x04\x10\x10\x04\x04\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x01\x01\x01\x01\x01\x01\x01\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x02\x02\x02\x01\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x10\x10\x10\x02\x02\x10\x10\x02\x02\x02\x02\x02\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x0e\x0e\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x04\x10\x10\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x10\x04\x04\x10\x10\x10\x02\x10\x02\x04\x04\x04\x04\x04\x04\x04\x10\x04\x04\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x04\x10\x10\x10\x10\x04\x04\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x04\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x04\x10\x10\x10\x10\x10\x10\x10\x10\x10\x04\x10\x02\b\b\x02\x02\x02\x02\x02\x10\x10\x10\x10\x02\x04\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x04\x10\x10\x10\x10\x10\x10\x10\x10\x04\x04\x10\x04\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x04\x10\x04\x04\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x04\x04\x04\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x04\x10\x10\x10\x10\x10\x10\x10\x10\x10\x04\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\b\b\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x04\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x10\x10\x02\x10\x04\x04\x02\x02\x02\x04\x04\x04\x02\x04\x04\x04\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x10\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x04\x04\x10\x10\x10\x10\x04\x04\x10\x10\x04\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x02\x10\x04\x10\x04\x04\x04\x04\x02\x02\x04\x04\x02\x02\x04\x04\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x02\x02\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x04\x04\x10\x10\x10\x10\x10\x10\x02\x10\x02\x02\x10\x02\x10\x10\x10\x04\x02\x04\x04\x10\x10\x10\b\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x10\x10\x02\x02\x02\x02\x10\x10\x02\x02\x10\x10\x10\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\b\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x10\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x04\x04\x04\x04\x10\x10\x04\x04\x04\x02\x02\x02\x02\x04\x04\x10\x04\x04\x04\x04\x04\x04\x10\x10\x10\x02\x02\x02\x02\x10\x10\x10\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x0e\x10\x04\x10\x02\x04\x04\x10\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x04\x10\x10\x10\x10\x04\x04\x10\x10\x02\x02\b\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\b\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x10\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x04\x04\x10\x10\x10\x10\x02\x02\x04\x04\x04\x04\x10\x10\x04\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x04\x10\x02\x02\x10\x10\x10\x10\x04\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x04\x10\x10\x10\x10\x10\x10\x10\x10\x04\x04\x10\x10\x10\x04\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x04\x04\x10\x10\x10\x10\x10\x10\x04\x10\x04\x04\x10\x04\x10\x10\x04\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x04\x10\x10\x10\x04\x04\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x10\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x04\x04\x04\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\x05\b\b\b\b\b\b\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x01\x02\x02\x02\x10\x10\x02\x10\x10\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x02\x06\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x02\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x04\b\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x04\x04\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\b\b\b\b\b\b\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x10\x04\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\n\x02\x02\x02\n\n\n\n\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x02\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x06\x02\x06\x02\x06\x02\x02\x02\x02\x02\x02\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x06\x06\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x10\x02\x10\x02\x02\x02\x02\x04\x04\x04\x04\x04\x04\x04\x04\x10\x10\x10\x10\x10\x10\x10\x10\x04\x04\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x10\x02\x04\x10\x10\x10\x10\x10\x10\x10\x10\x10\x02\x02\x02\x04\x10\x10\x10\x10\x10\x02\x10\x10\x04\x02\x04\x04\x11\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x04\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x02\x04\x10\x10\x04\x04\x02\x02\x02\x02\x02\x04\x10\x02\x02\x02\x02\x02\x02\x02\x02\x02",U:"\x15\x01)))\xb5\x8d\x01=Qeyey\xc9)))\xf1\xf0\x15\x01)))\xb5\x8d\x00=Qeyey\xc9)))\xf1\xf0\x15\x01)((\xb5\x8d\x01=Qeyey\xc9(((\xf1\xf0\x15\x01(((\xb4\x8c\x01"),i9:s("eP"),M:s("r"),o:s("r"),d:s("bf"),k0:s("df>"),nP:s("df"),cs:s("dg"),W:s("eS"),dA:s("eT"),hd:s("aI"),gt:s("z<@>"),g:s("a6"),ia:s("H"),m9:s("ig"),pf:s("cQ"),cC:s("cQ<~>"),gw:s("eY"),ht:s("bg"),k5:s("bu"),mg:s("di"),aN:s("ih"),fc:s("ii"),iA:s("eZ"),pd:s("ij"),w:s("dj"),mz:s("ik"),ib:s("f_"),fj:s("dk"),fW:s("f0"),mv:s("f1"),az:s("cR"),kZ:s("f2"),j1:s("f3"),ck:s("cm"),f5:s("f4"),aw:s("il"),eo:s("f5"),gK:s("cS"),c9:s("cn"),ni:s("f6"),eH:s("im"),on:s("f7"),iV:s("co"),p7:s("f8"),hl:s("io"),gF:s("ip"),oe:s("iq"),ad:s("fa"),am:s("fb"),fz:s("Z"),mA:s("ah"),nq:s("F"),lW:s("aA"),gY:s("cq"),ha:s("a"),mj:s("a"),j:s("a>"),r:s("a>>"),e:s("a>>>"),t:s("a>>>>"),V:s("a>>>>>"),i:s("a>>>>>>"),J:s("a>>>>>>>"),O:s("a>>>>>>>>"),l:s("a>>>>>>>>>"),x:s("a>>>>>>>>>>"),Y:s("a>>>>>>>>>>>"),k:s("a>>>>>>>>>>>>"),_:s("a>>>>>>>>>>>>>"),Q:s("a>>>>>>>>>>>>>>"),B:s("a>>>>>>>>>>>>>>>"),kg:s("a>>>>>>>>>>>>>>>>"),oJ:s("a>>>>>>>>>>>>>>>>>"),m:s("aO<+(e,e)>"),fr:s("aO"),gx:s("cs"),aB:s("fg"),jL:s("iP"),bg:s("rn"),nZ:s("e2<@>"),fY:s("h"),bq:s("h"),bO:s("h"),eh:s("h"),b7:s("h"),e7:s("h<@>"),fm:s("h"),c_:s("y"),aa:s("y"),il:s("y"),lv:s("y"),mE:s("y"),bz:s("y"),l6:s("y"),bS:s("y"),oc:s("y"),oj:s("y"),ik:s("y"),hJ:s("y"),lu:s("y"),mt:s("y"),nS:s("y"),cJ:s("y"),jA:s("y"),oQ:s("y"),ic:s("y>"),ke:s("y>"),kU:s("y"),cx:s("y"),bD:s("y"),jj:s("y>"),bX:s("y>"),fa:s("y>"),ge:s("y>"),ig:s("y>"),dy:s("y>"),U:s("y>"),gg:s("y"),lU:s("y"),im:s("y"),fG:s("y"),iM:s("y"),s:s("y"),ks:s("y"),kG:s("y"),pp:s("y"),eB:s("y"),oi:s("y"),iJ:s("y"),g7:s("y"),dg:s("y"),dG:s("y<@>"),Z:s("y"),lB:s("y"),hg:s("y"),mf:s("y"),iy:s("aT<@>"),bE:s("e4"),bp:s("ao"),dY:s("cu"),dX:s("bw<@>"),jO:s("bx"),du:s("bj

"),ln:s("bj"),mP:s("bj<@>"),oP:s("mH"),hI:s("cX<@>"),jB:s("m"),nw:s("m"),kn:s("m"),eP:s("m>"),ez:s("m

"),aI:s("m"),bF:s("m"),lR:s("m"),aE:s("m"),iF:s("m"),p6:s("m"),p:s("m<@>"),L:s("m"),eU:s("m"),mH:s("ak"),kY:s("b_"),lO:s("b_>"),a3:s("e9<@,@>"),av:s("d<@,@>"),f:s("d"),gQ:s("R"),iZ:s("R"),f1:s("fr>"),aj:s("by"),hD:s("dv"),fh:s("al"),a:s("aJ"),K:s("p"),bQ:s("bT<+(e,ae)>"),g1:s("bT"),eK:s("bT"),kT:s("bT"),jK:s("j"),n4:s("n<@>"),m4:s("dw"),dl:s("fA"),eN:s("aa"),lZ:s("zK"),aK:s("+()"),R:s("+(e,ae)"),by:s("u"),mD:s("u>"),b:s("u<+(e,ae)>"),h:s("u"),eM:s("u"),dE:s("u"),cB:s("u"),i8:s("u"),gV:s("u"),bj:s("u"),jk:s("u"),hN:s("u"),d8:s("u"),br:s("u

"),gy:s("u<@>"),mi:s("u<~>"),lg:s("fE"),ob:s("ny<@>"),hF:s("V"),mO:s("bV"),dT:s("d_"),b9:s("eh"),bT:s("dA"),i6:s("fK"),cu:s("ei<@>"),i2:s("bk"),hj:s("bk<@>"),nO:s("bk"),i3:s("fN"),hq:s("bW"),hs:s("bJ"),ol:s("cd"),fp:s("dB"),E:s("d1"),ny:s("d2"),N:s("e"),v:s("bK"),po:s("e(cc)"),gL:s("e(e)"),y:s("Q"),k2:s("Q<~>"),bR:s("el"),fn:s("cA"),oI:s("bY"),n9:s("fU"),in:s("N"),aJ:s("a2"),do:s("cC"),ev:s("jX"),mK:s("dE"),bW:s("cE"),jJ:s("k_"),lS:s("a_"),nk:s("a_"),os:s("a_"),C:s("a_"),lH:s("a_"),pl:s("bZ"),k7:s("bZ"),F:s("aQ"),bf:s("c_"),lY:s("c0"),ee:s("bB"),n8:s("c1"),dH:s("bC"),P:s("aF"),cW:s("bM"),j7:s("d5"),mX:s("a0"),fw:s("au"),jN:s("cG"),ax:s("aG"),I:s("E"),co:s("c2"),l3:s("bc"),hO:s("h6"),f9:s("ap"),j_:s("az<@>"),cU:s("az<~>"),D:s("aK"),mp:s("dJ"),nR:s("bD"),fA:s("ey"),k4:s("C"),c:s("C()"),iW:s("C(p)"),gS:s("C(e)"),aP:s("C(aK)"),dx:s("T"),z:s("@"),mY:s("@()"),mq:s("@(p)"),ng:s("@(p,d1)"),f6:s("@(e)"),S:s("b"),g0:s("aI?"),mV:s("a6?"),cX:s("cr?"),mU:s("ao?"),n:s("d?"),X:s("p?"),g9:s("ba?"),jv:s("e?"),jt:s("e(cc)?"),nU:s("bl?"),q:s("aF?"),np:s("dI<@,@>?"),dd:s("aK?"),nF:s("kM?"),fU:s("C?"),pi:s("C(e)?"),jX:s("T?"),aV:s("b?"),jh:s("b4?"),cZ:s("b4"),H:s("~"),T:s("~()"),f0:s("~(h)"),m3:s("~(eb)")}})();(function constants(){var s=hunkHelpers.makeConstList -B.iO=J.iR.prototype +var t=(function rtii(){var s=A.a_ +return{u:s("bQ"),B:s("bG"),lx:s("eL"),g4:s("D"),gS:s("ah"),cw:s("dU"),bP:s("a6<@>"),i9:s("eP"),M:s("r"),o:s("r"),b:s("b8"),k0:s("dg>"),nP:s("dg"),cs:s("dh"),W:s("eS"),dA:s("eT"),hd:s("aJ"),gt:s("z<@>"),Q:s("K"),ia:s("H"),m9:s("ig"),pf:s("cQ"),cC:s("cQ<~>"),gw:s("eY"),ht:s("bg"),k5:s("bu"),mg:s("dj"),aN:s("ih"),fc:s("ii"),iA:s("eZ"),pd:s("ij"),A:s("dk"),mz:s("ik"),ib:s("f_"),fj:s("dl"),fW:s("f0"),mv:s("f1"),az:s("cR"),kZ:s("f2"),j1:s("f3"),ck:s("cm"),f5:s("f4"),aw:s("il"),eo:s("f5"),gK:s("cS"),c9:s("cn"),ni:s("f6"),eH:s("im"),on:s("f7"),iV:s("co"),p7:s("f8"),hl:s("io"),gF:s("ip"),oe:s("iq"),ad:s("fa"),am:s("fb"),fz:s("a0"),mA:s("aj"),nq:s("F"),lW:s("aC"),gY:s("cq"),ha:s("a"),mj:s("a"),j:s("a>"),r:s("a>>"),e:s("a>>>"),t:s("a>>>>"),V:s("a>>>>>"),i:s("a>>>>>>"),J:s("a>>>>>>>"),O:s("a>>>>>>>>"),l:s("a>>>>>>>>>"),x:s("a>>>>>>>>>>"),Y:s("a>>>>>>>>>>>"),k:s("a>>>>>>>>>>>>"),_:s("a>>>>>>>>>>>>>"),T:s("a>>>>>>>>>>>>>>"),E:s("a>>>>>>>>>>>>>>>"),kg:s("a>>>>>>>>>>>>>>>>"),oJ:s("a>>>>>>>>>>>>>>>>>"),m:s("aP<+(e,e)>"),fr:s("aP"),gx:s("cs"),aB:s("fg"),jL:s("iQ"),bg:s("rs"),nZ:s("e2<@>"),fY:s("h"),bq:s("h"),bO:s("h"),eh:s("h"),b7:s("h"),e7:s("h<@>"),fm:s("h"),c_:s("y"),aa:s("y"),il:s("y"),lv:s("y"),mE:s("y"),bz:s("y"),l6:s("y"),bS:s("y
"),oc:s("y"),oj:s("y"),ik:s("y"),hJ:s("y"),lu:s("y"),mt:s("y"),nS:s("y"),cJ:s("y"),jA:s("y"),oQ:s("y"),ic:s("y>"),ke:s("y>"),kU:s("y"),cx:s("y"),bD:s("y"),jj:s("y>"),bX:s("y>"),fa:s("y>"),ge:s("y>"),ig:s("y>"),dy:s("y>"),a:s("y>"),gg:s("y"),lU:s("y"),im:s("y"),fG:s("y"),iM:s("y"),s:s("y"),ks:s("y"),kG:s("y"),pp:s("y"),eB:s("y"),oi:s("y"),iJ:s("y"),g7:s("y"),dg:s("y"),dG:s("y<@>"),Z:s("y"),lB:s("y"),hg:s("y"),mf:s("y"),iy:s("aU<@>"),bE:s("e4"),bp:s("ap"),dY:s("cu"),dX:s("bw<@>"),jO:s("bx"),du:s("bj

"),ln:s("bj"),mP:s("bj<@>"),oP:s("mL"),hI:s("cX<@>"),jB:s("m"),nw:s("m"),kn:s("m"),eP:s("m>"),ez:s("m

"),aI:s("m"),bF:s("m"),lR:s("m"),aE:s("m"),iF:s("m"),p6:s("m"),p:s("m<@>"),L:s("m"),eU:s("m"),mH:s("al"),kY:s("b0"),lO:s("b0>"),a3:s("e9<@,@>"),av:s("d<@,@>"),f:s("d"),gQ:s("Q"),iZ:s("Q"),f1:s("fr>"),aj:s("by"),hD:s("dw"),fh:s("am"),d:s("aK"),K:s("p"),bQ:s("bT<+(e,ag)>"),g1:s("bT"),eK:s("bT"),kT:s("bT"),jK:s("j"),n4:s("n<@>"),m4:s("dx"),dl:s("fA"),eN:s("ab"),lZ:s("zP"),aK:s("+()"),R:s("+(e,ag)"),by:s("u"),mD:s("u>"),g:s("u<+(e,ag)>"),h:s("u"),eM:s("u"),dE:s("u"),cB:s("u"),i8:s("u"),gV:s("u"),bj:s("u"),jk:s("u"),hN:s("u"),d8:s("u"),br:s("u

"),gy:s("u<@>"),mi:s("u<~>"),lg:s("fE"),ob:s("nC<@>"),hF:s("X"),mO:s("bV"),dT:s("d_"),b9:s("eh"),bT:s("dB"),i6:s("fK"),cu:s("ei<@>"),i2:s("bk"),hj:s("bk<@>"),nO:s("bk"),i3:s("fN"),hq:s("bW"),hs:s("bJ"),ol:s("cd"),fp:s("dC"),F:s("d1"),ny:s("d2"),N:s("e"),v:s("bK"),po:s("e(cc)"),gL:s("e(e)"),y:s("T"),k2:s("T<~>"),bR:s("el"),fn:s("cA"),oI:s("bY"),n9:s("fU"),in:s("R"),aJ:s("a3"),do:s("cC"),ev:s("jZ"),mK:s("dF"),bW:s("cE"),jJ:s("k1"),w:s("O"),lS:s("O"),nk:s("O"),os:s("O"),C:s("O"),lH:s("O"),pl:s("bZ"),k7:s("bZ"),G:s("aR"),bf:s("c_"),lY:s("c0"),ee:s("bB"),n8:s("c1"),dH:s("bC"),P:s("aG"),cW:s("bM"),j7:s("d5"),mX:s("a1"),fw:s("av"),jN:s("cG"),ax:s("aH"),I:s("E"),co:s("c2"),l3:s("bd"),hO:s("h6"),f9:s("aq"),j_:s("aB<@>"),cU:s("aB<~>"),D:s("aL"),mp:s("dK"),nR:s("bD"),fA:s("ey"),k4:s("A"),c:s("A()"),cT:s("A(K)"),iW:s("A(p)"),dB:s("A(e)"),aP:s("A(aL)"),dx:s("V"),z:s("@"),mY:s("@()"),mq:s("@(p)"),ng:s("@(p,d1)"),f6:s("@(e)"),S:s("b"),g0:s("aJ?"),mV:s("K?"),cX:s("cr?"),mU:s("ap?"),n:s("d?"),X:s("p?"),g9:s("bc?"),jv:s("e?"),jt:s("e(cc)?"),nU:s("bl?"),q:s("aG?"),np:s("dJ<@,@>?"),dd:s("aL?"),nF:s("kP?"),fU:s("A?"),pi:s("A(e)?"),jX:s("V?"),aV:s("b?"),dU:s("b(K,K)?"),jh:s("b5?"),cZ:s("b5"),H:s("~"),U:s("~()"),p9:s("~(K)"),f0:s("~(h)"),m3:s("~(eb)")}})();(function constants(){var s=hunkHelpers.makeConstList +B.iO=J.iS.prototype B.a=J.y.prototype B.f=J.fi.prototype B.cU=J.e4.prototype @@ -17878,23 +17994,23 @@ B.b=J.ct.prototype B.iP=J.cu.prototype B.iQ=J.fk.prototype B.aA=A.fv.prototype -B.k=A.dv.prototype -B.hw=J.jz.prototype -B.cF=J.dE.prototype +B.k=A.dw.prototype +B.hw=J.jA.prototype +B.cF=J.dF.prototype B.i_=new A.hT(!1,127) B.F=new A.i0(0,"littleEndian") B.aU=new A.i0(1,"bigEndian") -B.ic=new A.e0(A.zh(),A.Y("e0")) +B.ic=new A.e0(A.zm(),A.a_("e0")) B.id=new A.hS() B.ie=new A.hX() B.cJ=new A.eL() -B.ig=new A.eR(A.Y("eR<0&>")) +B.ig=new A.eR(A.a_("eR<0&>")) B.l=new A.eQ() -B.cK=new A.eX(A.Y("eX<0&>")) +B.cK=new A.eX(A.a_("eX<0&>")) B.cL=new A.ie() B.bE=new A.ie() B.ih=new A.f9() -B.ii=new A.iQ() +B.ii=new A.iR() B.cM=function getTagFallback(o) { var s = Object.prototype.toString.call(o); return s.substring(8, s.length - 1); @@ -18020,44 +18136,44 @@ B.il=function(hooks) { } B.cN=function(hooks) { return hooks; } -B.iq=new A.iX() -B.ir=new A.jo() -B.u=new A.nG() -B.E=new A.k2() -B.cO=new A.k6() +B.iq=new A.iY() +B.ir=new A.jp() +B.u=new A.nK() +B.E=new A.k4() +B.cO=new A.k8() B.L3={amp:0,apos:1,gt:2,lt:3,quot:4} B.qL=new A.r(B.L3,["&","'",">","<",'"'],t.o) -B.bF=new A.kb() -B.cP=new A.oS() -B.a3=new A.kP() -B.aV=new A.kT() -B.cQ=new A.p2() +B.bF=new A.kd() +B.cP=new A.oW() +B.a3=new A.kS() +B.aV=new A.kW() +B.cQ=new A.p6() B.aW=new A.dV(0,"none") B.cR=new A.dV(1,"deflate") B.cS=new A.dV(2,"bzip2") B.is=new A.ck(!1) B.W=new A.ck(!0) -B.it=new A.aS(0,"xhtml11") -B.iu=new A.aS(1,"dtbook") -B.iv=new A.aS(10,"imageSVG") -B.iw=new A.aS(11,"imageBMP") -B.ix=new A.aS(12,"fontTrueType") -B.iy=new A.aS(13,"fontOpenType") -B.iz=new A.aS(14,"other") -B.iA=new A.aS(2,"dtbookNCX") -B.iB=new A.aS(3,"oeb1Document") -B.iC=new A.aS(4,"xml") -B.iD=new A.aS(5,"css") -B.iE=new A.aS(6,"oeb1CSS") -B.iF=new A.aS(7,"imageGIF") -B.iG=new A.aS(8,"imageJPEG") -B.iH=new A.aS(9,"imagePNG") +B.it=new A.aT(0,"xhtml11") +B.iu=new A.aT(1,"dtbook") +B.iv=new A.aT(10,"imageSVG") +B.iw=new A.aT(11,"imageBMP") +B.ix=new A.aT(12,"fontTrueType") +B.iy=new A.aT(13,"fontOpenType") +B.iz=new A.aT(14,"other") +B.iA=new A.aT(2,"dtbookNCX") +B.iB=new A.aT(3,"oeb1Document") +B.iC=new A.aT(4,"xml") +B.iD=new A.aT(5,"css") +B.iE=new A.aT(6,"oeb1CSS") +B.iF=new A.aT(7,"imageGIF") +B.iG=new A.aT(8,"imageJPEG") +B.iH=new A.aT(9,"imagePNG") B.bG=new A.ir(0,"epub2") B.cT=new A.ir(1,"epub3") -B.iM=new A.aA("Chapter is outside the EPUB spine.",null,null) -B.iN=new A.aA("The EPUB has no readable spine.",null,null) -B.iR=new A.iZ(null) -B.aX=new A.cX(B.ig,A.Y("cX")) +B.iM=new A.aC("Chapter is outside the EPUB spine.",null,null) +B.iN=new A.aC("The EPUB has no readable spine.",null,null) +B.iR=new A.j_(null) +B.aX=new A.cX(B.ig,A.a_("cX")) B.af=s([82,9,106,213,48,54,165,56,191,64,163,158,129,243,215,251,124,227,57,130,155,47,255,135,52,142,67,68,196,222,233,203,84,123,148,50,166,194,35,61,238,76,149,11,66,250,195,78,8,46,161,102,40,217,36,178,118,91,162,73,109,139,209,37,114,248,246,100,134,104,152,22,212,164,92,204,93,101,182,146,108,112,72,80,253,237,185,218,94,21,70,87,167,141,157,132,144,216,171,0,140,188,211,10,247,228,88,5,184,179,69,6,208,44,30,143,202,63,15,2,193,175,189,3,1,19,138,107,58,145,17,65,79,103,220,234,151,242,207,206,240,180,230,115,150,172,116,34,231,173,53,133,226,249,55,232,28,117,223,110,71,241,26,113,29,41,197,137,111,183,98,14,170,24,190,27,252,86,62,75,198,210,121,32,154,219,192,254,120,205,90,244,31,221,168,51,136,7,199,49,177,18,16,89,39,128,236,95,96,81,127,169,25,181,74,13,45,229,122,159,147,201,156,239,160,224,59,77,174,42,245,176,200,235,187,60,131,83,153,97,23,43,4,126,186,119,214,38,225,105,20,99,85,33,12,125],t.Z) B.iS=s(["table","tbody","tfoot","thead","tr"],t.s) B.iT=s([0,0],t.Z) @@ -18121,18 +18237,18 @@ B.j5=s(["b","big","blockquote","body","br","center","code","dd","div","dl","dt", B.j=s([2774754246,2222750968,2574743534,2373680118,234025727,3177933782,2976870366,1422247313,1345335392,50397442,2842126286,2099981142,436141799,1658312629,3870010189,2591454956,1170918031,2642575903,1086966153,2273148410,368769775,3948501426,3376891790,200339707,3970805057,1742001331,4255294047,3937382213,3214711843,4154762323,2524082916,1539358875,3266819957,486407649,2928907069,1780885068,1513502316,1094664062,49805301,1338821763,1546925160,4104496465,887481809,150073849,2473685474,1943591083,1395732834,1058346282,201589768,1388824469,1696801606,1589887901,672667696,2711000631,251987210,3046808111,151455502,907153956,2608889883,1038279391,652995533,1764173646,3451040383,2675275242,453576978,2659418909,1949051992,773462580,756751158,2993581788,3998898868,4221608027,4132590244,1295727478,1641469623,3467883389,2066295122,1055122397,1898917726,2542044179,4115878822,1758581177,0,753790401,1612718144,536673507,3367088505,3982187446,3194645204,1187761037,3653156455,1262041458,3729410708,3561770136,3898103984,1255133061,1808847035,720367557,3853167183,385612781,3309519750,3612167578,1429418854,2491778321,3477423498,284817897,100794884,2172616702,4031795360,1144798328,3131023141,3819481163,4082192802,4272137053,3225436288,2324664069,2912064063,3164445985,1211644016,83228145,3753688163,3249976951,1977277103,1663115586,806359072,452984805,250868733,1842533055,1288555905,336333848,890442534,804056259,3781124030,2727843637,3427026056,957814574,1472513171,4071073621,2189328124,1195195770,2892260552,3881655738,723065138,2507371494,2690670784,2558624025,3511635870,2145180835,1713513028,2116692564,2878378043,2206763019,3393603212,703524551,3552098411,1007948840,2044649127,3797835452,487262998,1994120109,1004593371,1446130276,1312438900,503974420,3679013266,168166924,1814307912,3831258296,1573044895,1859376061,4021070915,2791465668,2828112185,2761266481,937747667,2339994098,854058965,1137232011,1496790894,3077402074,2358086913,1691735473,3528347292,3769215305,3027004632,4199962284,133494003,636152527,2942657994,2390391540,3920539207,403179536,3585784431,2289596656,1864705354,1915629148,605822008,4054230615,3350508659,1371981463,602466507,2094914977,2624877800,555687742,3712699286,3703422305,2257292045,2240449039,2423288032,1111375484,3300242801,2858837708,3628615824,84083462,32962295,302911004,2741068226,1597322602,4183250862,3501832553,2441512471,1489093017,656219450,3114180135,954327513,335083755,3013122091,856756514,3144247762,1893325225,2307821063,2811532339,3063651117,572399164,2458355477,552200649,1238290055,4283782570,2015897680,2061492133,2408352771,4171342169,2156497161,386731290,3669999461,837215959,3326231172,3093850320,3275833730,2962856233,1999449434,286199582,3417354363,4233385128,3602627437,974525996],t.Z) B.cY=s(["h1","h2","h3","h4","h5","h6"],t.s) B.bI=s([],t.lv) -B.j7=s([],A.Y("y")) -B.j8=s([],A.Y("y")) -B.ja=s([],t.U) +B.j7=s([],A.a_("y")) +B.j8=s([],A.a_("y")) +B.ja=s([],t.a) B.j6=s([],t.s) -B.j9=s([],A.Y("y")) +B.j9=s([],A.a_("y")) B.cZ=s([],t.eB) B.h=s([],t.dG) B.iI=new A.cT(0,"undefined") B.iJ=new A.cT(1,"front") B.iK=new A.cT(2,"normal") B.iL=new A.cT(3,"special") -B.jb=s([B.iI,B.iJ,B.iK,B.iL],A.Y("y")) +B.jb=s([B.iI,B.iJ,B.iK,B.iL],A.a_("y")) B.jc=s([0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918e3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117],t.Z) B.aY=s([0,1,3,7,15,31,63,127,255],t.Z) B.je=s([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],t.Z) @@ -18179,9 +18295,9 @@ B.jm=s([8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, B.d2=s([1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432,67108864,134217728,268435456,536870912,1073741824,2147483648],t.Z) B.jn=s([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0],t.Z) B.jo=s([49,65,89,38,83,89],t.Z) -B.dn=new A.a([0,B.aW,8,B.cR,12,B.cS],A.Y("a")) +B.dn=new A.a([0,B.aW,8,B.cR,12,B.cS],A.a_("a")) B.aS={} -B.d=new A.r(B.aS,[],A.Y("r")) +B.d=new A.r(B.aS,[],A.a_("r")) B.c=new A.a([59,B.d],t.j) B.R=new A.a([103,B.c],t.r) B.c3=new A.a([105,B.R],t.e) @@ -18272,8 +18388,8 @@ B.l1=new A.a([101,B.oq],t.x) B.f5=new A.a([102,B.l1],t.Y) B.zM=new A.a([102,B.f5],t.k) B.tR=new A.a([105,B.zM],t._) -B.xS=new A.a([68,B.tR],t.Q) -B.B4=new A.a([108,B.xS],t.B) +B.xS=new A.a([68,B.tR],t.T) +B.B4=new A.a([108,B.xS],t.E) B.wM=new A.a([97,B.B4],t.kg) B.CW=new A.a([116,B.wM],t.oJ) B.yq=new A.a([59,B.d,105,B.CW],t.j) @@ -18322,14 +18438,14 @@ B.nC=new A.a([114,B.FC],t.x) B.HZ=new A.a([117,B.nC],t.Y) B.da=new A.a([111,B.HZ],t.k) B.CZ=new A.a([116,B.da],t._) -B.J0=new A.a([110,B.CZ],t.Q) -B.dc=new A.a([111,B.J0],t.B) +B.J0=new A.a([110,B.CZ],t.T) +B.dc=new A.a([111,B.J0],t.E) B.mJ=new A.a([67,B.dc],t.kg) B.mj=new A.a([101,B.mJ],t.oJ) -B.z7=new A.a([115,B.mj],A.Y("a>>>>>>>>>>>>>>>>>>")) -B.uk=new A.a([105,B.z7],A.Y("a>>>>>>>>>>>>>>>>>>>")) -B.EQ=new A.a([119,B.uk],A.Y("a>>>>>>>>>>>>>>>>>>>>")) -B.he=new A.a([107,B.EQ],A.Y("a>>>>>>>>>>>>>>>>>>>>>")) +B.z7=new A.a([115,B.mj],A.a_("a>>>>>>>>>>>>>>>>>>")) +B.uk=new A.a([105,B.z7],A.a_("a>>>>>>>>>>>>>>>>>>>")) +B.EQ=new A.a([119,B.uk],A.a_("a>>>>>>>>>>>>>>>>>>>>")) +B.he=new A.a([107,B.EQ],A.a_("a>>>>>>>>>>>>>>>>>>>>>")) B.jG=new A.a([111,B.aO],t.t) B.h6=new A.a([117,B.jG],t.V) B.EH=new A.a([81,B.h6],t.i) @@ -18346,7 +18462,7 @@ B.HY=new A.a([117,B.oA],t.x) B.dE=new A.a([67,B.HY],t.Y) B.mx=new A.a([101,B.dE],t.k) B.DD=new A.a([99,B.he,115,B.mx],t._) -B.kl=new A.a([111,B.DD],t.Q) +B.kl=new A.a([111,B.DD],t.T) B.al=new A.a([59,B.d,101,B.c],t.j) B.Jc=new A.a([110,B.al],t.r) B.jz=new A.a([111,B.Jc],t.e) @@ -18359,14 +18475,14 @@ B.h8=new A.a([117,B.AM],t.t) B.Kg=new A.a([100,B.h8],t.V) B.ke=new A.a([111,B.Kg],t.i) B.Ab=new A.a([102,B.c,114,B.ke],t.r) -B.AE=new A.a([99,B.he],A.Y("a>>>>>>>>>>>>>>>>>>>>>>")) -B.jD=new A.a([111,B.AE],A.Y("a>>>>>>>>>>>>>>>>>>>>>>>")) -B.BE=new A.a([108,B.jD],A.Y("a>>>>>>>>>>>>>>>>>>>>>>>>")) -B.mH=new A.a([67,B.BE],A.Y("a>>>>>>>>>>>>>>>>>>>>>>>>>")) -B.o0=new A.a([114,B.mH],A.Y("a>>>>>>>>>>>>>>>>>>>>>>>>>>")) -B.mf=new A.a([101,B.o0],A.Y("a>>>>>>>>>>>>>>>>>>>>>>>>>>>")) -B.CF=new A.a([116,B.mf],A.Y("a>>>>>>>>>>>>>>>>>>>>>>>>>>>>")) -B.Jp=new A.a([110,B.CF],A.Y("a>>>>>>>>>>>>>>>>>>>>>>>>>>>>>")) +B.AE=new A.a([99,B.he],A.a_("a>>>>>>>>>>>>>>>>>>>>>>")) +B.jD=new A.a([111,B.AE],A.a_("a>>>>>>>>>>>>>>>>>>>>>>>")) +B.BE=new A.a([108,B.jD],A.a_("a>>>>>>>>>>>>>>>>>>>>>>>>")) +B.mH=new A.a([67,B.BE],A.a_("a>>>>>>>>>>>>>>>>>>>>>>>>>")) +B.o0=new A.a([114,B.mH],A.a_("a>>>>>>>>>>>>>>>>>>>>>>>>>>")) +B.mf=new A.a([101,B.o0],A.a_("a>>>>>>>>>>>>>>>>>>>>>>>>>>>")) +B.CF=new A.a([116,B.mf],A.a_("a>>>>>>>>>>>>>>>>>>>>>>>>>>>>")) +B.Jp=new A.a([110,B.CF],A.a_("a>>>>>>>>>>>>>>>>>>>>>>>>>>>>>")) B.xI=new A.a([108,B.jz,110,B.F4,112,B.Ab,117,B.Jp],t.e) B.cd=new A.a([115,B.B],t.e) B.dh=new A.a([111,B.cd],t.t) @@ -18514,11 +18630,11 @@ B.xa=new A.a([97,B.B9],t.x) B.hp=new A.a([109,B.xa],t.Y) B.v0=new A.a([83,B.hp],t.k) B.zt=new A.a([121,B.v0],t._) -B.oM=new A.a([114,B.zt],t.Q) -B.lX=new A.a([101,B.oM],t.B) +B.oM=new A.a([114,B.zt],t.T) +B.lX=new A.a([101,B.oM],t.E) B.e0=new A.a([83,B.hp,86,B.lX],t.k) B.zp=new A.a([121,B.e0],t._) -B.Cg=new A.a([116,B.zp],t.Q) +B.Cg=new A.a([116,B.zp],t.T) B.E2=new A.a([97,B.r,112,B.Cg],t.t) B.cl=new A.a([108,B.O],t.t) B.tT=new A.a([105,B.cl],t.V) @@ -18549,8 +18665,8 @@ B.jQ=new A.a([111,B.JD],t.x) B.EB=new A.a([105,B.eY,112,B.jQ],t.V) B.ym=new A.a([78,B.fZ,84,B.xm,97,B.K,99,B.Dk,100,B.m,102,B.e,103,B.a5,108,B.b3,109,B.E2,111,B.av,112,B.eS,113,B.I_,115,B.Ep,116,B.C,117,B.an,120,B.EB],t.e) B.Kp=new A.a([100,B.e0],t._) -B.ma=new A.a([101,B.Kp],t.Q) -B.Bu=new A.a([108,B.ma],t.B) +B.ma=new A.a([101,B.Kp],t.T) +B.Bu=new A.a([108,B.ma],t.E) B.Bm=new A.a([108,B.Bu],t.kg) B.cn=new A.a([108,B.x],t.e) B.kx=new A.a([65,B.cn],t.t) @@ -18776,14 +18892,14 @@ B.kQ=new A.a([77,B.mu,84,B.rX,86,B.ml],t.x) B.lU=new A.a([101,B.kQ],t.Y) B.kF=new A.a([118,B.lU],t.k) B.u8=new A.a([105,B.kF],t._) -B.CT=new A.a([116,B.u8],t.Q) -B.wa=new A.a([97,B.CT],t.B) +B.CT=new A.a([116,B.u8],t.T) +B.wa=new A.a([97,B.CT],t.E) B.ov=new A.a([114,B.h_],t.l) B.lJ=new A.a([101,B.ov],t.x) B.Ct=new A.a([116,B.lJ],t.Y) B.x5=new A.a([97,B.Ct],t.k) B.lC=new A.a([101,B.x5],t._) -B.oh=new A.a([114,B.lC],t.Q) +B.oh=new A.a([114,B.lC],t.T) B.tr=new A.a([76,B.Z],t.V) B.zd=new A.a([115,B.tr],t.i) B.yJ=new A.a([115,B.zd],t.J) @@ -18803,7 +18919,7 @@ B.In=new A.a([107,B.uf],t.x) B.wo=new A.a([97,B.In],t.Y) B.m7=new A.a([101,B.wo],t.k) B.oP=new A.a([114,B.m7],t._) -B.r7=new A.a([66,B.oP],t.Q) +B.r7=new A.a([66,B.oP],t.T) B.FV=new A.a([103,B.dQ],t.J) B.Jm=new A.a([110,B.FV],t.O) B.mK=new A.a([67,B.au],t.t) @@ -18811,8 +18927,8 @@ B.vr=new A.a([112,B.mK],t.V) B.Di=new A.a([111,B.Jm,117,B.vr],t.i) B.Eg=new A.a([86,B.bO],t.k) B.m1=new A.a([101,B.Eg],t._) -B.Ba=new A.a([108,B.m1],t.Q) -B.GN=new A.a([98,B.Ba],t.B) +B.Ba=new A.a([108,B.m1],t.T) +B.GN=new A.a([98,B.Ba],t.E) B.HK=new A.a([117,B.GN],t.kg) B.k7=new A.a([111,B.HK],t.oJ) B.xg=new A.a([97,B.fm],t.e) @@ -18835,7 +18951,7 @@ B.zh=new A.a([115,B.pc],t.r) B.Et=new A.a([102,B.fB,115,B.zh],t.e) B.mi=new A.a([101,B.Et],t.t) B.z6=new A.a([115,B.fA],t._) -B.mm=new A.a([101,B.z6],t.Q) +B.mm=new A.a([101,B.z6],t.T) B.Gv=new A.a([59,B.d,69,B.a0,83,B.az],t.j) B.yP=new A.a([115,B.Gv],t.r) B.lG=new A.a([101,B.yP],t.e) @@ -20075,7 +20191,7 @@ B.pZ=new A.a([120,B.t],t.e) B.Kf=new A.a([100,B.dm],t.Y) B.wO=new A.a([97,B.Kf],t.k) B.lv=new A.a([101,B.wO],t._) -B.rO=new A.a([104,B.lv],t.Q) +B.rO=new A.a([104,B.lv],t.T) B.yh=new A.a([105,B.pZ,111,B.rO],t.t) B.uD=new A.a([97,B.BY,98,B.aa,99,B.aN,100,B.m,101,B.Bg,102,B.e,104,B.jq,105,B.tu,111,B.y1,112,B.b7,114,B.Ad,115,B.mM,119,B.yh],t.e) B.Hr=new A.a([99,B.S,114,B.e],t.e) @@ -20165,124 +20281,124 @@ B.dZ=new A.a([B.by,"\x1b[31m",B.hv,"\x1b[35m",B.hu,"\x1b[32m"],t.ha) B.KY={li:0,dt:1,dd:2} B.jd=s(["li"],t.s) B.cX=s(["dt","dd"],t.s) -B.qF=new A.r(B.KY,[B.jd,B.cX,B.cX],A.Y("r>")) +B.qF=new A.r(B.KY,[B.jd,B.cX,B.cX],A.a_("r>")) B.ra=new A.a([0,"\ufffd",13,"\r",128,"\u20ac",129,"\x81",130,"\u201a",131,"\u0192",132,"\u201e",133,"\u2026",134,"\u2020",135,"\u2021",136,"\u02c6",137,"\u2030",138,"\u0160",139,"\u2039",140,"\u0152",141,"\x8d",142,"\u017d",143,"\x8f",144,"\x90",145,"\u2018",146,"\u2019",147,"\u201c",148,"\u201d",149,"\u2022",150,"\u2013",151,"\u2014",152,"\u02dc",153,"\u2122",154,"\u0161",155,"\u203a",156,"\u0153",157,"\x9d",158,"\u017e",159,"\u0178"],t.mj) B.rn=new A.a([8,"\\b",9,"\\t",10,"\\n",11,"\\v",12,"\\f",13,"\\r",34,'\\"',39,"\\'",92,"\\\\"],t.mj) B.L0={altglyph:0,altglyphdef:1,altglyphitem:2,animatecolor:3,animatemotion:4,animatetransform:5,clippath:6,feblend:7,fecolormatrix:8,fecomponenttransfer:9,fecomposite:10,feconvolvematrix:11,fediffuselighting:12,fedisplacementmap:13,fedistantlight:14,feflood:15,fefunca:16,fefuncb:17,fefuncg:18,fefuncr:19,fegaussianblur:20,feimage:21,femerge:22,femergenode:23,femorphology:24,feoffset:25,fepointlight:26,fespecularlighting:27,fespotlight:28,fetile:29,feturbulence:30,foreignobject:31,glyphref:32,lineargradient:33,radialgradient:34,textpath:35} B.rp=new A.r(B.L0,["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","textPath"],t.o) -B.L8={"xlink:actuate":0,"xlink:arcrole":1,"xlink:href":2,"xlink:role":3,"xlink:show":4,"xlink:title":5,"xlink:type":6,"xml:base":7,"xml:lang":8,"xml:space":9,xmlns:10,"xmlns:xlink":11} -B.ib=new A.aN("xlink","actuate","http://www.w3.org/1999/xlink") -B.i5=new A.aN("xlink","arcrole","http://www.w3.org/1999/xlink") -B.i2=new A.aN("xlink","href","http://www.w3.org/1999/xlink") -B.i8=new A.aN("xlink","role","http://www.w3.org/1999/xlink") -B.i3=new A.aN("xlink","show","http://www.w3.org/1999/xlink") -B.i9=new A.aN("xlink","title","http://www.w3.org/1999/xlink") -B.ia=new A.aN("xlink","type","http://www.w3.org/1999/xlink") -B.i1=new A.aN("xml","base","http://www.w3.org/XML/1998/namespace") -B.i4=new A.aN("xml","lang","http://www.w3.org/XML/1998/namespace") -B.i0=new A.aN("xml","space","http://www.w3.org/XML/1998/namespace") -B.i6=new A.aN(null,"xmlns","http://www.w3.org/2000/xmlns/") -B.i7=new A.aN("xmlns","xlink","http://www.w3.org/2000/xmlns/") -B.vG=new A.r(B.L8,[B.ib,B.i5,B.i2,B.i8,B.i3,B.i9,B.ia,B.i1,B.i4,B.i0,B.i6,B.i7],A.Y("r")) -B.L7={"437":0,"850":1,"852":2,"855":3,"857":4,"860":5,"861":6,"862":7,"863":8,"865":9,"866":10,"869":11,ansix341968:12,ansix341986:13,arabic:14,ascii:15,asmo708:16,big5:17,big5hkscs:18,chinese:19,cp037:20,cp1026:21,cp154:22,cp367:23,cp424:24,cp437:25,cp500:26,cp775:27,cp819:28,cp850:29,cp852:30,cp855:31,cp857:32,cp860:33,cp861:34,cp862:35,cp863:36,cp864:37,cp865:38,cp866:39,cp869:40,cp936:41,cpgr:42,cpis:43,csascii:44,csbig5:45,cseuckr:46,cseucpkdfmtjapanese:47,csgb2312:48,cshproman8:49,csibm037:50,csibm1026:51,csibm424:52,csibm500:53,csibm855:54,csibm857:55,csibm860:56,csibm861:57,csibm863:58,csibm864:59,csibm865:60,csibm866:61,csibm869:62,csiso2022jp:63,csiso2022jp2:64,csiso2022kr:65,csiso58gb231280:66,csisolatin1:67,csisolatin2:68,csisolatin3:69,csisolatin4:70,csisolatin5:71,csisolatin6:72,csisolatinarabic:73,csisolatincyrillic:74,csisolatingreek:75,csisolatinhebrew:76,cskoi8r:77,csksc56011987:78,cspc775baltic:79,cspc850multilingual:80,cspc862latinhebrew:81,cspc8codepage437:82,cspcp852:83,csptcp154:84,csshiftjis:85,csunicode11utf7:86,cyrillic:87,cyrillicasian:88,ebcdiccpbe:89,ebcdiccpca:90,ebcdiccpch:91,ebcdiccphe:92,ebcdiccpnl:93,ebcdiccpus:94,ebcdiccpwt:95,ecma114:96,ecma118:97,elot928:98,eucjp:99,euckr:100,extendedunixcodepackedformatforjapanese:101,gb18030:102,gb2312:103,gb231280:104,gbk:105,greek:106,greek8:107,hebrew:108,hproman8:109,hzgb2312:110,ibm037:111,ibm1026:112,ibm367:113,ibm424:114,ibm437:115,ibm500:116,ibm775:117,ibm819:118,ibm850:119,ibm852:120,ibm855:121,ibm857:122,ibm860:123,ibm861:124,ibm862:125,ibm863:126,ibm864:127,ibm865:128,ibm866:129,ibm869:130,iso2022jp:131,iso2022jp2:132,iso2022kr:133,iso646irv1991:134,iso646us:135,iso88591:136,iso885910:137,iso8859101992:138,iso885911987:139,iso885913:140,iso885914:141,iso8859141998:142,iso885915:143,iso885916:144,iso8859162001:145,iso88592:146,iso885921987:147,iso88593:148,iso885931988:149,iso88594:150,iso885941988:151,iso88595:152,iso885951988:153,iso88596:154,iso885961987:155,iso88597:156,iso885971987:157,iso88598:158,iso885981988:159,iso88599:160,iso885991989:161,isoceltic:162,isoir100:163,isoir101:164,isoir109:165,isoir110:166,isoir126:167,isoir127:168,isoir138:169,isoir144:170,isoir148:171,isoir149:172,isoir157:173,isoir199:174,isoir226:175,isoir58:176,isoir6:177,koi8r:178,koi8u:179,korean:180,ksc5601:181,ksc56011987:182,ksc56011989:183,l1:184,l10:185,l2:186,l3:187,l4:188,l5:189,l6:190,l8:191,latin1:192,latin10:193,latin2:194,latin3:195,latin4:196,latin5:197,latin6:198,latin8:199,latin9:200,ms936:201,mskanji:202,pt154:203,ptcp154:204,r8:205,roman8:206,shiftjis:207,tis620:208,unicode11utf7:209,us:210,usascii:211,utf16:212,utf16be:213,utf16le:214,utf8:215,windows1250:216,windows1251:217,windows1252:218,windows1253:219,windows1254:220,windows1255:221,windows1256:222,windows1257:223,windows1258:224,windows936:225,"x-x-big5":226} -B.vX=new A.r(B.L7,["cp437","cp850","cp852","cp855","cp857","cp860","cp861","cp862","cp863","cp865","cp866","cp869","ascii","ascii","iso8859-6","ascii","iso8859-6","big5","big5hkscs","gbk","cp037","cp1026","ptcp154","ascii","cp424","cp437","cp500","cp775","windows-1252","cp850","cp852","cp855","cp857","cp860","cp861","cp862","cp863","cp864","cp865","cp866","cp869","gbk","cp869","cp861","ascii","big5","cp949","euc_jp","gbk","hp-roman8","cp037","cp1026","cp424","cp500","cp855","cp857","cp860","cp861","cp863","cp864","cp865","cp866","cp869","iso2022_jp","iso2022_jp_2","iso2022_kr","gbk","windows-1252","iso8859-2","iso8859-3","iso8859-4","windows-1254","iso8859-10","iso8859-6","iso8859-5","iso8859-7","iso8859-8","koi8-r","cp949","cp775","cp850","cp862","cp437","cp852","ptcp154","shift_jis","utf-7","iso8859-5","ptcp154","cp500","cp037","cp500","cp424","cp037","cp037","cp037","iso8859-6","iso8859-7","iso8859-7","euc_jp","cp949","euc_jp","gb18030","gbk","gbk","gbk","iso8859-7","iso8859-7","iso8859-8","hp-roman8","hz","cp037","cp1026","ascii","cp424","cp437","cp500","cp775","windows-1252","cp850","cp852","cp855","cp857","cp860","cp861","cp862","cp863","cp864","cp865","cp866","cp869","iso2022_jp","iso2022_jp_2","iso2022_kr","ascii","ascii","windows-1252","iso8859-10","iso8859-10","windows-1252","iso8859-13","iso8859-14","iso8859-14","iso8859-15","iso8859-16","iso8859-16","iso8859-2","iso8859-2","iso8859-3","iso8859-3","iso8859-4","iso8859-4","iso8859-5","iso8859-5","iso8859-6","iso8859-6","iso8859-7","iso8859-7","iso8859-8","iso8859-8","windows-1254","windows-1254","iso8859-14","windows-1252","iso8859-2","iso8859-3","iso8859-4","iso8859-7","iso8859-6","iso8859-8","iso8859-5","windows-1254","cp949","iso8859-10","iso8859-14","iso8859-16","gbk","ascii","koi8-r","koi8-u","cp949","cp949","cp949","cp949","windows-1252","iso8859-16","iso8859-2","iso8859-3","iso8859-4","windows-1254","iso8859-10","iso8859-14","windows-1252","iso8859-16","iso8859-2","iso8859-3","iso8859-4","windows-1254","iso8859-10","iso8859-14","iso8859-15","gbk","shift_jis","ptcp154","ptcp154","hp-roman8","hp-roman8","shift_jis","cp874","utf-7","ascii","ascii","utf-16","utf-16-be","utf-16-le","utf-8","cp1250","cp1251","cp1252","cp1253","cp1254","cp1255","cp1256","cp1257","cp1258","gbk","big5"],t.o) +B.L9={"xlink:actuate":0,"xlink:arcrole":1,"xlink:href":2,"xlink:role":3,"xlink:show":4,"xlink:title":5,"xlink:type":6,"xml:base":7,"xml:lang":8,"xml:space":9,xmlns:10,"xmlns:xlink":11} +B.ib=new A.aO("xlink","actuate","http://www.w3.org/1999/xlink") +B.i5=new A.aO("xlink","arcrole","http://www.w3.org/1999/xlink") +B.i2=new A.aO("xlink","href","http://www.w3.org/1999/xlink") +B.i8=new A.aO("xlink","role","http://www.w3.org/1999/xlink") +B.i3=new A.aO("xlink","show","http://www.w3.org/1999/xlink") +B.i9=new A.aO("xlink","title","http://www.w3.org/1999/xlink") +B.ia=new A.aO("xlink","type","http://www.w3.org/1999/xlink") +B.i1=new A.aO("xml","base","http://www.w3.org/XML/1998/namespace") +B.i4=new A.aO("xml","lang","http://www.w3.org/XML/1998/namespace") +B.i0=new A.aO("xml","space","http://www.w3.org/XML/1998/namespace") +B.i6=new A.aO(null,"xmlns","http://www.w3.org/2000/xmlns/") +B.i7=new A.aO("xmlns","xlink","http://www.w3.org/2000/xmlns/") +B.vG=new A.r(B.L9,[B.ib,B.i5,B.i2,B.i8,B.i3,B.i9,B.ia,B.i1,B.i4,B.i0,B.i6,B.i7],A.a_("r")) +B.L8={"437":0,"850":1,"852":2,"855":3,"857":4,"860":5,"861":6,"862":7,"863":8,"865":9,"866":10,"869":11,ansix341968:12,ansix341986:13,arabic:14,ascii:15,asmo708:16,big5:17,big5hkscs:18,chinese:19,cp037:20,cp1026:21,cp154:22,cp367:23,cp424:24,cp437:25,cp500:26,cp775:27,cp819:28,cp850:29,cp852:30,cp855:31,cp857:32,cp860:33,cp861:34,cp862:35,cp863:36,cp864:37,cp865:38,cp866:39,cp869:40,cp936:41,cpgr:42,cpis:43,csascii:44,csbig5:45,cseuckr:46,cseucpkdfmtjapanese:47,csgb2312:48,cshproman8:49,csibm037:50,csibm1026:51,csibm424:52,csibm500:53,csibm855:54,csibm857:55,csibm860:56,csibm861:57,csibm863:58,csibm864:59,csibm865:60,csibm866:61,csibm869:62,csiso2022jp:63,csiso2022jp2:64,csiso2022kr:65,csiso58gb231280:66,csisolatin1:67,csisolatin2:68,csisolatin3:69,csisolatin4:70,csisolatin5:71,csisolatin6:72,csisolatinarabic:73,csisolatincyrillic:74,csisolatingreek:75,csisolatinhebrew:76,cskoi8r:77,csksc56011987:78,cspc775baltic:79,cspc850multilingual:80,cspc862latinhebrew:81,cspc8codepage437:82,cspcp852:83,csptcp154:84,csshiftjis:85,csunicode11utf7:86,cyrillic:87,cyrillicasian:88,ebcdiccpbe:89,ebcdiccpca:90,ebcdiccpch:91,ebcdiccphe:92,ebcdiccpnl:93,ebcdiccpus:94,ebcdiccpwt:95,ecma114:96,ecma118:97,elot928:98,eucjp:99,euckr:100,extendedunixcodepackedformatforjapanese:101,gb18030:102,gb2312:103,gb231280:104,gbk:105,greek:106,greek8:107,hebrew:108,hproman8:109,hzgb2312:110,ibm037:111,ibm1026:112,ibm367:113,ibm424:114,ibm437:115,ibm500:116,ibm775:117,ibm819:118,ibm850:119,ibm852:120,ibm855:121,ibm857:122,ibm860:123,ibm861:124,ibm862:125,ibm863:126,ibm864:127,ibm865:128,ibm866:129,ibm869:130,iso2022jp:131,iso2022jp2:132,iso2022kr:133,iso646irv1991:134,iso646us:135,iso88591:136,iso885910:137,iso8859101992:138,iso885911987:139,iso885913:140,iso885914:141,iso8859141998:142,iso885915:143,iso885916:144,iso8859162001:145,iso88592:146,iso885921987:147,iso88593:148,iso885931988:149,iso88594:150,iso885941988:151,iso88595:152,iso885951988:153,iso88596:154,iso885961987:155,iso88597:156,iso885971987:157,iso88598:158,iso885981988:159,iso88599:160,iso885991989:161,isoceltic:162,isoir100:163,isoir101:164,isoir109:165,isoir110:166,isoir126:167,isoir127:168,isoir138:169,isoir144:170,isoir148:171,isoir149:172,isoir157:173,isoir199:174,isoir226:175,isoir58:176,isoir6:177,koi8r:178,koi8u:179,korean:180,ksc5601:181,ksc56011987:182,ksc56011989:183,l1:184,l10:185,l2:186,l3:187,l4:188,l5:189,l6:190,l8:191,latin1:192,latin10:193,latin2:194,latin3:195,latin4:196,latin5:197,latin6:198,latin8:199,latin9:200,ms936:201,mskanji:202,pt154:203,ptcp154:204,r8:205,roman8:206,shiftjis:207,tis620:208,unicode11utf7:209,us:210,usascii:211,utf16:212,utf16be:213,utf16le:214,utf8:215,windows1250:216,windows1251:217,windows1252:218,windows1253:219,windows1254:220,windows1255:221,windows1256:222,windows1257:223,windows1258:224,windows936:225,"x-x-big5":226} +B.vX=new A.r(B.L8,["cp437","cp850","cp852","cp855","cp857","cp860","cp861","cp862","cp863","cp865","cp866","cp869","ascii","ascii","iso8859-6","ascii","iso8859-6","big5","big5hkscs","gbk","cp037","cp1026","ptcp154","ascii","cp424","cp437","cp500","cp775","windows-1252","cp850","cp852","cp855","cp857","cp860","cp861","cp862","cp863","cp864","cp865","cp866","cp869","gbk","cp869","cp861","ascii","big5","cp949","euc_jp","gbk","hp-roman8","cp037","cp1026","cp424","cp500","cp855","cp857","cp860","cp861","cp863","cp864","cp865","cp866","cp869","iso2022_jp","iso2022_jp_2","iso2022_kr","gbk","windows-1252","iso8859-2","iso8859-3","iso8859-4","windows-1254","iso8859-10","iso8859-6","iso8859-5","iso8859-7","iso8859-8","koi8-r","cp949","cp775","cp850","cp862","cp437","cp852","ptcp154","shift_jis","utf-7","iso8859-5","ptcp154","cp500","cp037","cp500","cp424","cp037","cp037","cp037","iso8859-6","iso8859-7","iso8859-7","euc_jp","cp949","euc_jp","gb18030","gbk","gbk","gbk","iso8859-7","iso8859-7","iso8859-8","hp-roman8","hz","cp037","cp1026","ascii","cp424","cp437","cp500","cp775","windows-1252","cp850","cp852","cp855","cp857","cp860","cp861","cp862","cp863","cp864","cp865","cp866","cp869","iso2022_jp","iso2022_jp_2","iso2022_kr","ascii","ascii","windows-1252","iso8859-10","iso8859-10","windows-1252","iso8859-13","iso8859-14","iso8859-14","iso8859-15","iso8859-16","iso8859-16","iso8859-2","iso8859-2","iso8859-3","iso8859-3","iso8859-4","iso8859-4","iso8859-5","iso8859-5","iso8859-6","iso8859-6","iso8859-7","iso8859-7","iso8859-8","iso8859-8","windows-1254","windows-1254","iso8859-14","windows-1252","iso8859-2","iso8859-3","iso8859-4","iso8859-7","iso8859-6","iso8859-8","iso8859-5","windows-1254","cp949","iso8859-10","iso8859-14","iso8859-16","gbk","ascii","koi8-r","koi8-u","cp949","cp949","cp949","cp949","windows-1252","iso8859-16","iso8859-2","iso8859-3","iso8859-4","windows-1254","iso8859-10","iso8859-14","windows-1252","iso8859-16","iso8859-2","iso8859-3","iso8859-4","windows-1254","iso8859-10","iso8859-14","iso8859-15","gbk","shift_jis","ptcp154","ptcp154","hp-roman8","hp-roman8","shift_jis","cp874","utf-7","ascii","ascii","utf-16","utf-16-be","utf-16-le","utf-8","cp1250","cp1251","cp1252","cp1253","cp1254","cp1255","cp1256","cp1257","cp1258","gbk","big5"],t.o) B.Ac=new A.r(B.aS,[],t.o) -B.bi=new A.r(B.aS,[],A.Y("r")) -B.fa=new A.r(B.aS,[],A.Y("r")) +B.bi=new A.r(B.aS,[],A.a_("r")) +B.fa=new A.r(B.aS,[],A.a_("r")) B.KW={AElig:0,"AElig;":1,AMP:2,"AMP;":3,Aacute:4,"Aacute;":5,"Abreve;":6,Acirc:7,"Acirc;":8,"Acy;":9,"Afr;":10,Agrave:11,"Agrave;":12,"Alpha;":13,"Amacr;":14,"And;":15,"Aogon;":16,"Aopf;":17,"ApplyFunction;":18,Aring:19,"Aring;":20,"Ascr;":21,"Assign;":22,Atilde:23,"Atilde;":24,Auml:25,"Auml;":26,"Backslash;":27,"Barv;":28,"Barwed;":29,"Bcy;":30,"Because;":31,"Bernoullis;":32,"Beta;":33,"Bfr;":34,"Bopf;":35,"Breve;":36,"Bscr;":37,"Bumpeq;":38,"CHcy;":39,COPY:40,"COPY;":41,"Cacute;":42,"Cap;":43,"CapitalDifferentialD;":44,"Cayleys;":45,"Ccaron;":46,Ccedil:47,"Ccedil;":48,"Ccirc;":49,"Cconint;":50,"Cdot;":51,"Cedilla;":52,"CenterDot;":53,"Cfr;":54,"Chi;":55,"CircleDot;":56,"CircleMinus;":57,"CirclePlus;":58,"CircleTimes;":59,"ClockwiseContourIntegral;":60,"CloseCurlyDoubleQuote;":61,"CloseCurlyQuote;":62,"Colon;":63,"Colone;":64,"Congruent;":65,"Conint;":66,"ContourIntegral;":67,"Copf;":68,"Coproduct;":69,"CounterClockwiseContourIntegral;":70,"Cross;":71,"Cscr;":72,"Cup;":73,"CupCap;":74,"DD;":75,"DDotrahd;":76,"DJcy;":77,"DScy;":78,"DZcy;":79,"Dagger;":80,"Darr;":81,"Dashv;":82,"Dcaron;":83,"Dcy;":84,"Del;":85,"Delta;":86,"Dfr;":87,"DiacriticalAcute;":88,"DiacriticalDot;":89,"DiacriticalDoubleAcute;":90,"DiacriticalGrave;":91,"DiacriticalTilde;":92,"Diamond;":93,"DifferentialD;":94,"Dopf;":95,"Dot;":96,"DotDot;":97,"DotEqual;":98,"DoubleContourIntegral;":99,"DoubleDot;":100,"DoubleDownArrow;":101,"DoubleLeftArrow;":102,"DoubleLeftRightArrow;":103,"DoubleLeftTee;":104,"DoubleLongLeftArrow;":105,"DoubleLongLeftRightArrow;":106,"DoubleLongRightArrow;":107,"DoubleRightArrow;":108,"DoubleRightTee;":109,"DoubleUpArrow;":110,"DoubleUpDownArrow;":111,"DoubleVerticalBar;":112,"DownArrow;":113,"DownArrowBar;":114,"DownArrowUpArrow;":115,"DownBreve;":116,"DownLeftRightVector;":117,"DownLeftTeeVector;":118,"DownLeftVector;":119,"DownLeftVectorBar;":120,"DownRightTeeVector;":121,"DownRightVector;":122,"DownRightVectorBar;":123,"DownTee;":124,"DownTeeArrow;":125,"Downarrow;":126,"Dscr;":127,"Dstrok;":128,"ENG;":129,ETH:130,"ETH;":131,Eacute:132,"Eacute;":133,"Ecaron;":134,Ecirc:135,"Ecirc;":136,"Ecy;":137,"Edot;":138,"Efr;":139,Egrave:140,"Egrave;":141,"Element;":142,"Emacr;":143,"EmptySmallSquare;":144,"EmptyVerySmallSquare;":145,"Eogon;":146,"Eopf;":147,"Epsilon;":148,"Equal;":149,"EqualTilde;":150,"Equilibrium;":151,"Escr;":152,"Esim;":153,"Eta;":154,Euml:155,"Euml;":156,"Exists;":157,"ExponentialE;":158,"Fcy;":159,"Ffr;":160,"FilledSmallSquare;":161,"FilledVerySmallSquare;":162,"Fopf;":163,"ForAll;":164,"Fouriertrf;":165,"Fscr;":166,"GJcy;":167,GT:168,"GT;":169,"Gamma;":170,"Gammad;":171,"Gbreve;":172,"Gcedil;":173,"Gcirc;":174,"Gcy;":175,"Gdot;":176,"Gfr;":177,"Gg;":178,"Gopf;":179,"GreaterEqual;":180,"GreaterEqualLess;":181,"GreaterFullEqual;":182,"GreaterGreater;":183,"GreaterLess;":184,"GreaterSlantEqual;":185,"GreaterTilde;":186,"Gscr;":187,"Gt;":188,"HARDcy;":189,"Hacek;":190,"Hat;":191,"Hcirc;":192,"Hfr;":193,"HilbertSpace;":194,"Hopf;":195,"HorizontalLine;":196,"Hscr;":197,"Hstrok;":198,"HumpDownHump;":199,"HumpEqual;":200,"IEcy;":201,"IJlig;":202,"IOcy;":203,Iacute:204,"Iacute;":205,Icirc:206,"Icirc;":207,"Icy;":208,"Idot;":209,"Ifr;":210,Igrave:211,"Igrave;":212,"Im;":213,"Imacr;":214,"ImaginaryI;":215,"Implies;":216,"Int;":217,"Integral;":218,"Intersection;":219,"InvisibleComma;":220,"InvisibleTimes;":221,"Iogon;":222,"Iopf;":223,"Iota;":224,"Iscr;":225,"Itilde;":226,"Iukcy;":227,Iuml:228,"Iuml;":229,"Jcirc;":230,"Jcy;":231,"Jfr;":232,"Jopf;":233,"Jscr;":234,"Jsercy;":235,"Jukcy;":236,"KHcy;":237,"KJcy;":238,"Kappa;":239,"Kcedil;":240,"Kcy;":241,"Kfr;":242,"Kopf;":243,"Kscr;":244,"LJcy;":245,LT:246,"LT;":247,"Lacute;":248,"Lambda;":249,"Lang;":250,"Laplacetrf;":251,"Larr;":252,"Lcaron;":253,"Lcedil;":254,"Lcy;":255,"LeftAngleBracket;":256,"LeftArrow;":257,"LeftArrowBar;":258,"LeftArrowRightArrow;":259,"LeftCeiling;":260,"LeftDoubleBracket;":261,"LeftDownTeeVector;":262,"LeftDownVector;":263,"LeftDownVectorBar;":264,"LeftFloor;":265,"LeftRightArrow;":266,"LeftRightVector;":267,"LeftTee;":268,"LeftTeeArrow;":269,"LeftTeeVector;":270,"LeftTriangle;":271,"LeftTriangleBar;":272,"LeftTriangleEqual;":273,"LeftUpDownVector;":274,"LeftUpTeeVector;":275,"LeftUpVector;":276,"LeftUpVectorBar;":277,"LeftVector;":278,"LeftVectorBar;":279,"Leftarrow;":280,"Leftrightarrow;":281,"LessEqualGreater;":282,"LessFullEqual;":283,"LessGreater;":284,"LessLess;":285,"LessSlantEqual;":286,"LessTilde;":287,"Lfr;":288,"Ll;":289,"Lleftarrow;":290,"Lmidot;":291,"LongLeftArrow;":292,"LongLeftRightArrow;":293,"LongRightArrow;":294,"Longleftarrow;":295,"Longleftrightarrow;":296,"Longrightarrow;":297,"Lopf;":298,"LowerLeftArrow;":299,"LowerRightArrow;":300,"Lscr;":301,"Lsh;":302,"Lstrok;":303,"Lt;":304,"Map;":305,"Mcy;":306,"MediumSpace;":307,"Mellintrf;":308,"Mfr;":309,"MinusPlus;":310,"Mopf;":311,"Mscr;":312,"Mu;":313,"NJcy;":314,"Nacute;":315,"Ncaron;":316,"Ncedil;":317,"Ncy;":318,"NegativeMediumSpace;":319,"NegativeThickSpace;":320,"NegativeThinSpace;":321,"NegativeVeryThinSpace;":322,"NestedGreaterGreater;":323,"NestedLessLess;":324,"NewLine;":325,"Nfr;":326,"NoBreak;":327,"NonBreakingSpace;":328,"Nopf;":329,"Not;":330,"NotCongruent;":331,"NotCupCap;":332,"NotDoubleVerticalBar;":333,"NotElement;":334,"NotEqual;":335,"NotEqualTilde;":336,"NotExists;":337,"NotGreater;":338,"NotGreaterEqual;":339,"NotGreaterFullEqual;":340,"NotGreaterGreater;":341,"NotGreaterLess;":342,"NotGreaterSlantEqual;":343,"NotGreaterTilde;":344,"NotHumpDownHump;":345,"NotHumpEqual;":346,"NotLeftTriangle;":347,"NotLeftTriangleBar;":348,"NotLeftTriangleEqual;":349,"NotLess;":350,"NotLessEqual;":351,"NotLessGreater;":352,"NotLessLess;":353,"NotLessSlantEqual;":354,"NotLessTilde;":355,"NotNestedGreaterGreater;":356,"NotNestedLessLess;":357,"NotPrecedes;":358,"NotPrecedesEqual;":359,"NotPrecedesSlantEqual;":360,"NotReverseElement;":361,"NotRightTriangle;":362,"NotRightTriangleBar;":363,"NotRightTriangleEqual;":364,"NotSquareSubset;":365,"NotSquareSubsetEqual;":366,"NotSquareSuperset;":367,"NotSquareSupersetEqual;":368,"NotSubset;":369,"NotSubsetEqual;":370,"NotSucceeds;":371,"NotSucceedsEqual;":372,"NotSucceedsSlantEqual;":373,"NotSucceedsTilde;":374,"NotSuperset;":375,"NotSupersetEqual;":376,"NotTilde;":377,"NotTildeEqual;":378,"NotTildeFullEqual;":379,"NotTildeTilde;":380,"NotVerticalBar;":381,"Nscr;":382,Ntilde:383,"Ntilde;":384,"Nu;":385,"OElig;":386,Oacute:387,"Oacute;":388,Ocirc:389,"Ocirc;":390,"Ocy;":391,"Odblac;":392,"Ofr;":393,Ograve:394,"Ograve;":395,"Omacr;":396,"Omega;":397,"Omicron;":398,"Oopf;":399,"OpenCurlyDoubleQuote;":400,"OpenCurlyQuote;":401,"Or;":402,"Oscr;":403,Oslash:404,"Oslash;":405,Otilde:406,"Otilde;":407,"Otimes;":408,Ouml:409,"Ouml;":410,"OverBar;":411,"OverBrace;":412,"OverBracket;":413,"OverParenthesis;":414,"PartialD;":415,"Pcy;":416,"Pfr;":417,"Phi;":418,"Pi;":419,"PlusMinus;":420,"Poincareplane;":421,"Popf;":422,"Pr;":423,"Precedes;":424,"PrecedesEqual;":425,"PrecedesSlantEqual;":426,"PrecedesTilde;":427,"Prime;":428,"Product;":429,"Proportion;":430,"Proportional;":431,"Pscr;":432,"Psi;":433,QUOT:434,"QUOT;":435,"Qfr;":436,"Qopf;":437,"Qscr;":438,"RBarr;":439,REG:440,"REG;":441,"Racute;":442,"Rang;":443,"Rarr;":444,"Rarrtl;":445,"Rcaron;":446,"Rcedil;":447,"Rcy;":448,"Re;":449,"ReverseElement;":450,"ReverseEquilibrium;":451,"ReverseUpEquilibrium;":452,"Rfr;":453,"Rho;":454,"RightAngleBracket;":455,"RightArrow;":456,"RightArrowBar;":457,"RightArrowLeftArrow;":458,"RightCeiling;":459,"RightDoubleBracket;":460,"RightDownTeeVector;":461,"RightDownVector;":462,"RightDownVectorBar;":463,"RightFloor;":464,"RightTee;":465,"RightTeeArrow;":466,"RightTeeVector;":467,"RightTriangle;":468,"RightTriangleBar;":469,"RightTriangleEqual;":470,"RightUpDownVector;":471,"RightUpTeeVector;":472,"RightUpVector;":473,"RightUpVectorBar;":474,"RightVector;":475,"RightVectorBar;":476,"Rightarrow;":477,"Ropf;":478,"RoundImplies;":479,"Rrightarrow;":480,"Rscr;":481,"Rsh;":482,"RuleDelayed;":483,"SHCHcy;":484,"SHcy;":485,"SOFTcy;":486,"Sacute;":487,"Sc;":488,"Scaron;":489,"Scedil;":490,"Scirc;":491,"Scy;":492,"Sfr;":493,"ShortDownArrow;":494,"ShortLeftArrow;":495,"ShortRightArrow;":496,"ShortUpArrow;":497,"Sigma;":498,"SmallCircle;":499,"Sopf;":500,"Sqrt;":501,"Square;":502,"SquareIntersection;":503,"SquareSubset;":504,"SquareSubsetEqual;":505,"SquareSuperset;":506,"SquareSupersetEqual;":507,"SquareUnion;":508,"Sscr;":509,"Star;":510,"Sub;":511,"Subset;":512,"SubsetEqual;":513,"Succeeds;":514,"SucceedsEqual;":515,"SucceedsSlantEqual;":516,"SucceedsTilde;":517,"SuchThat;":518,"Sum;":519,"Sup;":520,"Superset;":521,"SupersetEqual;":522,"Supset;":523,THORN:524,"THORN;":525,"TRADE;":526,"TSHcy;":527,"TScy;":528,"Tab;":529,"Tau;":530,"Tcaron;":531,"Tcedil;":532,"Tcy;":533,"Tfr;":534,"Therefore;":535,"Theta;":536,"ThickSpace;":537,"ThinSpace;":538,"Tilde;":539,"TildeEqual;":540,"TildeFullEqual;":541,"TildeTilde;":542,"Topf;":543,"TripleDot;":544,"Tscr;":545,"Tstrok;":546,Uacute:547,"Uacute;":548,"Uarr;":549,"Uarrocir;":550,"Ubrcy;":551,"Ubreve;":552,Ucirc:553,"Ucirc;":554,"Ucy;":555,"Udblac;":556,"Ufr;":557,Ugrave:558,"Ugrave;":559,"Umacr;":560,"UnderBar;":561,"UnderBrace;":562,"UnderBracket;":563,"UnderParenthesis;":564,"Union;":565,"UnionPlus;":566,"Uogon;":567,"Uopf;":568,"UpArrow;":569,"UpArrowBar;":570,"UpArrowDownArrow;":571,"UpDownArrow;":572,"UpEquilibrium;":573,"UpTee;":574,"UpTeeArrow;":575,"Uparrow;":576,"Updownarrow;":577,"UpperLeftArrow;":578,"UpperRightArrow;":579,"Upsi;":580,"Upsilon;":581,"Uring;":582,"Uscr;":583,"Utilde;":584,Uuml:585,"Uuml;":586,"VDash;":587,"Vbar;":588,"Vcy;":589,"Vdash;":590,"Vdashl;":591,"Vee;":592,"Verbar;":593,"Vert;":594,"VerticalBar;":595,"VerticalLine;":596,"VerticalSeparator;":597,"VerticalTilde;":598,"VeryThinSpace;":599,"Vfr;":600,"Vopf;":601,"Vscr;":602,"Vvdash;":603,"Wcirc;":604,"Wedge;":605,"Wfr;":606,"Wopf;":607,"Wscr;":608,"Xfr;":609,"Xi;":610,"Xopf;":611,"Xscr;":612,"YAcy;":613,"YIcy;":614,"YUcy;":615,Yacute:616,"Yacute;":617,"Ycirc;":618,"Ycy;":619,"Yfr;":620,"Yopf;":621,"Yscr;":622,"Yuml;":623,"ZHcy;":624,"Zacute;":625,"Zcaron;":626,"Zcy;":627,"Zdot;":628,"ZeroWidthSpace;":629,"Zeta;":630,"Zfr;":631,"Zopf;":632,"Zscr;":633,aacute:634,"aacute;":635,"abreve;":636,"ac;":637,"acE;":638,"acd;":639,acirc:640,"acirc;":641,acute:642,"acute;":643,"acy;":644,aelig:645,"aelig;":646,"af;":647,"afr;":648,agrave:649,"agrave;":650,"alefsym;":651,"aleph;":652,"alpha;":653,"amacr;":654,"amalg;":655,amp:656,"amp;":657,"and;":658,"andand;":659,"andd;":660,"andslope;":661,"andv;":662,"ang;":663,"ange;":664,"angle;":665,"angmsd;":666,"angmsdaa;":667,"angmsdab;":668,"angmsdac;":669,"angmsdad;":670,"angmsdae;":671,"angmsdaf;":672,"angmsdag;":673,"angmsdah;":674,"angrt;":675,"angrtvb;":676,"angrtvbd;":677,"angsph;":678,"angst;":679,"angzarr;":680,"aogon;":681,"aopf;":682,"ap;":683,"apE;":684,"apacir;":685,"ape;":686,"apid;":687,"apos;":688,"approx;":689,"approxeq;":690,aring:691,"aring;":692,"ascr;":693,"ast;":694,"asymp;":695,"asympeq;":696,atilde:697,"atilde;":698,auml:699,"auml;":700,"awconint;":701,"awint;":702,"bNot;":703,"backcong;":704,"backepsilon;":705,"backprime;":706,"backsim;":707,"backsimeq;":708,"barvee;":709,"barwed;":710,"barwedge;":711,"bbrk;":712,"bbrktbrk;":713,"bcong;":714,"bcy;":715,"bdquo;":716,"becaus;":717,"because;":718,"bemptyv;":719,"bepsi;":720,"bernou;":721,"beta;":722,"beth;":723,"between;":724,"bfr;":725,"bigcap;":726,"bigcirc;":727,"bigcup;":728,"bigodot;":729,"bigoplus;":730,"bigotimes;":731,"bigsqcup;":732,"bigstar;":733,"bigtriangledown;":734,"bigtriangleup;":735,"biguplus;":736,"bigvee;":737,"bigwedge;":738,"bkarow;":739,"blacklozenge;":740,"blacksquare;":741,"blacktriangle;":742,"blacktriangledown;":743,"blacktriangleleft;":744,"blacktriangleright;":745,"blank;":746,"blk12;":747,"blk14;":748,"blk34;":749,"block;":750,"bne;":751,"bnequiv;":752,"bnot;":753,"bopf;":754,"bot;":755,"bottom;":756,"bowtie;":757,"boxDL;":758,"boxDR;":759,"boxDl;":760,"boxDr;":761,"boxH;":762,"boxHD;":763,"boxHU;":764,"boxHd;":765,"boxHu;":766,"boxUL;":767,"boxUR;":768,"boxUl;":769,"boxUr;":770,"boxV;":771,"boxVH;":772,"boxVL;":773,"boxVR;":774,"boxVh;":775,"boxVl;":776,"boxVr;":777,"boxbox;":778,"boxdL;":779,"boxdR;":780,"boxdl;":781,"boxdr;":782,"boxh;":783,"boxhD;":784,"boxhU;":785,"boxhd;":786,"boxhu;":787,"boxminus;":788,"boxplus;":789,"boxtimes;":790,"boxuL;":791,"boxuR;":792,"boxul;":793,"boxur;":794,"boxv;":795,"boxvH;":796,"boxvL;":797,"boxvR;":798,"boxvh;":799,"boxvl;":800,"boxvr;":801,"bprime;":802,"breve;":803,brvbar:804,"brvbar;":805,"bscr;":806,"bsemi;":807,"bsim;":808,"bsime;":809,"bsol;":810,"bsolb;":811,"bsolhsub;":812,"bull;":813,"bullet;":814,"bump;":815,"bumpE;":816,"bumpe;":817,"bumpeq;":818,"cacute;":819,"cap;":820,"capand;":821,"capbrcup;":822,"capcap;":823,"capcup;":824,"capdot;":825,"caps;":826,"caret;":827,"caron;":828,"ccaps;":829,"ccaron;":830,ccedil:831,"ccedil;":832,"ccirc;":833,"ccups;":834,"ccupssm;":835,"cdot;":836,cedil:837,"cedil;":838,"cemptyv;":839,cent:840,"cent;":841,"centerdot;":842,"cfr;":843,"chcy;":844,"check;":845,"checkmark;":846,"chi;":847,"cir;":848,"cirE;":849,"circ;":850,"circeq;":851,"circlearrowleft;":852,"circlearrowright;":853,"circledR;":854,"circledS;":855,"circledast;":856,"circledcirc;":857,"circleddash;":858,"cire;":859,"cirfnint;":860,"cirmid;":861,"cirscir;":862,"clubs;":863,"clubsuit;":864,"colon;":865,"colone;":866,"coloneq;":867,"comma;":868,"commat;":869,"comp;":870,"compfn;":871,"complement;":872,"complexes;":873,"cong;":874,"congdot;":875,"conint;":876,"copf;":877,"coprod;":878,copy:879,"copy;":880,"copysr;":881,"crarr;":882,"cross;":883,"cscr;":884,"csub;":885,"csube;":886,"csup;":887,"csupe;":888,"ctdot;":889,"cudarrl;":890,"cudarrr;":891,"cuepr;":892,"cuesc;":893,"cularr;":894,"cularrp;":895,"cup;":896,"cupbrcap;":897,"cupcap;":898,"cupcup;":899,"cupdot;":900,"cupor;":901,"cups;":902,"curarr;":903,"curarrm;":904,"curlyeqprec;":905,"curlyeqsucc;":906,"curlyvee;":907,"curlywedge;":908,curren:909,"curren;":910,"curvearrowleft;":911,"curvearrowright;":912,"cuvee;":913,"cuwed;":914,"cwconint;":915,"cwint;":916,"cylcty;":917,"dArr;":918,"dHar;":919,"dagger;":920,"daleth;":921,"darr;":922,"dash;":923,"dashv;":924,"dbkarow;":925,"dblac;":926,"dcaron;":927,"dcy;":928,"dd;":929,"ddagger;":930,"ddarr;":931,"ddotseq;":932,deg:933,"deg;":934,"delta;":935,"demptyv;":936,"dfisht;":937,"dfr;":938,"dharl;":939,"dharr;":940,"diam;":941,"diamond;":942,"diamondsuit;":943,"diams;":944,"die;":945,"digamma;":946,"disin;":947,"div;":948,divide:949,"divide;":950,"divideontimes;":951,"divonx;":952,"djcy;":953,"dlcorn;":954,"dlcrop;":955,"dollar;":956,"dopf;":957,"dot;":958,"doteq;":959,"doteqdot;":960,"dotminus;":961,"dotplus;":962,"dotsquare;":963,"doublebarwedge;":964,"downarrow;":965,"downdownarrows;":966,"downharpoonleft;":967,"downharpoonright;":968,"drbkarow;":969,"drcorn;":970,"drcrop;":971,"dscr;":972,"dscy;":973,"dsol;":974,"dstrok;":975,"dtdot;":976,"dtri;":977,"dtrif;":978,"duarr;":979,"duhar;":980,"dwangle;":981,"dzcy;":982,"dzigrarr;":983,"eDDot;":984,"eDot;":985,eacute:986,"eacute;":987,"easter;":988,"ecaron;":989,"ecir;":990,ecirc:991,"ecirc;":992,"ecolon;":993,"ecy;":994,"edot;":995,"ee;":996,"efDot;":997,"efr;":998,"eg;":999,egrave:1000,"egrave;":1001,"egs;":1002,"egsdot;":1003,"el;":1004,"elinters;":1005,"ell;":1006,"els;":1007,"elsdot;":1008,"emacr;":1009,"empty;":1010,"emptyset;":1011,"emptyv;":1012,"emsp13;":1013,"emsp14;":1014,"emsp;":1015,"eng;":1016,"ensp;":1017,"eogon;":1018,"eopf;":1019,"epar;":1020,"eparsl;":1021,"eplus;":1022,"epsi;":1023,"epsilon;":1024,"epsiv;":1025,"eqcirc;":1026,"eqcolon;":1027,"eqsim;":1028,"eqslantgtr;":1029,"eqslantless;":1030,"equals;":1031,"equest;":1032,"equiv;":1033,"equivDD;":1034,"eqvparsl;":1035,"erDot;":1036,"erarr;":1037,"escr;":1038,"esdot;":1039,"esim;":1040,"eta;":1041,eth:1042,"eth;":1043,euml:1044,"euml;":1045,"euro;":1046,"excl;":1047,"exist;":1048,"expectation;":1049,"exponentiale;":1050,"fallingdotseq;":1051,"fcy;":1052,"female;":1053,"ffilig;":1054,"fflig;":1055,"ffllig;":1056,"ffr;":1057,"filig;":1058,"fjlig;":1059,"flat;":1060,"fllig;":1061,"fltns;":1062,"fnof;":1063,"fopf;":1064,"forall;":1065,"fork;":1066,"forkv;":1067,"fpartint;":1068,frac12:1069,"frac12;":1070,"frac13;":1071,frac14:1072,"frac14;":1073,"frac15;":1074,"frac16;":1075,"frac18;":1076,"frac23;":1077,"frac25;":1078,frac34:1079,"frac34;":1080,"frac35;":1081,"frac38;":1082,"frac45;":1083,"frac56;":1084,"frac58;":1085,"frac78;":1086,"frasl;":1087,"frown;":1088,"fscr;":1089,"gE;":1090,"gEl;":1091,"gacute;":1092,"gamma;":1093,"gammad;":1094,"gap;":1095,"gbreve;":1096,"gcirc;":1097,"gcy;":1098,"gdot;":1099,"ge;":1100,"gel;":1101,"geq;":1102,"geqq;":1103,"geqslant;":1104,"ges;":1105,"gescc;":1106,"gesdot;":1107,"gesdoto;":1108,"gesdotol;":1109,"gesl;":1110,"gesles;":1111,"gfr;":1112,"gg;":1113,"ggg;":1114,"gimel;":1115,"gjcy;":1116,"gl;":1117,"glE;":1118,"gla;":1119,"glj;":1120,"gnE;":1121,"gnap;":1122,"gnapprox;":1123,"gne;":1124,"gneq;":1125,"gneqq;":1126,"gnsim;":1127,"gopf;":1128,"grave;":1129,"gscr;":1130,"gsim;":1131,"gsime;":1132,"gsiml;":1133,gt:1134,"gt;":1135,"gtcc;":1136,"gtcir;":1137,"gtdot;":1138,"gtlPar;":1139,"gtquest;":1140,"gtrapprox;":1141,"gtrarr;":1142,"gtrdot;":1143,"gtreqless;":1144,"gtreqqless;":1145,"gtrless;":1146,"gtrsim;":1147,"gvertneqq;":1148,"gvnE;":1149,"hArr;":1150,"hairsp;":1151,"half;":1152,"hamilt;":1153,"hardcy;":1154,"harr;":1155,"harrcir;":1156,"harrw;":1157,"hbar;":1158,"hcirc;":1159,"hearts;":1160,"heartsuit;":1161,"hellip;":1162,"hercon;":1163,"hfr;":1164,"hksearow;":1165,"hkswarow;":1166,"hoarr;":1167,"homtht;":1168,"hookleftarrow;":1169,"hookrightarrow;":1170,"hopf;":1171,"horbar;":1172,"hscr;":1173,"hslash;":1174,"hstrok;":1175,"hybull;":1176,"hyphen;":1177,iacute:1178,"iacute;":1179,"ic;":1180,icirc:1181,"icirc;":1182,"icy;":1183,"iecy;":1184,iexcl:1185,"iexcl;":1186,"iff;":1187,"ifr;":1188,igrave:1189,"igrave;":1190,"ii;":1191,"iiiint;":1192,"iiint;":1193,"iinfin;":1194,"iiota;":1195,"ijlig;":1196,"imacr;":1197,"image;":1198,"imagline;":1199,"imagpart;":1200,"imath;":1201,"imof;":1202,"imped;":1203,"in;":1204,"incare;":1205,"infin;":1206,"infintie;":1207,"inodot;":1208,"int;":1209,"intcal;":1210,"integers;":1211,"intercal;":1212,"intlarhk;":1213,"intprod;":1214,"iocy;":1215,"iogon;":1216,"iopf;":1217,"iota;":1218,"iprod;":1219,iquest:1220,"iquest;":1221,"iscr;":1222,"isin;":1223,"isinE;":1224,"isindot;":1225,"isins;":1226,"isinsv;":1227,"isinv;":1228,"it;":1229,"itilde;":1230,"iukcy;":1231,iuml:1232,"iuml;":1233,"jcirc;":1234,"jcy;":1235,"jfr;":1236,"jmath;":1237,"jopf;":1238,"jscr;":1239,"jsercy;":1240,"jukcy;":1241,"kappa;":1242,"kappav;":1243,"kcedil;":1244,"kcy;":1245,"kfr;":1246,"kgreen;":1247,"khcy;":1248,"kjcy;":1249,"kopf;":1250,"kscr;":1251,"lAarr;":1252,"lArr;":1253,"lAtail;":1254,"lBarr;":1255,"lE;":1256,"lEg;":1257,"lHar;":1258,"lacute;":1259,"laemptyv;":1260,"lagran;":1261,"lambda;":1262,"lang;":1263,"langd;":1264,"langle;":1265,"lap;":1266,laquo:1267,"laquo;":1268,"larr;":1269,"larrb;":1270,"larrbfs;":1271,"larrfs;":1272,"larrhk;":1273,"larrlp;":1274,"larrpl;":1275,"larrsim;":1276,"larrtl;":1277,"lat;":1278,"latail;":1279,"late;":1280,"lates;":1281,"lbarr;":1282,"lbbrk;":1283,"lbrace;":1284,"lbrack;":1285,"lbrke;":1286,"lbrksld;":1287,"lbrkslu;":1288,"lcaron;":1289,"lcedil;":1290,"lceil;":1291,"lcub;":1292,"lcy;":1293,"ldca;":1294,"ldquo;":1295,"ldquor;":1296,"ldrdhar;":1297,"ldrushar;":1298,"ldsh;":1299,"le;":1300,"leftarrow;":1301,"leftarrowtail;":1302,"leftharpoondown;":1303,"leftharpoonup;":1304,"leftleftarrows;":1305,"leftrightarrow;":1306,"leftrightarrows;":1307,"leftrightharpoons;":1308,"leftrightsquigarrow;":1309,"leftthreetimes;":1310,"leg;":1311,"leq;":1312,"leqq;":1313,"leqslant;":1314,"les;":1315,"lescc;":1316,"lesdot;":1317,"lesdoto;":1318,"lesdotor;":1319,"lesg;":1320,"lesges;":1321,"lessapprox;":1322,"lessdot;":1323,"lesseqgtr;":1324,"lesseqqgtr;":1325,"lessgtr;":1326,"lesssim;":1327,"lfisht;":1328,"lfloor;":1329,"lfr;":1330,"lg;":1331,"lgE;":1332,"lhard;":1333,"lharu;":1334,"lharul;":1335,"lhblk;":1336,"ljcy;":1337,"ll;":1338,"llarr;":1339,"llcorner;":1340,"llhard;":1341,"lltri;":1342,"lmidot;":1343,"lmoust;":1344,"lmoustache;":1345,"lnE;":1346,"lnap;":1347,"lnapprox;":1348,"lne;":1349,"lneq;":1350,"lneqq;":1351,"lnsim;":1352,"loang;":1353,"loarr;":1354,"lobrk;":1355,"longleftarrow;":1356,"longleftrightarrow;":1357,"longmapsto;":1358,"longrightarrow;":1359,"looparrowleft;":1360,"looparrowright;":1361,"lopar;":1362,"lopf;":1363,"loplus;":1364,"lotimes;":1365,"lowast;":1366,"lowbar;":1367,"loz;":1368,"lozenge;":1369,"lozf;":1370,"lpar;":1371,"lparlt;":1372,"lrarr;":1373,"lrcorner;":1374,"lrhar;":1375,"lrhard;":1376,"lrm;":1377,"lrtri;":1378,"lsaquo;":1379,"lscr;":1380,"lsh;":1381,"lsim;":1382,"lsime;":1383,"lsimg;":1384,"lsqb;":1385,"lsquo;":1386,"lsquor;":1387,"lstrok;":1388,lt:1389,"lt;":1390,"ltcc;":1391,"ltcir;":1392,"ltdot;":1393,"lthree;":1394,"ltimes;":1395,"ltlarr;":1396,"ltquest;":1397,"ltrPar;":1398,"ltri;":1399,"ltrie;":1400,"ltrif;":1401,"lurdshar;":1402,"luruhar;":1403,"lvertneqq;":1404,"lvnE;":1405,"mDDot;":1406,macr:1407,"macr;":1408,"male;":1409,"malt;":1410,"maltese;":1411,"map;":1412,"mapsto;":1413,"mapstodown;":1414,"mapstoleft;":1415,"mapstoup;":1416,"marker;":1417,"mcomma;":1418,"mcy;":1419,"mdash;":1420,"measuredangle;":1421,"mfr;":1422,"mho;":1423,micro:1424,"micro;":1425,"mid;":1426,"midast;":1427,"midcir;":1428,middot:1429,"middot;":1430,"minus;":1431,"minusb;":1432,"minusd;":1433,"minusdu;":1434,"mlcp;":1435,"mldr;":1436,"mnplus;":1437,"models;":1438,"mopf;":1439,"mp;":1440,"mscr;":1441,"mstpos;":1442,"mu;":1443,"multimap;":1444,"mumap;":1445,"nGg;":1446,"nGt;":1447,"nGtv;":1448,"nLeftarrow;":1449,"nLeftrightarrow;":1450,"nLl;":1451,"nLt;":1452,"nLtv;":1453,"nRightarrow;":1454,"nVDash;":1455,"nVdash;":1456,"nabla;":1457,"nacute;":1458,"nang;":1459,"nap;":1460,"napE;":1461,"napid;":1462,"napos;":1463,"napprox;":1464,"natur;":1465,"natural;":1466,"naturals;":1467,nbsp:1468,"nbsp;":1469,"nbump;":1470,"nbumpe;":1471,"ncap;":1472,"ncaron;":1473,"ncedil;":1474,"ncong;":1475,"ncongdot;":1476,"ncup;":1477,"ncy;":1478,"ndash;":1479,"ne;":1480,"neArr;":1481,"nearhk;":1482,"nearr;":1483,"nearrow;":1484,"nedot;":1485,"nequiv;":1486,"nesear;":1487,"nesim;":1488,"nexist;":1489,"nexists;":1490,"nfr;":1491,"ngE;":1492,"nge;":1493,"ngeq;":1494,"ngeqq;":1495,"ngeqslant;":1496,"nges;":1497,"ngsim;":1498,"ngt;":1499,"ngtr;":1500,"nhArr;":1501,"nharr;":1502,"nhpar;":1503,"ni;":1504,"nis;":1505,"nisd;":1506,"niv;":1507,"njcy;":1508,"nlArr;":1509,"nlE;":1510,"nlarr;":1511,"nldr;":1512,"nle;":1513,"nleftarrow;":1514,"nleftrightarrow;":1515,"nleq;":1516,"nleqq;":1517,"nleqslant;":1518,"nles;":1519,"nless;":1520,"nlsim;":1521,"nlt;":1522,"nltri;":1523,"nltrie;":1524,"nmid;":1525,"nopf;":1526,not:1527,"not;":1528,"notin;":1529,"notinE;":1530,"notindot;":1531,"notinva;":1532,"notinvb;":1533,"notinvc;":1534,"notni;":1535,"notniva;":1536,"notnivb;":1537,"notnivc;":1538,"npar;":1539,"nparallel;":1540,"nparsl;":1541,"npart;":1542,"npolint;":1543,"npr;":1544,"nprcue;":1545,"npre;":1546,"nprec;":1547,"npreceq;":1548,"nrArr;":1549,"nrarr;":1550,"nrarrc;":1551,"nrarrw;":1552,"nrightarrow;":1553,"nrtri;":1554,"nrtrie;":1555,"nsc;":1556,"nsccue;":1557,"nsce;":1558,"nscr;":1559,"nshortmid;":1560,"nshortparallel;":1561,"nsim;":1562,"nsime;":1563,"nsimeq;":1564,"nsmid;":1565,"nspar;":1566,"nsqsube;":1567,"nsqsupe;":1568,"nsub;":1569,"nsubE;":1570,"nsube;":1571,"nsubset;":1572,"nsubseteq;":1573,"nsubseteqq;":1574,"nsucc;":1575,"nsucceq;":1576,"nsup;":1577,"nsupE;":1578,"nsupe;":1579,"nsupset;":1580,"nsupseteq;":1581,"nsupseteqq;":1582,"ntgl;":1583,ntilde:1584,"ntilde;":1585,"ntlg;":1586,"ntriangleleft;":1587,"ntrianglelefteq;":1588,"ntriangleright;":1589,"ntrianglerighteq;":1590,"nu;":1591,"num;":1592,"numero;":1593,"numsp;":1594,"nvDash;":1595,"nvHarr;":1596,"nvap;":1597,"nvdash;":1598,"nvge;":1599,"nvgt;":1600,"nvinfin;":1601,"nvlArr;":1602,"nvle;":1603,"nvlt;":1604,"nvltrie;":1605,"nvrArr;":1606,"nvrtrie;":1607,"nvsim;":1608,"nwArr;":1609,"nwarhk;":1610,"nwarr;":1611,"nwarrow;":1612,"nwnear;":1613,"oS;":1614,oacute:1615,"oacute;":1616,"oast;":1617,"ocir;":1618,ocirc:1619,"ocirc;":1620,"ocy;":1621,"odash;":1622,"odblac;":1623,"odiv;":1624,"odot;":1625,"odsold;":1626,"oelig;":1627,"ofcir;":1628,"ofr;":1629,"ogon;":1630,ograve:1631,"ograve;":1632,"ogt;":1633,"ohbar;":1634,"ohm;":1635,"oint;":1636,"olarr;":1637,"olcir;":1638,"olcross;":1639,"oline;":1640,"olt;":1641,"omacr;":1642,"omega;":1643,"omicron;":1644,"omid;":1645,"ominus;":1646,"oopf;":1647,"opar;":1648,"operp;":1649,"oplus;":1650,"or;":1651,"orarr;":1652,"ord;":1653,"order;":1654,"orderof;":1655,ordf:1656,"ordf;":1657,ordm:1658,"ordm;":1659,"origof;":1660,"oror;":1661,"orslope;":1662,"orv;":1663,"oscr;":1664,oslash:1665,"oslash;":1666,"osol;":1667,otilde:1668,"otilde;":1669,"otimes;":1670,"otimesas;":1671,ouml:1672,"ouml;":1673,"ovbar;":1674,"par;":1675,para:1676,"para;":1677,"parallel;":1678,"parsim;":1679,"parsl;":1680,"part;":1681,"pcy;":1682,"percnt;":1683,"period;":1684,"permil;":1685,"perp;":1686,"pertenk;":1687,"pfr;":1688,"phi;":1689,"phiv;":1690,"phmmat;":1691,"phone;":1692,"pi;":1693,"pitchfork;":1694,"piv;":1695,"planck;":1696,"planckh;":1697,"plankv;":1698,"plus;":1699,"plusacir;":1700,"plusb;":1701,"pluscir;":1702,"plusdo;":1703,"plusdu;":1704,"pluse;":1705,plusmn:1706,"plusmn;":1707,"plussim;":1708,"plustwo;":1709,"pm;":1710,"pointint;":1711,"popf;":1712,pound:1713,"pound;":1714,"pr;":1715,"prE;":1716,"prap;":1717,"prcue;":1718,"pre;":1719,"prec;":1720,"precapprox;":1721,"preccurlyeq;":1722,"preceq;":1723,"precnapprox;":1724,"precneqq;":1725,"precnsim;":1726,"precsim;":1727,"prime;":1728,"primes;":1729,"prnE;":1730,"prnap;":1731,"prnsim;":1732,"prod;":1733,"profalar;":1734,"profline;":1735,"profsurf;":1736,"prop;":1737,"propto;":1738,"prsim;":1739,"prurel;":1740,"pscr;":1741,"psi;":1742,"puncsp;":1743,"qfr;":1744,"qint;":1745,"qopf;":1746,"qprime;":1747,"qscr;":1748,"quaternions;":1749,"quatint;":1750,"quest;":1751,"questeq;":1752,quot:1753,"quot;":1754,"rAarr;":1755,"rArr;":1756,"rAtail;":1757,"rBarr;":1758,"rHar;":1759,"race;":1760,"racute;":1761,"radic;":1762,"raemptyv;":1763,"rang;":1764,"rangd;":1765,"range;":1766,"rangle;":1767,raquo:1768,"raquo;":1769,"rarr;":1770,"rarrap;":1771,"rarrb;":1772,"rarrbfs;":1773,"rarrc;":1774,"rarrfs;":1775,"rarrhk;":1776,"rarrlp;":1777,"rarrpl;":1778,"rarrsim;":1779,"rarrtl;":1780,"rarrw;":1781,"ratail;":1782,"ratio;":1783,"rationals;":1784,"rbarr;":1785,"rbbrk;":1786,"rbrace;":1787,"rbrack;":1788,"rbrke;":1789,"rbrksld;":1790,"rbrkslu;":1791,"rcaron;":1792,"rcedil;":1793,"rceil;":1794,"rcub;":1795,"rcy;":1796,"rdca;":1797,"rdldhar;":1798,"rdquo;":1799,"rdquor;":1800,"rdsh;":1801,"real;":1802,"realine;":1803,"realpart;":1804,"reals;":1805,"rect;":1806,reg:1807,"reg;":1808,"rfisht;":1809,"rfloor;":1810,"rfr;":1811,"rhard;":1812,"rharu;":1813,"rharul;":1814,"rho;":1815,"rhov;":1816,"rightarrow;":1817,"rightarrowtail;":1818,"rightharpoondown;":1819,"rightharpoonup;":1820,"rightleftarrows;":1821,"rightleftharpoons;":1822,"rightrightarrows;":1823,"rightsquigarrow;":1824,"rightthreetimes;":1825,"ring;":1826,"risingdotseq;":1827,"rlarr;":1828,"rlhar;":1829,"rlm;":1830,"rmoust;":1831,"rmoustache;":1832,"rnmid;":1833,"roang;":1834,"roarr;":1835,"robrk;":1836,"ropar;":1837,"ropf;":1838,"roplus;":1839,"rotimes;":1840,"rpar;":1841,"rpargt;":1842,"rppolint;":1843,"rrarr;":1844,"rsaquo;":1845,"rscr;":1846,"rsh;":1847,"rsqb;":1848,"rsquo;":1849,"rsquor;":1850,"rthree;":1851,"rtimes;":1852,"rtri;":1853,"rtrie;":1854,"rtrif;":1855,"rtriltri;":1856,"ruluhar;":1857,"rx;":1858,"sacute;":1859,"sbquo;":1860,"sc;":1861,"scE;":1862,"scap;":1863,"scaron;":1864,"sccue;":1865,"sce;":1866,"scedil;":1867,"scirc;":1868,"scnE;":1869,"scnap;":1870,"scnsim;":1871,"scpolint;":1872,"scsim;":1873,"scy;":1874,"sdot;":1875,"sdotb;":1876,"sdote;":1877,"seArr;":1878,"searhk;":1879,"searr;":1880,"searrow;":1881,sect:1882,"sect;":1883,"semi;":1884,"seswar;":1885,"setminus;":1886,"setmn;":1887,"sext;":1888,"sfr;":1889,"sfrown;":1890,"sharp;":1891,"shchcy;":1892,"shcy;":1893,"shortmid;":1894,"shortparallel;":1895,shy:1896,"shy;":1897,"sigma;":1898,"sigmaf;":1899,"sigmav;":1900,"sim;":1901,"simdot;":1902,"sime;":1903,"simeq;":1904,"simg;":1905,"simgE;":1906,"siml;":1907,"simlE;":1908,"simne;":1909,"simplus;":1910,"simrarr;":1911,"slarr;":1912,"smallsetminus;":1913,"smashp;":1914,"smeparsl;":1915,"smid;":1916,"smile;":1917,"smt;":1918,"smte;":1919,"smtes;":1920,"softcy;":1921,"sol;":1922,"solb;":1923,"solbar;":1924,"sopf;":1925,"spades;":1926,"spadesuit;":1927,"spar;":1928,"sqcap;":1929,"sqcaps;":1930,"sqcup;":1931,"sqcups;":1932,"sqsub;":1933,"sqsube;":1934,"sqsubset;":1935,"sqsubseteq;":1936,"sqsup;":1937,"sqsupe;":1938,"sqsupset;":1939,"sqsupseteq;":1940,"squ;":1941,"square;":1942,"squarf;":1943,"squf;":1944,"srarr;":1945,"sscr;":1946,"ssetmn;":1947,"ssmile;":1948,"sstarf;":1949,"star;":1950,"starf;":1951,"straightepsilon;":1952,"straightphi;":1953,"strns;":1954,"sub;":1955,"subE;":1956,"subdot;":1957,"sube;":1958,"subedot;":1959,"submult;":1960,"subnE;":1961,"subne;":1962,"subplus;":1963,"subrarr;":1964,"subset;":1965,"subseteq;":1966,"subseteqq;":1967,"subsetneq;":1968,"subsetneqq;":1969,"subsim;":1970,"subsub;":1971,"subsup;":1972,"succ;":1973,"succapprox;":1974,"succcurlyeq;":1975,"succeq;":1976,"succnapprox;":1977,"succneqq;":1978,"succnsim;":1979,"succsim;":1980,"sum;":1981,"sung;":1982,sup1:1983,"sup1;":1984,sup2:1985,"sup2;":1986,sup3:1987,"sup3;":1988,"sup;":1989,"supE;":1990,"supdot;":1991,"supdsub;":1992,"supe;":1993,"supedot;":1994,"suphsol;":1995,"suphsub;":1996,"suplarr;":1997,"supmult;":1998,"supnE;":1999,"supne;":2000,"supplus;":2001,"supset;":2002,"supseteq;":2003,"supseteqq;":2004,"supsetneq;":2005,"supsetneqq;":2006,"supsim;":2007,"supsub;":2008,"supsup;":2009,"swArr;":2010,"swarhk;":2011,"swarr;":2012,"swarrow;":2013,"swnwar;":2014,szlig:2015,"szlig;":2016,"target;":2017,"tau;":2018,"tbrk;":2019,"tcaron;":2020,"tcedil;":2021,"tcy;":2022,"tdot;":2023,"telrec;":2024,"tfr;":2025,"there4;":2026,"therefore;":2027,"theta;":2028,"thetasym;":2029,"thetav;":2030,"thickapprox;":2031,"thicksim;":2032,"thinsp;":2033,"thkap;":2034,"thksim;":2035,thorn:2036,"thorn;":2037,"tilde;":2038,times:2039,"times;":2040,"timesb;":2041,"timesbar;":2042,"timesd;":2043,"tint;":2044,"toea;":2045,"top;":2046,"topbot;":2047,"topcir;":2048,"topf;":2049,"topfork;":2050,"tosa;":2051,"tprime;":2052,"trade;":2053,"triangle;":2054,"triangledown;":2055,"triangleleft;":2056,"trianglelefteq;":2057,"triangleq;":2058,"triangleright;":2059,"trianglerighteq;":2060,"tridot;":2061,"trie;":2062,"triminus;":2063,"triplus;":2064,"trisb;":2065,"tritime;":2066,"trpezium;":2067,"tscr;":2068,"tscy;":2069,"tshcy;":2070,"tstrok;":2071,"twixt;":2072,"twoheadleftarrow;":2073,"twoheadrightarrow;":2074,"uArr;":2075,"uHar;":2076,uacute:2077,"uacute;":2078,"uarr;":2079,"ubrcy;":2080,"ubreve;":2081,ucirc:2082,"ucirc;":2083,"ucy;":2084,"udarr;":2085,"udblac;":2086,"udhar;":2087,"ufisht;":2088,"ufr;":2089,ugrave:2090,"ugrave;":2091,"uharl;":2092,"uharr;":2093,"uhblk;":2094,"ulcorn;":2095,"ulcorner;":2096,"ulcrop;":2097,"ultri;":2098,"umacr;":2099,uml:2100,"uml;":2101,"uogon;":2102,"uopf;":2103,"uparrow;":2104,"updownarrow;":2105,"upharpoonleft;":2106,"upharpoonright;":2107,"uplus;":2108,"upsi;":2109,"upsih;":2110,"upsilon;":2111,"upuparrows;":2112,"urcorn;":2113,"urcorner;":2114,"urcrop;":2115,"uring;":2116,"urtri;":2117,"uscr;":2118,"utdot;":2119,"utilde;":2120,"utri;":2121,"utrif;":2122,"uuarr;":2123,uuml:2124,"uuml;":2125,"uwangle;":2126,"vArr;":2127,"vBar;":2128,"vBarv;":2129,"vDash;":2130,"vangrt;":2131,"varepsilon;":2132,"varkappa;":2133,"varnothing;":2134,"varphi;":2135,"varpi;":2136,"varpropto;":2137,"varr;":2138,"varrho;":2139,"varsigma;":2140,"varsubsetneq;":2141,"varsubsetneqq;":2142,"varsupsetneq;":2143,"varsupsetneqq;":2144,"vartheta;":2145,"vartriangleleft;":2146,"vartriangleright;":2147,"vcy;":2148,"vdash;":2149,"vee;":2150,"veebar;":2151,"veeeq;":2152,"vellip;":2153,"verbar;":2154,"vert;":2155,"vfr;":2156,"vltri;":2157,"vnsub;":2158,"vnsup;":2159,"vopf;":2160,"vprop;":2161,"vrtri;":2162,"vscr;":2163,"vsubnE;":2164,"vsubne;":2165,"vsupnE;":2166,"vsupne;":2167,"vzigzag;":2168,"wcirc;":2169,"wedbar;":2170,"wedge;":2171,"wedgeq;":2172,"weierp;":2173,"wfr;":2174,"wopf;":2175,"wp;":2176,"wr;":2177,"wreath;":2178,"wscr;":2179,"xcap;":2180,"xcirc;":2181,"xcup;":2182,"xdtri;":2183,"xfr;":2184,"xhArr;":2185,"xharr;":2186,"xi;":2187,"xlArr;":2188,"xlarr;":2189,"xmap;":2190,"xnis;":2191,"xodot;":2192,"xopf;":2193,"xoplus;":2194,"xotime;":2195,"xrArr;":2196,"xrarr;":2197,"xscr;":2198,"xsqcup;":2199,"xuplus;":2200,"xutri;":2201,"xvee;":2202,"xwedge;":2203,yacute:2204,"yacute;":2205,"yacy;":2206,"ycirc;":2207,"ycy;":2208,yen:2209,"yen;":2210,"yfr;":2211,"yicy;":2212,"yopf;":2213,"yscr;":2214,"yucy;":2215,yuml:2216,"yuml;":2217,"zacute;":2218,"zcaron;":2219,"zcy;":2220,"zdot;":2221,"zeetrf;":2222,"zeta;":2223,"zfr;":2224,"zhcy;":2225,"zigrarr;":2226,"zopf;":2227,"zscr;":2228,"zwj;":2229,"zwnj;":2230} B.fs=new A.r(B.KW,["\xc6","\xc6","&","&","\xc1","\xc1","\u0102","\xc2","\xc2","\u0410","\ud835\udd04","\xc0","\xc0","\u0391","\u0100","\u2a53","\u0104","\ud835\udd38","\u2061","\xc5","\xc5","\ud835\udc9c","\u2254","\xc3","\xc3","\xc4","\xc4","\u2216","\u2ae7","\u2306","\u0411","\u2235","\u212c","\u0392","\ud835\udd05","\ud835\udd39","\u02d8","\u212c","\u224e","\u0427","\xa9","\xa9","\u0106","\u22d2","\u2145","\u212d","\u010c","\xc7","\xc7","\u0108","\u2230","\u010a","\xb8","\xb7","\u212d","\u03a7","\u2299","\u2296","\u2295","\u2297","\u2232","\u201d","\u2019","\u2237","\u2a74","\u2261","\u222f","\u222e","\u2102","\u2210","\u2233","\u2a2f","\ud835\udc9e","\u22d3","\u224d","\u2145","\u2911","\u0402","\u0405","\u040f","\u2021","\u21a1","\u2ae4","\u010e","\u0414","\u2207","\u0394","\ud835\udd07","\xb4","\u02d9","\u02dd","`","\u02dc","\u22c4","\u2146","\ud835\udd3b","\xa8","\u20dc","\u2250","\u222f","\xa8","\u21d3","\u21d0","\u21d4","\u2ae4","\u27f8","\u27fa","\u27f9","\u21d2","\u22a8","\u21d1","\u21d5","\u2225","\u2193","\u2913","\u21f5","\u0311","\u2950","\u295e","\u21bd","\u2956","\u295f","\u21c1","\u2957","\u22a4","\u21a7","\u21d3","\ud835\udc9f","\u0110","\u014a","\xd0","\xd0","\xc9","\xc9","\u011a","\xca","\xca","\u042d","\u0116","\ud835\udd08","\xc8","\xc8","\u2208","\u0112","\u25fb","\u25ab","\u0118","\ud835\udd3c","\u0395","\u2a75","\u2242","\u21cc","\u2130","\u2a73","\u0397","\xcb","\xcb","\u2203","\u2147","\u0424","\ud835\udd09","\u25fc","\u25aa","\ud835\udd3d","\u2200","\u2131","\u2131","\u0403",">",">","\u0393","\u03dc","\u011e","\u0122","\u011c","\u0413","\u0120","\ud835\udd0a","\u22d9","\ud835\udd3e","\u2265","\u22db","\u2267","\u2aa2","\u2277","\u2a7e","\u2273","\ud835\udca2","\u226b","\u042a","\u02c7","^","\u0124","\u210c","\u210b","\u210d","\u2500","\u210b","\u0126","\u224e","\u224f","\u0415","\u0132","\u0401","\xcd","\xcd","\xce","\xce","\u0418","\u0130","\u2111","\xcc","\xcc","\u2111","\u012a","\u2148","\u21d2","\u222c","\u222b","\u22c2","\u2063","\u2062","\u012e","\ud835\udd40","\u0399","\u2110","\u0128","\u0406","\xcf","\xcf","\u0134","\u0419","\ud835\udd0d","\ud835\udd41","\ud835\udca5","\u0408","\u0404","\u0425","\u040c","\u039a","\u0136","\u041a","\ud835\udd0e","\ud835\udd42","\ud835\udca6","\u0409","<","<","\u0139","\u039b","\u27ea","\u2112","\u219e","\u013d","\u013b","\u041b","\u27e8","\u2190","\u21e4","\u21c6","\u2308","\u27e6","\u2961","\u21c3","\u2959","\u230a","\u2194","\u294e","\u22a3","\u21a4","\u295a","\u22b2","\u29cf","\u22b4","\u2951","\u2960","\u21bf","\u2958","\u21bc","\u2952","\u21d0","\u21d4","\u22da","\u2266","\u2276","\u2aa1","\u2a7d","\u2272","\ud835\udd0f","\u22d8","\u21da","\u013f","\u27f5","\u27f7","\u27f6","\u27f8","\u27fa","\u27f9","\ud835\udd43","\u2199","\u2198","\u2112","\u21b0","\u0141","\u226a","\u2905","\u041c","\u205f","\u2133","\ud835\udd10","\u2213","\ud835\udd44","\u2133","\u039c","\u040a","\u0143","\u0147","\u0145","\u041d","\u200b","\u200b","\u200b","\u200b","\u226b","\u226a","\n","\ud835\udd11","\u2060","\xa0","\u2115","\u2aec","\u2262","\u226d","\u2226","\u2209","\u2260","\u2242\u0338","\u2204","\u226f","\u2271","\u2267\u0338","\u226b\u0338","\u2279","\u2a7e\u0338","\u2275","\u224e\u0338","\u224f\u0338","\u22ea","\u29cf\u0338","\u22ec","\u226e","\u2270","\u2278","\u226a\u0338","\u2a7d\u0338","\u2274","\u2aa2\u0338","\u2aa1\u0338","\u2280","\u2aaf\u0338","\u22e0","\u220c","\u22eb","\u29d0\u0338","\u22ed","\u228f\u0338","\u22e2","\u2290\u0338","\u22e3","\u2282\u20d2","\u2288","\u2281","\u2ab0\u0338","\u22e1","\u227f\u0338","\u2283\u20d2","\u2289","\u2241","\u2244","\u2247","\u2249","\u2224","\ud835\udca9","\xd1","\xd1","\u039d","\u0152","\xd3","\xd3","\xd4","\xd4","\u041e","\u0150","\ud835\udd12","\xd2","\xd2","\u014c","\u03a9","\u039f","\ud835\udd46","\u201c","\u2018","\u2a54","\ud835\udcaa","\xd8","\xd8","\xd5","\xd5","\u2a37","\xd6","\xd6","\u203e","\u23de","\u23b4","\u23dc","\u2202","\u041f","\ud835\udd13","\u03a6","\u03a0","\xb1","\u210c","\u2119","\u2abb","\u227a","\u2aaf","\u227c","\u227e","\u2033","\u220f","\u2237","\u221d","\ud835\udcab","\u03a8",'"','"',"\ud835\udd14","\u211a","\ud835\udcac","\u2910","\xae","\xae","\u0154","\u27eb","\u21a0","\u2916","\u0158","\u0156","\u0420","\u211c","\u220b","\u21cb","\u296f","\u211c","\u03a1","\u27e9","\u2192","\u21e5","\u21c4","\u2309","\u27e7","\u295d","\u21c2","\u2955","\u230b","\u22a2","\u21a6","\u295b","\u22b3","\u29d0","\u22b5","\u294f","\u295c","\u21be","\u2954","\u21c0","\u2953","\u21d2","\u211d","\u2970","\u21db","\u211b","\u21b1","\u29f4","\u0429","\u0428","\u042c","\u015a","\u2abc","\u0160","\u015e","\u015c","\u0421","\ud835\udd16","\u2193","\u2190","\u2192","\u2191","\u03a3","\u2218","\ud835\udd4a","\u221a","\u25a1","\u2293","\u228f","\u2291","\u2290","\u2292","\u2294","\ud835\udcae","\u22c6","\u22d0","\u22d0","\u2286","\u227b","\u2ab0","\u227d","\u227f","\u220b","\u2211","\u22d1","\u2283","\u2287","\u22d1","\xde","\xde","\u2122","\u040b","\u0426","\t","\u03a4","\u0164","\u0162","\u0422","\ud835\udd17","\u2234","\u0398","\u205f\u200a","\u2009","\u223c","\u2243","\u2245","\u2248","\ud835\udd4b","\u20db","\ud835\udcaf","\u0166","\xda","\xda","\u219f","\u2949","\u040e","\u016c","\xdb","\xdb","\u0423","\u0170","\ud835\udd18","\xd9","\xd9","\u016a","_","\u23df","\u23b5","\u23dd","\u22c3","\u228e","\u0172","\ud835\udd4c","\u2191","\u2912","\u21c5","\u2195","\u296e","\u22a5","\u21a5","\u21d1","\u21d5","\u2196","\u2197","\u03d2","\u03a5","\u016e","\ud835\udcb0","\u0168","\xdc","\xdc","\u22ab","\u2aeb","\u0412","\u22a9","\u2ae6","\u22c1","\u2016","\u2016","\u2223","|","\u2758","\u2240","\u200a","\ud835\udd19","\ud835\udd4d","\ud835\udcb1","\u22aa","\u0174","\u22c0","\ud835\udd1a","\ud835\udd4e","\ud835\udcb2","\ud835\udd1b","\u039e","\ud835\udd4f","\ud835\udcb3","\u042f","\u0407","\u042e","\xdd","\xdd","\u0176","\u042b","\ud835\udd1c","\ud835\udd50","\ud835\udcb4","\u0178","\u0416","\u0179","\u017d","\u0417","\u017b","\u200b","\u0396","\u2128","\u2124","\ud835\udcb5","\xe1","\xe1","\u0103","\u223e","\u223e\u0333","\u223f","\xe2","\xe2","\xb4","\xb4","\u0430","\xe6","\xe6","\u2061","\ud835\udd1e","\xe0","\xe0","\u2135","\u2135","\u03b1","\u0101","\u2a3f","&","&","\u2227","\u2a55","\u2a5c","\u2a58","\u2a5a","\u2220","\u29a4","\u2220","\u2221","\u29a8","\u29a9","\u29aa","\u29ab","\u29ac","\u29ad","\u29ae","\u29af","\u221f","\u22be","\u299d","\u2222","\xc5","\u237c","\u0105","\ud835\udd52","\u2248","\u2a70","\u2a6f","\u224a","\u224b","'","\u2248","\u224a","\xe5","\xe5","\ud835\udcb6","*","\u2248","\u224d","\xe3","\xe3","\xe4","\xe4","\u2233","\u2a11","\u2aed","\u224c","\u03f6","\u2035","\u223d","\u22cd","\u22bd","\u2305","\u2305","\u23b5","\u23b6","\u224c","\u0431","\u201e","\u2235","\u2235","\u29b0","\u03f6","\u212c","\u03b2","\u2136","\u226c","\ud835\udd1f","\u22c2","\u25ef","\u22c3","\u2a00","\u2a01","\u2a02","\u2a06","\u2605","\u25bd","\u25b3","\u2a04","\u22c1","\u22c0","\u290d","\u29eb","\u25aa","\u25b4","\u25be","\u25c2","\u25b8","\u2423","\u2592","\u2591","\u2593","\u2588","=\u20e5","\u2261\u20e5","\u2310","\ud835\udd53","\u22a5","\u22a5","\u22c8","\u2557","\u2554","\u2556","\u2553","\u2550","\u2566","\u2569","\u2564","\u2567","\u255d","\u255a","\u255c","\u2559","\u2551","\u256c","\u2563","\u2560","\u256b","\u2562","\u255f","\u29c9","\u2555","\u2552","\u2510","\u250c","\u2500","\u2565","\u2568","\u252c","\u2534","\u229f","\u229e","\u22a0","\u255b","\u2558","\u2518","\u2514","\u2502","\u256a","\u2561","\u255e","\u253c","\u2524","\u251c","\u2035","\u02d8","\xa6","\xa6","\ud835\udcb7","\u204f","\u223d","\u22cd","\\","\u29c5","\u27c8","\u2022","\u2022","\u224e","\u2aae","\u224f","\u224f","\u0107","\u2229","\u2a44","\u2a49","\u2a4b","\u2a47","\u2a40","\u2229\ufe00","\u2041","\u02c7","\u2a4d","\u010d","\xe7","\xe7","\u0109","\u2a4c","\u2a50","\u010b","\xb8","\xb8","\u29b2","\xa2","\xa2","\xb7","\ud835\udd20","\u0447","\u2713","\u2713","\u03c7","\u25cb","\u29c3","\u02c6","\u2257","\u21ba","\u21bb","\xae","\u24c8","\u229b","\u229a","\u229d","\u2257","\u2a10","\u2aef","\u29c2","\u2663","\u2663",":","\u2254","\u2254",",","@","\u2201","\u2218","\u2201","\u2102","\u2245","\u2a6d","\u222e","\ud835\udd54","\u2210","\xa9","\xa9","\u2117","\u21b5","\u2717","\ud835\udcb8","\u2acf","\u2ad1","\u2ad0","\u2ad2","\u22ef","\u2938","\u2935","\u22de","\u22df","\u21b6","\u293d","\u222a","\u2a48","\u2a46","\u2a4a","\u228d","\u2a45","\u222a\ufe00","\u21b7","\u293c","\u22de","\u22df","\u22ce","\u22cf","\xa4","\xa4","\u21b6","\u21b7","\u22ce","\u22cf","\u2232","\u2231","\u232d","\u21d3","\u2965","\u2020","\u2138","\u2193","\u2010","\u22a3","\u290f","\u02dd","\u010f","\u0434","\u2146","\u2021","\u21ca","\u2a77","\xb0","\xb0","\u03b4","\u29b1","\u297f","\ud835\udd21","\u21c3","\u21c2","\u22c4","\u22c4","\u2666","\u2666","\xa8","\u03dd","\u22f2","\xf7","\xf7","\xf7","\u22c7","\u22c7","\u0452","\u231e","\u230d","$","\ud835\udd55","\u02d9","\u2250","\u2251","\u2238","\u2214","\u22a1","\u2306","\u2193","\u21ca","\u21c3","\u21c2","\u2910","\u231f","\u230c","\ud835\udcb9","\u0455","\u29f6","\u0111","\u22f1","\u25bf","\u25be","\u21f5","\u296f","\u29a6","\u045f","\u27ff","\u2a77","\u2251","\xe9","\xe9","\u2a6e","\u011b","\u2256","\xea","\xea","\u2255","\u044d","\u0117","\u2147","\u2252","\ud835\udd22","\u2a9a","\xe8","\xe8","\u2a96","\u2a98","\u2a99","\u23e7","\u2113","\u2a95","\u2a97","\u0113","\u2205","\u2205","\u2205","\u2004","\u2005","\u2003","\u014b","\u2002","\u0119","\ud835\udd56","\u22d5","\u29e3","\u2a71","\u03b5","\u03b5","\u03f5","\u2256","\u2255","\u2242","\u2a96","\u2a95","=","\u225f","\u2261","\u2a78","\u29e5","\u2253","\u2971","\u212f","\u2250","\u2242","\u03b7","\xf0","\xf0","\xeb","\xeb","\u20ac","!","\u2203","\u2130","\u2147","\u2252","\u0444","\u2640","\ufb03","\ufb00","\ufb04","\ud835\udd23","\ufb01","fj","\u266d","\ufb02","\u25b1","\u0192","\ud835\udd57","\u2200","\u22d4","\u2ad9","\u2a0d","\xbd","\xbd","\u2153","\xbc","\xbc","\u2155","\u2159","\u215b","\u2154","\u2156","\xbe","\xbe","\u2157","\u215c","\u2158","\u215a","\u215d","\u215e","\u2044","\u2322","\ud835\udcbb","\u2267","\u2a8c","\u01f5","\u03b3","\u03dd","\u2a86","\u011f","\u011d","\u0433","\u0121","\u2265","\u22db","\u2265","\u2267","\u2a7e","\u2a7e","\u2aa9","\u2a80","\u2a82","\u2a84","\u22db\ufe00","\u2a94","\ud835\udd24","\u226b","\u22d9","\u2137","\u0453","\u2277","\u2a92","\u2aa5","\u2aa4","\u2269","\u2a8a","\u2a8a","\u2a88","\u2a88","\u2269","\u22e7","\ud835\udd58","`","\u210a","\u2273","\u2a8e","\u2a90",">",">","\u2aa7","\u2a7a","\u22d7","\u2995","\u2a7c","\u2a86","\u2978","\u22d7","\u22db","\u2a8c","\u2277","\u2273","\u2269\ufe00","\u2269\ufe00","\u21d4","\u200a","\xbd","\u210b","\u044a","\u2194","\u2948","\u21ad","\u210f","\u0125","\u2665","\u2665","\u2026","\u22b9","\ud835\udd25","\u2925","\u2926","\u21ff","\u223b","\u21a9","\u21aa","\ud835\udd59","\u2015","\ud835\udcbd","\u210f","\u0127","\u2043","\u2010","\xed","\xed","\u2063","\xee","\xee","\u0438","\u0435","\xa1","\xa1","\u21d4","\ud835\udd26","\xec","\xec","\u2148","\u2a0c","\u222d","\u29dc","\u2129","\u0133","\u012b","\u2111","\u2110","\u2111","\u0131","\u22b7","\u01b5","\u2208","\u2105","\u221e","\u29dd","\u0131","\u222b","\u22ba","\u2124","\u22ba","\u2a17","\u2a3c","\u0451","\u012f","\ud835\udd5a","\u03b9","\u2a3c","\xbf","\xbf","\ud835\udcbe","\u2208","\u22f9","\u22f5","\u22f4","\u22f3","\u2208","\u2062","\u0129","\u0456","\xef","\xef","\u0135","\u0439","\ud835\udd27","\u0237","\ud835\udd5b","\ud835\udcbf","\u0458","\u0454","\u03ba","\u03f0","\u0137","\u043a","\ud835\udd28","\u0138","\u0445","\u045c","\ud835\udd5c","\ud835\udcc0","\u21da","\u21d0","\u291b","\u290e","\u2266","\u2a8b","\u2962","\u013a","\u29b4","\u2112","\u03bb","\u27e8","\u2991","\u27e8","\u2a85","\xab","\xab","\u2190","\u21e4","\u291f","\u291d","\u21a9","\u21ab","\u2939","\u2973","\u21a2","\u2aab","\u2919","\u2aad","\u2aad\ufe00","\u290c","\u2772","{","[","\u298b","\u298f","\u298d","\u013e","\u013c","\u2308","{","\u043b","\u2936","\u201c","\u201e","\u2967","\u294b","\u21b2","\u2264","\u2190","\u21a2","\u21bd","\u21bc","\u21c7","\u2194","\u21c6","\u21cb","\u21ad","\u22cb","\u22da","\u2264","\u2266","\u2a7d","\u2a7d","\u2aa8","\u2a7f","\u2a81","\u2a83","\u22da\ufe00","\u2a93","\u2a85","\u22d6","\u22da","\u2a8b","\u2276","\u2272","\u297c","\u230a","\ud835\udd29","\u2276","\u2a91","\u21bd","\u21bc","\u296a","\u2584","\u0459","\u226a","\u21c7","\u231e","\u296b","\u25fa","\u0140","\u23b0","\u23b0","\u2268","\u2a89","\u2a89","\u2a87","\u2a87","\u2268","\u22e6","\u27ec","\u21fd","\u27e6","\u27f5","\u27f7","\u27fc","\u27f6","\u21ab","\u21ac","\u2985","\ud835\udd5d","\u2a2d","\u2a34","\u2217","_","\u25ca","\u25ca","\u29eb","(","\u2993","\u21c6","\u231f","\u21cb","\u296d","\u200e","\u22bf","\u2039","\ud835\udcc1","\u21b0","\u2272","\u2a8d","\u2a8f","[","\u2018","\u201a","\u0142","<","<","\u2aa6","\u2a79","\u22d6","\u22cb","\u22c9","\u2976","\u2a7b","\u2996","\u25c3","\u22b4","\u25c2","\u294a","\u2966","\u2268\ufe00","\u2268\ufe00","\u223a","\xaf","\xaf","\u2642","\u2720","\u2720","\u21a6","\u21a6","\u21a7","\u21a4","\u21a5","\u25ae","\u2a29","\u043c","\u2014","\u2221","\ud835\udd2a","\u2127","\xb5","\xb5","\u2223","*","\u2af0","\xb7","\xb7","\u2212","\u229f","\u2238","\u2a2a","\u2adb","\u2026","\u2213","\u22a7","\ud835\udd5e","\u2213","\ud835\udcc2","\u223e","\u03bc","\u22b8","\u22b8","\u22d9\u0338","\u226b\u20d2","\u226b\u0338","\u21cd","\u21ce","\u22d8\u0338","\u226a\u20d2","\u226a\u0338","\u21cf","\u22af","\u22ae","\u2207","\u0144","\u2220\u20d2","\u2249","\u2a70\u0338","\u224b\u0338","\u0149","\u2249","\u266e","\u266e","\u2115","\xa0","\xa0","\u224e\u0338","\u224f\u0338","\u2a43","\u0148","\u0146","\u2247","\u2a6d\u0338","\u2a42","\u043d","\u2013","\u2260","\u21d7","\u2924","\u2197","\u2197","\u2250\u0338","\u2262","\u2928","\u2242\u0338","\u2204","\u2204","\ud835\udd2b","\u2267\u0338","\u2271","\u2271","\u2267\u0338","\u2a7e\u0338","\u2a7e\u0338","\u2275","\u226f","\u226f","\u21ce","\u21ae","\u2af2","\u220b","\u22fc","\u22fa","\u220b","\u045a","\u21cd","\u2266\u0338","\u219a","\u2025","\u2270","\u219a","\u21ae","\u2270","\u2266\u0338","\u2a7d\u0338","\u2a7d\u0338","\u226e","\u2274","\u226e","\u22ea","\u22ec","\u2224","\ud835\udd5f","\xac","\xac","\u2209","\u22f9\u0338","\u22f5\u0338","\u2209","\u22f7","\u22f6","\u220c","\u220c","\u22fe","\u22fd","\u2226","\u2226","\u2afd\u20e5","\u2202\u0338","\u2a14","\u2280","\u22e0","\u2aaf\u0338","\u2280","\u2aaf\u0338","\u21cf","\u219b","\u2933\u0338","\u219d\u0338","\u219b","\u22eb","\u22ed","\u2281","\u22e1","\u2ab0\u0338","\ud835\udcc3","\u2224","\u2226","\u2241","\u2244","\u2244","\u2224","\u2226","\u22e2","\u22e3","\u2284","\u2ac5\u0338","\u2288","\u2282\u20d2","\u2288","\u2ac5\u0338","\u2281","\u2ab0\u0338","\u2285","\u2ac6\u0338","\u2289","\u2283\u20d2","\u2289","\u2ac6\u0338","\u2279","\xf1","\xf1","\u2278","\u22ea","\u22ec","\u22eb","\u22ed","\u03bd","#","\u2116","\u2007","\u22ad","\u2904","\u224d\u20d2","\u22ac","\u2265\u20d2",">\u20d2","\u29de","\u2902","\u2264\u20d2","<\u20d2","\u22b4\u20d2","\u2903","\u22b5\u20d2","\u223c\u20d2","\u21d6","\u2923","\u2196","\u2196","\u2927","\u24c8","\xf3","\xf3","\u229b","\u229a","\xf4","\xf4","\u043e","\u229d","\u0151","\u2a38","\u2299","\u29bc","\u0153","\u29bf","\ud835\udd2c","\u02db","\xf2","\xf2","\u29c1","\u29b5","\u03a9","\u222e","\u21ba","\u29be","\u29bb","\u203e","\u29c0","\u014d","\u03c9","\u03bf","\u29b6","\u2296","\ud835\udd60","\u29b7","\u29b9","\u2295","\u2228","\u21bb","\u2a5d","\u2134","\u2134","\xaa","\xaa","\xba","\xba","\u22b6","\u2a56","\u2a57","\u2a5b","\u2134","\xf8","\xf8","\u2298","\xf5","\xf5","\u2297","\u2a36","\xf6","\xf6","\u233d","\u2225","\xb6","\xb6","\u2225","\u2af3","\u2afd","\u2202","\u043f","%",".","\u2030","\u22a5","\u2031","\ud835\udd2d","\u03c6","\u03d5","\u2133","\u260e","\u03c0","\u22d4","\u03d6","\u210f","\u210e","\u210f","+","\u2a23","\u229e","\u2a22","\u2214","\u2a25","\u2a72","\xb1","\xb1","\u2a26","\u2a27","\xb1","\u2a15","\ud835\udd61","\xa3","\xa3","\u227a","\u2ab3","\u2ab7","\u227c","\u2aaf","\u227a","\u2ab7","\u227c","\u2aaf","\u2ab9","\u2ab5","\u22e8","\u227e","\u2032","\u2119","\u2ab5","\u2ab9","\u22e8","\u220f","\u232e","\u2312","\u2313","\u221d","\u221d","\u227e","\u22b0","\ud835\udcc5","\u03c8","\u2008","\ud835\udd2e","\u2a0c","\ud835\udd62","\u2057","\ud835\udcc6","\u210d","\u2a16","?","\u225f",'"','"',"\u21db","\u21d2","\u291c","\u290f","\u2964","\u223d\u0331","\u0155","\u221a","\u29b3","\u27e9","\u2992","\u29a5","\u27e9","\xbb","\xbb","\u2192","\u2975","\u21e5","\u2920","\u2933","\u291e","\u21aa","\u21ac","\u2945","\u2974","\u21a3","\u219d","\u291a","\u2236","\u211a","\u290d","\u2773","}","]","\u298c","\u298e","\u2990","\u0159","\u0157","\u2309","}","\u0440","\u2937","\u2969","\u201d","\u201d","\u21b3","\u211c","\u211b","\u211c","\u211d","\u25ad","\xae","\xae","\u297d","\u230b","\ud835\udd2f","\u21c1","\u21c0","\u296c","\u03c1","\u03f1","\u2192","\u21a3","\u21c1","\u21c0","\u21c4","\u21cc","\u21c9","\u219d","\u22cc","\u02da","\u2253","\u21c4","\u21cc","\u200f","\u23b1","\u23b1","\u2aee","\u27ed","\u21fe","\u27e7","\u2986","\ud835\udd63","\u2a2e","\u2a35",")","\u2994","\u2a12","\u21c9","\u203a","\ud835\udcc7","\u21b1","]","\u2019","\u2019","\u22cc","\u22ca","\u25b9","\u22b5","\u25b8","\u29ce","\u2968","\u211e","\u015b","\u201a","\u227b","\u2ab4","\u2ab8","\u0161","\u227d","\u2ab0","\u015f","\u015d","\u2ab6","\u2aba","\u22e9","\u2a13","\u227f","\u0441","\u22c5","\u22a1","\u2a66","\u21d8","\u2925","\u2198","\u2198","\xa7","\xa7",";","\u2929","\u2216","\u2216","\u2736","\ud835\udd30","\u2322","\u266f","\u0449","\u0448","\u2223","\u2225","\xad","\xad","\u03c3","\u03c2","\u03c2","\u223c","\u2a6a","\u2243","\u2243","\u2a9e","\u2aa0","\u2a9d","\u2a9f","\u2246","\u2a24","\u2972","\u2190","\u2216","\u2a33","\u29e4","\u2223","\u2323","\u2aaa","\u2aac","\u2aac\ufe00","\u044c","/","\u29c4","\u233f","\ud835\udd64","\u2660","\u2660","\u2225","\u2293","\u2293\ufe00","\u2294","\u2294\ufe00","\u228f","\u2291","\u228f","\u2291","\u2290","\u2292","\u2290","\u2292","\u25a1","\u25a1","\u25aa","\u25aa","\u2192","\ud835\udcc8","\u2216","\u2323","\u22c6","\u2606","\u2605","\u03f5","\u03d5","\xaf","\u2282","\u2ac5","\u2abd","\u2286","\u2ac3","\u2ac1","\u2acb","\u228a","\u2abf","\u2979","\u2282","\u2286","\u2ac5","\u228a","\u2acb","\u2ac7","\u2ad5","\u2ad3","\u227b","\u2ab8","\u227d","\u2ab0","\u2aba","\u2ab6","\u22e9","\u227f","\u2211","\u266a","\xb9","\xb9","\xb2","\xb2","\xb3","\xb3","\u2283","\u2ac6","\u2abe","\u2ad8","\u2287","\u2ac4","\u27c9","\u2ad7","\u297b","\u2ac2","\u2acc","\u228b","\u2ac0","\u2283","\u2287","\u2ac6","\u228b","\u2acc","\u2ac8","\u2ad4","\u2ad6","\u21d9","\u2926","\u2199","\u2199","\u292a","\xdf","\xdf","\u2316","\u03c4","\u23b4","\u0165","\u0163","\u0442","\u20db","\u2315","\ud835\udd31","\u2234","\u2234","\u03b8","\u03d1","\u03d1","\u2248","\u223c","\u2009","\u2248","\u223c","\xfe","\xfe","\u02dc","\xd7","\xd7","\u22a0","\u2a31","\u2a30","\u222d","\u2928","\u22a4","\u2336","\u2af1","\ud835\udd65","\u2ada","\u2929","\u2034","\u2122","\u25b5","\u25bf","\u25c3","\u22b4","\u225c","\u25b9","\u22b5","\u25ec","\u225c","\u2a3a","\u2a39","\u29cd","\u2a3b","\u23e2","\ud835\udcc9","\u0446","\u045b","\u0167","\u226c","\u219e","\u21a0","\u21d1","\u2963","\xfa","\xfa","\u2191","\u045e","\u016d","\xfb","\xfb","\u0443","\u21c5","\u0171","\u296e","\u297e","\ud835\udd32","\xf9","\xf9","\u21bf","\u21be","\u2580","\u231c","\u231c","\u230f","\u25f8","\u016b","\xa8","\xa8","\u0173","\ud835\udd66","\u2191","\u2195","\u21bf","\u21be","\u228e","\u03c5","\u03d2","\u03c5","\u21c8","\u231d","\u231d","\u230e","\u016f","\u25f9","\ud835\udcca","\u22f0","\u0169","\u25b5","\u25b4","\u21c8","\xfc","\xfc","\u29a7","\u21d5","\u2ae8","\u2ae9","\u22a8","\u299c","\u03f5","\u03f0","\u2205","\u03d5","\u03d6","\u221d","\u2195","\u03f1","\u03c2","\u228a\ufe00","\u2acb\ufe00","\u228b\ufe00","\u2acc\ufe00","\u03d1","\u22b2","\u22b3","\u0432","\u22a2","\u2228","\u22bb","\u225a","\u22ee","|","|","\ud835\udd33","\u22b2","\u2282\u20d2","\u2283\u20d2","\ud835\udd67","\u221d","\u22b3","\ud835\udccb","\u2acb\ufe00","\u228a\ufe00","\u2acc\ufe00","\u228b\ufe00","\u299a","\u0175","\u2a5f","\u2227","\u2259","\u2118","\ud835\udd34","\ud835\udd68","\u2118","\u2240","\u2240","\ud835\udccc","\u22c2","\u25ef","\u22c3","\u25bd","\ud835\udd35","\u27fa","\u27f7","\u03be","\u27f8","\u27f5","\u27fc","\u22fb","\u2a00","\ud835\udd69","\u2a01","\u2a02","\u27f9","\u27f6","\ud835\udccd","\u2a06","\u2a04","\u25b3","\u22c1","\u22c0","\xfd","\xfd","\u044f","\u0177","\u044b","\xa5","\xa5","\ud835\udd36","\u0457","\ud835\udd6a","\ud835\udcce","\u044e","\xff","\xff","\u017a","\u017e","\u0437","\u017c","\u2128","\u03b6","\ud835\udd37","\u0436","\u21dd","\ud835\udd6b","\ud835\udccf","\u200d","\u200c"],t.o) B.L_={attributename:0,attributetype:1,basefrequency:2,baseprofile:3,calcmode:4,clippathunits:5,contentscripttype:6,contentstyletype:7,diffuseconstant:8,edgemode:9,externalresourcesrequired:10,filterres:11,filterunits:12,glyphref:13,gradienttransform:14,gradientunits:15,kernelmatrix:16,kernelunitlength:17,keypoints:18,keysplines:19,keytimes:20,lengthadjust:21,limitingconeangle:22,markerheight:23,markerunits:24,markerwidth:25,maskcontentunits:26,maskunits:27,numoctaves:28,pathlength:29,patterncontentunits:30,patterntransform:31,patternunits:32,pointsatx:33,pointsaty:34,pointsatz:35,preservealpha:36,preserveaspectratio:37,primitiveunits:38,refx:39,refy:40,repeatcount:41,repeatdur:42,requiredextensions:43,requiredfeatures:44,specularconstant:45,specularexponent:46,spreadmethod:47,startoffset:48,stddeviation:49,stitchtiles:50,surfacescale:51,systemlanguage:52,tablevalues:53,targetx:54,targety:55,textlength:56,viewbox:57,viewtarget:58,xchannelselector:59,ychannelselector:60,zoomandpan:61} B.DI=new A.r(B.L_,["attributeName","attributeType","baseFrequency","baseProfile","calcMode","clipPathUnits","contentScriptType","contentStyleType","diffuseConstant","edgeMode","externalResourcesRequired","filterRes","filterUnits","glyphRef","gradientTransform","gradientUnits","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","numOctaves","pathLength","patternContentUnits","patternTransform","patternUnits","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","specularConstant","specularExponent","spreadMethod","startOffset","stdDeviation","stitchTiles","surfaceScale","systemLanguage","tableValues","targetX","targetY","textLength","viewBox","viewTarget","xChannelSelector","yChannelSelector","zoomAndPan"],t.o) B.L1={"null-character":0,"invalid-codepoint":1,"incorrectly-placed-solidus":2,"incorrect-cr-newline-entity":3,"illegal-windows-1252-entity":4,"cant-convert-numeric-entity":5,"illegal-codepoint-for-numeric-entity":6,"numeric-entity-without-semicolon":7,"expected-numeric-entity-but-got-eof":8,"expected-numeric-entity":9,"named-entity-without-semicolon":10,"expected-named-entity":11,"attributes-in-end-tag":12,"self-closing-flag-on-end-tag":13,"expected-tag-name-but-got-right-bracket":14,"expected-tag-name-but-got-question-mark":15,"expected-tag-name":16,[u.g]:17,"expected-closing-tag-but-got-eof":18,"expected-closing-tag-but-got-char":19,"eof-in-tag-name":20,"expected-attribute-name-but-got-eof":21,"eof-in-attribute-name":22,"invalid-character-in-attribute-name":23,"duplicate-attribute":24,"expected-end-of-tag-name-but-got-eof":25,"expected-attribute-value-but-got-eof":26,[u.F]:27,"equals-in-unquoted-attribute-value":28,[u.V]:29,"invalid-character-after-attribute-name":30,[u.H]:31,"eof-in-attribute-value-double-quote":32,"eof-in-attribute-value-single-quote":33,"eof-in-attribute-value-no-quotes":34,"unexpected-EOF-after-solidus-in-tag":35,[u.B]:36,"expected-dashes-or-doctype":37,[u.x]:38,"unexpected-space-after-double-dash-in-comment":39,"incorrect-comment":40,"eof-in-comment":41,"eof-in-comment-end-dash":42,[u.K]:43,"eof-in-comment-double-dash":44,"eof-in-comment-end-space-state":45,"eof-in-comment-end-bang-state":46,"unexpected-char-in-comment":47,"need-space-after-doctype":48,[u.f]:49,"expected-doctype-name-but-got-eof":50,"eof-in-doctype-name":51,"eof-in-doctype":52,[u.p]:53,"unexpected-end-of-doctype":54,"unexpected-char-in-doctype":55,"eof-in-innerhtml":56,"unexpected-doctype":57,"non-html-root":58,"expected-doctype-but-got-eof":59,"unknown-doctype":60,"expected-doctype-but-got-chars":61,"expected-doctype-but-got-start-tag":62,"expected-doctype-but-got-end-tag":63,"end-tag-after-implied-root":64,"expected-named-closing-tag-but-got-eof":65,"two-heads-are-not-better-than-one":66,"unexpected-end-tag":67,"unexpected-start-tag-out-of-my-head":68,"unexpected-start-tag":69,"missing-end-tag":70,"missing-end-tags":71,"unexpected-start-tag-implies-end-tag":72,"unexpected-start-tag-treated-as":73,"deprecated-tag":74,"unexpected-start-tag-ignored":75,"expected-one-end-tag-but-got-another":76,"end-tag-too-early":77,"end-tag-too-early-named":78,"end-tag-too-early-ignored":79,"adoption-agency-1.1":80,"adoption-agency-1.2":81,"adoption-agency-1.3":82,"unexpected-end-tag-treated-as":83,"no-end-tag":84,"unexpected-implied-end-tag-in-table":85,"unexpected-implied-end-tag-in-table-body":86,"unexpected-char-implies-table-voodoo":87,"unexpected-hidden-input-in-table":88,"unexpected-form-in-table":89,[u.M]:90,"unexpected-end-tag-implies-table-voodoo":91,"unexpected-cell-in-table-body":92,"unexpected-cell-end-tag":93,"unexpected-end-tag-in-table-body":94,"unexpected-implied-end-tag-in-table-row":95,"unexpected-end-tag-in-table-row":96,"unexpected-select-in-select":97,"unexpected-input-in-select":98,"unexpected-start-tag-in-select":99,"unexpected-end-tag-in-select":100,[u.a]:101,[u.r]:102,"unexpected-char-after-body":103,"unexpected-start-tag-after-body":104,"unexpected-end-tag-after-body":105,"unexpected-char-in-frameset":106,"unexpected-start-tag-in-frameset":107,[u.q]:108,"unexpected-end-tag-in-frameset":109,"unexpected-char-after-frameset":110,"unexpected-start-tag-after-frameset":111,"unexpected-end-tag-after-frameset":112,"unexpected-end-tag-after-body-innerhtml":113,"expected-eof-but-got-char":114,"expected-eof-but-got-start-tag":115,"expected-eof-but-got-end-tag":116,"eof-in-table":117,"eof-in-select":118,"eof-in-frameset":119,"eof-in-script-in-script":120,"eof-in-foreign-lands":121,"non-void-element-with-trailing-solidus":122,[u.G]:123,"unexpected-end-tag-before-html":124,"undefined-error":125} B.fX=new A.r(B.L1,["Null character in input stream, replaced with U+FFFD.","Invalid codepoint in stream.","Solidus (/) incorrectly placed in tag.","Incorrect CR newline entity, replaced with LF.","Entity used with illegal number (windows-1252 reference).","Numeric entity couldn't be converted to character (codepoint U+%(charAsInt)08x).","Numeric entity represents an illegal codepoint: U+%(charAsInt)08x.","Numeric entity didn't end with ';'.","Numeric entity expected. Got end of file instead.","Numeric entity expected but none found.","Named entity didn't end with ';'.","Named entity expected. Got none.","End tag contains unexpected attributes.","End tag contains unexpected self-closing flag.","Expected tag name. Got '>' instead.","Expected tag name. Got '?' instead. (HTML doesn't support processing instructions.)","Expected tag name. Got something else instead","Expected closing tag. Got '>' instead. Ignoring ''.","Expected closing tag. Unexpected end of file.","Expected closing tag. Unexpected character '%(data)s' found.","Unexpected end of file in the tag name.","Unexpected end of file. Expected attribute name instead.","Unexpected end of file in attribute name.","Invalid character in attribute name","Dropped duplicate attribute on tag.","Unexpected end of file. Expected = or end of tag.","Unexpected end of file. Expected attribute value.","Expected attribute value. Got '>' instead.","Unexpected = in unquoted attribute","Unexpected character in unquoted attribute","Unexpected character after attribute name.","Unexpected character after attribute value.",'Unexpected end of file in attribute value (".',"Unexpected end of file in attribute value (').","Unexpected end of file in attribute value.","Unexpected end of file in tag. Expected >","Unexpected character after / in tag. Expected >","Expected '--' or 'DOCTYPE'. Not found.","Unexpected ! after -- in comment","Unexpected space after -- in comment","Incorrect comment.","Unexpected end of file in comment.","Unexpected end of file in comment (-)","Unexpected '-' after '--' found in comment.","Unexpected end of file in comment (--).","Unexpected end of file in comment.","Unexpected end of file in comment.","Unexpected character in comment found.","No space after literal string 'DOCTYPE'.","Unexpected > character. Expected DOCTYPE name.","Unexpected end of file. Expected DOCTYPE name.","Unexpected end of file in DOCTYPE name.","Unexpected end of file in DOCTYPE.","Expected space or '>'. Got '%(data)s'","Unexpected end of DOCTYPE.","Unexpected character in DOCTYPE.","XXX innerHTML EOF","Unexpected DOCTYPE. Ignored.","html needs to be the first start tag.","Unexpected End of file. Expected DOCTYPE.","Erroneous DOCTYPE.","Unexpected non-space characters. Expected DOCTYPE.","Unexpected start tag (%(name)s). Expected DOCTYPE.","Unexpected end tag (%(name)s). Expected DOCTYPE.","Unexpected end tag (%(name)s) after the (implied) root element.","Unexpected end of file. Expected end tag (%(name)s).","Unexpected start tag head in existing head. Ignored.","Unexpected end tag (%(name)s). Ignored.","Unexpected start tag (%(name)s) that can be in head. Moved.","Unexpected start tag (%(name)s).","Missing end tag (%(name)s).","Missing end tags (%(name)s).","Unexpected start tag (%(startName)s) implies end tag (%(endName)s).","Unexpected start tag (%(originalName)s). Treated as %(newName)s.","Unexpected start tag %(name)s. Don't use it!","Unexpected start tag %(name)s. Ignored.","Unexpected end tag (%(gotName)s). Missing end tag (%(expectedName)s).","End tag (%(name)s) seen too early. Expected other end tag.","Unexpected end tag (%(gotName)s). Expected end tag (%(expectedName)s).","End tag (%(name)s) seen too early. Ignored.","End tag (%(name)s) violates step 1, paragraph 1 of the adoption agency algorithm.","End tag (%(name)s) violates step 1, paragraph 2 of the adoption agency algorithm.","End tag (%(name)s) violates step 1, paragraph 3 of the adoption agency algorithm.","Unexpected end tag (%(originalName)s). Treated as %(newName)s.","This element (%(name)s) has no end tag.","Unexpected implied end tag (%(name)s) in the table phase.","Unexpected implied end tag (%(name)s) in the table body phase.","Unexpected non-space characters in table context caused voodoo mode.","Unexpected input with type hidden in table context.","Unexpected form in table context.","Unexpected start tag (%(name)s) in table context caused voodoo mode.","Unexpected end tag (%(name)s) in table context caused voodoo mode.","Unexpected table cell start tag (%(name)s) in the table body phase.","Got table cell end tag (%(name)s) while required end tags are missing.","Unexpected end tag (%(name)s) in the table body phase. Ignored.","Unexpected implied end tag (%(name)s) in the table row phase.","Unexpected end tag (%(name)s) in the table row phase. Ignored.","Unexpected select start tag in the select phase treated as select end tag.","Unexpected input start tag in the select phase.","Unexpected start tag token (%(name)s in the select phase. Ignored.","Unexpected end tag (%(name)s) in the select phase. Ignored.","Unexpected table element start tag (%(name)s) in the select in table phase.","Unexpected table element end tag (%(name)s) in the select in table phase.","Unexpected non-space characters in the after body phase.","Unexpected start tag token (%(name)s) in the after body phase.","Unexpected end tag token (%(name)s) in the after body phase.","Unexpected characters in the frameset phase. Characters ignored.","Unexpected start tag token (%(name)s) in the frameset phase. Ignored.","Unexpected end tag token (frameset) in the frameset phase (innerHTML).","Unexpected end tag token (%(name)s) in the frameset phase. Ignored.","Unexpected non-space characters in the after frameset phase. Ignored.","Unexpected start tag (%(name)s) in the after frameset phase. Ignored.","Unexpected end tag (%(name)s) in the after frameset phase. Ignored.","Unexpected end tag after body(innerHtml)","Unexpected non-space characters. Expected end of file.","Unexpected start tag (%(name)s). Expected end of file.","Unexpected end tag (%(name)s). Expected end of file.","Unexpected end of file. Expected table content.","Unexpected end of file. Expected select content.","Unexpected end of file. Expected frameset content.","Unexpected end of file. Expected script content.","Unexpected end of file. Expected foreign content","Trailing solidus not allowed on element %(name)s","Element %(name)s not allowed in a non-html context","Unexpected end tag (%(name)s) before html.","Undefined error (this sucks and should be fixed)"],t.o) -B.hx=new A.no(!1) -B.cG=new A.ae('"',1,"DOUBLE_QUOTE") -B.Mf=new A.l("",B.cG) -B.LP=new A.l("http://www.w3.org/1999/xhtml","address") +B.hx=new A.ns(!1) +B.cG=new A.ag('"',1,"DOUBLE_QUOTE") +B.Mg=new A.l("",B.cG) +B.LQ=new A.l("http://www.w3.org/1999/xhtml","address") B.hI=new A.l("http://www.w3.org/1999/xhtml","applet") -B.LJ=new A.l("http://www.w3.org/1999/xhtml","area") -B.Me=new A.l("http://www.w3.org/1999/xhtml","article") -B.LV=new A.l("http://www.w3.org/1999/xhtml","aside") -B.LQ=new A.l("http://www.w3.org/1999/xhtml","base") -B.Lz=new A.l("http://www.w3.org/1999/xhtml","basefont") -B.Lu=new A.l("http://www.w3.org/1999/xhtml","bgsound") -B.Lh=new A.l("http://www.w3.org/1999/xhtml","blockquote") -B.LA=new A.l("http://www.w3.org/1999/xhtml","body") -B.Ln=new A.l("http://www.w3.org/1999/xhtml","br") +B.LK=new A.l("http://www.w3.org/1999/xhtml","area") +B.Mf=new A.l("http://www.w3.org/1999/xhtml","article") +B.LW=new A.l("http://www.w3.org/1999/xhtml","aside") +B.LR=new A.l("http://www.w3.org/1999/xhtml","base") +B.LA=new A.l("http://www.w3.org/1999/xhtml","basefont") +B.Lv=new A.l("http://www.w3.org/1999/xhtml","bgsound") +B.Li=new A.l("http://www.w3.org/1999/xhtml","blockquote") +B.LB=new A.l("http://www.w3.org/1999/xhtml","body") +B.Lo=new A.l("http://www.w3.org/1999/xhtml","br") B.hF=new A.l("http://www.w3.org/1999/xhtml","button") B.hE=new A.l("http://www.w3.org/1999/xhtml","caption") -B.M7=new A.l("http://www.w3.org/1999/xhtml","center") -B.M6=new A.l("http://www.w3.org/1999/xhtml","col") -B.Ld=new A.l("http://www.w3.org/1999/xhtml","colgroup") -B.Mb=new A.l("http://www.w3.org/1999/xhtml","command") -B.LL=new A.l("http://www.w3.org/1999/xhtml","dd") -B.LS=new A.l("http://www.w3.org/1999/xhtml","details") -B.Le=new A.l("http://www.w3.org/1999/xhtml","dir") -B.Lm=new A.l("http://www.w3.org/1999/xhtml","div") -B.LR=new A.l("http://www.w3.org/1999/xhtml","dl") -B.Lb=new A.l("http://www.w3.org/1999/xhtml","dt") -B.Lo=new A.l("http://www.w3.org/1999/xhtml","embed") -B.M9=new A.l("http://www.w3.org/1999/xhtml","fieldset") -B.La=new A.l("http://www.w3.org/1999/xhtml","figure") -B.M8=new A.l("http://www.w3.org/1999/xhtml","footer") -B.M0=new A.l("http://www.w3.org/1999/xhtml","form") -B.Lf=new A.l("http://www.w3.org/1999/xhtml","frame") -B.LO=new A.l("http://www.w3.org/1999/xhtml","frameset") -B.M_=new A.l("http://www.w3.org/1999/xhtml","h1") -B.Lg=new A.l("http://www.w3.org/1999/xhtml","h2") -B.Lk=new A.l("http://www.w3.org/1999/xhtml","h3") -B.LM=new A.l("http://www.w3.org/1999/xhtml","h4") -B.LN=new A.l("http://www.w3.org/1999/xhtml","h5") -B.LU=new A.l("http://www.w3.org/1999/xhtml","h6") -B.M5=new A.l("http://www.w3.org/1999/xhtml","head") -B.LH=new A.l("http://www.w3.org/1999/xhtml","header") -B.M3=new A.l("http://www.w3.org/1999/xhtml","hr") +B.M8=new A.l("http://www.w3.org/1999/xhtml","center") +B.M7=new A.l("http://www.w3.org/1999/xhtml","col") +B.Le=new A.l("http://www.w3.org/1999/xhtml","colgroup") +B.Mc=new A.l("http://www.w3.org/1999/xhtml","command") +B.LM=new A.l("http://www.w3.org/1999/xhtml","dd") +B.LT=new A.l("http://www.w3.org/1999/xhtml","details") +B.Lf=new A.l("http://www.w3.org/1999/xhtml","dir") +B.Ln=new A.l("http://www.w3.org/1999/xhtml","div") +B.LS=new A.l("http://www.w3.org/1999/xhtml","dl") +B.Lc=new A.l("http://www.w3.org/1999/xhtml","dt") +B.Lp=new A.l("http://www.w3.org/1999/xhtml","embed") +B.Ma=new A.l("http://www.w3.org/1999/xhtml","fieldset") +B.Lb=new A.l("http://www.w3.org/1999/xhtml","figure") +B.M9=new A.l("http://www.w3.org/1999/xhtml","footer") +B.M1=new A.l("http://www.w3.org/1999/xhtml","form") +B.Lg=new A.l("http://www.w3.org/1999/xhtml","frame") +B.LP=new A.l("http://www.w3.org/1999/xhtml","frameset") +B.M0=new A.l("http://www.w3.org/1999/xhtml","h1") +B.Lh=new A.l("http://www.w3.org/1999/xhtml","h2") +B.Ll=new A.l("http://www.w3.org/1999/xhtml","h3") +B.LN=new A.l("http://www.w3.org/1999/xhtml","h4") +B.LO=new A.l("http://www.w3.org/1999/xhtml","h5") +B.LV=new A.l("http://www.w3.org/1999/xhtml","h6") +B.M6=new A.l("http://www.w3.org/1999/xhtml","head") +B.LI=new A.l("http://www.w3.org/1999/xhtml","header") +B.M4=new A.l("http://www.w3.org/1999/xhtml","hr") B.cA=new A.l("http://www.w3.org/1999/xhtml","html") -B.Li=new A.l("http://www.w3.org/1999/xhtml","iframe") -B.LG=new A.l("http://www.w3.org/1999/xhtml","image") -B.Lc=new A.l("http://www.w3.org/1999/xhtml","img") -B.Mg=new A.l("http://www.w3.org/1999/xhtml","input") -B.Ll=new A.l("http://www.w3.org/1999/xhtml","isindex") -B.M4=new A.l("http://www.w3.org/1999/xhtml","li") -B.LB=new A.l("http://www.w3.org/1999/xhtml","link") -B.Ly=new A.l("http://www.w3.org/1999/xhtml","listing") +B.Lj=new A.l("http://www.w3.org/1999/xhtml","iframe") +B.LH=new A.l("http://www.w3.org/1999/xhtml","image") +B.Ld=new A.l("http://www.w3.org/1999/xhtml","img") +B.Mh=new A.l("http://www.w3.org/1999/xhtml","input") +B.Lm=new A.l("http://www.w3.org/1999/xhtml","isindex") +B.M5=new A.l("http://www.w3.org/1999/xhtml","li") +B.LC=new A.l("http://www.w3.org/1999/xhtml","link") +B.Lz=new A.l("http://www.w3.org/1999/xhtml","listing") B.hD=new A.l("http://www.w3.org/1999/xhtml","marquee") -B.M2=new A.l("http://www.w3.org/1999/xhtml","men") -B.Lj=new A.l("http://www.w3.org/1999/xhtml","meta") -B.LT=new A.l("http://www.w3.org/1999/xhtml","nav") -B.Mc=new A.l("http://www.w3.org/1999/xhtml","noembed") -B.LI=new A.l("http://www.w3.org/1999/xhtml","noframes") -B.Lq=new A.l("http://www.w3.org/1999/xhtml","noscript") +B.M3=new A.l("http://www.w3.org/1999/xhtml","men") +B.Lk=new A.l("http://www.w3.org/1999/xhtml","meta") +B.LU=new A.l("http://www.w3.org/1999/xhtml","nav") +B.Md=new A.l("http://www.w3.org/1999/xhtml","noembed") +B.LJ=new A.l("http://www.w3.org/1999/xhtml","noframes") +B.Lr=new A.l("http://www.w3.org/1999/xhtml","noscript") B.hy=new A.l("http://www.w3.org/1999/xhtml","object") B.hN=new A.l("http://www.w3.org/1999/xhtml","ol") -B.Lr=new A.l("http://www.w3.org/1999/xhtml","p") -B.LK=new A.l("http://www.w3.org/1999/xhtml","param") -B.Lw=new A.l("http://www.w3.org/1999/xhtml","plaintext") -B.Lx=new A.l("http://www.w3.org/1999/xhtml","pre") -B.LY=new A.l("http://www.w3.org/1999/xhtml","script") -B.Lp=new A.l("http://www.w3.org/1999/xhtml","section") -B.Ls=new A.l("http://www.w3.org/1999/xhtml","select") -B.M1=new A.l("http://www.w3.org/1999/xhtml","style") +B.Ls=new A.l("http://www.w3.org/1999/xhtml","p") +B.LL=new A.l("http://www.w3.org/1999/xhtml","param") +B.Lx=new A.l("http://www.w3.org/1999/xhtml","plaintext") +B.Ly=new A.l("http://www.w3.org/1999/xhtml","pre") +B.LZ=new A.l("http://www.w3.org/1999/xhtml","script") +B.Lq=new A.l("http://www.w3.org/1999/xhtml","section") +B.Lt=new A.l("http://www.w3.org/1999/xhtml","select") +B.M2=new A.l("http://www.w3.org/1999/xhtml","style") B.cz=new A.l("http://www.w3.org/1999/xhtml","table") -B.Lt=new A.l("http://www.w3.org/1999/xhtml","tbody") +B.Lu=new A.l("http://www.w3.org/1999/xhtml","tbody") B.hB=new A.l("http://www.w3.org/1999/xhtml","td") -B.Mh=new A.l("http://www.w3.org/1999/xhtml","textarea") -B.LF=new A.l("http://www.w3.org/1999/xhtml","tfoot") +B.Mi=new A.l("http://www.w3.org/1999/xhtml","textarea") +B.LG=new A.l("http://www.w3.org/1999/xhtml","tfoot") B.hJ=new A.l("http://www.w3.org/1999/xhtml","th") -B.Md=new A.l("http://www.w3.org/1999/xhtml","thead") -B.LC=new A.l("http://www.w3.org/1999/xhtml","title") -B.LE=new A.l("http://www.w3.org/1999/xhtml","tr") +B.Me=new A.l("http://www.w3.org/1999/xhtml","thead") +B.LD=new A.l("http://www.w3.org/1999/xhtml","title") +B.LF=new A.l("http://www.w3.org/1999/xhtml","tr") B.hC=new A.l("http://www.w3.org/1999/xhtml","ul") -B.LX=new A.l("http://www.w3.org/1999/xhtml","wbr") -B.LW=new A.l("http://www.w3.org/1999/xhtml","xmp") +B.LY=new A.l("http://www.w3.org/1999/xhtml","wbr") +B.LX=new A.l("http://www.w3.org/1999/xhtml","xmp") B.cB=new A.l("http://www.w3.org/2000/svg","foreignObject") -B.cC=new A.aO([B.LP,B.hI,B.LJ,B.Me,B.LV,B.LQ,B.Lz,B.Lu,B.Lh,B.LA,B.Ln,B.hF,B.hE,B.M7,B.M6,B.Ld,B.Mb,B.LL,B.LS,B.Le,B.Lm,B.LR,B.Lb,B.Lo,B.M9,B.La,B.M8,B.M0,B.Lf,B.LO,B.M_,B.Lg,B.Lk,B.LM,B.LN,B.LU,B.M5,B.LH,B.M3,B.cA,B.Li,B.LG,B.Lc,B.Mg,B.Ll,B.M4,B.LB,B.Ly,B.hD,B.M2,B.Lj,B.LT,B.Mc,B.LI,B.Lq,B.hy,B.hN,B.Lr,B.LK,B.Lw,B.Lx,B.LY,B.Lp,B.Ls,B.M1,B.cz,B.Lt,B.hB,B.Mh,B.LF,B.hJ,B.Md,B.LC,B.LE,B.hC,B.LX,B.LW,B.cB],t.m) -B.Mi=new A.aO([B.hF],t.m) -B.L6={h1:0,h2:1,h3:2,h4:3,h5:4,h6:5,p:6,div:7,li:8,blockquote:9,pre:10,tr:11,figure:12} -B.Mj=new A.bf(B.L6,13,t.d) -B.Mk=new A.aO([38,62,34,39,61,60,96,32,10,13,9,12],A.Y("aO")) +B.cC=new A.aP([B.LQ,B.hI,B.LK,B.Mf,B.LW,B.LR,B.LA,B.Lv,B.Li,B.LB,B.Lo,B.hF,B.hE,B.M8,B.M7,B.Le,B.Mc,B.LM,B.LT,B.Lf,B.Ln,B.LS,B.Lc,B.Lp,B.Ma,B.Lb,B.M9,B.M1,B.Lg,B.LP,B.M0,B.Lh,B.Ll,B.LN,B.LO,B.LV,B.M6,B.LI,B.M4,B.cA,B.Lj,B.LH,B.Ld,B.Mh,B.Lm,B.M5,B.LC,B.Lz,B.hD,B.M3,B.Lk,B.LU,B.Md,B.LJ,B.Lr,B.hy,B.hN,B.Ls,B.LL,B.Lx,B.Ly,B.LZ,B.Lq,B.Lt,B.M2,B.cz,B.Lu,B.hB,B.Mi,B.LG,B.hJ,B.Me,B.LD,B.LF,B.hC,B.LY,B.LX,B.cB],t.m) +B.Mj=new A.aP([B.hF],t.m) +B.L7={h1:0,h2:1,h3:2,h4:3,h5:4,h6:5,p:6,div:7,li:8,blockquote:9,pre:10,tr:11,figure:12} +B.Mk=new A.b8(B.L7,13,t.b) +B.Ml=new A.aP([38,62,34,39,61,60,96,32,10,13,9,12],A.a_("aP")) B.hW=new A.bm(0,"ATTRIBUTE") -B.aB=new A.aO([B.hW],t.fr) +B.aB=new A.aP([B.hW],t.fr) B.bA=new A.bm(1,"CDATA") B.bD=new A.bm(2,"COMMENT") B.cH=new A.bm(3,"DECLARATION") @@ -20290,138 +20406,140 @@ B.cI=new A.bm(4,"DOCUMENT_TYPE") B.aT=new A.bm(7,"ELEMENT") B.bB=new A.bm(10,"PROCESSING") B.bC=new A.bm(11,"TEXT") -B.hO=new A.aO([B.bA,B.bD,B.cH,B.cI,B.aT,B.bB,B.bC],t.fr) +B.hO=new A.aP([B.bA,B.bD,B.cH,B.cI,B.aT,B.bB,B.bC],t.fr) +B.L6={ol:0,ul:1,menu:2} +B.Mm=new A.b8(B.L6,3,t.b) B.hA=new A.l("http://www.w3.org/1998/Math/MathML","mi") B.hH=new A.l("http://www.w3.org/1998/Math/MathML","mo") B.hM=new A.l("http://www.w3.org/1998/Math/MathML","mn") B.hz=new A.l("http://www.w3.org/1998/Math/MathML","ms") B.hL=new A.l("http://www.w3.org/1998/Math/MathML","mtext") -B.hP=new A.aO([B.hA,B.hH,B.hM,B.hz,B.hL],t.m) +B.hP=new A.aP([B.hA,B.hH,B.hM,B.hz,B.hL],t.m) B.KV={style:0,script:1,xmp:2,iframe:3,noembed:4,noframes:5,noscript:6} -B.Ml=new A.bf(B.KV,7,t.d) +B.Mn=new A.b8(B.KV,7,t.b) B.KZ={table:0,tbody:1,tfoot:2,thead:3,tr:4} -B.hQ=new A.bf(B.KZ,5,t.d) -B.L9={script:0,form:1,iframe:2,object:3,embed:4,input:5,button:6,link:7,style:8,video:9,audio:10,source:11,track:12,use:13} -B.hR=new A.bf(B.L9,14,t.d) -B.cD=new A.bf(B.aS,0,A.Y("bf<+(e,e)>")) -B.Mm=new A.aO([B.hN,B.hC],t.m) -B.bz=new A.aO([B.bA,B.bD,B.aT,B.bB,B.bC],t.fr) +B.hQ=new A.b8(B.KZ,5,t.b) +B.La={script:0,form:1,iframe:2,object:3,embed:4,input:5,button:6,link:7,style:8,video:9,audio:10,source:11,track:12,use:13} +B.hR=new A.b8(B.La,14,t.b) +B.cD=new A.b8(B.aS,0,A.a_("b8<+(e,e)>")) +B.Mo=new A.aP([B.hN,B.hC],t.m) +B.bz=new A.aP([B.bA,B.bD,B.aT,B.bB,B.bC],t.fr) B.L5={em:0,i:1} -B.Mn=new A.bf(B.L5,2,t.d) -B.LZ=new A.l("http://www.w3.org/1999/xhtml","optgroup") -B.Ma=new A.l("http://www.w3.org/1999/xhtml","option") -B.Mo=new A.aO([B.LZ,B.Ma],t.m) +B.Mp=new A.b8(B.L5,2,t.b) +B.M_=new A.l("http://www.w3.org/1999/xhtml","optgroup") +B.Mb=new A.l("http://www.w3.org/1999/xhtml","option") +B.Mq=new A.aP([B.M_,B.Mb],t.m) B.L2={strong:0,b:1,th:2} -B.Mp=new A.bf(B.L2,3,t.d) -B.Mq=new A.aO([B.cA,B.cz],t.m) -B.LD=new A.l("http://www.w3.org/1998/Math/MathML","annotation-xml") +B.Mr=new A.b8(B.L2,3,t.b) +B.Ms=new A.aP([B.cA,B.cz],t.m) +B.LE=new A.l("http://www.w3.org/1998/Math/MathML","annotation-xml") B.hK=new A.l("http://www.w3.org/2000/svg","desc") B.hG=new A.l("http://www.w3.org/2000/svg","title") -B.cE=new A.aO([B.hI,B.hE,B.cA,B.hD,B.hy,B.cz,B.hB,B.hJ,B.hA,B.hH,B.hM,B.hz,B.hL,B.LD,B.cB,B.hK,B.hG],t.m) +B.cE=new A.aP([B.hI,B.hE,B.cA,B.hD,B.hy,B.cz,B.hB,B.hJ,B.hA,B.hH,B.hM,B.hz,B.hL,B.LE,B.cB,B.hK,B.hG],t.m) B.L4={after:0,before:1,"first-letter":2,"first-line":3} -B.Mr=new A.bf(B.L4,4,t.d) -B.Lv=new A.l("http://www.w3.org/1998/Math/MathML","annotaion-xml") -B.Ms=new A.aO([B.Lv,B.cB,B.hK,B.hG],t.m) +B.Mt=new A.b8(B.L4,4,t.b) +B.Lw=new A.l("http://www.w3.org/1998/Math/MathML","annotaion-xml") +B.Mu=new A.aP([B.Lw,B.cB,B.hK,B.hG],t.m) B.KX={h1:0,h2:1,h3:2,h4:3,h5:4,h6:5} -B.hS=new A.bf(B.KX,6,t.d) +B.hS=new A.b8(B.KX,6,t.b) B.hT=new A.d3("") B.hU=new A.cf("_throwNoParent") -B.Mt=new A.cf("call") -B.Mu=A.c7("zE") -B.Mv=A.c7("zF") -B.Mw=A.c7("vH") -B.Mx=A.c7("vI") -B.My=A.c7("vO") -B.Mz=A.c7("iP") -B.MA=A.c7("vP") -B.MB=A.c7("p") -B.MC=A.c7("qi") -B.MD=A.c7("qj") -B.ME=A.c7("wO") -B.MF=A.c7("jX") -B.hV=new A.k3(!1) -B.MG=new A.ae("'",0,"SINGLE_QUOTE") -B.MH=new A.bm(5,"DOCUMENT") +B.Mv=new A.cf("call") +B.Mw=A.c7("zJ") +B.Mx=A.c7("zK") +B.My=A.c7("vM") +B.Mz=A.c7("vN") +B.MA=A.c7("vT") +B.MB=A.c7("iQ") +B.MC=A.c7("vU") +B.MD=A.c7("p") +B.ME=A.c7("qn") +B.MF=A.c7("qo") +B.MG=A.c7("wT") +B.MH=A.c7("jZ") +B.hV=new A.k5(!1) +B.MI=new A.ag("'",0,"SINGLE_QUOTE") +B.MJ=new A.bm(5,"DOCUMENT") B.hX=new A.bm(6,"DOCUMENT_FRAGMENT") B.aC=new A.h7(0,"none") B.hY=new A.h7(1,"zipCrypto") -B.hZ=new A.h7(2,"aes")})();(function staticFields(){$.oM=null -$.bF=A.i([],A.Y("y

")) -$.rJ=null -$.rc=null -$.rb=null -$.uq=null -$.ub=null -$.uC=null -$.ps=null -$.pC=null -$.qQ=null -$.oR=A.i([],A.Y("y?>")) +B.hZ=new A.h7(2,"aes")})();(function staticFields(){$.oQ=null +$.bF=A.i([],A.a_("y

")) +$.rO=null +$.rh=null +$.rg=null +$.uv=null +$.ug=null +$.uH=null +$.py=null +$.pI=null +$.qV=null +$.oV=A.i([],A.a_("y?>")) $.eF=null $.hD=null $.hE=null -$.qH=!1 -$.am=B.a3 -$.tg=null -$.th=null -$.ti=null -$.tj=null -$.qn=A.oy("_lastQuoRemDigits") -$.qo=A.oy("_lastQuoRemUsed") -$.h9=A.oy("_lastRemUsed") -$.qp=A.oy("_lastRem_nsh") -$.t1="" -$.t2=null -$.aL=A.i([4294967295,2147483647,1073741823,536870911,268435455,134217727,67108863,33554431,16777215,8388607,4194303,2097151,1048575,524287,262143,131071,65535,32767,16383,8191,4095,2047,1023,511,255,127,63,31,15,7,3,1,0],t.Z) -$.eE=A.tm() +$.qM=!1 +$.an=B.a3 +$.tl=null +$.tm=null +$.tn=null +$.to=null +$.qs=A.oC("_lastQuoRemDigits") +$.qt=A.oC("_lastQuoRemUsed") +$.h9=A.oC("_lastRemUsed") +$.qu=A.oC("_lastRem_nsh") +$.t6="" +$.t7=null +$.aM=A.i([4294967295,2147483647,1073741823,536870911,268435455,134217727,67108863,33554431,16777215,8388607,4194303,2097151,1048575,524287,262143,131071,65535,32767,16383,8191,4095,2047,1023,511,255,127,63,31,15,7,3,1,0],t.Z) +$.eE=A.tr() $.cY=null -$.tV=null -$.pa=null})();(function lazyInitializers(){var s=hunkHelpers.lazyFinal -s($,"zG","qZ",()=>A.z2("_$dart_dartClosure")) -s($,"Af","v8",()=>A.i([new J.iT()],A.Y("y"))) -s($,"zR","uP",()=>A.cD(A.nN({ +$.u_=null +$.pe=null})();(function lazyInitializers(){var s=hunkHelpers.lazyFinal +s($,"zL","r3",()=>A.z7("_$dart_dartClosure")) +s($,"Ak","vd",()=>A.i([new J.iU()],A.a_("y"))) +s($,"zW","uU",()=>A.cD(A.nR({ toString:function(){return"$receiver$"}}))) -s($,"zS","uQ",()=>A.cD(A.nN({$method$:null, +s($,"zX","uV",()=>A.cD(A.nR({$method$:null, toString:function(){return"$receiver$"}}))) -s($,"zT","uR",()=>A.cD(A.nN(null))) -s($,"zU","uS",()=>A.cD(function(){var $argumentsExpr$="$arguments$" +s($,"zY","uW",()=>A.cD(A.nR(null))) +s($,"zZ","uX",()=>A.cD(function(){var $argumentsExpr$="$arguments$" try{null.$method$($argumentsExpr$)}catch(r){return r.message}}())) -s($,"zX","uV",()=>A.cD(A.nN(void 0))) -s($,"zY","uW",()=>A.cD(function(){var $argumentsExpr$="$arguments$" +s($,"A1","v_",()=>A.cD(A.nR(void 0))) +s($,"A2","v0",()=>A.cD(function(){var $argumentsExpr$="$arguments$" try{(void 0).$method$($argumentsExpr$)}catch(r){return r.message}}())) -s($,"zW","uU",()=>A.cD(A.rZ(null))) -s($,"zV","uT",()=>A.cD(function(){try{null.$method$}catch(r){return r.message}}())) -s($,"A_","uY",()=>A.cD(A.rZ(void 0))) -s($,"zZ","uX",()=>A.cD(function(){try{(void 0).$method$}catch(r){return r.message}}())) -s($,"A0","r0",()=>A.wZ()) -s($,"Aa","v4",()=>A.mL(4096)) -s($,"A8","v2",()=>new A.p_().$0()) -s($,"A9","v3",()=>new A.oZ().$0()) -s($,"A1","uZ",()=>A.w3(A.hC(A.i([-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-1,-2,-2,-2,-2,-2,62,-2,62,-2,63,52,53,54,55,56,57,58,59,60,61,-2,-2,-2,-1,-2,-2,-2,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-2,-2,-2,-2,63,-2,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,-2,-2,-2,-2,-2],t.Z)))) -s($,"A7","c8",()=>A.kx(0)) -s($,"A5","dR",()=>A.kx(1)) -s($,"A6","v1",()=>A.kx(2)) -s($,"A4","r1",()=>$.dR().bT(0)) -s($,"A2","v_",()=>A.kx(1e4)) -s($,"A3","v0",()=>A.mL(8)) -s($,"Ac","lA",()=>A.ly(B.MB)) -s($,"zB","dc",()=>A.mL(0)) -s($,"zD","uK",()=>A.mL(0)) -s($,"zC","uJ",()=>A.w2(0)) -s($,"zI","uM",()=>A.iw(B.jm)) -s($,"zH","uL",()=>A.iw(B.iV)) -s($,"Ai","pT",()=>new A.lL($.r_())) -s($,"zN","uN",()=>new A.jA(A.a4("/",!0),A.a4("[^/]$",!0),A.a4("^/",!0))) -s($,"zP","lz",()=>new A.k7(A.a4("[/\\\\]",!0),A.a4("[^/\\\\]$",!0),A.a4("^(\\\\\\\\[^\\\\]+\\\\[^\\\\/]+|[a-zA-Z]:[/\\\\])",!0),A.a4("^[/\\\\](?![/\\\\])",!0))) -s($,"zO","hF",()=>new A.k1(A.a4("/",!0),A.a4("(^[a-zA-Z][-+.a-zA-Z\\d]*://|[^/])$",!0),A.a4("[a-zA-Z][-+.a-zA-Z\\d]*://[^/]*",!0),A.a4("^/",!0))) -s($,"zM","r_",()=>A.wM()) -s($,"zQ","uO",()=>new A.jf("newline expected")) -s($,"Ad","v6",()=>A.tU(!1)) -s($,"Ae","v7",()=>A.tU(!0)) -s($,"Ah","r2",()=>A.a4("[&<\\u0001-\\u0008\\u000b\\u000c\\u000e-\\u001f\\u007f-\\u0084\\u0086-\\u009f]|]]>",!0)) -s($,"Ag","v9",()=>A.a4("['&<\\n\\r\\t\\u0001-\\u0008\\u000b\\u000c\\u000e-\\u001f\\u007f-\\u0084\\u0086-\\u009f]",!0)) -s($,"Ab","v5",()=>A.a4('["&<\\n\\r\\t\\u0001-\\u0008\\u000b\\u000c\\u000e-\\u001f\\u007f-\\u0084\\u0086-\\u009f]',!0)) -s($,"Ak","va",()=>new A.k8(new A.pt(),5,A.aC(t.j7,A.Y("n")),A.Y("k8>")))})();(function nativeSupport(){!function(){var s=function(a){var m={} +s($,"A0","uZ",()=>A.cD(A.t3(null))) +s($,"A_","uY",()=>A.cD(function(){try{null.$method$}catch(r){return r.message}}())) +s($,"A4","v2",()=>A.cD(A.t3(void 0))) +s($,"A3","v1",()=>A.cD(function(){try{(void 0).$method$}catch(r){return r.message}}())) +s($,"A5","r5",()=>A.x3()) +s($,"Af","v9",()=>A.mP(4096)) +s($,"Ad","v7",()=>new A.p3().$0()) +s($,"Ae","v8",()=>new A.p2().$0()) +s($,"A6","v3",()=>A.w8(A.hC(A.i([-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-1,-2,-2,-2,-2,-2,62,-2,62,-2,63,52,53,54,55,56,57,58,59,60,61,-2,-2,-2,-1,-2,-2,-2,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-2,-2,-2,-2,63,-2,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,-2,-2,-2,-2,-2],t.Z)))) +s($,"Ac","c8",()=>A.kz(0)) +s($,"Aa","dR",()=>A.kz(1)) +s($,"Ab","v6",()=>A.kz(2)) +s($,"A9","r6",()=>$.dR().bT(0)) +s($,"A7","v4",()=>A.kz(1e4)) +s($,"A8","v5",()=>A.mP(8)) +s($,"Ah","lD",()=>A.lB(B.MD)) +s($,"zG","dd",()=>A.mP(0)) +s($,"zI","uP",()=>A.mP(0)) +s($,"zH","uO",()=>A.w7(0)) +s($,"zN","uR",()=>A.ix(B.jm)) +s($,"zM","uQ",()=>A.ix(B.iV)) +s($,"An","pZ",()=>new A.lO($.r4())) +s($,"zS","uS",()=>new A.jB(A.a5("/",!0),A.a5("[^/]$",!0),A.a5("^/",!0))) +s($,"zU","lC",()=>new A.k9(A.a5("[/\\\\]",!0),A.a5("[^/\\\\]$",!0),A.a5("^(\\\\\\\\[^\\\\]+\\\\[^\\\\/]+|[a-zA-Z]:[/\\\\])",!0),A.a5("^[/\\\\](?![/\\\\])",!0))) +s($,"zT","hF",()=>new A.k3(A.a5("/",!0),A.a5("(^[a-zA-Z][-+.a-zA-Z\\d]*://|[^/])$",!0),A.a5("[a-zA-Z][-+.a-zA-Z\\d]*://[^/]*",!0),A.a5("^/",!0))) +s($,"zR","r4",()=>A.wR()) +s($,"zV","uT",()=>new A.jg("newline expected")) +s($,"Ai","vb",()=>A.tZ(!1)) +s($,"Aj","vc",()=>A.tZ(!0)) +s($,"Am","r7",()=>A.a5("[&<\\u0001-\\u0008\\u000b\\u000c\\u000e-\\u001f\\u007f-\\u0084\\u0086-\\u009f]|]]>",!0)) +s($,"Al","ve",()=>A.a5("['&<\\n\\r\\t\\u0001-\\u0008\\u000b\\u000c\\u000e-\\u001f\\u007f-\\u0084\\u0086-\\u009f]",!0)) +s($,"Ag","va",()=>A.a5('["&<\\n\\r\\t\\u0001-\\u0008\\u000b\\u000c\\u000e-\\u001f\\u007f-\\u0084\\u0086-\\u009f]',!0)) +s($,"Ap","vf",()=>new A.ka(new A.pz(),5,A.az(t.j7,A.a_("n")),A.a_("ka>")))})();(function nativeSupport(){!function(){var s=function(a){var m={} m[a]=1 return Object.keys(hunkHelpers.convertToFastObject(m))[0]} v.getIsolateTag=function(a){return s("___dart_"+a+v.isolateTag)} @@ -20432,7 +20550,7 @@ for(var o=0;;o++){var n=s(p+"_"+o+"_") if(!(n in q)){q[n]=1 v.isolateTag=n break}}v.dispatchPropertyName=v.getIsolateTag("dispatch_record")}() -hunkHelpers.setOrUpdateInterceptorsByTag({ArrayBuffer:A.du,SharedArrayBuffer:A.du,ArrayBufferView:A.fu,DataView:A.j6,Float32Array:A.j7,Float64Array:A.j8,Int16Array:A.j9,Int32Array:A.ja,Int8Array:A.jb,Uint16Array:A.jc,Uint32Array:A.fv,Uint8ClampedArray:A.fw,CanvasPixelArray:A.fw,Uint8Array:A.dv}) +hunkHelpers.setOrUpdateInterceptorsByTag({ArrayBuffer:A.dv,SharedArrayBuffer:A.dv,ArrayBufferView:A.fu,DataView:A.j7,Float32Array:A.j8,Float64Array:A.j9,Int16Array:A.ja,Int32Array:A.jb,Int8Array:A.jc,Uint16Array:A.jd,Uint32Array:A.fv,Uint8ClampedArray:A.fw,CanvasPixelArray:A.fw,Uint8Array:A.dw}) hunkHelpers.setOrUpdateLeafTags({ArrayBuffer:true,SharedArrayBuffer:true,ArrayBufferView:false,DataView:true,Float32Array:true,Float64Array:true,Int16Array:true,Int32Array:true,Int8Array:true,Uint16Array:true,Uint32Array:true,Uint8ClampedArray:true,CanvasPixelArray:true,Uint8Array:false}) A.aW.$nativeSuperclassTag="ArrayBufferView" A.hh.$nativeSuperclassTag="ArrayBufferView" @@ -20456,5 +20574,5 @@ convertToFastObject($);(function(a){if(typeof document==="undefined"){a(null) return}if(typeof document.currentScript!="undefined"){a(document.currentScript) return}var s=document.scripts function onLoad(b){for(var q=0;q collectEpubContent(String html) { final runs = >[]; String kind = 'p'; var preformatted = false; + final listCounters = {}; + + String listMarker(Element item) { + Element? owner = item.parent; + while (owner != null && + !const {'ol', 'ul', 'menu'}.contains(owner.localName)) { + owner = owner.parent; + } + if (owner == null || owner.localName != 'ol') return '• '; + final reversed = owner.attributes.containsKey('reversed'); + final number = + int.tryParse(item.attributes['value']?.trim() ?? '') ?? + listCounters[owner] ?? + int.tryParse(owner.attributes['start']?.trim() ?? '') ?? + (reversed + ? owner.children.where((child) => child.localName == 'li').length + : 1); + listCounters[owner] = number + (reversed ? -1 : 1); + return '$number. '; + } void flush() { if (runs.isEmpty) return; @@ -115,7 +135,7 @@ Map collectEpubContent(String html) { if (tag == 's' || tag == 'del') style['strike'] = true; if (tag == 'code' || tag == 'pre') style['code'] = true; if (tag == 'br') runs.add({'text': '\n', ...style}); - if (tag == 'li') text('• ', style); + if (tag == 'li') text(listMarker(node), style); if (tag == 'td' || tag == 'th') { if (runs.isNotEmpty) text(' | ', style); } diff --git a/lib/src/presentation/papyrus_reader.dart b/lib/src/presentation/papyrus_reader.dart index 934cf09..1429728 100644 --- a/lib/src/presentation/papyrus_reader.dart +++ b/lib/src/presentation/papyrus_reader.dart @@ -58,8 +58,6 @@ final class _PapyrusReaderState extends State { late ReaderController _controller; late bool _ownsController; ReaderSnapshot? _observedSnapshot; - Widget? _cachedViewport; - ReaderPreferences? _viewportPreferences; _ReaderPanel _panel = _ReaderPanel.none; bool _controlsVisible = true; double? _dragProgress; @@ -113,7 +111,6 @@ final class _PapyrusReaderState extends State { oldWidget.controller != widget.controller || oldWidget.registry != widget.registry; final documentChanged = oldWidget.document != widget.document; - if (documentChanged) _cachedViewport = null; if (controllerChanged || documentChanged) { _dismissCompactPanel(); _invalidateCommands(notify: false); @@ -183,8 +180,6 @@ final class _PapyrusReaderState extends State { void _detachController() { _loadGeneration++; - _cachedViewport = null; - _viewportPreferences = null; _controller.removeListener(_controllerChanged); if (_ownsController) { _controller.dispose(); @@ -693,12 +688,7 @@ final class _PapyrusReaderState extends State { } Widget _buildViewport(BuildContext context, ReaderSnapshot snapshot) { - if (_cachedViewport == null || - _viewportPreferences != snapshot.preferences) { - _cachedViewport = _controller.buildViewport(context); - _viewportPreferences = snapshot.preferences; - } - final viewport = _cachedViewport!; + final viewport = _controller.buildViewport(context); final builder = widget.builders.viewport; return builder?.call( diff --git a/test/engine/epub_worker_test.dart b/test/engine/epub_worker_test.dart index 3b5dbe9..a57b3aa 100644 --- a/test/engine/epub_worker_test.dart +++ b/test/engine/epub_worker_test.dart @@ -8,6 +8,69 @@ import '../support/synthetic_epub.dart'; void main() { TestWidgetsFlutterBinding.ensureInitialized(); + Future> listText(String html) async { + final worker = await createEpubWorker(); + addTearDown(worker.dispose); + await worker.open(syntheticEpub(firstChapterBody: html)); + final chapter = await worker.chapter(0); + return (chapter['blocks'] as List) + .map( + (block) => (block['runs'] as List) + .map((run) => run['text'] as String) + .join(), + ) + .toList(); + } + + test('native worker preserves ordered list start and item values', () async { + expect( + await listText(''' +

  1. Alpha
  2. Beta
  3. Gamma
+
  • Unordered
  • Another bullet
+'''), + ['3. Alpha', '8. Beta', '9. Gamma', '• Unordered', '• Another bullet'], + ); + }); + + test( + 'native worker keeps nested and separate list counters independent', + () async { + expect( + await listText(''' +
  1. Outer
    • Bullet
      1. Inner
      2. Inner next
  2. Outer next
+
  1. New list
+'''), + [ + '7. Outer', + '• Bullet', + '1. Inner', + '2. Inner next', + '8. Outer next', + '1. New list', + ], + ); + }, + ); + + test('native worker preserves reversed and invalid list numbering', () async { + expect( + await listText(''' +
  1. First
  2. Reset
  3. Last
+
  1. Negative
  2. Negative next
+
  1. Fallback
  2. Fallback next
+'''), + [ + '3. First', + '5. Reset', + '4. Last', + '-1. Negative', + '-2. Negative next', + '1. Fallback', + '2. Fallback next', + ], + ); + }); + test( 'native document worker opens and prepares chapters independently', () async { diff --git a/test/presentation/papyrus_reader_test.dart b/test/presentation/papyrus_reader_test.dart index 92a0752..d727bbd 100644 --- a/test/presentation/papyrus_reader_test.dart +++ b/test/presentation/papyrus_reader_test.dart @@ -99,6 +99,43 @@ void main() { ); } + testWidgets('custom snapshot viewports refresh without losing state', ( + tester, + ) async { + final engine = _UiReaderEngine( + viewportBuilder: (context, snapshot) => _SnapshotViewport( + progression: + (snapshot.locator as EpubReaderLocator?)?.totalProgression ?? 0, + ), + ); + final controller = controllerFor([engine]); + addTearDown(controller.dispose); + await pumpReader( + tester, + document: document('Custom viewport'), + controller: controller, + ); + await tester.pumpAndSettle(); + final viewport = find.byType(_SnapshotViewport); + final state = tester.state(viewport); + expect(find.text('Custom position 0'), findsOneWidget); + + await controller.goToProgress(0.4); + await tester.pumpAndSettle(); + expect(find.text('Custom position 40'), findsOneWidget); + expect(tester.state(viewport), same(state)); + + await controller.goToProgress(0.8); + await tester.pumpAndSettle(); + expect(find.text('Custom position 80'), findsOneWidget); + expect(tester.state(viewport), same(state)); + + await tester.tap(find.byTooltip('Hide controls')); + await tester.pumpAndSettle(); + expect(find.text('Custom position 80'), findsOneWidget); + expect(tester.state(viewport), same(state)); + }); + testWidgets('sidebar meets the toolbar border without an empty gap', ( tester, ) async { @@ -1248,6 +1285,7 @@ void main() { final class _UiReaderEngine extends ReaderEngine { _UiReaderEngine({ + this.viewportBuilder, this.loadGate, this.loadFailure, this.nextGates = const [], @@ -1263,6 +1301,7 @@ final class _UiReaderEngine extends ReaderEngine { }); final Completer? loadGate; + final Widget Function(BuildContext, ReaderSnapshot)? viewportBuilder; final ReaderException? loadFailure; final List> nextGates; final ReaderException? nextFailure; @@ -1316,6 +1355,9 @@ final class _UiReaderEngine extends ReaderEngine { @override Widget buildViewport(BuildContext context) { + if (viewportBuilder case final builder?) { + return builder(context, snapshot); + } return const ColoredBox( key: ValueKey('reader-viewport'), color: Colors.transparent, @@ -1443,3 +1485,18 @@ final class _UiReaderEngine extends ReaderEngine { super.dispose(); } } + +final class _SnapshotViewport extends StatefulWidget { + const _SnapshotViewport({required this.progression}); + + final double progression; + + @override + State<_SnapshotViewport> createState() => _SnapshotViewportState(); +} + +final class _SnapshotViewportState extends State<_SnapshotViewport> { + @override + Widget build(BuildContext context) => + Text('Custom position ${(widget.progression * 100).toStringAsFixed(0)}'); +}